@expo/cli 0.0.0-canary-20231122-1af9191

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 (661) hide show
  1. package/README.md +144 -0
  2. package/build/bin/cli +272 -0
  3. package/build/bin/cli.map +1 -0
  4. package/build/src/api/endpoint.js +27 -0
  5. package/build/src/api/endpoint.js.map +1 -0
  6. package/build/src/api/getExpoGoIntermediateCertificate.js +19 -0
  7. package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -0
  8. package/build/src/api/getExpoSchema.js +69 -0
  9. package/build/src/api/getExpoSchema.js.map +1 -0
  10. package/build/src/api/getNativeModuleVersions.js +31 -0
  11. package/build/src/api/getNativeModuleVersions.js.map +1 -0
  12. package/build/src/api/getProjectDevelopmentCertificate.js +22 -0
  13. package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -0
  14. package/build/src/api/getVersions.js +24 -0
  15. package/build/src/api/getVersions.js.map +1 -0
  16. package/build/src/api/graphql/client.js +106 -0
  17. package/build/src/api/graphql/client.js.map +1 -0
  18. package/build/src/api/graphql/queries/AppQuery.js +39 -0
  19. package/build/src/api/graphql/queries/AppQuery.js.map +1 -0
  20. package/build/src/api/graphql/queries/UserQuery.js +51 -0
  21. package/build/src/api/graphql/queries/UserQuery.js.map +1 -0
  22. package/build/src/api/graphql/types/App.js +23 -0
  23. package/build/src/api/graphql/types/App.js.map +1 -0
  24. package/build/src/api/rest/cache/FileSystemCache.js +79 -0
  25. package/build/src/api/rest/cache/FileSystemCache.js.map +1 -0
  26. package/build/src/api/rest/cache/response.js +31 -0
  27. package/build/src/api/rest/cache/response.js.map +1 -0
  28. package/build/src/api/rest/cache/wrapFetchWithCache.js +156 -0
  29. package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -0
  30. package/build/src/api/rest/client.js +109 -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 +23 -0
  35. package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -0
  36. package/build/src/api/rest/wrapFetchWithOffline.js +19 -0
  37. package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -0
  38. package/build/src/api/rest/wrapFetchWithProgress.js +64 -0
  39. package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -0
  40. package/build/src/api/rest/wrapFetchWithProxy.js +26 -0
  41. package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -0
  42. package/build/src/api/settings.js +20 -0
  43. package/build/src/api/settings.js.map +1 -0
  44. package/build/src/api/updateDevelopmentSession.js +74 -0
  45. package/build/src/api/updateDevelopmentSession.js.map +1 -0
  46. package/build/src/api/user/UserSettings.js +71 -0
  47. package/build/src/api/user/UserSettings.js.map +1 -0
  48. package/build/src/api/user/actions.js +107 -0
  49. package/build/src/api/user/actions.js.map +1 -0
  50. package/build/src/api/user/expoSsoLauncher.js +127 -0
  51. package/build/src/api/user/expoSsoLauncher.js.map +1 -0
  52. package/build/src/api/user/otp.js +139 -0
  53. package/build/src/api/user/otp.js.map +1 -0
  54. package/build/src/api/user/user.js +144 -0
  55. package/build/src/api/user/user.js.map +1 -0
  56. package/build/src/config/configAsync.js +137 -0
  57. package/build/src/config/configAsync.js.map +1 -0
  58. package/build/src/config/index.js +75 -0
  59. package/build/src/config/index.js.map +1 -0
  60. package/build/src/customize/customizeAsync.js +43 -0
  61. package/build/src/customize/customizeAsync.js.map +1 -0
  62. package/build/src/customize/generate.js +104 -0
  63. package/build/src/customize/generate.js.map +1 -0
  64. package/build/src/customize/index.js +41 -0
  65. package/build/src/customize/index.js.map +1 -0
  66. package/build/src/customize/resolveOptions.js +18 -0
  67. package/build/src/customize/resolveOptions.js.map +1 -0
  68. package/build/src/customize/templates.js +126 -0
  69. package/build/src/customize/templates.js.map +1 -0
  70. package/build/src/customize/typescript.js +56 -0
  71. package/build/src/customize/typescript.js.map +1 -0
  72. package/build/src/export/createMetadataJson.js +42 -0
  73. package/build/src/export/createMetadataJson.js.map +1 -0
  74. package/build/src/export/embed/exportEmbedAsync.js +146 -0
  75. package/build/src/export/embed/exportEmbedAsync.js.map +1 -0
  76. package/build/src/export/embed/index.js +115 -0
  77. package/build/src/export/embed/index.js.map +1 -0
  78. package/build/src/export/embed/resolveOptions.js +59 -0
  79. package/build/src/export/embed/resolveOptions.js.map +1 -0
  80. package/build/src/export/embed/xcodeCompilerLogger.js +97 -0
  81. package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -0
  82. package/build/src/export/exportApp.js +192 -0
  83. package/build/src/export/exportApp.js.map +1 -0
  84. package/build/src/export/exportAssets.js +176 -0
  85. package/build/src/export/exportAssets.js.map +1 -0
  86. package/build/src/export/exportAsync.js +52 -0
  87. package/build/src/export/exportAsync.js.map +1 -0
  88. package/build/src/export/exportHermes.js +124 -0
  89. package/build/src/export/exportHermes.js.map +1 -0
  90. package/build/src/export/exportStaticAsync.js +278 -0
  91. package/build/src/export/exportStaticAsync.js.map +1 -0
  92. package/build/src/export/favicon.js +89 -0
  93. package/build/src/export/favicon.js.map +1 -0
  94. package/build/src/export/fork-bundleAsync.js +215 -0
  95. package/build/src/export/fork-bundleAsync.js.map +1 -0
  96. package/build/src/export/getPublicExpoManifest.js +28 -0
  97. package/build/src/export/getPublicExpoManifest.js.map +1 -0
  98. package/build/src/export/getResolvedLocales.js +35 -0
  99. package/build/src/export/getResolvedLocales.js.map +1 -0
  100. package/build/src/export/html.js +21 -0
  101. package/build/src/export/html.js.map +1 -0
  102. package/build/src/export/index.js +91 -0
  103. package/build/src/export/index.js.map +1 -0
  104. package/build/src/export/metroAssetLocalPath.js +101 -0
  105. package/build/src/export/metroAssetLocalPath.js.map +1 -0
  106. package/build/src/export/persistMetroAssets.js +190 -0
  107. package/build/src/export/persistMetroAssets.js.map +1 -0
  108. package/build/src/export/publicFolder.js +34 -0
  109. package/build/src/export/publicFolder.js.map +1 -0
  110. package/build/src/export/resolveOptions.js +63 -0
  111. package/build/src/export/resolveOptions.js.map +1 -0
  112. package/build/src/export/saveAssets.js +189 -0
  113. package/build/src/export/saveAssets.js.map +1 -0
  114. package/build/src/export/web/exportWebAsync.js +40 -0
  115. package/build/src/export/web/exportWebAsync.js.map +1 -0
  116. package/build/src/export/web/index.js +66 -0
  117. package/build/src/export/web/index.js.map +1 -0
  118. package/build/src/export/web/resolveOptions.js +13 -0
  119. package/build/src/export/web/resolveOptions.js.map +1 -0
  120. package/build/src/export/writeContents.js +26 -0
  121. package/build/src/export/writeContents.js.map +1 -0
  122. package/build/src/graphql/generated.js +486 -0
  123. package/build/src/graphql/generated.js.map +1 -0
  124. package/build/src/install/applyPlugins.js +52 -0
  125. package/build/src/install/applyPlugins.js.map +1 -0
  126. package/build/src/install/checkPackages.js +78 -0
  127. package/build/src/install/checkPackages.js.map +1 -0
  128. package/build/src/install/fixPackages.js +84 -0
  129. package/build/src/install/fixPackages.js.map +1 -0
  130. package/build/src/install/index.js +51 -0
  131. package/build/src/install/index.js.map +1 -0
  132. package/build/src/install/installAsync.js +134 -0
  133. package/build/src/install/installAsync.js.map +1 -0
  134. package/build/src/install/installExpoPackage.js +79 -0
  135. package/build/src/install/installExpoPackage.js.map +1 -0
  136. package/build/src/install/resolveOptions.js +53 -0
  137. package/build/src/install/resolveOptions.js.map +1 -0
  138. package/build/src/install/utils/autoAddConfigPlugins.js +66 -0
  139. package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -0
  140. package/build/src/log.js +74 -0
  141. package/build/src/log.js.map +1 -0
  142. package/build/src/login/index.js +67 -0
  143. package/build/src/login/index.js.map +1 -0
  144. package/build/src/logout/index.js +48 -0
  145. package/build/src/logout/index.js.map +1 -0
  146. package/build/src/prebuild/clearNativeFolder.js +143 -0
  147. package/build/src/prebuild/clearNativeFolder.js.map +1 -0
  148. package/build/src/prebuild/configureProjectAsync.js +64 -0
  149. package/build/src/prebuild/configureProjectAsync.js.map +1 -0
  150. package/build/src/prebuild/copyTemplateFiles.js +67 -0
  151. package/build/src/prebuild/copyTemplateFiles.js.map +1 -0
  152. package/build/src/prebuild/ensureConfigAsync.js +75 -0
  153. package/build/src/prebuild/ensureConfigAsync.js.map +1 -0
  154. package/build/src/prebuild/index.js +98 -0
  155. package/build/src/prebuild/index.js.map +1 -0
  156. package/build/src/prebuild/prebuildAsync.js +146 -0
  157. package/build/src/prebuild/prebuildAsync.js.map +1 -0
  158. package/build/src/prebuild/resolveOptions.js +115 -0
  159. package/build/src/prebuild/resolveOptions.js.map +1 -0
  160. package/build/src/prebuild/resolveTemplate.js +163 -0
  161. package/build/src/prebuild/resolveTemplate.js.map +1 -0
  162. package/build/src/prebuild/updateFromTemplate.js +103 -0
  163. package/build/src/prebuild/updateFromTemplate.js.map +1 -0
  164. package/build/src/prebuild/updatePackageJson.js +227 -0
  165. package/build/src/prebuild/updatePackageJson.js.map +1 -0
  166. package/build/src/prebuild/validateTemplatePlatforms.js +48 -0
  167. package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -0
  168. package/build/src/register/index.js +48 -0
  169. package/build/src/register/index.js.map +1 -0
  170. package/build/src/register/registerAsync.js +34 -0
  171. package/build/src/register/registerAsync.js.map +1 -0
  172. package/build/src/run/android/index.js +97 -0
  173. package/build/src/run/android/index.js.map +1 -0
  174. package/build/src/run/android/resolveDevice.js +23 -0
  175. package/build/src/run/android/resolveDevice.js.map +1 -0
  176. package/build/src/run/android/resolveGradleProps.js +37 -0
  177. package/build/src/run/android/resolveGradleProps.js.map +1 -0
  178. package/build/src/run/android/resolveInstallApkName.js +51 -0
  179. package/build/src/run/android/resolveInstallApkName.js.map +1 -0
  180. package/build/src/run/android/resolveLaunchProps.js +32 -0
  181. package/build/src/run/android/resolveLaunchProps.js.map +1 -0
  182. package/build/src/run/android/resolveOptions.js +25 -0
  183. package/build/src/run/android/resolveOptions.js.map +1 -0
  184. package/build/src/run/android/runAndroidAsync.js +83 -0
  185. package/build/src/run/android/runAndroidAsync.js.map +1 -0
  186. package/build/src/run/ensureNativeProject.js +36 -0
  187. package/build/src/run/ensureNativeProject.js.map +1 -0
  188. package/build/src/run/hints.js +22 -0
  189. package/build/src/run/hints.js.map +1 -0
  190. package/build/src/run/ios/XcodeBuild.js +276 -0
  191. package/build/src/run/ios/XcodeBuild.js.map +1 -0
  192. package/build/src/run/ios/XcodeBuild.types.js +6 -0
  193. package/build/src/run/ios/XcodeBuild.types.js.map +1 -0
  194. package/build/src/run/ios/appleDevice/AppleDevice.js +195 -0
  195. package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -0
  196. package/build/src/run/ios/appleDevice/ClientManager.js +165 -0
  197. package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -0
  198. package/build/src/run/ios/appleDevice/client/AFCClient.js +195 -0
  199. package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -0
  200. package/build/src/run/ios/appleDevice/client/DebugserverClient.js +107 -0
  201. package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -0
  202. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +97 -0
  203. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -0
  204. package/build/src/run/ios/appleDevice/client/LockdowndClient.js +144 -0
  205. package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -0
  206. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +91 -0
  207. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -0
  208. package/build/src/run/ios/appleDevice/client/ServiceClient.js +21 -0
  209. package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -0
  210. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +117 -0
  211. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -0
  212. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +90 -0
  213. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -0
  214. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +332 -0
  215. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -0
  216. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +133 -0
  217. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -0
  218. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +126 -0
  219. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -0
  220. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +74 -0
  221. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -0
  222. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +65 -0
  223. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -0
  224. package/build/src/run/ios/codeSigning/Security.js +85 -0
  225. package/build/src/run/ios/codeSigning/Security.js.map +1 -0
  226. package/build/src/run/ios/codeSigning/configureCodeSigning.js +77 -0
  227. package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -0
  228. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +102 -0
  229. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -0
  230. package/build/src/run/ios/codeSigning/settings.js +21 -0
  231. package/build/src/run/ios/codeSigning/settings.js.map +1 -0
  232. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +45 -0
  233. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -0
  234. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +79 -0
  235. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -0
  236. package/build/src/run/ios/index.js +98 -0
  237. package/build/src/run/ios/index.js.map +1 -0
  238. package/build/src/run/ios/launchApp.js +75 -0
  239. package/build/src/run/ios/launchApp.js.map +1 -0
  240. package/build/src/run/ios/options/promptDevice.js +50 -0
  241. package/build/src/run/ios/options/promptDevice.js.map +1 -0
  242. package/build/src/run/ios/options/resolveDevice.js +92 -0
  243. package/build/src/run/ios/options/resolveDevice.js.map +1 -0
  244. package/build/src/run/ios/options/resolveNativeScheme.js +101 -0
  245. package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -0
  246. package/build/src/run/ios/options/resolveOptions.js +44 -0
  247. package/build/src/run/ios/options/resolveOptions.js.map +1 -0
  248. package/build/src/run/ios/options/resolveXcodeProject.js +39 -0
  249. package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -0
  250. package/build/src/run/ios/runIosAsync.js +93 -0
  251. package/build/src/run/ios/runIosAsync.js.map +1 -0
  252. package/build/src/run/resolveBundlerProps.js +34 -0
  253. package/build/src/run/resolveBundlerProps.js.map +1 -0
  254. package/build/src/run/startBundler.js +82 -0
  255. package/build/src/run/startBundler.js.map +1 -0
  256. package/build/src/start/doctor/Prerequisite.js +47 -0
  257. package/build/src/start/doctor/Prerequisite.js.map +1 -0
  258. package/build/src/start/doctor/SecurityBinPrerequisite.js +27 -0
  259. package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -0
  260. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +70 -0
  261. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -0
  262. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +69 -0
  263. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -0
  264. package/build/src/start/doctor/apple/XcodePrerequisite.js +158 -0
  265. package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -0
  266. package/build/src/start/doctor/apple/XcrunPrerequisite.js +65 -0
  267. package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -0
  268. package/build/src/start/doctor/dependencies/bundledNativeModules.js +69 -0
  269. package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -0
  270. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +131 -0
  271. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -0
  272. package/build/src/start/doctor/dependencies/getMissingPackages.js +74 -0
  273. package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -0
  274. package/build/src/start/doctor/dependencies/getVersionedPackages.js +136 -0
  275. package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -0
  276. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +195 -0
  277. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -0
  278. package/build/src/start/doctor/ngrok/ExternalModule.js +169 -0
  279. package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -0
  280. package/build/src/start/doctor/ngrok/NgrokResolver.js +22 -0
  281. package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -0
  282. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +165 -0
  283. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -0
  284. package/build/src/start/doctor/typescript/updateTSConfig.js +99 -0
  285. package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -0
  286. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +111 -0
  287. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -0
  288. package/build/src/start/index.js +123 -0
  289. package/build/src/start/index.js.map +1 -0
  290. package/build/src/start/interface/KeyPressHandler.js +101 -0
  291. package/build/src/start/interface/KeyPressHandler.js.map +1 -0
  292. package/build/src/start/interface/commandsTable.js +195 -0
  293. package/build/src/start/interface/commandsTable.js.map +1 -0
  294. package/build/src/start/interface/interactiveActions.js +194 -0
  295. package/build/src/start/interface/interactiveActions.js.map +1 -0
  296. package/build/src/start/interface/startInterface.js +227 -0
  297. package/build/src/start/interface/startInterface.js.map +1 -0
  298. package/build/src/start/platforms/AppIdResolver.js +44 -0
  299. package/build/src/start/platforms/AppIdResolver.js.map +1 -0
  300. package/build/src/start/platforms/DeviceManager.js +43 -0
  301. package/build/src/start/platforms/DeviceManager.js.map +1 -0
  302. package/build/src/start/platforms/ExpoGoInstaller.js +127 -0
  303. package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -0
  304. package/build/src/start/platforms/PlatformManager.js +131 -0
  305. package/build/src/start/platforms/PlatformManager.js.map +1 -0
  306. package/build/src/start/platforms/android/ADBServer.js +114 -0
  307. package/build/src/start/platforms/android/ADBServer.js.map +1 -0
  308. package/build/src/start/platforms/android/AndroidAppIdResolver.js +44 -0
  309. package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -0
  310. package/build/src/start/platforms/android/AndroidDeviceManager.js +183 -0
  311. package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -0
  312. package/build/src/start/platforms/android/AndroidPlatformManager.js +35 -0
  313. package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -0
  314. package/build/src/start/platforms/android/AndroidSdk.js +41 -0
  315. package/build/src/start/platforms/android/AndroidSdk.js.map +1 -0
  316. package/build/src/start/platforms/android/activateWindow.js +80 -0
  317. package/build/src/start/platforms/android/activateWindow.js.map +1 -0
  318. package/build/src/start/platforms/android/adb.js +269 -0
  319. package/build/src/start/platforms/android/adb.js.map +1 -0
  320. package/build/src/start/platforms/android/adbReverse.js +95 -0
  321. package/build/src/start/platforms/android/adbReverse.js.map +1 -0
  322. package/build/src/start/platforms/android/emulator.js +126 -0
  323. package/build/src/start/platforms/android/emulator.js.map +1 -0
  324. package/build/src/start/platforms/android/getDevices.js +36 -0
  325. package/build/src/start/platforms/android/getDevices.js.map +1 -0
  326. package/build/src/start/platforms/android/gradle.js +86 -0
  327. package/build/src/start/platforms/android/gradle.js.map +1 -0
  328. package/build/src/start/platforms/android/promptAndroidDevice.js +56 -0
  329. package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -0
  330. package/build/src/start/platforms/ios/AppleAppIdResolver.js +53 -0
  331. package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -0
  332. package/build/src/start/platforms/ios/AppleDeviceManager.js +216 -0
  333. package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -0
  334. package/build/src/start/platforms/ios/ApplePlatformManager.js +31 -0
  335. package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -0
  336. package/build/src/start/platforms/ios/assertSystemRequirements.js +16 -0
  337. package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -0
  338. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +85 -0
  339. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -0
  340. package/build/src/start/platforms/ios/getBestSimulator.js +101 -0
  341. package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -0
  342. package/build/src/start/platforms/ios/promptAppleDevice.js +56 -0
  343. package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -0
  344. package/build/src/start/platforms/ios/simctl.js +243 -0
  345. package/build/src/start/platforms/ios/simctl.js.map +1 -0
  346. package/build/src/start/platforms/ios/simctlLogging.js +220 -0
  347. package/build/src/start/platforms/ios/simctlLogging.js.map +1 -0
  348. package/build/src/start/platforms/ios/xcrun.js +46 -0
  349. package/build/src/start/platforms/ios/xcrun.js.map +1 -0
  350. package/build/src/start/project/devices.js +79 -0
  351. package/build/src/start/project/devices.js.map +1 -0
  352. package/build/src/start/project/dotExpo.js +74 -0
  353. package/build/src/start/project/dotExpo.js.map +1 -0
  354. package/build/src/start/project/settings.js +13 -0
  355. package/build/src/start/project/settings.js.map +1 -0
  356. package/build/src/start/resolveOptions.js +135 -0
  357. package/build/src/start/resolveOptions.js.map +1 -0
  358. package/build/src/start/server/AsyncNgrok.js +220 -0
  359. package/build/src/start/server/AsyncNgrok.js.map +1 -0
  360. package/build/src/start/server/BundlerDevServer.js +356 -0
  361. package/build/src/start/server/BundlerDevServer.js.map +1 -0
  362. package/build/src/start/server/DevServerManager.js +214 -0
  363. package/build/src/start/server/DevServerManager.js.map +1 -0
  364. package/build/src/start/server/DevToolsPluginManager.js +63 -0
  365. package/build/src/start/server/DevToolsPluginManager.js.map +1 -0
  366. package/build/src/start/server/DevelopmentSession.js +114 -0
  367. package/build/src/start/server/DevelopmentSession.js.map +1 -0
  368. package/build/src/start/server/ReactDevToolsProxy.js +73 -0
  369. package/build/src/start/server/ReactDevToolsProxy.js.map +1 -0
  370. package/build/src/start/server/UrlCreator.js +175 -0
  371. package/build/src/start/server/UrlCreator.js.map +1 -0
  372. package/build/src/start/server/getStaticRenderFunctions.js +164 -0
  373. package/build/src/start/server/getStaticRenderFunctions.js.map +1 -0
  374. package/build/src/start/server/metro/MetroBundlerDevServer.js +485 -0
  375. package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -0
  376. package/build/src/start/server/metro/MetroTerminalReporter.js +165 -0
  377. package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -0
  378. package/build/src/start/server/metro/TerminalReporter.js +92 -0
  379. package/build/src/start/server/metro/TerminalReporter.js.map +1 -0
  380. package/build/src/start/server/metro/TerminalReporter.types.js +6 -0
  381. package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -0
  382. package/build/src/start/server/metro/bundleApiRoutes.js +52 -0
  383. package/build/src/start/server/metro/bundleApiRoutes.js.map +1 -0
  384. package/build/src/start/server/metro/createExpoMetroResolver.js +187 -0
  385. package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -0
  386. package/build/src/start/server/metro/createJResolver.js +149 -0
  387. package/build/src/start/server/metro/createJResolver.js.map +1 -0
  388. package/build/src/start/server/metro/createServerRouteMiddleware.js +124 -0
  389. package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -0
  390. package/build/src/start/server/metro/externals.js +94 -0
  391. package/build/src/start/server/metro/externals.js.map +1 -0
  392. package/build/src/start/server/metro/fetchRouterManifest.js +60 -0
  393. package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -0
  394. package/build/src/start/server/metro/formatFileCandidates.js +72 -0
  395. package/build/src/start/server/metro/formatFileCandidates.js.map +1 -0
  396. package/build/src/start/server/metro/getCssModulesFromBundler.js +77 -0
  397. package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -0
  398. package/build/src/start/server/metro/inspector-proxy/device.js +110 -0
  399. package/build/src/start/server/metro/inspector-proxy/device.js.map +1 -0
  400. package/build/src/start/server/metro/inspector-proxy/handlers/NetworkResponse.js +29 -0
  401. package/build/src/start/server/metro/inspector-proxy/handlers/NetworkResponse.js.map +1 -0
  402. package/build/src/start/server/metro/inspector-proxy/handlers/PageReload.js +22 -0
  403. package/build/src/start/server/metro/inspector-proxy/handlers/PageReload.js.map +1 -0
  404. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerGetPossibleBreakpoints.js +21 -0
  405. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -0
  406. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerScriptParsed.js +55 -0
  407. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerScriptParsed.js.map +1 -0
  408. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerSetBreakpointByUrl.js +17 -0
  409. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -0
  410. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeRuntimeCallFunctionOn.js +24 -0
  411. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeRuntimeCallFunctionOn.js.map +1 -0
  412. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeRuntimeGetProperties.js +39 -0
  413. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeRuntimeGetProperties.js.map +1 -0
  414. package/build/src/start/server/metro/inspector-proxy/handlers/types.js +6 -0
  415. package/build/src/start/server/metro/inspector-proxy/handlers/types.js.map +1 -0
  416. package/build/src/start/server/metro/inspector-proxy/handlers/utils.js +11 -0
  417. package/build/src/start/server/metro/inspector-proxy/handlers/utils.js.map +1 -0
  418. package/build/src/start/server/metro/inspector-proxy/index.js +24 -0
  419. package/build/src/start/server/metro/inspector-proxy/index.js.map +1 -0
  420. package/build/src/start/server/metro/inspector-proxy/proxy.js +169 -0
  421. package/build/src/start/server/metro/inspector-proxy/proxy.js.map +1 -0
  422. package/build/src/start/server/metro/instantiateMetro.js +194 -0
  423. package/build/src/start/server/metro/instantiateMetro.js.map +1 -0
  424. package/build/src/start/server/metro/metroErrorInterface.js +198 -0
  425. package/build/src/start/server/metro/metroErrorInterface.js.map +1 -0
  426. package/build/src/start/server/metro/metroErrors.js +14 -0
  427. package/build/src/start/server/metro/metroErrors.js.map +1 -0
  428. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +51 -0
  429. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -0
  430. package/build/src/start/server/metro/router.js +83 -0
  431. package/build/src/start/server/metro/router.js.map +1 -0
  432. package/build/src/start/server/metro/runServer-fork.js +96 -0
  433. package/build/src/start/server/metro/runServer-fork.js.map +1 -0
  434. package/build/src/start/server/metro/serializeHtml.js +43 -0
  435. package/build/src/start/server/metro/serializeHtml.js.map +1 -0
  436. package/build/src/start/server/metro/symbolicate.js +6 -0
  437. package/build/src/start/server/metro/symbolicate.js.map +1 -0
  438. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +91 -0
  439. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -0
  440. package/build/src/start/server/metro/withMetroMultiPlatform.js +402 -0
  441. package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -0
  442. package/build/src/start/server/metro/withMetroResolvers.js +272 -0
  443. package/build/src/start/server/metro/withMetroResolvers.js.map +1 -0
  444. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +27 -0
  445. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -0
  446. package/build/src/start/server/middleware/CreateFileMiddleware.js +106 -0
  447. package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -0
  448. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +61 -0
  449. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -0
  450. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +236 -0
  451. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -0
  452. package/build/src/start/server/middleware/ExpoMiddleware.js +83 -0
  453. package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -0
  454. package/build/src/start/server/middleware/FaviconMiddleware.js +42 -0
  455. package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -0
  456. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +24 -0
  457. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -0
  458. package/build/src/start/server/middleware/InterstitialPageMiddleware.js +81 -0
  459. package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -0
  460. package/build/src/start/server/middleware/ManifestMiddleware.js +300 -0
  461. package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -0
  462. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +35 -0
  463. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -0
  464. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +75 -0
  465. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -0
  466. package/build/src/start/server/middleware/ServeStaticMiddleware.js +62 -0
  467. package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -0
  468. package/build/src/start/server/middleware/inspector/JsInspector.js +69 -0
  469. package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -0
  470. package/build/src/start/server/middleware/inspector/LaunchBrowser.js +61 -0
  471. package/build/src/start/server/middleware/inspector/LaunchBrowser.js.map +1 -0
  472. package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js +13 -0
  473. package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js.map +1 -0
  474. package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js +82 -0
  475. package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js.map +1 -0
  476. package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js +79 -0
  477. package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js.map +1 -0
  478. package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js +124 -0
  479. package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js.map +1 -0
  480. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +64 -0
  481. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -0
  482. package/build/src/start/server/middleware/inspector/middlwareMutations.js +19 -0
  483. package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -0
  484. package/build/src/start/server/middleware/metroOptions.js +128 -0
  485. package/build/src/start/server/middleware/metroOptions.js.map +1 -0
  486. package/build/src/start/server/middleware/mutations.js +19 -0
  487. package/build/src/start/server/middleware/mutations.js.map +1 -0
  488. package/build/src/start/server/middleware/remoteDevtoolsCorsMiddleware.js +31 -0
  489. package/build/src/start/server/middleware/remoteDevtoolsCorsMiddleware.js.map +1 -0
  490. package/build/src/start/server/middleware/remoteDevtoolsSecurityHeadersMiddleware.js +17 -0
  491. package/build/src/start/server/middleware/remoteDevtoolsSecurityHeadersMiddleware.js.map +1 -0
  492. package/build/src/start/server/middleware/resolveAssets.js +110 -0
  493. package/build/src/start/server/middleware/resolveAssets.js.map +1 -0
  494. package/build/src/start/server/middleware/resolvePlatform.js +47 -0
  495. package/build/src/start/server/middleware/resolvePlatform.js.map +1 -0
  496. package/build/src/start/server/middleware/server.types.js +6 -0
  497. package/build/src/start/server/middleware/server.types.js.map +1 -0
  498. package/build/src/start/server/middleware/suppressErrorMiddleware.js +16 -0
  499. package/build/src/start/server/middleware/suppressErrorMiddleware.js.map +1 -0
  500. package/build/src/start/server/openPlatforms.js +30 -0
  501. package/build/src/start/server/openPlatforms.js.map +1 -0
  502. package/build/src/start/server/platformBundlers.js +18 -0
  503. package/build/src/start/server/platformBundlers.js.map +1 -0
  504. package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js +38 -0
  505. package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js.map +1 -0
  506. package/build/src/start/server/type-generation/__typetests__/generateFixtures.js +38 -0
  507. package/build/src/start/server/type-generation/__typetests__/generateFixtures.js.map +1 -0
  508. package/build/src/start/server/type-generation/__typetests__/route.test.js +176 -0
  509. package/build/src/start/server/type-generation/__typetests__/route.test.js.map +1 -0
  510. package/build/src/start/server/type-generation/expo-env.js +27 -0
  511. package/build/src/start/server/type-generation/expo-env.js.map +1 -0
  512. package/build/src/start/server/type-generation/routes.js +474 -0
  513. package/build/src/start/server/type-generation/routes.js.map +1 -0
  514. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +56 -0
  515. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -0
  516. package/build/src/start/server/type-generation/tsconfig.js +89 -0
  517. package/build/src/start/server/type-generation/tsconfig.js.map +1 -0
  518. package/build/src/start/server/webTemplate.js +84 -0
  519. package/build/src/start/server/webTemplate.js.map +1 -0
  520. package/build/src/start/server/webpack/WebpackBundlerDevServer.js +266 -0
  521. package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -0
  522. package/build/src/start/server/webpack/compile.js +64 -0
  523. package/build/src/start/server/webpack/compile.js.map +1 -0
  524. package/build/src/start/server/webpack/formatWebpackMessages.js +94 -0
  525. package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -0
  526. package/build/src/start/server/webpack/resolveFromProject.js +43 -0
  527. package/build/src/start/server/webpack/resolveFromProject.js.map +1 -0
  528. package/build/src/start/server/webpack/tls.js +72 -0
  529. package/build/src/start/server/webpack/tls.js.map +1 -0
  530. package/build/src/start/startAsync.js +154 -0
  531. package/build/src/start/startAsync.js.map +1 -0
  532. package/build/src/utils/FileNotifier.js +90 -0
  533. package/build/src/utils/FileNotifier.js.map +1 -0
  534. package/build/src/utils/analytics/getDevClientProperties.js +47 -0
  535. package/build/src/utils/analytics/getDevClientProperties.js.map +1 -0
  536. package/build/src/utils/analytics/getMetroDebugProperties.js +15 -0
  537. package/build/src/utils/analytics/getMetroDebugProperties.js.map +1 -0
  538. package/build/src/utils/analytics/getMetroProperties.js +28 -0
  539. package/build/src/utils/analytics/getMetroProperties.js.map +1 -0
  540. package/build/src/utils/analytics/metroDebuggerMiddleware.js +55 -0
  541. package/build/src/utils/analytics/metroDebuggerMiddleware.js.map +1 -0
  542. package/build/src/utils/analytics/rudderstackClient.js +147 -0
  543. package/build/src/utils/analytics/rudderstackClient.js.map +1 -0
  544. package/build/src/utils/ansi.js +17 -0
  545. package/build/src/utils/ansi.js.map +1 -0
  546. package/build/src/utils/args.js +79 -0
  547. package/build/src/utils/args.js.map +1 -0
  548. package/build/src/utils/array.js +67 -0
  549. package/build/src/utils/array.js.map +1 -0
  550. package/build/src/utils/cocoapods.js +191 -0
  551. package/build/src/utils/cocoapods.js.map +1 -0
  552. package/build/src/utils/codesigning.js +311 -0
  553. package/build/src/utils/codesigning.js.map +1 -0
  554. package/build/src/utils/createFileTransform.js +89 -0
  555. package/build/src/utils/createFileTransform.js.map +1 -0
  556. package/build/src/utils/delay.js +39 -0
  557. package/build/src/utils/delay.js.map +1 -0
  558. package/build/src/utils/dir.js +63 -0
  559. package/build/src/utils/dir.js.map +1 -0
  560. package/build/src/utils/downloadAppAsync.js +73 -0
  561. package/build/src/utils/downloadAppAsync.js.map +1 -0
  562. package/build/src/utils/downloadExpoGoAsync.js +116 -0
  563. package/build/src/utils/downloadExpoGoAsync.js.map +1 -0
  564. package/build/src/utils/editor.js +69 -0
  565. package/build/src/utils/editor.js.map +1 -0
  566. package/build/src/utils/env.js +131 -0
  567. package/build/src/utils/env.js.map +1 -0
  568. package/build/src/utils/errors.js +70 -0
  569. package/build/src/utils/errors.js.map +1 -0
  570. package/build/src/utils/exit.js +69 -0
  571. package/build/src/utils/exit.js.map +1 -0
  572. package/build/src/utils/findUp.js +33 -0
  573. package/build/src/utils/findUp.js.map +1 -0
  574. package/build/src/utils/fn.js +32 -0
  575. package/build/src/utils/fn.js.map +1 -0
  576. package/build/src/utils/getOrPromptApplicationId.js +181 -0
  577. package/build/src/utils/getOrPromptApplicationId.js.map +1 -0
  578. package/build/src/utils/getRunningProcess.js +96 -0
  579. package/build/src/utils/getRunningProcess.js.map +1 -0
  580. package/build/src/utils/git.js +89 -0
  581. package/build/src/utils/git.js.map +1 -0
  582. package/build/src/utils/glob.js +65 -0
  583. package/build/src/utils/glob.js.map +1 -0
  584. package/build/src/utils/interactive.js +11 -0
  585. package/build/src/utils/interactive.js.map +1 -0
  586. package/build/src/utils/ip.js +16 -0
  587. package/build/src/utils/ip.js.map +1 -0
  588. package/build/src/utils/isModuleSymlinked.js +37 -0
  589. package/build/src/utils/isModuleSymlinked.js.map +1 -0
  590. package/build/src/utils/link.js +31 -0
  591. package/build/src/utils/link.js.map +1 -0
  592. package/build/src/utils/mergeGitIgnorePaths.js +154 -0
  593. package/build/src/utils/mergeGitIgnorePaths.js.map +1 -0
  594. package/build/src/utils/modifyConfigAsync.js +68 -0
  595. package/build/src/utils/modifyConfigAsync.js.map +1 -0
  596. package/build/src/utils/modifyConfigPlugins.js +51 -0
  597. package/build/src/utils/modifyConfigPlugins.js.map +1 -0
  598. package/build/src/utils/nodeEnv.js +11 -0
  599. package/build/src/utils/nodeEnv.js.map +1 -0
  600. package/build/src/utils/nodeModules.js +29 -0
  601. package/build/src/utils/nodeModules.js.map +1 -0
  602. package/build/src/utils/npm.js +116 -0
  603. package/build/src/utils/npm.js.map +1 -0
  604. package/build/src/utils/obj.js +45 -0
  605. package/build/src/utils/obj.js.map +1 -0
  606. package/build/src/utils/open.js +26 -0
  607. package/build/src/utils/open.js.map +1 -0
  608. package/build/src/utils/ora.js +91 -0
  609. package/build/src/utils/ora.js.map +1 -0
  610. package/build/src/utils/plist.js +59 -0
  611. package/build/src/utils/plist.js.map +1 -0
  612. package/build/src/utils/port.js +160 -0
  613. package/build/src/utils/port.js.map +1 -0
  614. package/build/src/utils/profile.js +63 -0
  615. package/build/src/utils/profile.js.map +1 -0
  616. package/build/src/utils/progress.js +61 -0
  617. package/build/src/utils/progress.js.map +1 -0
  618. package/build/src/utils/prompts.js +116 -0
  619. package/build/src/utils/prompts.js.map +1 -0
  620. package/build/src/utils/resolveArgs.js +140 -0
  621. package/build/src/utils/resolveArgs.js.map +1 -0
  622. package/build/src/utils/scheme.js +128 -0
  623. package/build/src/utils/scheme.js.map +1 -0
  624. package/build/src/utils/strings.js +24 -0
  625. package/build/src/utils/strings.js.map +1 -0
  626. package/build/src/utils/tar.js +62 -0
  627. package/build/src/utils/tar.js.map +1 -0
  628. package/build/src/utils/template.js +21 -0
  629. package/build/src/utils/template.js.map +1 -0
  630. package/build/src/utils/terminal.js +10 -0
  631. package/build/src/utils/terminal.js.map +1 -0
  632. package/build/src/utils/tsconfig/evaluateTsConfig.js +61 -0
  633. package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -0
  634. package/build/src/utils/tsconfig/loadTsConfigPaths.js +61 -0
  635. package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -0
  636. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +88 -0
  637. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -0
  638. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +51 -0
  639. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -0
  640. package/build/src/utils/url.js +67 -0
  641. package/build/src/utils/url.js.map +1 -0
  642. package/build/src/utils/validateApplicationId.js +179 -0
  643. package/build/src/utils/validateApplicationId.js.map +1 -0
  644. package/build/src/utils/variadic.js +65 -0
  645. package/build/src/utils/variadic.js.map +1 -0
  646. package/build/src/whoami/index.js +47 -0
  647. package/build/src/whoami/index.js.map +1 -0
  648. package/build/src/whoami/whoamiAsync.js +44 -0
  649. package/build/src/whoami/whoamiAsync.js.map +1 -0
  650. package/package.json +163 -0
  651. package/static/loading-page/index.html +363 -0
  652. package/static/react-devtools-page/index.html +144 -0
  653. package/static/shims/react-native-web/dist/cjs/exports/AppRegistry/AppContainer.js +13 -0
  654. package/static/shims/react-native-web/dist/cjs/exports/BackHandler/index.js +10 -0
  655. package/static/shims/react-native-web/dist/exports/AppRegistry/AppContainer.js +12 -0
  656. package/static/shims/react-native-web/dist/exports/BackHandler/index.js +7 -0
  657. package/static/template/babel.config.js +6 -0
  658. package/static/template/index.html +36 -0
  659. package/static/template/metro.config.js +7 -0
  660. package/static/template/serve.json +13 -0
  661. package/static/template/webpack.config.js +7 -0
@@ -0,0 +1,278 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.unstable_exportStaticAsync = unstable_exportStaticAsync;
6
+ exports.getFilesToExportFromServerAsync = getFilesToExportFromServerAsync;
7
+ exports.getHtmlFiles = getHtmlFiles;
8
+ exports.getPathVariations = getPathVariations;
9
+ var _config = require("@expo/config");
10
+ var _assert = _interopRequireDefault(require("assert"));
11
+ var _chalk = _interopRequireDefault(require("chalk"));
12
+ var _fs = _interopRequireDefault(require("fs"));
13
+ var _path = _interopRequireDefault(require("path"));
14
+ var _util = require("util");
15
+ var _favicon = require("./favicon");
16
+ var _persistMetroAssets = require("./persistMetroAssets");
17
+ var _saveAssets = require("./saveAssets");
18
+ var _log = require("../log");
19
+ var _devServerManager = require("../start/server/DevServerManager");
20
+ var _metroBundlerDevServer = require("../start/server/metro/MetroBundlerDevServer");
21
+ var _metroErrorInterface = require("../start/server/metro/metroErrorInterface");
22
+ var _router = require("../start/server/metro/router");
23
+ var _serializeHtml = require("../start/server/metro/serializeHtml");
24
+ var _link = require("../utils/link");
25
+ var _port = require("../utils/port");
26
+ function _interopRequireDefault(obj) {
27
+ return obj && obj.__esModule ? obj : {
28
+ default: obj
29
+ };
30
+ }
31
+ const debug = require("debug")("expo:export:generateStaticRoutes");
32
+ async function unstable_exportStaticAsync(projectRoot, options) {
33
+ _log.Log.warn(`Experimental static rendering is enabled. ` + (0, _link).learnMore("https://docs.expo.dev/router/reference/static-rendering/"));
34
+ // Useful for running parallel e2e tests in CI.
35
+ const port = await (0, _port).getFreePortAsync(8082);
36
+ // TODO: Prevent starting the watcher.
37
+ const devServerManager = new _devServerManager.DevServerManager(projectRoot, {
38
+ minify: options.minify,
39
+ mode: "production",
40
+ port,
41
+ location: {},
42
+ resetDevServer: options.clear
43
+ });
44
+ await devServerManager.startAsync([
45
+ {
46
+ type: "metro",
47
+ options: {
48
+ port,
49
+ location: {},
50
+ isExporting: true,
51
+ resetDevServer: options.clear
52
+ }
53
+ },
54
+ ]);
55
+ try {
56
+ return await exportFromServerAsync(projectRoot, devServerManager, options);
57
+ } finally{
58
+ await devServerManager.stopAsync();
59
+ }
60
+ }
61
+ /** Match `(page)` -> `page` */ function matchGroupName(name) {
62
+ var ref;
63
+ return (ref = name.match(/^\(([^/]+?)\)$/)) == null ? void 0 : ref[1];
64
+ }
65
+ async function getFilesToExportFromServerAsync(projectRoot, { manifest , renderAsync , includeGroupVariations , // name : contents
66
+ files =new Map() }) {
67
+ await Promise.all(getHtmlFiles({
68
+ manifest,
69
+ includeGroupVariations
70
+ }).map(async (outputPath)=>{
71
+ const pathname = outputPath.replace(/(?:index)?\.html$/, "");
72
+ try {
73
+ files.set(outputPath, {
74
+ contents: ""
75
+ });
76
+ const data = await renderAsync(pathname);
77
+ files.set(outputPath, {
78
+ contents: data,
79
+ routeId: pathname
80
+ });
81
+ } catch (e) {
82
+ await (0, _metroErrorInterface).logMetroErrorAsync({
83
+ error: e,
84
+ projectRoot
85
+ });
86
+ throw new Error("Failed to statically export route: " + pathname);
87
+ }
88
+ }));
89
+ return files;
90
+ }
91
+ /** Perform all fs commits */ async function exportFromServerAsync(projectRoot, devServerManager, { outputDir , baseUrl , exportServer , minify , includeSourceMaps , files =new Map() }) {
92
+ const { exp } = (0, _config).getConfig(projectRoot, {
93
+ skipSDKVersionRequirement: true
94
+ });
95
+ const appDir = (0, _router).getRouterDirectoryWithManifest(projectRoot, exp);
96
+ const injectFaviconTag = await (0, _favicon).getVirtualFaviconAssetsAsync(projectRoot, {
97
+ outputDir,
98
+ baseUrl,
99
+ files
100
+ });
101
+ const devServer = devServerManager.getDefaultDevServer();
102
+ (0, _assert).default(devServer instanceof _metroBundlerDevServer.MetroBundlerDevServer);
103
+ const [resources, { manifest , serverManifest , renderAsync }] = await Promise.all([
104
+ devServer.getStaticResourcesAsync({
105
+ isExporting: true,
106
+ mode: "production",
107
+ minify,
108
+ includeSourceMaps,
109
+ baseUrl
110
+ }),
111
+ devServer.getStaticRenderFunctionAsync({
112
+ mode: "production",
113
+ minify,
114
+ baseUrl
115
+ }),
116
+ ]);
117
+ debug("Routes:\n", (0, _util).inspect(manifest, {
118
+ colors: true,
119
+ depth: null
120
+ }));
121
+ await getFilesToExportFromServerAsync(projectRoot, {
122
+ files,
123
+ manifest,
124
+ // Servers can handle group routes automatically and therefore
125
+ // don't require the build-time generation of every possible group
126
+ // variation.
127
+ includeGroupVariations: !exportServer,
128
+ async renderAsync (pathname) {
129
+ const template = await renderAsync(pathname);
130
+ let html = await (0, _serializeHtml).serializeHtmlWithAssets({
131
+ mode: "production",
132
+ resources: resources.artifacts,
133
+ template,
134
+ baseUrl
135
+ });
136
+ if (injectFaviconTag) {
137
+ html = injectFaviconTag(html);
138
+ }
139
+ return html;
140
+ }
141
+ });
142
+ (0, _saveAssets).getFilesFromSerialAssets(resources.artifacts, {
143
+ includeSourceMaps,
144
+ files
145
+ });
146
+ if (resources.assets) {
147
+ // TODO: Collect files without writing to disk.
148
+ await (0, _persistMetroAssets).persistMetroAssetsAsync(resources.assets, {
149
+ platform: "web",
150
+ outputDirectory: outputDir,
151
+ baseUrl
152
+ });
153
+ }
154
+ if (exportServer) {
155
+ const apiRoutes = await exportApiRoutesAsync({
156
+ outputDir,
157
+ server: devServer,
158
+ appDir,
159
+ manifest: serverManifest,
160
+ baseUrl
161
+ });
162
+ // Add the api routes to the files to export.
163
+ for (const [route, contents] of apiRoutes){
164
+ files.set(route, contents);
165
+ }
166
+ } else {
167
+ warnPossibleInvalidExportType(appDir);
168
+ }
169
+ return files;
170
+ }
171
+ function getHtmlFiles({ manifest , includeGroupVariations }) {
172
+ const htmlFiles = new Set();
173
+ function traverseScreens(screens, baseUrl = "") {
174
+ for (const value of Object.values(screens)){
175
+ if (typeof value === "string") {
176
+ let filePath = baseUrl + value;
177
+ if (value === "") {
178
+ filePath = baseUrl === "" ? "index" : baseUrl.endsWith("/") ? baseUrl + "index" : baseUrl.slice(0, -1);
179
+ }
180
+ if (includeGroupVariations) {
181
+ // TODO: Dedupe requests for alias routes.
182
+ addOptionalGroups(filePath);
183
+ } else {
184
+ htmlFiles.add(filePath);
185
+ }
186
+ } else if (typeof value === "object" && (value == null ? void 0 : value.screens)) {
187
+ const newPath = baseUrl + value.path + "/";
188
+ traverseScreens(value.screens, newPath);
189
+ }
190
+ }
191
+ }
192
+ function addOptionalGroups(path) {
193
+ const variations = getPathVariations(path);
194
+ for (const variation of variations){
195
+ htmlFiles.add(variation);
196
+ }
197
+ }
198
+ traverseScreens(manifest.screens);
199
+ return Array.from(htmlFiles).map((value)=>{
200
+ const parts = value.split("/");
201
+ // Replace `:foo` with `[foo]` and `*foo` with `[...foo]`
202
+ const partsWithGroups = parts.map((part)=>{
203
+ if (part === "*not-found") {
204
+ return `+not-found`;
205
+ } else if (part.startsWith(":")) {
206
+ return `[${part.slice(1)}]`;
207
+ } else if (part.startsWith("*")) {
208
+ return `[...${part.slice(1)}]`;
209
+ }
210
+ return part;
211
+ });
212
+ return partsWithGroups.join("/") + ".html";
213
+ });
214
+ }
215
+ function getPathVariations(routePath) {
216
+ const variations = new Set();
217
+ const segments1 = routePath.split("/");
218
+ function generateVariations(segments, current = "") {
219
+ if (segments.length === 0) {
220
+ if (current) variations.add(current);
221
+ return;
222
+ }
223
+ const [head, ...rest] = segments;
224
+ if (matchGroupName(head)) {
225
+ const groups = head.slice(1, -1).split(",");
226
+ if (groups.length > 1) {
227
+ for (const group of groups){
228
+ // If there are multiple groups, recurse on each group.
229
+ generateVariations([
230
+ `(${group.trim()})`,
231
+ ...rest
232
+ ], current);
233
+ }
234
+ return;
235
+ } else {
236
+ // Start a fork where this group is included
237
+ generateVariations(rest, current ? `${current}/(${groups[0]})` : `(${groups[0]})`);
238
+ // This code will continue and add paths without this group included`
239
+ }
240
+ } else if (current) {
241
+ current = `${current}/${head}`;
242
+ } else {
243
+ current = head;
244
+ }
245
+ generateVariations(rest, current);
246
+ }
247
+ generateVariations(segments1);
248
+ return Array.from(variations);
249
+ }
250
+ async function exportApiRoutesAsync({ outputDir , server , appDir , baseUrl , ...props }) {
251
+ const functionsDir = "_expo/functions";
252
+ const funcDir = _path.default.join(outputDir, functionsDir);
253
+ _fs.default.mkdirSync(_path.default.join(funcDir), {
254
+ recursive: true
255
+ });
256
+ const { manifest , files } = await server.exportExpoRouterApiRoutesAsync({
257
+ mode: "production",
258
+ appDir,
259
+ outputDir: functionsDir,
260
+ prerenderManifest: props.manifest,
261
+ baseUrl
262
+ });
263
+ _log.Log.log(_chalk.default.bold`Exporting ${files.size} API Routes.`);
264
+ files.set("_expo/routes.json", {
265
+ contents: JSON.stringify(manifest, null, 2)
266
+ });
267
+ return files;
268
+ }
269
+ function warnPossibleInvalidExportType(appDir) {
270
+ const apiRoutes = (0, _router).getApiRoutesForDirectory(appDir);
271
+ if (apiRoutes.length) {
272
+ // TODO: Allow API Routes for native-only.
273
+ _log.Log.warn(_chalk.default.yellow`Skipping export for API routes because \`web.output\` is not "server". You may want to remove the routes: ${apiRoutes.map((v)=>_path.default.relative(appDir, v)
274
+ ).join(", ")}`);
275
+ }
276
+ }
277
+
278
+ //# sourceMappingURL=exportStaticAsync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/export/exportStaticAsync.ts"],"sourcesContent":["/**\n * Copyright © 2022 650 Industries.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { getConfig } from '@expo/config';\nimport assert from 'assert';\nimport chalk from 'chalk';\nimport fs from 'fs';\nimport path from 'path';\nimport { inspect } from 'util';\n\nimport { getVirtualFaviconAssetsAsync } from './favicon';\nimport { persistMetroAssetsAsync } from './persistMetroAssets';\nimport { ExportAssetMap, getFilesFromSerialAssets } from './saveAssets';\nimport { Log } from '../log';\nimport { DevServerManager } from '../start/server/DevServerManager';\nimport { MetroBundlerDevServer } from '../start/server/metro/MetroBundlerDevServer';\nimport { ExpoRouterServerManifestV1 } from '../start/server/metro/fetchRouterManifest';\nimport { logMetroErrorAsync } from '../start/server/metro/metroErrorInterface';\nimport {\n getApiRoutesForDirectory,\n getRouterDirectoryWithManifest,\n} from '../start/server/metro/router';\nimport { serializeHtmlWithAssets } from '../start/server/metro/serializeHtml';\nimport { learnMore } from '../utils/link';\nimport { getFreePortAsync } from '../utils/port';\n\nconst debug = require('debug')('expo:export:generateStaticRoutes') as typeof console.log;\n\ntype Options = {\n files?: ExportAssetMap;\n outputDir: string;\n minify: boolean;\n exportServer: boolean;\n baseUrl: string;\n includeSourceMaps: boolean;\n entryPoint?: string;\n clear: boolean;\n};\n\n/** @private */\nexport async function unstable_exportStaticAsync(projectRoot: string, options: Options) {\n Log.warn(\n `Experimental static rendering is enabled. ` +\n learnMore('https://docs.expo.dev/router/reference/static-rendering/')\n );\n\n // Useful for running parallel e2e tests in CI.\n const port = await getFreePortAsync(8082);\n\n // TODO: Prevent starting the watcher.\n const devServerManager = new DevServerManager(projectRoot, {\n minify: options.minify,\n mode: 'production',\n port,\n location: {},\n resetDevServer: options.clear,\n });\n await devServerManager.startAsync([\n {\n type: 'metro',\n options: {\n port,\n location: {},\n isExporting: true,\n resetDevServer: options.clear,\n },\n },\n ]);\n\n try {\n return await exportFromServerAsync(projectRoot, devServerManager, options);\n } finally {\n await devServerManager.stopAsync();\n }\n}\n\n/** Match `(page)` -> `page` */\nfunction matchGroupName(name: string): string | undefined {\n return name.match(/^\\(([^/]+?)\\)$/)?.[1];\n}\n\nexport async function getFilesToExportFromServerAsync(\n projectRoot: string,\n {\n manifest,\n renderAsync,\n includeGroupVariations,\n // name : contents\n files = new Map(),\n }: {\n manifest: any;\n renderAsync: (pathname: string) => Promise<string>;\n includeGroupVariations?: boolean;\n files?: ExportAssetMap;\n }\n): Promise<ExportAssetMap> {\n await Promise.all(\n getHtmlFiles({ manifest, includeGroupVariations }).map(async (outputPath) => {\n const pathname = outputPath.replace(/(?:index)?\\.html$/, '');\n try {\n files.set(outputPath, { contents: '' });\n const data = await renderAsync(pathname);\n files.set(outputPath, {\n contents: data,\n routeId: pathname,\n });\n } catch (e: any) {\n await logMetroErrorAsync({ error: e, projectRoot });\n throw new Error('Failed to statically export route: ' + pathname);\n }\n })\n );\n\n return files;\n}\n\n/** Perform all fs commits */\nasync function exportFromServerAsync(\n projectRoot: string,\n devServerManager: DevServerManager,\n { outputDir, baseUrl, exportServer, minify, includeSourceMaps, files = new Map() }: Options\n): Promise<ExportAssetMap> {\n const { exp } = getConfig(projectRoot, { skipSDKVersionRequirement: true });\n const appDir = getRouterDirectoryWithManifest(projectRoot, exp);\n const injectFaviconTag = await getVirtualFaviconAssetsAsync(projectRoot, {\n outputDir,\n baseUrl,\n files,\n });\n\n const devServer = devServerManager.getDefaultDevServer();\n assert(devServer instanceof MetroBundlerDevServer);\n\n const [resources, { manifest, serverManifest, renderAsync }] = await Promise.all([\n devServer.getStaticResourcesAsync({\n isExporting: true,\n mode: 'production',\n minify,\n includeSourceMaps,\n baseUrl,\n }),\n devServer.getStaticRenderFunctionAsync({\n mode: 'production',\n minify,\n baseUrl,\n }),\n ]);\n\n debug('Routes:\\n', inspect(manifest, { colors: true, depth: null }));\n\n await getFilesToExportFromServerAsync(projectRoot, {\n files,\n manifest,\n // Servers can handle group routes automatically and therefore\n // don't require the build-time generation of every possible group\n // variation.\n includeGroupVariations: !exportServer,\n async renderAsync(pathname: string) {\n const template = await renderAsync(pathname);\n let html = await serializeHtmlWithAssets({\n mode: 'production',\n resources: resources.artifacts,\n template,\n baseUrl,\n });\n\n if (injectFaviconTag) {\n html = injectFaviconTag(html);\n }\n\n return html;\n },\n });\n\n getFilesFromSerialAssets(resources.artifacts, {\n includeSourceMaps,\n files,\n });\n\n if (resources.assets) {\n // TODO: Collect files without writing to disk.\n await persistMetroAssetsAsync(resources.assets, {\n platform: 'web',\n outputDirectory: outputDir,\n baseUrl,\n });\n }\n\n if (exportServer) {\n const apiRoutes = await exportApiRoutesAsync({\n outputDir,\n server: devServer,\n appDir,\n manifest: serverManifest,\n baseUrl,\n });\n\n // Add the api routes to the files to export.\n for (const [route, contents] of apiRoutes) {\n files.set(route, contents);\n }\n } else {\n warnPossibleInvalidExportType(appDir);\n }\n\n return files;\n}\n\nexport function getHtmlFiles({\n manifest,\n includeGroupVariations,\n}: {\n manifest: any;\n includeGroupVariations?: boolean;\n}): string[] {\n const htmlFiles = new Set<string>();\n\n function traverseScreens(screens: string | { screens: any; path: string }, baseUrl = '') {\n for (const value of Object.values(screens)) {\n if (typeof value === 'string') {\n let filePath = baseUrl + value;\n if (value === '') {\n filePath =\n baseUrl === ''\n ? 'index'\n : baseUrl.endsWith('/')\n ? baseUrl + 'index'\n : baseUrl.slice(0, -1);\n }\n if (includeGroupVariations) {\n // TODO: Dedupe requests for alias routes.\n addOptionalGroups(filePath);\n } else {\n htmlFiles.add(filePath);\n }\n } else if (typeof value === 'object' && value?.screens) {\n const newPath = baseUrl + value.path + '/';\n traverseScreens(value.screens, newPath);\n }\n }\n }\n\n function addOptionalGroups(path: string) {\n const variations = getPathVariations(path);\n for (const variation of variations) {\n htmlFiles.add(variation);\n }\n }\n\n traverseScreens(manifest.screens);\n\n return Array.from(htmlFiles).map((value) => {\n const parts = value.split('/');\n // Replace `:foo` with `[foo]` and `*foo` with `[...foo]`\n const partsWithGroups = parts.map((part) => {\n if (part === '*not-found') {\n return `+not-found`;\n } else if (part.startsWith(':')) {\n return `[${part.slice(1)}]`;\n } else if (part.startsWith('*')) {\n return `[...${part.slice(1)}]`;\n }\n return part;\n });\n return partsWithGroups.join('/') + '.html';\n });\n}\n\n// Given a route like `(foo)/bar/(baz)`, return all possible variations of the route.\n// e.g. `(foo)/bar/(baz)`, `(foo)/bar/baz`, `foo/bar/(baz)`, `foo/bar/baz`,\nexport function getPathVariations(routePath: string): string[] {\n const variations = new Set<string>();\n const segments = routePath.split('/');\n\n function generateVariations(segments: string[], current = ''): void {\n if (segments.length === 0) {\n if (current) variations.add(current);\n return;\n }\n\n const [head, ...rest] = segments;\n\n if (matchGroupName(head)) {\n const groups = head.slice(1, -1).split(',');\n\n if (groups.length > 1) {\n for (const group of groups) {\n // If there are multiple groups, recurse on each group.\n generateVariations([`(${group.trim()})`, ...rest], current);\n }\n return;\n } else {\n // Start a fork where this group is included\n generateVariations(rest, current ? `${current}/(${groups[0]})` : `(${groups[0]})`);\n // This code will continue and add paths without this group included`\n }\n } else if (current) {\n current = `${current}/${head}`;\n } else {\n current = head;\n }\n\n generateVariations(rest, current);\n }\n\n generateVariations(segments);\n\n return Array.from(variations);\n}\n\nasync function exportApiRoutesAsync({\n outputDir,\n server,\n appDir,\n baseUrl,\n ...props\n}: {\n outputDir: string;\n server: MetroBundlerDevServer;\n appDir: string;\n manifest: ExpoRouterServerManifestV1;\n baseUrl: string;\n}): Promise<ExportAssetMap> {\n const functionsDir = '_expo/functions';\n const funcDir = path.join(outputDir, functionsDir);\n fs.mkdirSync(path.join(funcDir), { recursive: true });\n\n const { manifest, files } = await server.exportExpoRouterApiRoutesAsync({\n mode: 'production',\n appDir,\n outputDir: functionsDir,\n prerenderManifest: props.manifest,\n baseUrl,\n });\n\n Log.log(chalk.bold`Exporting ${files.size} API Routes.`);\n\n files.set('_expo/routes.json', { contents: JSON.stringify(manifest, null, 2) });\n\n return files;\n}\n\nfunction warnPossibleInvalidExportType(appDir: string) {\n const apiRoutes = getApiRoutesForDirectory(appDir);\n if (apiRoutes.length) {\n // TODO: Allow API Routes for native-only.\n Log.warn(\n chalk.yellow`Skipping export for API routes because \\`web.output\\` is not \"server\". You may want to remove the routes: ${apiRoutes\n .map((v) => path.relative(appDir, v))\n .join(', ')}`\n );\n }\n}\n"],"names":["unstable_exportStaticAsync","getFilesToExportFromServerAsync","getHtmlFiles","getPathVariations","debug","require","projectRoot","options","Log","warn","learnMore","port","getFreePortAsync","devServerManager","DevServerManager","minify","mode","location","resetDevServer","clear","startAsync","type","isExporting","exportFromServerAsync","stopAsync","matchGroupName","name","match","manifest","renderAsync","includeGroupVariations","files","Map","Promise","all","map","outputPath","pathname","replace","set","contents","data","routeId","e","logMetroErrorAsync","error","Error","outputDir","baseUrl","exportServer","includeSourceMaps","exp","getConfig","skipSDKVersionRequirement","appDir","getRouterDirectoryWithManifest","injectFaviconTag","getVirtualFaviconAssetsAsync","devServer","getDefaultDevServer","assert","MetroBundlerDevServer","resources","serverManifest","getStaticResourcesAsync","getStaticRenderFunctionAsync","inspect","colors","depth","template","html","serializeHtmlWithAssets","artifacts","getFilesFromSerialAssets","assets","persistMetroAssetsAsync","platform","outputDirectory","apiRoutes","exportApiRoutesAsync","server","route","warnPossibleInvalidExportType","htmlFiles","Set","traverseScreens","screens","value","Object","values","filePath","endsWith","slice","addOptionalGroups","add","newPath","path","variations","variation","Array","from","parts","split","partsWithGroups","part","startsWith","join","routePath","segments","generateVariations","current","length","head","rest","groups","group","trim","props","functionsDir","funcDir","fs","mkdirSync","recursive","exportExpoRouterApiRoutesAsync","prerenderManifest","log","chalk","bold","size","JSON","stringify","getApiRoutesForDirectory","yellow","v","relative"],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.getUserDefinedFaviconFile = getUserDefinedFaviconFile;
6
+ exports.getVirtualFaviconAssetsAsync = getVirtualFaviconAssetsAsync;
7
+ exports.getFaviconFromExpoConfigAsync = getFaviconFromExpoConfigAsync;
8
+ var _config = require("@expo/config");
9
+ var _imageUtils = require("@expo/image-utils");
10
+ var _fs = _interopRequireDefault(require("fs"));
11
+ var _path = _interopRequireDefault(require("path"));
12
+ var _publicFolder = require("./publicFolder");
13
+ function _interopRequireDefault(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
18
+ const debug = require("debug")("expo:favicon");
19
+ function getUserDefinedFaviconFile(projectRoot) {
20
+ return (0, _publicFolder).getUserDefinedFile(projectRoot, [
21
+ "./favicon.ico"
22
+ ]);
23
+ }
24
+ async function getVirtualFaviconAssetsAsync(projectRoot, { baseUrl , outputDir , files }) {
25
+ const existing = getUserDefinedFaviconFile(projectRoot);
26
+ if (existing) {
27
+ debug("Using user-defined favicon.ico file.");
28
+ return null;
29
+ }
30
+ const data = await getFaviconFromExpoConfigAsync(projectRoot);
31
+ if (!data) {
32
+ return null;
33
+ }
34
+ await Promise.all([
35
+ data
36
+ ].map(async (asset)=>{
37
+ const assetPath = _path.default.join(outputDir, asset.path);
38
+ if (files) {
39
+ debug("Storing asset for persisting: " + assetPath);
40
+ files == null ? void 0 : files.set(asset.path, {
41
+ contents: asset.source
42
+ });
43
+ } else {
44
+ debug("Writing asset to disk: " + assetPath);
45
+ await _fs.default.promises.writeFile(assetPath, asset.source);
46
+ }
47
+ }));
48
+ function injectFaviconTag(html) {
49
+ if (!html.includes("</head>")) {
50
+ return html;
51
+ }
52
+ return html.replace("</head>", `<link rel="shortcut icon" href="${baseUrl}/favicon.ico" /></head>`);
53
+ }
54
+ return injectFaviconTag;
55
+ }
56
+ async function getFaviconFromExpoConfigAsync(projectRoot) {
57
+ var ref;
58
+ const { exp } = (0, _config).getConfig(projectRoot);
59
+ var ref1;
60
+ const src = (ref1 = (ref = exp.web) == null ? void 0 : ref.favicon) != null ? ref1 : null;
61
+ if (!src) {
62
+ return null;
63
+ }
64
+ const dims = [
65
+ 16,
66
+ 32,
67
+ 48
68
+ ];
69
+ const cacheType = "favicon";
70
+ const size = dims[dims.length - 1];
71
+ const { source } = await (0, _imageUtils).generateImageAsync({
72
+ projectRoot,
73
+ cacheType
74
+ }, {
75
+ resizeMode: "contain",
76
+ src,
77
+ backgroundColor: "transparent",
78
+ width: size,
79
+ height: size,
80
+ name: `favicon-${size}.png`
81
+ });
82
+ const faviconBuffer = await (0, _imageUtils).generateFaviconAsync(source, dims);
83
+ return {
84
+ source: faviconBuffer,
85
+ path: "favicon.ico"
86
+ };
87
+ }
88
+
89
+ //# sourceMappingURL=favicon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/export/favicon.ts"],"sourcesContent":["import { getConfig } from '@expo/config';\nimport { generateFaviconAsync, generateImageAsync } from '@expo/image-utils';\nimport fs from 'fs';\nimport path from 'path';\n\nimport { getUserDefinedFile } from './publicFolder';\nimport { ExportAssetMap } from './saveAssets';\n\nconst debug = require('debug')('expo:favicon') as typeof console.log;\n\n/** @returns the file system path for a user-defined favicon.ico file in the public folder. */\nexport function getUserDefinedFaviconFile(projectRoot: string): string | null {\n return getUserDefinedFile(projectRoot, ['./favicon.ico']);\n}\n\nexport async function getVirtualFaviconAssetsAsync(\n projectRoot: string,\n { baseUrl, outputDir, files }: { outputDir: string; baseUrl: string; files?: ExportAssetMap }\n): Promise<((html: string) => string) | null> {\n const existing = getUserDefinedFaviconFile(projectRoot);\n if (existing) {\n debug('Using user-defined favicon.ico file.');\n return null;\n }\n\n const data = await getFaviconFromExpoConfigAsync(projectRoot);\n\n if (!data) {\n return null;\n }\n\n await Promise.all(\n [data].map(async (asset) => {\n const assetPath = path.join(outputDir, asset.path);\n if (files) {\n debug('Storing asset for persisting: ' + assetPath);\n files?.set(asset.path, { contents: asset.source });\n } else {\n debug('Writing asset to disk: ' + assetPath);\n await fs.promises.writeFile(assetPath, asset.source);\n }\n })\n );\n\n function injectFaviconTag(html: string): string {\n if (!html.includes('</head>')) {\n return html;\n }\n return html.replace(\n '</head>',\n `<link rel=\"shortcut icon\" href=\"${baseUrl}/favicon.ico\" /></head>`\n );\n }\n\n return injectFaviconTag;\n}\n\nexport async function getFaviconFromExpoConfigAsync(projectRoot: string) {\n const { exp } = getConfig(projectRoot);\n\n const src = exp.web?.favicon ?? null;\n if (!src) {\n return null;\n }\n\n const dims = [16, 32, 48];\n const cacheType = 'favicon';\n\n const size = dims[dims.length - 1];\n const { source } = await generateImageAsync(\n { projectRoot, cacheType },\n {\n resizeMode: 'contain',\n src,\n backgroundColor: 'transparent',\n width: size,\n height: size,\n name: `favicon-${size}.png`,\n }\n );\n\n const faviconBuffer = await generateFaviconAsync(source, dims);\n\n return { source: faviconBuffer, path: 'favicon.ico' };\n}\n"],"names":["getUserDefinedFaviconFile","getVirtualFaviconAssetsAsync","getFaviconFromExpoConfigAsync","debug","require","projectRoot","getUserDefinedFile","baseUrl","outputDir","files","existing","data","Promise","all","map","asset","assetPath","path","join","set","contents","source","fs","promises","writeFile","injectFaviconTag","html","includes","replace","exp","getConfig","src","web","favicon","dims","cacheType","size","length","generateImageAsync","resizeMode","backgroundColor","width","height","name","faviconBuffer","generateFaviconAsync"],"mappings":"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"}
@@ -0,0 +1,215 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.createBundlesAsync = createBundlesAsync;
6
+ exports.getAssets = getAssets;
7
+ var _config = require("@expo/config");
8
+ var _assert = _interopRequireDefault(require("assert"));
9
+ var _metro = _interopRequireDefault(require("metro"));
10
+ var _getAssets = _interopRequireDefault(require("metro/src/DeltaBundler/Serializers/getAssets"));
11
+ var _server = _interopRequireDefault(require("metro/src/Server"));
12
+ var _splitBundleOptions = _interopRequireDefault(require("metro/src/lib/splitBundleOptions"));
13
+ var _path = _interopRequireDefault(require("path"));
14
+ var _exportHermes = require("./exportHermes");
15
+ var _instantiateMetro = require("../start/server/metro/instantiateMetro");
16
+ var _manifestMiddleware = require("../start/server/middleware/ManifestMiddleware");
17
+ var _metroOptions = require("../start/server/middleware/metroOptions");
18
+ function _interopRequireDefault(obj) {
19
+ return obj && obj.__esModule ? obj : {
20
+ default: obj
21
+ };
22
+ }
23
+ let nextBuildID = 0;
24
+ async function assertEngineMismatchAsync(projectRoot, exp, platform) {
25
+ const isHermesManaged = (0, _exportHermes).isEnableHermesManaged(exp, platform);
26
+ const paths = (0, _config).getConfigFilePaths(projectRoot);
27
+ var _dynamicConfigPath, ref;
28
+ const configFilePath = (ref = (_dynamicConfigPath = paths.dynamicConfigPath) != null ? _dynamicConfigPath : paths.staticConfigPath) != null ? ref : "app.json";
29
+ await (0, _exportHermes).maybeThrowFromInconsistentEngineAsync(projectRoot, configFilePath, platform, isHermesManaged);
30
+ }
31
+ async function createBundlesAsync(projectRoot, projectConfig, bundleOptions) {
32
+ if (!bundleOptions.platforms.length) {
33
+ return {};
34
+ }
35
+ const { exp , pkg } = projectConfig;
36
+ var _entryPoint;
37
+ const bundles = await bundleProductionMetroClientAsync(projectRoot, exp, {
38
+ // If not legacy, ignore the target option to prevent warnings from being thrown.
39
+ resetCache: bundleOptions.clear,
40
+ maxWorkers: bundleOptions.maxWorkers
41
+ }, bundleOptions.platforms.map((platform)=>({
42
+ platform,
43
+ entryPoint: (_entryPoint = bundleOptions.entryPoint) != null ? _entryPoint : (0, _manifestMiddleware).getEntryWithServerRoot(projectRoot, {
44
+ platform,
45
+ pkg
46
+ }),
47
+ sourcemaps: bundleOptions.sourcemaps,
48
+ minify: bundleOptions.minify,
49
+ dev: bundleOptions.dev
50
+ })
51
+ ));
52
+ // { ios: bundle, android: bundle }
53
+ return bundleOptions.platforms.reduce((prev, platform, index)=>({
54
+ ...prev,
55
+ [platform]: bundles[index]
56
+ })
57
+ , {});
58
+ }
59
+ async function bundleProductionMetroClientAsync(projectRoot, expoConfig, metroOptions, bundles) {
60
+ // Assert early so the user doesn't have to wait until bundling is complete to find out that
61
+ // Hermes won't be available.
62
+ await Promise.all(bundles.map(({ platform })=>assertEngineMismatchAsync(projectRoot, expoConfig, platform)
63
+ ));
64
+ const { config , reporter } = await (0, _instantiateMetro).loadMetroConfigAsync(projectRoot, metroOptions, {
65
+ exp: expoConfig,
66
+ isExporting: true
67
+ });
68
+ const metroServer = await _metro.default.runMetro(config, {
69
+ watch: false
70
+ });
71
+ const buildAsync = async (bundle)=>{
72
+ const buildID = `bundle_${nextBuildID++}_${bundle.platform}`;
73
+ const isHermes = (0, _exportHermes).isEnableHermesManaged(expoConfig, bundle.platform);
74
+ if (isHermes) {
75
+ await assertEngineMismatchAsync(projectRoot, expoConfig, bundle.platform);
76
+ }
77
+ const bundleOptions = {
78
+ ..._server.default.DEFAULT_BUNDLE_OPTIONS,
79
+ sourceMapUrl: bundle.sourceMapUrl,
80
+ ...(0, _metroOptions).getMetroDirectBundleOptions({
81
+ mainModuleName: bundle.entryPoint,
82
+ platform: bundle.platform,
83
+ mode: bundle.dev ? "development" : "production",
84
+ engine: isHermes ? "hermes" : undefined,
85
+ serializerIncludeMaps: bundle.sourcemaps,
86
+ // Bundle splitting on web-only for now.
87
+ // serializerOutput: bundle.platform === 'web' ? 'static' : undefined,
88
+ serializerOutput: "static",
89
+ serializerIncludeBytecode: isHermes,
90
+ baseUrl: (0, _metroOptions).getBaseUrlFromExpoConfig(expoConfig),
91
+ isExporting: true
92
+ }),
93
+ bundleType: "bundle",
94
+ inlineSourceMap: false,
95
+ createModuleIdFactory: config.serializer.createModuleIdFactory,
96
+ onProgress: (transformedFileCount, totalFileCount)=>{
97
+ reporter.update({
98
+ buildID,
99
+ type: "bundle_transform_progressed",
100
+ transformedFileCount,
101
+ totalFileCount
102
+ });
103
+ }
104
+ };
105
+ const bundleDetails = {
106
+ ...bundleOptions,
107
+ buildID
108
+ };
109
+ reporter.update({
110
+ buildID,
111
+ type: "bundle_build_started",
112
+ bundleDetails
113
+ });
114
+ try {
115
+ const artifacts = await forkMetroBuildAsync(metroServer, bundleOptions);
116
+ reporter.update({
117
+ buildID,
118
+ type: "bundle_build_done"
119
+ });
120
+ return artifacts;
121
+ } catch (error) {
122
+ reporter.update({
123
+ buildID,
124
+ type: "bundle_build_failed"
125
+ });
126
+ throw error;
127
+ }
128
+ };
129
+ try {
130
+ return await Promise.all(bundles.map((bundle)=>buildAsync(bundle)
131
+ ));
132
+ } catch (error) {
133
+ // New line so errors don't show up inline with the progress bar
134
+ console.log("");
135
+ throw error;
136
+ } finally{
137
+ metroServer.end();
138
+ }
139
+ }
140
+ async function getAssets(metro, options) {
141
+ const { entryFile , onProgress , resolverOptions , transformOptions } = (0, _splitBundleOptions).default(options);
142
+ // @ts-expect-error: _bundler isn't exposed on the type.
143
+ const dependencies = await metro._bundler.getDependencies([
144
+ entryFile
145
+ ], transformOptions, resolverOptions, {
146
+ onProgress,
147
+ shallow: false,
148
+ lazy: false
149
+ });
150
+ // @ts-expect-error
151
+ const _config1 = metro._config;
152
+ return (0, _getAssets).default(dependencies, {
153
+ processModuleFilter: _config1.serializer.processModuleFilter,
154
+ assetPlugins: _config1.transformer.assetPlugins,
155
+ platform: transformOptions.platform,
156
+ projectRoot: _config1.projectRoot,
157
+ publicPath: _config1.transformer.publicPath
158
+ });
159
+ }
160
+ function isMetroServerInstance(metro) {
161
+ return "_shouldAddModuleToIgnoreList" in metro;
162
+ }
163
+ async function forkMetroBuildAsync(metro, options) {
164
+ var ref;
165
+ if (!isMetroServerInstance(metro)) {
166
+ throw new Error("Expected Metro server instance to have private functions exposed.");
167
+ }
168
+ if (((ref = options.serializerOptions) == null ? void 0 : ref.output) !== "static") {
169
+ throw new Error("Only multi-serializer output is supported.");
170
+ }
171
+ const { entryFile , graphOptions , onProgress , resolverOptions , serializerOptions , transformOptions , } = (0, _splitBundleOptions).default(options);
172
+ const { prepend , graph } = await metro._bundler.buildGraph(entryFile, transformOptions, resolverOptions, {
173
+ onProgress,
174
+ shallow: graphOptions.shallow,
175
+ // @ts-expect-error
176
+ lazy: graphOptions.lazy
177
+ });
178
+ const entryPoint = metro._getEntryPointAbsolutePath(entryFile);
179
+ var _unstable_serverRoot;
180
+ const bundleOptions = {
181
+ asyncRequireModulePath: await metro._resolveRelativePath(metro._config.transformer.asyncRequireModulePath, {
182
+ relativeTo: "project",
183
+ resolverOptions,
184
+ transformOptions
185
+ }),
186
+ processModuleFilter: metro._config.serializer.processModuleFilter,
187
+ createModuleId: metro._createModuleId,
188
+ getRunModuleStatement: metro._config.serializer.getRunModuleStatement,
189
+ dev: transformOptions.dev,
190
+ includeAsyncPaths: graphOptions.lazy,
191
+ projectRoot: metro._config.projectRoot,
192
+ modulesOnly: serializerOptions.modulesOnly,
193
+ runBeforeMainModule: metro._config.serializer.getModulesRunBeforeMainModule(_path.default.relative(metro._config.projectRoot, entryPoint)),
194
+ runModule: serializerOptions.runModule,
195
+ sourceMapUrl: serializerOptions.sourceMapUrl,
196
+ sourceUrl: serializerOptions.sourceUrl,
197
+ inlineSourceMap: serializerOptions.inlineSourceMap,
198
+ serverRoot: (_unstable_serverRoot = metro._config.server.unstable_serverRoot) != null ? _unstable_serverRoot : metro._config.projectRoot,
199
+ shouldAddToIgnoreList: (module)=>metro._shouldAddModuleToIgnoreList(module)
200
+ ,
201
+ // Custom options we pass to the serializer to emulate the URL query parameters.
202
+ serializerOptions: options.serializerOptions
203
+ };
204
+ const bundle = await metro._config.serializer.customSerializer(entryPoint, // @ts-expect-error: Metro is typed incorrectly
205
+ prepend, graph, bundleOptions);
206
+ try {
207
+ const parsed = typeof bundle === "string" ? JSON.parse(bundle) : bundle;
208
+ (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.");
209
+ return parsed;
210
+ } catch (error) {
211
+ throw new Error("Serializer did not return expected format. The project copy of `expo/metro-config` may be out of date. Error: " + error.message);
212
+ }
213
+ }
214
+
215
+ //# sourceMappingURL=fork-bundleAsync.js.map