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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (719) hide show
  1. package/build/bin/cli +93 -91
  2. package/build/bin/cli.map +1 -1
  3. package/build/metro-require/require.js +53 -52
  4. package/build/src/api/endpoint.js +6 -2
  5. package/build/src/api/endpoint.js.map +1 -1
  6. package/build/src/api/getExpoGoIntermediateCertificate.js +5 -3
  7. package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -1
  8. package/build/src/api/getExpoSchema.js +16 -12
  9. package/build/src/api/getExpoSchema.js.map +1 -1
  10. package/build/src/api/getNativeModuleVersions.js +6 -4
  11. package/build/src/api/getNativeModuleVersions.js.map +1 -1
  12. package/build/src/api/getProjectDevelopmentCertificate.js +5 -3
  13. package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -1
  14. package/build/src/api/getVersions.js +7 -5
  15. package/build/src/api/getVersions.js.map +1 -1
  16. package/build/src/api/graphql/client.js +32 -26
  17. package/build/src/api/graphql/client.js.map +1 -1
  18. package/build/src/api/graphql/queries/AppQuery.js +6 -4
  19. package/build/src/api/graphql/queries/AppQuery.js.map +1 -1
  20. package/build/src/api/graphql/queries/UserQuery.js +5 -3
  21. package/build/src/api/graphql/queries/UserQuery.js.map +1 -1
  22. package/build/src/api/graphql/types/App.js +3 -1
  23. package/build/src/api/graphql/types/App.js.map +1 -1
  24. package/build/src/api/rest/cache/FileSystemResponseCache.js +36 -32
  25. package/build/src/api/rest/cache/FileSystemResponseCache.js.map +1 -1
  26. package/build/src/api/rest/cache/ResponseCache.js +20 -12
  27. package/build/src/api/rest/cache/ResponseCache.js.map +1 -1
  28. package/build/src/api/rest/cache/wrapFetchWithCache.js +13 -11
  29. package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -1
  30. package/build/src/api/rest/client.js +55 -37
  31. package/build/src/api/rest/client.js.map +1 -1
  32. package/build/src/api/rest/client.types.js.map +1 -1
  33. package/build/src/api/rest/wrapFetchWithBaseUrl.js +5 -3
  34. package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
  35. package/build/src/api/rest/wrapFetchWithOffline.js +5 -3
  36. package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -1
  37. package/build/src/api/rest/wrapFetchWithProgress.js +11 -7
  38. package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -1
  39. package/build/src/api/rest/wrapFetchWithProxy.js +5 -3
  40. package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -1
  41. package/build/src/api/rest/wrapFetchWithUserAgent.js +8 -6
  42. package/build/src/api/rest/wrapFetchWithUserAgent.js.map +1 -1
  43. package/build/src/api/settings.js +7 -5
  44. package/build/src/api/settings.js.map +1 -1
  45. package/build/src/api/updateDevelopmentSession.js +23 -17
  46. package/build/src/api/updateDevelopmentSession.js.map +1 -1
  47. package/build/src/api/user/UserSettings.js +53 -31
  48. package/build/src/api/user/UserSettings.js.map +1 -1
  49. package/build/src/api/user/actions.js +27 -21
  50. package/build/src/api/user/actions.js.map +1 -1
  51. package/build/src/api/user/expoSsoLauncher.js +30 -26
  52. package/build/src/api/user/expoSsoLauncher.js.map +1 -1
  53. package/build/src/api/user/otp.js +35 -29
  54. package/build/src/api/user/otp.js.map +1 -1
  55. package/build/src/api/user/user.js +44 -30
  56. package/build/src/api/user/user.js.map +1 -1
  57. package/build/src/config/configAsync.js +29 -23
  58. package/build/src/config/configAsync.js.map +1 -1
  59. package/build/src/config/index.js +25 -21
  60. package/build/src/config/index.js.map +1 -1
  61. package/build/src/customize/customizeAsync.js +8 -6
  62. package/build/src/customize/customizeAsync.js.map +1 -1
  63. package/build/src/customize/generate.js +20 -16
  64. package/build/src/customize/generate.js.map +1 -1
  65. package/build/src/customize/index.js +14 -12
  66. package/build/src/customize/index.js.map +1 -1
  67. package/build/src/customize/resolveOptions.js +4 -2
  68. package/build/src/customize/resolveOptions.js.map +1 -1
  69. package/build/src/customize/templates.js +58 -54
  70. package/build/src/customize/templates.js.map +1 -1
  71. package/build/src/customize/typescript.js +11 -7
  72. package/build/src/customize/typescript.js.map +1 -1
  73. package/build/src/export/createMetadataJson.js +11 -9
  74. package/build/src/export/createMetadataJson.js.map +1 -1
  75. package/build/src/export/embed/exportEager.js +8 -6
  76. package/build/src/export/embed/exportEager.js.map +1 -1
  77. package/build/src/export/embed/exportEmbedAsync.js +72 -62
  78. package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
  79. package/build/src/export/embed/exportServer.js +57 -55
  80. package/build/src/export/embed/exportServer.js.map +1 -1
  81. package/build/src/export/embed/index.js +44 -40
  82. package/build/src/export/embed/index.js.map +1 -1
  83. package/build/src/export/embed/resolveOptions.js +44 -36
  84. package/build/src/export/embed/resolveOptions.js.map +1 -1
  85. package/build/src/export/embed/xcodeCompilerLogger.js +39 -27
  86. package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
  87. package/build/src/export/exportApp.js +68 -64
  88. package/build/src/export/exportApp.js.map +1 -1
  89. package/build/src/export/exportAssets.js +34 -26
  90. package/build/src/export/exportAssets.js.map +1 -1
  91. package/build/src/export/exportAsync.js +13 -9
  92. package/build/src/export/exportAsync.js.map +1 -1
  93. package/build/src/export/exportDomComponents.js +53 -45
  94. package/build/src/export/exportDomComponents.js.map +1 -1
  95. package/build/src/export/exportHermes.js +75 -53
  96. package/build/src/export/exportHermes.js.map +1 -1
  97. package/build/src/export/exportStaticAsync.js +73 -62
  98. package/build/src/export/exportStaticAsync.js.map +1 -1
  99. package/build/src/export/favicon.js +33 -27
  100. package/build/src/export/favicon.js.map +1 -1
  101. package/build/src/export/getPublicExpoManifest.js +7 -5
  102. package/build/src/export/getPublicExpoManifest.js.map +1 -1
  103. package/build/src/export/getResolvedLocales.js +11 -9
  104. package/build/src/export/getResolvedLocales.js.map +1 -1
  105. package/build/src/export/html.js +10 -6
  106. package/build/src/export/html.js.map +1 -1
  107. package/build/src/export/index.js +32 -28
  108. package/build/src/export/index.js.map +1 -1
  109. package/build/src/export/metroAssetLocalPath.js +36 -30
  110. package/build/src/export/metroAssetLocalPath.js.map +1 -1
  111. package/build/src/export/persistMetroAssets.js +64 -34
  112. package/build/src/export/persistMetroAssets.js.map +1 -1
  113. package/build/src/export/publicFolder.js +10 -6
  114. package/build/src/export/publicFolder.js.map +1 -1
  115. package/build/src/export/resolveOptions.js +28 -24
  116. package/build/src/export/resolveOptions.js.map +1 -1
  117. package/build/src/export/saveAssets.js +50 -46
  118. package/build/src/export/saveAssets.js.map +1 -1
  119. package/build/src/export/web/exportWebAsync.js +13 -11
  120. package/build/src/export/web/exportWebAsync.js.map +1 -1
  121. package/build/src/export/web/index.js +19 -15
  122. package/build/src/export/web/index.js.map +1 -1
  123. package/build/src/export/web/resolveOptions.js +5 -3
  124. package/build/src/export/web/resolveOptions.js.map +1 -1
  125. package/build/src/export/writeContents.js +4 -2
  126. package/build/src/export/writeContents.js.map +1 -1
  127. package/build/src/graphql/generated.js +705 -479
  128. package/build/src/graphql/generated.js.map +1 -1
  129. package/build/src/install/applyPlugins.js +11 -7
  130. package/build/src/install/applyPlugins.js.map +1 -1
  131. package/build/src/install/checkPackages.js +26 -22
  132. package/build/src/install/checkPackages.js.map +1 -1
  133. package/build/src/install/fixPackages.js +16 -12
  134. package/build/src/install/fixPackages.js.map +1 -1
  135. package/build/src/install/index.js +18 -16
  136. package/build/src/install/index.js.map +1 -1
  137. package/build/src/install/installAsync.js +32 -26
  138. package/build/src/install/installAsync.js.map +1 -1
  139. package/build/src/install/installExpoPackage.js +22 -18
  140. package/build/src/install/installExpoPackage.js.map +1 -1
  141. package/build/src/install/resolveOptions.js +21 -19
  142. package/build/src/install/resolveOptions.js.map +1 -1
  143. package/build/src/install/utils/autoAddConfigPlugins.js +18 -14
  144. package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
  145. package/build/src/install/utils/checkPackagesCompatibility.js +14 -12
  146. package/build/src/install/utils/checkPackagesCompatibility.js.map +1 -1
  147. package/build/src/lint/ESlintPrerequisite.js +50 -44
  148. package/build/src/lint/ESlintPrerequisite.js.map +1 -1
  149. package/build/src/lint/index.js +12 -8
  150. package/build/src/lint/index.js.map +1 -1
  151. package/build/src/lint/lintAsync.js +10 -8
  152. package/build/src/lint/lintAsync.js.map +1 -1
  153. package/build/src/log.js +36 -16
  154. package/build/src/log.js.map +1 -1
  155. package/build/src/login/index.js +24 -20
  156. package/build/src/login/index.js.map +1 -1
  157. package/build/src/logout/index.js +11 -7
  158. package/build/src/logout/index.js.map +1 -1
  159. package/build/src/prebuild/clearNativeFolder.js +38 -26
  160. package/build/src/prebuild/clearNativeFolder.js.map +1 -1
  161. package/build/src/prebuild/configureProjectAsync.js +18 -14
  162. package/build/src/prebuild/configureProjectAsync.js.map +1 -1
  163. package/build/src/prebuild/copyTemplateFiles.js +17 -13
  164. package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
  165. package/build/src/prebuild/ensureConfigAsync.js +6 -4
  166. package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
  167. package/build/src/prebuild/index.js +36 -32
  168. package/build/src/prebuild/index.js.map +1 -1
  169. package/build/src/prebuild/prebuildAsync.js +29 -25
  170. package/build/src/prebuild/prebuildAsync.js.map +1 -1
  171. package/build/src/prebuild/renameTemplateAppName.js +43 -37
  172. package/build/src/prebuild/renameTemplateAppName.js.map +1 -1
  173. package/build/src/prebuild/resolveOptions.js +70 -53
  174. package/build/src/prebuild/resolveOptions.js.map +1 -1
  175. package/build/src/prebuild/resolveTemplate.js +36 -32
  176. package/build/src/prebuild/resolveTemplate.js.map +1 -1
  177. package/build/src/prebuild/updateFromTemplate.js +19 -13
  178. package/build/src/prebuild/updateFromTemplate.js.map +1 -1
  179. package/build/src/prebuild/updatePackageJson.js +53 -39
  180. package/build/src/prebuild/updatePackageJson.js.map +1 -1
  181. package/build/src/prebuild/validateTemplatePlatforms.js +12 -8
  182. package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
  183. package/build/src/register/index.js +11 -7
  184. package/build/src/register/index.js.map +1 -1
  185. package/build/src/register/registerAsync.js +5 -3
  186. package/build/src/register/registerAsync.js.map +1 -1
  187. package/build/src/run/android/index.js +36 -32
  188. package/build/src/run/android/index.js.map +1 -1
  189. package/build/src/run/android/resolveDevice.js +10 -8
  190. package/build/src/run/android/resolveDevice.js.map +1 -1
  191. package/build/src/run/android/resolveGradlePropsAsync.js +18 -16
  192. package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -1
  193. package/build/src/run/android/resolveInstallApkName.js +17 -15
  194. package/build/src/run/android/resolveInstallApkName.js.map +1 -1
  195. package/build/src/run/android/resolveLaunchProps.js +12 -10
  196. package/build/src/run/android/resolveLaunchProps.js.map +1 -1
  197. package/build/src/run/android/resolveOptions.js +4 -2
  198. package/build/src/run/android/resolveOptions.js.map +1 -1
  199. package/build/src/run/android/runAndroidAsync.js +23 -21
  200. package/build/src/run/android/runAndroidAsync.js.map +1 -1
  201. package/build/src/run/ensureNativeProject.js +7 -5
  202. package/build/src/run/ensureNativeProject.js.map +1 -1
  203. package/build/src/run/hints.js +13 -7
  204. package/build/src/run/hints.js.map +1 -1
  205. package/build/src/run/index.js +27 -23
  206. package/build/src/run/index.js.map +1 -1
  207. package/build/src/run/ios/XcodeBuild.js +80 -60
  208. package/build/src/run/ios/XcodeBuild.js.map +1 -1
  209. package/build/src/run/ios/XcodeBuild.types.js.map +1 -1
  210. package/build/src/run/ios/appleDevice/AppleDevice.js +69 -63
  211. package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
  212. package/build/src/run/ios/appleDevice/ClientManager.js +29 -26
  213. package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
  214. package/build/src/run/ios/appleDevice/client/AFCClient.js +28 -25
  215. package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
  216. package/build/src/run/ios/appleDevice/client/DebugserverClient.js +29 -26
  217. package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
  218. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +22 -21
  219. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
  220. package/build/src/run/ios/appleDevice/client/LockdowndClient.js +32 -29
  221. package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
  222. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +28 -24
  223. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
  224. package/build/src/run/ios/appleDevice/client/ServiceClient.js +7 -4
  225. package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -1
  226. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +28 -27
  227. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
  228. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +23 -17
  229. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
  230. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +146 -132
  231. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
  232. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +29 -21
  233. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
  234. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +29 -21
  235. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
  236. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +34 -22
  237. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
  238. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +27 -17
  239. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
  240. package/build/src/run/ios/codeSigning/Security.js +53 -39
  241. package/build/src/run/ios/codeSigning/Security.js.map +1 -1
  242. package/build/src/run/ios/codeSigning/configureCodeSigning.js +13 -9
  243. package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
  244. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +27 -19
  245. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
  246. package/build/src/run/ios/codeSigning/settings.js +9 -5
  247. package/build/src/run/ios/codeSigning/settings.js.map +1 -1
  248. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +14 -12
  249. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -1
  250. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +27 -21
  251. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
  252. package/build/src/run/ios/index.js +40 -36
  253. package/build/src/run/ios/index.js.map +1 -1
  254. package/build/src/run/ios/launchApp.js +23 -17
  255. package/build/src/run/ios/launchApp.js.map +1 -1
  256. package/build/src/run/ios/options/appleDestinations.js +38 -36
  257. package/build/src/run/ios/options/appleDestinations.js.map +1 -1
  258. package/build/src/run/ios/options/promptDevice.js +20 -16
  259. package/build/src/run/ios/options/promptDevice.js.map +1 -1
  260. package/build/src/run/ios/options/resolveDevice.js +30 -24
  261. package/build/src/run/ios/options/resolveDevice.js.map +1 -1
  262. package/build/src/run/ios/options/resolveNativeScheme.js +31 -23
  263. package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
  264. package/build/src/run/ios/options/resolveOptions.js +7 -5
  265. package/build/src/run/ios/options/resolveOptions.js.map +1 -1
  266. package/build/src/run/ios/options/resolveXcodeProject.js +7 -5
  267. package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
  268. package/build/src/run/ios/runIosAsync.js +48 -44
  269. package/build/src/run/ios/runIosAsync.js.map +1 -1
  270. package/build/src/run/ios/validateExternalBinary.js +24 -22
  271. package/build/src/run/ios/validateExternalBinary.js.map +1 -1
  272. package/build/src/run/resolveBundlerProps.js +4 -2
  273. package/build/src/run/resolveBundlerProps.js.map +1 -1
  274. package/build/src/run/startBundler.js +16 -12
  275. package/build/src/run/startBundler.js.map +1 -1
  276. package/build/src/serve/index.js +20 -16
  277. package/build/src/serve/index.js.map +1 -1
  278. package/build/src/serve/serveAsync.js +36 -32
  279. package/build/src/serve/serveAsync.js.map +1 -1
  280. package/build/src/start/detectDevClient.js +13 -9
  281. package/build/src/start/detectDevClient.js.map +1 -1
  282. package/build/src/start/doctor/Prerequisite.js +12 -7
  283. package/build/src/start/doctor/Prerequisite.js.map +1 -1
  284. package/build/src/start/doctor/SecurityBinPrerequisite.js +13 -11
  285. package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -1
  286. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +23 -19
  287. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
  288. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +23 -19
  289. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -1
  290. package/build/src/start/doctor/apple/XcodePrerequisite.js +51 -45
  291. package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
  292. package/build/src/start/doctor/apple/XcrunPrerequisite.js +18 -16
  293. package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -1
  294. package/build/src/start/doctor/dependencies/bundledNativeModules.js +23 -19
  295. package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -1
  296. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +31 -25
  297. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
  298. package/build/src/start/doctor/dependencies/getMissingPackages.js +25 -17
  299. package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
  300. package/build/src/start/doctor/dependencies/getVersionedPackages.js +40 -32
  301. package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
  302. package/build/src/start/doctor/dependencies/resolvePackages.js +32 -26
  303. package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
  304. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +41 -31
  305. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
  306. package/build/src/start/doctor/ngrok/ExternalModule.js +34 -29
  307. package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
  308. package/build/src/start/doctor/ngrok/NgrokResolver.js +12 -8
  309. package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -1
  310. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +32 -28
  311. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
  312. package/build/src/start/doctor/typescript/updateTSConfig.js +23 -17
  313. package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
  314. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +33 -27
  315. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
  316. package/build/src/start/index.js +46 -42
  317. package/build/src/start/index.js.map +1 -1
  318. package/build/src/start/interface/KeyPressHandler.js +18 -14
  319. package/build/src/start/interface/KeyPressHandler.js.map +1 -1
  320. package/build/src/start/interface/commandsTable.js +94 -80
  321. package/build/src/start/interface/commandsTable.js.map +1 -1
  322. package/build/src/start/interface/interactiveActions.js +44 -40
  323. package/build/src/start/interface/interactiveActions.js.map +1 -1
  324. package/build/src/start/interface/startInterface.js +65 -61
  325. package/build/src/start/interface/startInterface.js.map +1 -1
  326. package/build/src/start/platforms/AppIdResolver.js +6 -4
  327. package/build/src/start/platforms/AppIdResolver.js.map +1 -1
  328. package/build/src/start/platforms/DeviceManager.js +10 -6
  329. package/build/src/start/platforms/DeviceManager.js.map +1 -1
  330. package/build/src/start/platforms/ExpoGoInstaller.js +25 -20
  331. package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
  332. package/build/src/start/platforms/PlatformManager.js +17 -15
  333. package/build/src/start/platforms/PlatformManager.js.map +1 -1
  334. package/build/src/start/platforms/android/ADBServer.js +39 -35
  335. package/build/src/start/platforms/android/ADBServer.js.map +1 -1
  336. package/build/src/start/platforms/android/AndroidAppIdResolver.js +18 -16
  337. package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
  338. package/build/src/start/platforms/android/AndroidDeviceManager.js +24 -20
  339. package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -1
  340. package/build/src/start/platforms/android/AndroidPlatformManager.js +17 -17
  341. package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -1
  342. package/build/src/start/platforms/android/AndroidSdk.js +11 -9
  343. package/build/src/start/platforms/android/AndroidSdk.js.map +1 -1
  344. package/build/src/start/platforms/android/activateWindow.js +26 -22
  345. package/build/src/start/platforms/android/activateWindow.js.map +1 -1
  346. package/build/src/start/platforms/android/adb.js +121 -83
  347. package/build/src/start/platforms/android/adb.js.map +1 -1
  348. package/build/src/start/platforms/android/adbReverse.js +20 -12
  349. package/build/src/start/platforms/android/adbReverse.js.map +1 -1
  350. package/build/src/start/platforms/android/emulator.js +36 -26
  351. package/build/src/start/platforms/android/emulator.js.map +1 -1
  352. package/build/src/start/platforms/android/getDevices.js +7 -5
  353. package/build/src/start/platforms/android/getDevices.js.map +1 -1
  354. package/build/src/start/platforms/android/gradle.js +36 -28
  355. package/build/src/start/platforms/android/gradle.js.map +1 -1
  356. package/build/src/start/platforms/android/promptAndroidDevice.js +19 -15
  357. package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
  358. package/build/src/start/platforms/ios/AppleAppIdResolver.js +21 -19
  359. package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
  360. package/build/src/start/platforms/ios/AppleDeviceManager.js +37 -31
  361. package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -1
  362. package/build/src/start/platforms/ios/ApplePlatformManager.js +12 -12
  363. package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -1
  364. package/build/src/start/platforms/ios/assertSystemRequirements.js +9 -7
  365. package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -1
  366. package/build/src/start/platforms/ios/devicectl.js +88 -74
  367. package/build/src/start/platforms/ios/devicectl.js.map +1 -1
  368. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +22 -18
  369. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
  370. package/build/src/start/platforms/ios/getBestSimulator.js +29 -19
  371. package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
  372. package/build/src/start/platforms/ios/promptAppleDevice.js +14 -10
  373. package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
  374. package/build/src/start/platforms/ios/simctl.js +102 -74
  375. package/build/src/start/platforms/ios/simctl.js.map +1 -1
  376. package/build/src/start/platforms/ios/simctlLogging.js +57 -52
  377. package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
  378. package/build/src/start/platforms/ios/xcrun.js +22 -18
  379. package/build/src/start/platforms/ios/xcrun.js.map +1 -1
  380. package/build/src/start/project/devices.js +19 -9
  381. package/build/src/start/project/devices.js.map +1 -1
  382. package/build/src/start/project/dotExpo.js +15 -11
  383. package/build/src/start/project/dotExpo.js.map +1 -1
  384. package/build/src/start/project/settings.js +4 -2
  385. package/build/src/start/project/settings.js.map +1 -1
  386. package/build/src/start/resolveOptions.js +48 -40
  387. package/build/src/start/resolveOptions.js.map +1 -1
  388. package/build/src/start/server/AsyncNgrok.js +55 -51
  389. package/build/src/start/server/AsyncNgrok.js.map +1 -1
  390. package/build/src/start/server/AsyncWsTunnel.js +37 -33
  391. package/build/src/start/server/AsyncWsTunnel.js.map +1 -1
  392. package/build/src/start/server/BundlerDevServer.js +81 -79
  393. package/build/src/start/server/BundlerDevServer.js.map +1 -1
  394. package/build/src/start/server/DevServerManager.js +42 -38
  395. package/build/src/start/server/DevServerManager.js.map +1 -1
  396. package/build/src/start/server/DevToolsPluginManager.js +18 -14
  397. package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
  398. package/build/src/start/server/DevelopmentSession.js +18 -14
  399. package/build/src/start/server/DevelopmentSession.js.map +1 -1
  400. package/build/src/start/server/ReactDevToolsProxy.js +16 -10
  401. package/build/src/start/server/ReactDevToolsProxy.js.map +1 -1
  402. package/build/src/start/server/UrlCreator.js +36 -33
  403. package/build/src/start/server/UrlCreator.js.map +1 -1
  404. package/build/src/start/server/getStaticRenderFunctions.js +30 -22
  405. package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
  406. package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js +9 -5
  407. package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js.map +1 -1
  408. package/build/src/start/server/metro/MetroBundlerDevServer.js +293 -280
  409. package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
  410. package/build/src/start/server/metro/MetroTerminalReporter.js +63 -56
  411. package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
  412. package/build/src/start/server/metro/TerminalReporter.js +39 -33
  413. package/build/src/start/server/metro/TerminalReporter.js.map +1 -1
  414. package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -1
  415. package/build/src/start/server/metro/createExpoFallbackResolver.js +13 -11
  416. package/build/src/start/server/metro/createExpoFallbackResolver.js.map +1 -1
  417. package/build/src/start/server/metro/createExpoMetroResolver.js +47 -41
  418. package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -1
  419. package/build/src/start/server/metro/createJResolver.js +31 -27
  420. package/build/src/start/server/metro/createJResolver.js.map +1 -1
  421. package/build/src/start/server/metro/createServerComponentsMiddleware.js +110 -98
  422. package/build/src/start/server/metro/createServerComponentsMiddleware.js.map +1 -1
  423. package/build/src/start/server/metro/createServerRouteMiddleware.js +34 -30
  424. package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
  425. package/build/src/start/server/metro/debugging/AtlasPrerequisite.js +13 -11
  426. package/build/src/start/server/metro/debugging/AtlasPrerequisite.js.map +1 -1
  427. package/build/src/start/server/metro/debugging/MessageHandler.js +3 -1
  428. package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -1
  429. package/build/src/start/server/metro/debugging/attachAtlas.js +26 -22
  430. package/build/src/start/server/metro/debugging/attachAtlas.js.map +1 -1
  431. package/build/src/start/server/metro/debugging/createDebugMiddleware.js +19 -17
  432. package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
  433. package/build/src/start/server/metro/debugging/createHandlersFactory.js +25 -31
  434. package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -1
  435. package/build/src/start/server/metro/debugging/getDebuggerType.js +6 -4
  436. package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -1
  437. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js +14 -8
  438. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -1
  439. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +7 -5
  440. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -1
  441. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +8 -6
  442. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -1
  443. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +7 -5
  444. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -1
  445. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js +14 -12
  446. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js.map +1 -1
  447. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js +14 -10
  448. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -1
  449. package/build/src/start/server/metro/debugging/pageIsSupported.js +6 -4
  450. package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -1
  451. package/build/src/start/server/metro/debugging/types.js.map +1 -1
  452. package/build/src/start/server/metro/dev-server/createEventSocket.js +18 -16
  453. package/build/src/start/server/metro/dev-server/createEventSocket.js.map +1 -1
  454. package/build/src/start/server/metro/dev-server/createMessageSocket.js +23 -21
  455. package/build/src/start/server/metro/dev-server/createMessageSocket.js.map +1 -1
  456. package/build/src/start/server/metro/dev-server/createMetroMiddleware.js +23 -21
  457. package/build/src/start/server/metro/dev-server/createMetroMiddleware.js.map +1 -1
  458. package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js +4 -2
  459. package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js.map +1 -1
  460. package/build/src/start/server/metro/dev-server/utils/createSocketMap.js +4 -2
  461. package/build/src/start/server/metro/dev-server/utils/createSocketMap.js.map +1 -1
  462. package/build/src/start/server/metro/dev-server/utils/socketMessages.js +8 -4
  463. package/build/src/start/server/metro/dev-server/utils/socketMessages.js.map +1 -1
  464. package/build/src/start/server/metro/externals.js +33 -25
  465. package/build/src/start/server/metro/externals.js.map +1 -1
  466. package/build/src/start/server/metro/fetchRouterManifest.js +28 -12
  467. package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
  468. package/build/src/start/server/metro/formatFileCandidates.js +11 -9
  469. package/build/src/start/server/metro/formatFileCandidates.js.map +1 -1
  470. package/build/src/start/server/metro/getCssModulesFromBundler.js +24 -20
  471. package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
  472. package/build/src/start/server/metro/instantiateMetro.js +87 -81
  473. package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
  474. package/build/src/start/server/metro/log-box/LogBoxLog.js +40 -36
  475. package/build/src/start/server/metro/log-box/LogBoxLog.js.map +1 -1
  476. package/build/src/start/server/metro/log-box/LogBoxSymbolication.js +20 -14
  477. package/build/src/start/server/metro/log-box/LogBoxSymbolication.js.map +1 -1
  478. package/build/src/start/server/metro/log-box/formatProjectFilePath.js +10 -6
  479. package/build/src/start/server/metro/log-box/formatProjectFilePath.js.map +1 -1
  480. package/build/src/start/server/metro/metroErrorInterface.js +88 -78
  481. package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
  482. package/build/src/start/server/metro/metroErrors.js +8 -4
  483. package/build/src/start/server/metro/metroErrors.js.map +1 -1
  484. package/build/src/start/server/metro/metroPrivateServer.js +9 -7
  485. package/build/src/start/server/metro/metroPrivateServer.js.map +1 -1
  486. package/build/src/start/server/metro/metroVirtualModules.js +10 -8
  487. package/build/src/start/server/metro/metroVirtualModules.js.map +1 -1
  488. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +24 -22
  489. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
  490. package/build/src/start/server/metro/router.js +48 -32
  491. package/build/src/start/server/metro/router.js.map +1 -1
  492. package/build/src/start/server/metro/runServer-fork.js +24 -22
  493. package/build/src/start/server/metro/runServer-fork.js.map +1 -1
  494. package/build/src/start/server/metro/serializeHtml.js +24 -22
  495. package/build/src/start/server/metro/serializeHtml.js.map +1 -1
  496. package/build/src/start/server/metro/symbolicate.js.map +1 -1
  497. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +35 -29
  498. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
  499. package/build/src/start/server/metro/withMetroMultiPlatform.js +150 -140
  500. package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
  501. package/build/src/start/server/metro/withMetroResolvers.js +49 -39
  502. package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
  503. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +8 -6
  504. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -1
  505. package/build/src/start/server/middleware/CorsMiddleware.js +17 -15
  506. package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -1
  507. package/build/src/start/server/middleware/CreateFileMiddleware.js +32 -31
  508. package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
  509. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +22 -19
  510. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
  511. package/build/src/start/server/middleware/DomComponentsMiddleware.js +33 -27
  512. package/build/src/start/server/middleware/DomComponentsMiddleware.js.map +1 -1
  513. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +61 -57
  514. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
  515. package/build/src/start/server/middleware/ExpoMiddleware.js +15 -9
  516. package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
  517. package/build/src/start/server/middleware/FaviconMiddleware.js +16 -15
  518. package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -1
  519. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +4 -2
  520. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -1
  521. package/build/src/start/server/middleware/InterstitialPageMiddleware.js +34 -31
  522. package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
  523. package/build/src/start/server/middleware/ManifestMiddleware.js +64 -56
  524. package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
  525. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +23 -19
  526. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -1
  527. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +20 -19
  528. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
  529. package/build/src/start/server/middleware/ServeStaticMiddleware.js +11 -9
  530. package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
  531. package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js +17 -11
  532. package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js.map +1 -1
  533. package/build/src/start/server/middleware/inspector/CdpClient.js +12 -10
  534. package/build/src/start/server/middleware/inspector/CdpClient.js.map +1 -1
  535. package/build/src/start/server/middleware/inspector/JsInspector.js +35 -27
  536. package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
  537. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +21 -19
  538. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
  539. package/build/src/start/server/middleware/inspector/middlwareMutations.js +6 -2
  540. package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -1
  541. package/build/src/start/server/middleware/metroOptions.js +120 -96
  542. package/build/src/start/server/middleware/metroOptions.js.map +1 -1
  543. package/build/src/start/server/middleware/mutations.js +7 -3
  544. package/build/src/start/server/middleware/mutations.js.map +1 -1
  545. package/build/src/start/server/middleware/resolveAssets.js +26 -18
  546. package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
  547. package/build/src/start/server/middleware/resolvePlatform.js +23 -15
  548. package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
  549. package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js +11 -9
  550. package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js.map +1 -1
  551. package/build/src/start/server/middleware/server.types.js.map +1 -1
  552. package/build/src/start/server/openPlatforms.js +10 -8
  553. package/build/src/start/server/openPlatforms.js.map +1 -1
  554. package/build/src/start/server/platformBundlers.js +13 -11
  555. package/build/src/start/server/platformBundlers.js.map +1 -1
  556. package/build/src/start/server/serverLogLikeMetro.js +58 -50
  557. package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
  558. package/build/src/start/server/type-generation/expo-env.js +11 -7
  559. package/build/src/start/server/type-generation/expo-env.js.map +1 -1
  560. package/build/src/start/server/type-generation/routes.js +72 -50
  561. package/build/src/start/server/type-generation/routes.js.map +1 -1
  562. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +21 -19
  563. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
  564. package/build/src/start/server/type-generation/tsconfig.js +36 -28
  565. package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
  566. package/build/src/start/server/webTemplate.js +28 -24
  567. package/build/src/start/server/webTemplate.js.map +1 -1
  568. package/build/src/start/server/webpack/WebpackBundlerDevServer.js +52 -46
  569. package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
  570. package/build/src/start/server/webpack/compile.js +15 -11
  571. package/build/src/start/server/webpack/compile.js.map +1 -1
  572. package/build/src/start/server/webpack/formatWebpackMessages.js +28 -26
  573. package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -1
  574. package/build/src/start/server/webpack/resolveFromProject.js +18 -12
  575. package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
  576. package/build/src/start/server/webpack/tls.js +18 -12
  577. package/build/src/start/server/webpack/tls.js.map +1 -1
  578. package/build/src/start/startAsync.js +31 -27
  579. package/build/src/start/startAsync.js.map +1 -1
  580. package/build/src/utils/FileNotifier.js +20 -17
  581. package/build/src/utils/FileNotifier.js.map +1 -1
  582. package/build/src/utils/ansi.js +7 -5
  583. package/build/src/utils/ansi.js.map +1 -1
  584. package/build/src/utils/args.js +24 -14
  585. package/build/src/utils/args.js.map +1 -1
  586. package/build/src/utils/array.js +18 -6
  587. package/build/src/utils/array.js.map +1 -1
  588. package/build/src/utils/cocoapods.js +54 -46
  589. package/build/src/utils/cocoapods.js.map +1 -1
  590. package/build/src/utils/codesigning.js +79 -69
  591. package/build/src/utils/codesigning.js.map +1 -1
  592. package/build/src/utils/createFileTransform.js +16 -12
  593. package/build/src/utils/createFileTransform.js.map +1 -1
  594. package/build/src/utils/createTempPath.js +12 -8
  595. package/build/src/utils/createTempPath.js.map +1 -1
  596. package/build/src/utils/delay.js +12 -6
  597. package/build/src/utils/delay.js.map +1 -1
  598. package/build/src/utils/dir.js +40 -22
  599. package/build/src/utils/dir.js.map +1 -1
  600. package/build/src/utils/downloadAppAsync.js +10 -8
  601. package/build/src/utils/downloadAppAsync.js.map +1 -1
  602. package/build/src/utils/downloadExpoGoAsync.js +27 -23
  603. package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
  604. package/build/src/utils/editor.js +41 -35
  605. package/build/src/utils/editor.js.map +1 -1
  606. package/build/src/utils/env.js +63 -59
  607. package/build/src/utils/env.js.map +1 -1
  608. package/build/src/utils/errors.js +37 -30
  609. package/build/src/utils/errors.js.map +1 -1
  610. package/build/src/utils/exit.js +35 -31
  611. package/build/src/utils/exit.js.map +1 -1
  612. package/build/src/utils/expoUpdatesCli.js +32 -22
  613. package/build/src/utils/expoUpdatesCli.js.map +1 -1
  614. package/build/src/utils/fetch.js +8 -4
  615. package/build/src/utils/fetch.js.map +1 -1
  616. package/build/src/utils/filePath.js +10 -6
  617. package/build/src/utils/filePath.js.map +1 -1
  618. package/build/src/utils/findUp.js +13 -9
  619. package/build/src/utils/findUp.js.map +1 -1
  620. package/build/src/utils/fn.js +6 -2
  621. package/build/src/utils/fn.js.map +1 -1
  622. package/build/src/utils/getOrPromptApplicationId.js +41 -35
  623. package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
  624. package/build/src/utils/getRunningProcess.js +29 -21
  625. package/build/src/utils/getRunningProcess.js.map +1 -1
  626. package/build/src/utils/git.js +26 -20
  627. package/build/src/utils/git.js.map +1 -1
  628. package/build/src/utils/glob.js +8 -4
  629. package/build/src/utils/glob.js.map +1 -1
  630. package/build/src/utils/interactive.js +3 -1
  631. package/build/src/utils/interactive.js.map +1 -1
  632. package/build/src/utils/ip.js +21 -19
  633. package/build/src/utils/ip.js.map +1 -1
  634. package/build/src/utils/isModuleSymlinked.js +11 -9
  635. package/build/src/utils/isModuleSymlinked.js.map +1 -1
  636. package/build/src/utils/jsonSchemaDeref.js +20 -18
  637. package/build/src/utils/jsonSchemaDeref.js.map +1 -1
  638. package/build/src/utils/link.js +17 -13
  639. package/build/src/utils/link.js.map +1 -1
  640. package/build/src/utils/mergeGitIgnorePaths.js +46 -28
  641. package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
  642. package/build/src/utils/modifyConfigAsync.js +16 -10
  643. package/build/src/utils/modifyConfigAsync.js.map +1 -1
  644. package/build/src/utils/modifyConfigPlugins.js +10 -6
  645. package/build/src/utils/modifyConfigPlugins.js.map +1 -1
  646. package/build/src/utils/multipartMixed.js +13 -11
  647. package/build/src/utils/multipartMixed.js.map +1 -1
  648. package/build/src/utils/nodeEnv.js +12 -6
  649. package/build/src/utils/nodeEnv.js.map +1 -1
  650. package/build/src/utils/nodeModules.js +10 -8
  651. package/build/src/utils/nodeModules.js.map +1 -1
  652. package/build/src/utils/npm.js +49 -35
  653. package/build/src/utils/npm.js.map +1 -1
  654. package/build/src/utils/obj.js +11 -5
  655. package/build/src/utils/obj.js.map +1 -1
  656. package/build/src/utils/open.js +10 -8
  657. package/build/src/utils/open.js.map +1 -1
  658. package/build/src/utils/ora.js +13 -7
  659. package/build/src/utils/ora.js.map +1 -1
  660. package/build/src/utils/plist.js +21 -15
  661. package/build/src/utils/plist.js.map +1 -1
  662. package/build/src/utils/port.js +43 -33
  663. package/build/src/utils/port.js.map +1 -1
  664. package/build/src/utils/profile.js +11 -7
  665. package/build/src/utils/profile.js.map +1 -1
  666. package/build/src/utils/progress.js +11 -5
  667. package/build/src/utils/progress.js.map +1 -1
  668. package/build/src/utils/prompts.js +47 -29
  669. package/build/src/utils/prompts.js.map +1 -1
  670. package/build/src/utils/resolveArgs.js +36 -24
  671. package/build/src/utils/resolveArgs.js.map +1 -1
  672. package/build/src/utils/scheme.js +40 -32
  673. package/build/src/utils/scheme.js.map +1 -1
  674. package/build/src/utils/stream.js +5 -3
  675. package/build/src/utils/stream.js.map +1 -1
  676. package/build/src/utils/strings.js +6 -4
  677. package/build/src/utils/strings.js.map +1 -1
  678. package/build/src/utils/tar.js +18 -14
  679. package/build/src/utils/tar.js.map +1 -1
  680. package/build/src/utils/telemetry/Telemetry.js +29 -27
  681. package/build/src/utils/telemetry/Telemetry.js.map +1 -1
  682. package/build/src/utils/telemetry/clients/FetchClient.js +15 -13
  683. package/build/src/utils/telemetry/clients/FetchClient.js.map +1 -1
  684. package/build/src/utils/telemetry/clients/FetchDetachedClient.js +26 -22
  685. package/build/src/utils/telemetry/clients/FetchDetachedClient.js.map +1 -1
  686. package/build/src/utils/telemetry/clients/flushFetchDetached.js +10 -10
  687. package/build/src/utils/telemetry/clients/flushFetchDetached.js.map +1 -1
  688. package/build/src/utils/telemetry/events.js +4 -2
  689. package/build/src/utils/telemetry/events.js.map +1 -1
  690. package/build/src/utils/telemetry/index.js +25 -29
  691. package/build/src/utils/telemetry/index.js.map +1 -1
  692. package/build/src/utils/telemetry/types.js.map +1 -1
  693. package/build/src/utils/telemetry/utils/constants.js +8 -4
  694. package/build/src/utils/telemetry/utils/constants.js.map +1 -1
  695. package/build/src/utils/telemetry/utils/context.js +18 -14
  696. package/build/src/utils/telemetry/utils/context.js.map +1 -1
  697. package/build/src/utils/template.js +6 -4
  698. package/build/src/utils/template.js.map +1 -1
  699. package/build/src/utils/terminal.js +4 -2
  700. package/build/src/utils/terminal.js.map +1 -1
  701. package/build/src/utils/tsconfig/evaluateTsConfig.js +21 -17
  702. package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -1
  703. package/build/src/utils/tsconfig/loadTsConfigPaths.js +18 -14
  704. package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -1
  705. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +7 -5
  706. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -1
  707. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +14 -12
  708. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -1
  709. package/build/src/utils/url.js +23 -13
  710. package/build/src/utils/url.js.map +1 -1
  711. package/build/src/utils/validateApplicationId.js +108 -86
  712. package/build/src/utils/validateApplicationId.js.map +1 -1
  713. package/build/src/utils/variadic.js +22 -16
  714. package/build/src/utils/variadic.js.map +1 -1
  715. package/build/src/whoami/index.js +11 -7
  716. package/build/src/whoami/index.js.map +1 -1
  717. package/build/src/whoami/whoamiAsync.js +11 -7
  718. package/build/src/whoami/whoamiAsync.js.map +1 -1
  719. package/package.json +17 -16
@@ -9,45 +9,57 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- resolvePackageManagerOptions: ()=>resolvePackageManagerOptions,
13
- resolveTemplateOption: ()=>resolveTemplateOption,
14
- resolveSkipDependencyUpdate: ()=>resolveSkipDependencyUpdate,
15
- resolvePlatformOption: ()=>resolvePlatformOption,
16
- ensureValidPlatforms: ()=>ensureValidPlatforms,
17
- assertPlatforms: ()=>assertPlatforms
12
+ assertPlatforms: function() {
13
+ return assertPlatforms;
14
+ },
15
+ ensureValidPlatforms: function() {
16
+ return ensureValidPlatforms;
17
+ },
18
+ resolvePackageManagerOptions: function() {
19
+ return resolvePackageManagerOptions;
20
+ },
21
+ resolvePlatformOption: function() {
22
+ return resolvePlatformOption;
23
+ },
24
+ resolveSkipDependencyUpdate: function() {
25
+ return resolveSkipDependencyUpdate;
26
+ },
27
+ resolveTemplateOption: function() {
28
+ return resolveTemplateOption;
29
+ }
18
30
  });
19
31
  function _assert() {
20
- const data = /*#__PURE__*/ _interopRequireDefault(require("assert"));
32
+ const data = /*#__PURE__*/ _interop_require_default(require("assert"));
21
33
  _assert = function() {
22
34
  return data;
23
35
  };
24
36
  return data;
25
37
  }
26
38
  function _chalk() {
27
- const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
39
+ const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
28
40
  _chalk = function() {
29
41
  return data;
30
42
  };
31
43
  return data;
32
44
  }
33
45
  function _fs() {
34
- const data = /*#__PURE__*/ _interopRequireDefault(require("fs"));
46
+ const data = /*#__PURE__*/ _interop_require_default(require("fs"));
35
47
  _fs = function() {
36
48
  return data;
37
49
  };
38
50
  return data;
39
51
  }
40
52
  function _path() {
41
- const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
53
+ const data = /*#__PURE__*/ _interop_require_default(require("path"));
42
54
  _path = function() {
43
55
  return data;
44
56
  };
45
57
  return data;
46
58
  }
47
- const _log = /*#__PURE__*/ _interopRequireWildcard(require("../log"));
59
+ const _log = /*#__PURE__*/ _interop_require_wildcard(require("../log"));
48
60
  const _errors = require("../utils/errors");
49
61
  const _url = require("../utils/url");
50
- function _interopRequireDefault(obj) {
62
+ function _interop_require_default(obj) {
51
63
  return obj && obj.__esModule ? obj : {
52
64
  default: obj
53
65
  };
@@ -60,7 +72,7 @@ function _getRequireWildcardCache(nodeInterop) {
60
72
  return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
61
73
  })(nodeInterop);
62
74
  }
63
- function _interopRequireWildcard(obj, nodeInterop) {
75
+ function _interop_require_wildcard(obj, nodeInterop) {
64
76
  if (!nodeInterop && obj && obj.__esModule) {
65
77
  return obj;
66
78
  }
@@ -73,7 +85,9 @@ function _interopRequireWildcard(obj, nodeInterop) {
73
85
  if (cache && cache.has(obj)) {
74
86
  return cache.get(obj);
75
87
  }
76
- var newObj = {};
88
+ var newObj = {
89
+ __proto__: null
90
+ };
77
91
  var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
78
92
  for(var key in obj){
79
93
  if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
@@ -91,96 +105,99 @@ function _interopRequireWildcard(obj, nodeInterop) {
91
105
  }
92
106
  return newObj;
93
107
  }
94
- const debug = require("debug")("expo:prebuild:resolveOptions");
108
+ const debug = require('debug')('expo:prebuild:resolveOptions');
95
109
  function resolvePackageManagerOptions(args) {
96
110
  const managers = {
97
- npm: args["--npm"],
98
- yarn: args["--yarn"],
99
- pnpm: args["--pnpm"],
100
- bun: args["--bun"]
111
+ npm: args['--npm'],
112
+ yarn: args['--yarn'],
113
+ pnpm: args['--pnpm'],
114
+ bun: args['--bun']
101
115
  };
102
116
  if ([
103
117
  managers.npm,
104
118
  managers.pnpm,
105
119
  managers.yarn,
106
120
  managers.bun,
107
- !!args["--no-install"]
121
+ !!args['--no-install']
108
122
  ].filter(Boolean).length > 1) {
109
- throw new _errors.CommandError("BAD_ARGS", "Specify at most one of: --no-install, --npm, --pnpm, --yarn, --bun");
123
+ throw new _errors.CommandError('BAD_ARGS', 'Specify at most one of: --no-install, --npm, --pnpm, --yarn, --bun');
110
124
  }
111
125
  return managers;
112
126
  }
113
127
  function resolveTemplateOption(template) {
114
- (0, _assert().default)(template, "template is required");
128
+ (0, _assert().default)(template, 'template is required');
115
129
  if (// Expands github shorthand (owner/repo) to full URLs
116
- template.includes("/") && !(template.startsWith("@") || template.startsWith(".") || template.startsWith(_path().default.sep) || // Contains a protocol
130
+ template.includes('/') && !(template.startsWith('@') || // Scoped package
131
+ template.startsWith('.') || // Relative path
132
+ template.startsWith(_path().default.sep) || // Absolute path
133
+ // Contains a protocol
117
134
  /^[a-z][-a-z0-9\\.\\+]*:/.test(template))) {
118
135
  template = `https://github.com/${template}`;
119
136
  }
120
- if (template.startsWith("https://") || template.startsWith("http://")) {
137
+ if (template.startsWith('https://') || template.startsWith('http://')) {
121
138
  if (!(0, _url.validateUrl)(template)) {
122
- throw new _errors.CommandError("BAD_ARGS", "Invalid URL provided as a template");
139
+ throw new _errors.CommandError('BAD_ARGS', 'Invalid URL provided as a template');
123
140
  }
124
- debug("Resolved template to repository path:", template);
141
+ debug('Resolved template to repository path:', template);
125
142
  return {
126
- type: "repository",
143
+ type: 'repository',
127
144
  uri: template
128
145
  };
129
146
  }
130
147
  if (// Supports `file:./path/to/template.tgz`
131
- template.startsWith("file:") || // Supports `../path/to/template.tgz`
132
- template.startsWith(".") || // Supports `\\path\\to\\template.tgz`
148
+ template.startsWith('file:') || // Supports `../path/to/template.tgz`
149
+ template.startsWith('.') || // Supports `\\path\\to\\template.tgz`
133
150
  template.startsWith(_path().default.sep)) {
134
151
  let resolvedUri = template;
135
- if (resolvedUri.startsWith("file:")) {
152
+ if (resolvedUri.startsWith('file:')) {
136
153
  resolvedUri = resolvedUri.substring(5);
137
154
  }
138
155
  const templatePath = _path().default.resolve(resolvedUri);
139
- (0, _assert().default)(_fs().default.existsSync(templatePath), "template file does not exist: " + templatePath);
140
- (0, _assert().default)(_fs().default.statSync(templatePath).isFile(), "template must be a tar file created by running `npm pack` in a project: " + templatePath);
156
+ (0, _assert().default)(_fs().default.existsSync(templatePath), 'template file does not exist: ' + templatePath);
157
+ (0, _assert().default)(_fs().default.statSync(templatePath).isFile(), 'template must be a tar file created by running `npm pack` in a project: ' + templatePath);
141
158
  debug(`Resolved template to file path:`, templatePath);
142
159
  return {
143
- type: "file",
160
+ type: 'file',
144
161
  uri: templatePath
145
162
  };
146
163
  }
147
164
  if (_fs().default.existsSync(template)) {
148
165
  // Backward compatible with the old local template argument, e.g. `--template dir/template.tgz`
149
- const templatePath1 = _path().default.resolve(template);
150
- debug(`Resolved template to file path:`, templatePath1);
166
+ const templatePath = _path().default.resolve(template);
167
+ debug(`Resolved template to file path:`, templatePath);
151
168
  return {
152
- type: "file",
153
- uri: templatePath1
169
+ type: 'file',
170
+ uri: templatePath
154
171
  };
155
172
  }
156
173
  debug(`Resolved template to NPM package:`, template);
157
174
  return {
158
- type: "npm",
175
+ type: 'npm',
159
176
  uri: template
160
177
  };
161
178
  }
162
179
  function resolveSkipDependencyUpdate(value) {
163
- if (!value || typeof value !== "string") {
180
+ if (!value || typeof value !== 'string') {
164
181
  return [];
165
182
  }
166
- return value.split(",");
183
+ return value.split(',');
167
184
  }
168
- function resolvePlatformOption(platform = "all", { loose } = {}) {
185
+ function resolvePlatformOption(platform = 'all', { loose } = {}) {
169
186
  switch(platform){
170
- case "ios":
187
+ case 'ios':
171
188
  return [
172
- "ios"
189
+ 'ios'
173
190
  ];
174
- case "android":
191
+ case 'android':
175
192
  return [
176
- "android"
193
+ 'android'
177
194
  ];
178
- case "all":
179
- return loose || process.platform !== "win32" ? [
180
- "android",
181
- "ios"
195
+ case 'all':
196
+ return loose || process.platform !== 'win32' ? [
197
+ 'android',
198
+ 'ios'
182
199
  ] : [
183
- "android"
200
+ 'android'
184
201
  ];
185
202
  default:
186
203
  return [
@@ -190,15 +207,15 @@ function resolvePlatformOption(platform = "all", { loose } = {}) {
190
207
  }
191
208
  function ensureValidPlatforms(platforms) {
192
209
  // Skip prebuild for iOS on Windows
193
- if (process.platform === "win32" && platforms.includes("ios")) {
210
+ if (process.platform === 'win32' && platforms.includes('ios')) {
194
211
  _log.warn((0, _chalk().default)`⚠️ Skipping generating the iOS native project files. Run {bold npx expo prebuild} again from macOS or Linux to generate the iOS project.\n`);
195
- return platforms.filter((platform)=>platform !== "ios");
212
+ return platforms.filter((platform)=>platform !== 'ios');
196
213
  }
197
214
  return platforms;
198
215
  }
199
216
  function assertPlatforms(platforms) {
200
217
  if (!(platforms == null ? void 0 : platforms.length)) {
201
- throw new _errors.CommandError("At least one platform must be enabled when syncing");
218
+ throw new _errors.CommandError('At least one platform must be enabled when syncing');
202
219
  }
203
220
  }
204
221
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/prebuild/resolveOptions.ts"],"sourcesContent":["import { ModPlatform } from '@expo/config-plugins';\nimport assert from 'assert';\nimport chalk from 'chalk';\nimport fs from 'fs';\nimport path from 'path';\n\nimport * as Log from '../log';\nimport { CommandError } from '../utils/errors';\nimport { validateUrl } from '../utils/url';\n\nconst debug = require('debug')('expo:prebuild:resolveOptions') as typeof console.log;\n\nexport interface ResolvedTemplateOption {\n type: 'file' | 'npm' | 'repository';\n uri: string;\n}\n\nexport function resolvePackageManagerOptions(args: any) {\n const managers: Record<string, boolean> = {\n npm: args['--npm'],\n yarn: args['--yarn'],\n pnpm: args['--pnpm'],\n bun: args['--bun'],\n };\n\n if (\n [managers.npm, managers.pnpm, managers.yarn, managers.bun, !!args['--no-install']].filter(\n Boolean\n ).length > 1\n ) {\n throw new CommandError(\n 'BAD_ARGS',\n 'Specify at most one of: --no-install, --npm, --pnpm, --yarn, --bun'\n );\n }\n\n return managers;\n}\n\n/** Resolves a template option as a URL or file path pointing to a tar file. */\nexport function resolveTemplateOption(template: string): ResolvedTemplateOption {\n assert(template, 'template is required');\n\n if (\n // Expands github shorthand (owner/repo) to full URLs\n template.includes('/') &&\n !(\n template.startsWith('@') || // Scoped package\n template.startsWith('.') || // Relative path\n template.startsWith(path.sep) || // Absolute path\n // Contains a protocol\n /^[a-z][-a-z0-9\\\\.\\\\+]*:/.test(template)\n )\n ) {\n template = `https://github.com/${template}`;\n }\n\n if (template.startsWith('https://') || template.startsWith('http://')) {\n if (!validateUrl(template)) {\n throw new CommandError('BAD_ARGS', 'Invalid URL provided as a template');\n }\n debug('Resolved template to repository path:', template);\n return { type: 'repository', uri: template };\n }\n\n if (\n // Supports `file:./path/to/template.tgz`\n template.startsWith('file:') ||\n // Supports `../path/to/template.tgz`\n template.startsWith('.') ||\n // Supports `\\\\path\\\\to\\\\template.tgz`\n template.startsWith(path.sep)\n ) {\n let resolvedUri = template;\n if (resolvedUri.startsWith('file:')) {\n resolvedUri = resolvedUri.substring(5);\n }\n const templatePath = path.resolve(resolvedUri);\n assert(fs.existsSync(templatePath), 'template file does not exist: ' + templatePath);\n assert(\n fs.statSync(templatePath).isFile(),\n 'template must be a tar file created by running `npm pack` in a project: ' + templatePath\n );\n\n debug(`Resolved template to file path:`, templatePath);\n return { type: 'file', uri: templatePath };\n }\n\n if (fs.existsSync(template)) {\n // Backward compatible with the old local template argument, e.g. `--template dir/template.tgz`\n const templatePath = path.resolve(template);\n debug(`Resolved template to file path:`, templatePath);\n return { type: 'file', uri: templatePath };\n }\n\n debug(`Resolved template to NPM package:`, template);\n return { type: 'npm', uri: template };\n}\n\n/** Resolves dependencies to skip from a string joined by `,`. Example: `react-native,expo,lodash` */\nexport function resolveSkipDependencyUpdate(value: any) {\n if (!value || typeof value !== 'string') {\n return [];\n }\n return value.split(',');\n}\n\n/** Returns an array of platforms based on the input platform identifier and runtime constraints. */\nexport function resolvePlatformOption(\n platform: string = 'all',\n { loose }: { loose?: boolean } = {}\n): ModPlatform[] {\n switch (platform) {\n case 'ios':\n return ['ios'];\n case 'android':\n return ['android'];\n case 'all':\n return loose || process.platform !== 'win32' ? ['android', 'ios'] : ['android'];\n default:\n return [platform as ModPlatform];\n }\n}\n\n/** Warns and filters out unsupported platforms based on the runtime constraints. Essentially this means no iOS on Windows devices. */\nexport function ensureValidPlatforms(platforms: ModPlatform[]): ModPlatform[] {\n // Skip prebuild for iOS on Windows\n if (process.platform === 'win32' && platforms.includes('ios')) {\n Log.warn(\n chalk`⚠️ Skipping generating the iOS native project files. Run {bold npx expo prebuild} again from macOS or Linux to generate the iOS project.\\n`\n );\n return platforms.filter((platform) => platform !== 'ios');\n }\n return platforms;\n}\n\n/** Asserts platform length must be greater than zero. */\nexport function assertPlatforms(platforms: ModPlatform[]) {\n if (!platforms?.length) {\n throw new CommandError('At least one platform must be enabled when syncing');\n }\n}\n"],"names":["resolvePackageManagerOptions","resolveTemplateOption","resolveSkipDependencyUpdate","resolvePlatformOption","ensureValidPlatforms","assertPlatforms","debug","require","args","managers","npm","yarn","pnpm","bun","filter","Boolean","length","CommandError","template","assert","includes","startsWith","path","sep","test","validateUrl","type","uri","resolvedUri","substring","templatePath","resolve","fs","existsSync","statSync","isFile","value","split","platform","loose","process","platforms","Log","warn","chalk"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/prebuild/resolveOptions.ts"],"sourcesContent":["import { ModPlatform } from '@expo/config-plugins';\nimport assert from 'assert';\nimport chalk from 'chalk';\nimport fs from 'fs';\nimport path from 'path';\n\nimport * as Log from '../log';\nimport { CommandError } from '../utils/errors';\nimport { validateUrl } from '../utils/url';\n\nconst debug = require('debug')('expo:prebuild:resolveOptions') as typeof console.log;\n\nexport interface ResolvedTemplateOption {\n type: 'file' | 'npm' | 'repository';\n uri: string;\n}\n\nexport function resolvePackageManagerOptions(args: any) {\n const managers: Record<string, boolean> = {\n npm: args['--npm'],\n yarn: args['--yarn'],\n pnpm: args['--pnpm'],\n bun: args['--bun'],\n };\n\n if (\n [managers.npm, managers.pnpm, managers.yarn, managers.bun, !!args['--no-install']].filter(\n Boolean\n ).length > 1\n ) {\n throw new CommandError(\n 'BAD_ARGS',\n 'Specify at most one of: --no-install, --npm, --pnpm, --yarn, --bun'\n );\n }\n\n return managers;\n}\n\n/** Resolves a template option as a URL or file path pointing to a tar file. */\nexport function resolveTemplateOption(template: string): ResolvedTemplateOption {\n assert(template, 'template is required');\n\n if (\n // Expands github shorthand (owner/repo) to full URLs\n template.includes('/') &&\n !(\n template.startsWith('@') || // Scoped package\n template.startsWith('.') || // Relative path\n template.startsWith(path.sep) || // Absolute path\n // Contains a protocol\n /^[a-z][-a-z0-9\\\\.\\\\+]*:/.test(template)\n )\n ) {\n template = `https://github.com/${template}`;\n }\n\n if (template.startsWith('https://') || template.startsWith('http://')) {\n if (!validateUrl(template)) {\n throw new CommandError('BAD_ARGS', 'Invalid URL provided as a template');\n }\n debug('Resolved template to repository path:', template);\n return { type: 'repository', uri: template };\n }\n\n if (\n // Supports `file:./path/to/template.tgz`\n template.startsWith('file:') ||\n // Supports `../path/to/template.tgz`\n template.startsWith('.') ||\n // Supports `\\\\path\\\\to\\\\template.tgz`\n template.startsWith(path.sep)\n ) {\n let resolvedUri = template;\n if (resolvedUri.startsWith('file:')) {\n resolvedUri = resolvedUri.substring(5);\n }\n const templatePath = path.resolve(resolvedUri);\n assert(fs.existsSync(templatePath), 'template file does not exist: ' + templatePath);\n assert(\n fs.statSync(templatePath).isFile(),\n 'template must be a tar file created by running `npm pack` in a project: ' + templatePath\n );\n\n debug(`Resolved template to file path:`, templatePath);\n return { type: 'file', uri: templatePath };\n }\n\n if (fs.existsSync(template)) {\n // Backward compatible with the old local template argument, e.g. `--template dir/template.tgz`\n const templatePath = path.resolve(template);\n debug(`Resolved template to file path:`, templatePath);\n return { type: 'file', uri: templatePath };\n }\n\n debug(`Resolved template to NPM package:`, template);\n return { type: 'npm', uri: template };\n}\n\n/** Resolves dependencies to skip from a string joined by `,`. Example: `react-native,expo,lodash` */\nexport function resolveSkipDependencyUpdate(value: any) {\n if (!value || typeof value !== 'string') {\n return [];\n }\n return value.split(',');\n}\n\n/** Returns an array of platforms based on the input platform identifier and runtime constraints. */\nexport function resolvePlatformOption(\n platform: string = 'all',\n { loose }: { loose?: boolean } = {}\n): ModPlatform[] {\n switch (platform) {\n case 'ios':\n return ['ios'];\n case 'android':\n return ['android'];\n case 'all':\n return loose || process.platform !== 'win32' ? ['android', 'ios'] : ['android'];\n default:\n return [platform as ModPlatform];\n }\n}\n\n/** Warns and filters out unsupported platforms based on the runtime constraints. Essentially this means no iOS on Windows devices. */\nexport function ensureValidPlatforms(platforms: ModPlatform[]): ModPlatform[] {\n // Skip prebuild for iOS on Windows\n if (process.platform === 'win32' && platforms.includes('ios')) {\n Log.warn(\n chalk`⚠️ Skipping generating the iOS native project files. Run {bold npx expo prebuild} again from macOS or Linux to generate the iOS project.\\n`\n );\n return platforms.filter((platform) => platform !== 'ios');\n }\n return platforms;\n}\n\n/** Asserts platform length must be greater than zero. */\nexport function assertPlatforms(platforms: ModPlatform[]) {\n if (!platforms?.length) {\n throw new CommandError('At least one platform must be enabled when syncing');\n }\n}\n"],"names":["assertPlatforms","ensureValidPlatforms","resolvePackageManagerOptions","resolvePlatformOption","resolveSkipDependencyUpdate","resolveTemplateOption","debug","require","args","managers","npm","yarn","pnpm","bun","filter","Boolean","length","CommandError","template","assert","includes","startsWith","path","sep","test","validateUrl","type","uri","resolvedUri","substring","templatePath","resolve","fs","existsSync","statSync","isFile","value","split","platform","loose","process","platforms","Log","warn","chalk"],"mappings":"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"}
@@ -4,29 +4,31 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "cloneTemplateAsync", {
6
6
  enumerable: true,
7
- get: ()=>cloneTemplateAsync
7
+ get: function() {
8
+ return cloneTemplateAsync;
9
+ }
8
10
  });
9
11
  function _chalk() {
10
- const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
12
+ const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
11
13
  _chalk = function() {
12
14
  return data;
13
15
  };
14
16
  return data;
15
17
  }
16
18
  function _semver() {
17
- const data = /*#__PURE__*/ _interopRequireDefault(require("semver"));
19
+ const data = /*#__PURE__*/ _interop_require_default(require("semver"));
18
20
  _semver = function() {
19
21
  return data;
20
22
  };
21
23
  return data;
22
24
  }
23
25
  const _client = require("../api/rest/client");
24
- const _log = /*#__PURE__*/ _interopRequireWildcard(require("../log"));
26
+ const _log = /*#__PURE__*/ _interop_require_wildcard(require("../log"));
25
27
  const _createFileTransform = require("../utils/createFileTransform");
26
28
  const _errors = require("../utils/errors");
27
29
  const _npm = require("../utils/npm");
28
30
  const _url = require("../utils/url");
29
- function _interopRequireDefault(obj) {
31
+ function _interop_require_default(obj) {
30
32
  return obj && obj.__esModule ? obj : {
31
33
  default: obj
32
34
  };
@@ -39,7 +41,7 @@ function _getRequireWildcardCache(nodeInterop) {
39
41
  return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
40
42
  })(nodeInterop);
41
43
  }
42
- function _interopRequireWildcard(obj, nodeInterop) {
44
+ function _interop_require_wildcard(obj, nodeInterop) {
43
45
  if (!nodeInterop && obj && obj.__esModule) {
44
46
  return obj;
45
47
  }
@@ -52,7 +54,9 @@ function _interopRequireWildcard(obj, nodeInterop) {
52
54
  if (cache && cache.has(obj)) {
53
55
  return cache.get(obj);
54
56
  }
55
- var newObj = {};
57
+ var newObj = {
58
+ __proto__: null
59
+ };
56
60
  var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
57
61
  for(var key in obj){
58
62
  if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
@@ -70,22 +74,22 @@ function _interopRequireWildcard(obj, nodeInterop) {
70
74
  }
71
75
  return newObj;
72
76
  }
73
- const debug = require("debug")("expo:prebuild:resolveTemplate");
74
- async function cloneTemplateAsync({ templateDirectory , template , exp , ora }) {
77
+ const debug = require('debug')('expo:prebuild:resolveTemplate');
78
+ async function cloneTemplateAsync({ templateDirectory, template, exp, ora }) {
75
79
  if (template) {
76
80
  const appName = exp.name;
77
- const { type , uri } = template;
78
- if (type === "file") {
81
+ const { type, uri } = template;
82
+ if (type === 'file') {
79
83
  return await (0, _npm.extractLocalNpmTarballAsync)(uri, {
80
84
  cwd: templateDirectory,
81
85
  name: appName
82
86
  });
83
- } else if (type === "npm") {
87
+ } else if (type === 'npm') {
84
88
  return await (0, _npm.downloadAndExtractNpmModuleAsync)(uri, {
85
89
  cwd: templateDirectory,
86
90
  name: appName
87
91
  });
88
- } else if (type === "repository") {
92
+ } else if (type === 'repository') {
89
93
  return await resolveAndDownloadRepoTemplateAsync(templateDirectory, ora, appName, uri);
90
94
  } else {
91
95
  throw new Error(`Unknown template type: ${type}`);
@@ -100,15 +104,15 @@ async function cloneTemplateAsync({ templateDirectory , template , exp , ora })
100
104
  }
101
105
  /** Given an `sdkVersion` like `44.0.0` return a fully qualified NPM package name like: `expo-template-bare-minimum@sdk-44` */ function getTemplateNpmPackageName(sdkVersion) {
102
106
  // When undefined or UNVERSIONED, we use the latest version.
103
- if (!sdkVersion || sdkVersion === "UNVERSIONED") {
104
- _log.log("Using an unspecified Expo SDK version. The latest template will be used.");
107
+ if (!sdkVersion || sdkVersion === 'UNVERSIONED') {
108
+ _log.log('Using an unspecified Expo SDK version. The latest template will be used.');
105
109
  return `expo-template-bare-minimum@latest`;
106
110
  }
107
111
  return `expo-template-bare-minimum@sdk-${_semver().default.major(sdkVersion)}`;
108
112
  }
109
113
  async function getRepoInfo(url, examplePath) {
110
- const [, username, name, t, _branch, ...file] = url.pathname.split("/");
111
- const filePath = examplePath ? examplePath.replace(/^\//, "") : file.join("/");
114
+ const [, username, name, t, _branch, ...file] = url.pathname.split('/');
115
+ const filePath = examplePath ? examplePath.replace(/^\//, '') : file.join('/');
112
116
  // Support repos whose entire purpose is to be an example, e.g.
113
117
  // https://github.com/:username/:my-cool-example-repo-name.
114
118
  if (t === undefined) {
@@ -120,13 +124,13 @@ async function getRepoInfo(url, examplePath) {
120
124
  return {
121
125
  username,
122
126
  name,
123
- branch: info["default_branch"],
127
+ branch: info['default_branch'],
124
128
  filePath
125
129
  };
126
130
  }
127
131
  // If examplePath is available, the branch name takes the entire path
128
- const branch = examplePath ? `${_branch}/${file.join("/")}`.replace(new RegExp(`/${filePath}|/$`), "") : _branch;
129
- if (username && name && branch && t === "tree") {
132
+ const branch = examplePath ? `${_branch}/${file.join('/')}`.replace(new RegExp(`/${filePath}|/$`), '') : _branch;
133
+ if (username && name && branch && t === 'tree') {
130
134
  return {
131
135
  username,
132
136
  name,
@@ -136,30 +140,30 @@ async function getRepoInfo(url, examplePath) {
136
140
  }
137
141
  return undefined;
138
142
  }
139
- function hasRepo({ username , name , branch , filePath }) {
143
+ function hasRepo({ username, name, branch, filePath }) {
140
144
  const contentsUrl = `https://api.github.com/repos/${username}/${name}/contents`;
141
- const packagePath = `${filePath ? `/${filePath}` : ""}/package.json`;
145
+ const packagePath = `${filePath ? `/${filePath}` : ''}/package.json`;
142
146
  return (0, _url.isUrlOk)(contentsUrl + packagePath + `?ref=${branch}`);
143
147
  }
144
- async function downloadAndExtractRepoAsync({ username , name , branch , filePath }, props) {
148
+ async function downloadAndExtractRepoAsync({ username, name, branch, filePath }, props) {
145
149
  const url = `https://codeload.github.com/${username}/${name}/tar.gz/${branch}`;
146
- debug("Downloading tarball from:", url);
150
+ debug('Downloading tarball from:', url);
147
151
  // Extract the (sub)directory into non-empty path segments
148
- const directory = filePath.replace(/^\//, "").split("/").filter(Boolean);
152
+ const directory = filePath.replace(/^\//, '').split('/').filter(Boolean);
149
153
  // Remove the (sub)directory paths, and the root folder added by GitHub
150
154
  const strip = directory.length + 1;
151
155
  // Only extract the relevant (sub)directories, ignoring irrelevant files
152
156
  // The filder auto-ignores dotfiles, unless explicitly included
153
157
  const filter = (0, _createFileTransform.createGlobFilter)(!directory.length ? [
154
- "*/**",
155
- "*/ios/.xcode.env"
158
+ '*/**',
159
+ '*/ios/.xcode.env'
156
160
  ] : [
157
- `*/${directory.join("/")}/**`,
158
- `*/${directory.join("/")}/ios/.xcode.env`
161
+ `*/${directory.join('/')}/**`,
162
+ `*/${directory.join('/')}/ios/.xcode.env`
159
163
  ], {
160
164
  // Always ignore the `.xcworkspace` folder
161
165
  ignore: [
162
- "**/ios/*.xcworkspace/**"
166
+ '**/ios/*.xcworkspace/**'
163
167
  ]
164
168
  });
165
169
  return await (0, _npm.extractNpmTarballFromUrlAsync)(url, {
@@ -173,7 +177,7 @@ async function resolveAndDownloadRepoTemplateAsync(templateDirectory, oraInstanc
173
177
  try {
174
178
  repoUrl = new URL(template);
175
179
  } catch (error) {
176
- if (error.code !== "ERR_INVALID_URL") {
180
+ if (error.code !== 'ERR_INVALID_URL') {
177
181
  oraInstance.fail(error);
178
182
  throw error;
179
183
  }
@@ -182,7 +186,7 @@ async function resolveAndDownloadRepoTemplateAsync(templateDirectory, oraInstanc
182
186
  oraInstance.fail(`Invalid URL: ${_chalk().default.red(`"${template}"`)}. Please use a valid URL and try again.`);
183
187
  throw new _errors.AbortCommandError();
184
188
  }
185
- if (repoUrl.origin !== "https://github.com") {
189
+ if (repoUrl.origin !== 'https://github.com') {
186
190
  oraInstance.fail(`Invalid URL: ${_chalk().default.red(`"${template}"`)}. Only GitHub repositories are supported. Please use a GitHub URL and try again.`);
187
191
  throw new _errors.AbortCommandError();
188
192
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/prebuild/resolveTemplate.ts"],"sourcesContent":["import { ExpoConfig } from '@expo/config';\nimport chalk from 'chalk';\nimport { Ora } from 'ora';\nimport semver from 'semver';\n\nimport { type ResolvedTemplateOption } from './resolveOptions';\nimport { fetchAsync } from '../api/rest/client';\nimport * as Log from '../log';\nimport { createGlobFilter } from '../utils/createFileTransform';\nimport { AbortCommandError } from '../utils/errors';\nimport {\n ExtractProps,\n downloadAndExtractNpmModuleAsync,\n extractLocalNpmTarballAsync,\n extractNpmTarballFromUrlAsync,\n} from '../utils/npm';\nimport { isUrlOk } from '../utils/url';\n\nconst debug = require('debug')('expo:prebuild:resolveTemplate') as typeof console.log;\n\ntype RepoInfo = {\n username: string;\n name: string;\n branch: string;\n filePath: string;\n};\n\nexport async function cloneTemplateAsync({\n templateDirectory,\n template,\n exp,\n ora,\n}: {\n templateDirectory: string;\n template?: ResolvedTemplateOption;\n exp: Pick<ExpoConfig, 'name' | 'sdkVersion'>;\n ora: Ora;\n}): Promise<string> {\n if (template) {\n const appName = exp.name;\n const { type, uri } = template;\n if (type === 'file') {\n return await extractLocalNpmTarballAsync(uri, {\n cwd: templateDirectory,\n name: appName,\n });\n } else if (type === 'npm') {\n return await downloadAndExtractNpmModuleAsync(uri, {\n cwd: templateDirectory,\n name: appName,\n });\n } else if (type === 'repository') {\n return await resolveAndDownloadRepoTemplateAsync(templateDirectory, ora, appName, uri);\n } else {\n throw new Error(`Unknown template type: ${type}`);\n }\n } else {\n const templatePackageName = await getTemplateNpmPackageName(exp.sdkVersion);\n return await downloadAndExtractNpmModuleAsync(templatePackageName, {\n cwd: templateDirectory,\n name: exp.name,\n });\n }\n}\n\n/** Given an `sdkVersion` like `44.0.0` return a fully qualified NPM package name like: `expo-template-bare-minimum@sdk-44` */\nfunction getTemplateNpmPackageName(sdkVersion?: string): string {\n // When undefined or UNVERSIONED, we use the latest version.\n if (!sdkVersion || sdkVersion === 'UNVERSIONED') {\n Log.log('Using an unspecified Expo SDK version. The latest template will be used.');\n return `expo-template-bare-minimum@latest`;\n }\n return `expo-template-bare-minimum@sdk-${semver.major(sdkVersion)}`;\n}\n\nasync function getRepoInfo(url: any, examplePath?: string): Promise<RepoInfo | undefined> {\n const [, username, name, t, _branch, ...file] = url.pathname.split('/');\n const filePath = examplePath ? examplePath.replace(/^\\//, '') : file.join('/');\n\n // Support repos whose entire purpose is to be an example, e.g.\n // https://github.com/:username/:my-cool-example-repo-name.\n if (t === undefined) {\n const infoResponse = await fetchAsync(`https://api.github.com/repos/${username}/${name}`);\n if (infoResponse.status !== 200) {\n return;\n }\n const info: any = await infoResponse.json();\n return { username, name, branch: info['default_branch'], filePath };\n }\n\n // If examplePath is available, the branch name takes the entire path\n const branch = examplePath\n ? `${_branch}/${file.join('/')}`.replace(new RegExp(`/${filePath}|/$`), '')\n : _branch;\n\n if (username && name && branch && t === 'tree') {\n return { username, name, branch, filePath };\n }\n return undefined;\n}\n\nfunction hasRepo({ username, name, branch, filePath }: RepoInfo) {\n const contentsUrl = `https://api.github.com/repos/${username}/${name}/contents`;\n const packagePath = `${filePath ? `/${filePath}` : ''}/package.json`;\n\n return isUrlOk(contentsUrl + packagePath + `?ref=${branch}`);\n}\n\nasync function downloadAndExtractRepoAsync(\n { username, name, branch, filePath }: RepoInfo,\n props: ExtractProps\n): Promise<string> {\n const url = `https://codeload.github.com/${username}/${name}/tar.gz/${branch}`;\n\n debug('Downloading tarball from:', url);\n\n // Extract the (sub)directory into non-empty path segments\n const directory = filePath.replace(/^\\//, '').split('/').filter(Boolean);\n // Remove the (sub)directory paths, and the root folder added by GitHub\n const strip = directory.length + 1;\n // Only extract the relevant (sub)directories, ignoring irrelevant files\n // The filder auto-ignores dotfiles, unless explicitly included\n const filter = createGlobFilter(\n !directory.length\n ? ['*/**', '*/ios/.xcode.env']\n : [`*/${directory.join('/')}/**`, `*/${directory.join('/')}/ios/.xcode.env`],\n {\n // Always ignore the `.xcworkspace` folder\n ignore: ['**/ios/*.xcworkspace/**'],\n }\n );\n\n return await extractNpmTarballFromUrlAsync(url, { ...props, strip, filter });\n}\n\nasync function resolveAndDownloadRepoTemplateAsync(\n templateDirectory: string,\n oraInstance: Ora,\n appName: string,\n template: string,\n templatePath?: string\n) {\n let repoUrl: URL | undefined;\n\n try {\n repoUrl = new URL(template);\n } catch (error: any) {\n if (error.code !== 'ERR_INVALID_URL') {\n oraInstance.fail(error);\n throw error;\n }\n }\n if (!repoUrl) {\n oraInstance.fail(\n `Invalid URL: ${chalk.red(`\"${template}\"`)}. Please use a valid URL and try again.`\n );\n throw new AbortCommandError();\n }\n\n if (repoUrl.origin !== 'https://github.com') {\n oraInstance.fail(\n `Invalid URL: ${chalk.red(\n `\"${template}\"`\n )}. Only GitHub repositories are supported. Please use a GitHub URL and try again.`\n );\n throw new AbortCommandError();\n }\n\n const repoInfo = await getRepoInfo(repoUrl, templatePath);\n\n if (!repoInfo) {\n oraInstance.fail(\n `Found invalid GitHub URL: ${chalk.red(`\"${template}\"`)}. Please fix the URL and try again.`\n );\n throw new AbortCommandError();\n }\n\n const found = await hasRepo(repoInfo);\n\n if (!found) {\n oraInstance.fail(\n `Could not locate the repository for ${chalk.red(\n `\"${template}\"`\n )}. Please check that the repository exists and try again.`\n );\n throw new AbortCommandError();\n }\n\n oraInstance.text = chalk.bold(\n `Downloading files from repo ${chalk.cyan(template)}. This might take a moment.`\n );\n\n return await downloadAndExtractRepoAsync(repoInfo, {\n cwd: templateDirectory,\n name: appName,\n });\n}\n"],"names":["cloneTemplateAsync","debug","require","templateDirectory","template","exp","ora","appName","name","type","uri","extractLocalNpmTarballAsync","cwd","downloadAndExtractNpmModuleAsync","resolveAndDownloadRepoTemplateAsync","Error","templatePackageName","getTemplateNpmPackageName","sdkVersion","Log","log","semver","major","getRepoInfo","url","examplePath","username","t","_branch","file","pathname","split","filePath","replace","join","undefined","infoResponse","fetchAsync","status","info","json","branch","RegExp","hasRepo","contentsUrl","packagePath","isUrlOk","downloadAndExtractRepoAsync","props","directory","filter","Boolean","strip","length","createGlobFilter","ignore","extractNpmTarballFromUrlAsync","oraInstance","templatePath","repoUrl","URL","error","code","fail","chalk","red","AbortCommandError","origin","repoInfo","found","text","bold","cyan"],"mappings":"AAAA;;;;+BA2BsBA,oBAAkB;;aAAlBA,kBAAkB;;;8DA1BtB,OAAO;;;;;;;8DAEN,QAAQ;;;;;;wBAGA,oBAAoB;2DAC1B,QAAQ;qCACI,8BAA8B;wBAC7B,iBAAiB;qBAM5C,cAAc;qBACG,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtC,MAAMC,KAAK,GAAGC,OAAO,CAAC,OAAO,CAAC,CAAC,+BAA+B,CAAC,AAAsB,AAAC;AAS/E,eAAeF,kBAAkB,CAAC,EACvCG,iBAAiB,CAAA,EACjBC,QAAQ,CAAA,EACRC,GAAG,CAAA,EACHC,GAAG,CAAA,EAMJ,EAAmB;IAClB,IAAIF,QAAQ,EAAE;QACZ,MAAMG,OAAO,GAAGF,GAAG,CAACG,IAAI,AAAC;QACzB,MAAM,EAAEC,IAAI,CAAA,EAAEC,GAAG,CAAA,EAAE,GAAGN,QAAQ,AAAC;QAC/B,IAAIK,IAAI,KAAK,MAAM,EAAE;YACnB,OAAO,MAAME,IAAAA,IAA2B,4BAAA,EAACD,GAAG,EAAE;gBAC5CE,GAAG,EAAET,iBAAiB;gBACtBK,IAAI,EAAED,OAAO;aACd,CAAC,CAAC;QACL,OAAO,IAAIE,IAAI,KAAK,KAAK,EAAE;YACzB,OAAO,MAAMI,IAAAA,IAAgC,iCAAA,EAACH,GAAG,EAAE;gBACjDE,GAAG,EAAET,iBAAiB;gBACtBK,IAAI,EAAED,OAAO;aACd,CAAC,CAAC;QACL,OAAO,IAAIE,IAAI,KAAK,YAAY,EAAE;YAChC,OAAO,MAAMK,mCAAmC,CAACX,iBAAiB,EAAEG,GAAG,EAAEC,OAAO,EAAEG,GAAG,CAAC,CAAC;QACzF,OAAO;YACL,MAAM,IAAIK,KAAK,CAAC,CAAC,uBAAuB,EAAEN,IAAI,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC;IACH,OAAO;QACL,MAAMO,mBAAmB,GAAG,MAAMC,yBAAyB,CAACZ,GAAG,CAACa,UAAU,CAAC,AAAC;QAC5E,OAAO,MAAML,IAAAA,IAAgC,iCAAA,EAACG,mBAAmB,EAAE;YACjEJ,GAAG,EAAET,iBAAiB;YACtBK,IAAI,EAAEH,GAAG,CAACG,IAAI;SACf,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,4HAA4H,GAC5H,SAASS,yBAAyB,CAACC,UAAmB,EAAU;IAC9D,4DAA4D;IAC5D,IAAI,CAACA,UAAU,IAAIA,UAAU,KAAK,aAAa,EAAE;QAC/CC,IAAG,CAACC,GAAG,CAAC,0EAA0E,CAAC,CAAC;QACpF,OAAO,CAAC,iCAAiC,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,CAAC,+BAA+B,EAAEC,OAAM,EAAA,QAAA,CAACC,KAAK,CAACJ,UAAU,CAAC,CAAC,CAAC,CAAC;AACtE,CAAC;AAED,eAAeK,WAAW,CAACC,GAAQ,EAAEC,WAAoB,EAAiC;IACxF,MAAM,GAAGC,QAAQ,EAAElB,IAAI,EAAEmB,CAAC,EAAEC,OAAO,EAAE,GAAGC,IAAI,CAAC,GAAGL,GAAG,CAACM,QAAQ,CAACC,KAAK,CAAC,GAAG,CAAC,AAAC;IACxE,MAAMC,QAAQ,GAAGP,WAAW,GAAGA,WAAW,CAACQ,OAAO,QAAQ,EAAE,CAAC,GAAGJ,IAAI,CAACK,IAAI,CAAC,GAAG,CAAC,AAAC;IAE/E,+DAA+D;IAC/D,2DAA2D;IAC3D,IAAIP,CAAC,KAAKQ,SAAS,EAAE;QACnB,MAAMC,YAAY,GAAG,MAAMC,IAAAA,OAAU,WAAA,EAAC,CAAC,6BAA6B,EAAEX,QAAQ,CAAC,CAAC,EAAElB,IAAI,CAAC,CAAC,CAAC,AAAC;QAC1F,IAAI4B,YAAY,CAACE,MAAM,KAAK,GAAG,EAAE;YAC/B,OAAO;QACT,CAAC;QACD,MAAMC,IAAI,GAAQ,MAAMH,YAAY,CAACI,IAAI,EAAE,AAAC;QAC5C,OAAO;YAAEd,QAAQ;YAAElB,IAAI;YAAEiC,MAAM,EAAEF,IAAI,CAAC,gBAAgB,CAAC;YAAEP,QAAQ;SAAE,CAAC;IACtE,CAAC;IAED,qEAAqE;IACrE,MAAMS,MAAM,GAAGhB,WAAW,GACtB,CAAC,EAAEG,OAAO,CAAC,CAAC,EAAEC,IAAI,CAACK,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAACD,OAAO,CAAC,IAAIS,MAAM,CAAC,CAAC,CAAC,EAAEV,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,GACzEJ,OAAO,AAAC;IAEZ,IAAIF,QAAQ,IAAIlB,IAAI,IAAIiC,MAAM,IAAId,CAAC,KAAK,MAAM,EAAE;QAC9C,OAAO;YAAED,QAAQ;YAAElB,IAAI;YAAEiC,MAAM;YAAET,QAAQ;SAAE,CAAC;IAC9C,CAAC;IACD,OAAOG,SAAS,CAAC;AACnB,CAAC;AAED,SAASQ,OAAO,CAAC,EAAEjB,QAAQ,CAAA,EAAElB,IAAI,CAAA,EAAEiC,MAAM,CAAA,EAAET,QAAQ,CAAA,EAAY,EAAE;IAC/D,MAAMY,WAAW,GAAG,CAAC,6BAA6B,EAAElB,QAAQ,CAAC,CAAC,EAAElB,IAAI,CAAC,SAAS,CAAC,AAAC;IAChF,MAAMqC,WAAW,GAAG,CAAC,EAAEb,QAAQ,GAAG,CAAC,CAAC,EAAEA,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,AAAC;IAErE,OAAOc,IAAAA,IAAO,QAAA,EAACF,WAAW,GAAGC,WAAW,GAAG,CAAC,KAAK,EAAEJ,MAAM,CAAC,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED,eAAeM,2BAA2B,CACxC,EAAErB,QAAQ,CAAA,EAAElB,IAAI,CAAA,EAAEiC,MAAM,CAAA,EAAET,QAAQ,CAAA,EAAY,EAC9CgB,KAAmB,EACF;IACjB,MAAMxB,GAAG,GAAG,CAAC,4BAA4B,EAAEE,QAAQ,CAAC,CAAC,EAAElB,IAAI,CAAC,QAAQ,EAAEiC,MAAM,CAAC,CAAC,AAAC;IAE/ExC,KAAK,CAAC,2BAA2B,EAAEuB,GAAG,CAAC,CAAC;IAExC,0DAA0D;IAC1D,MAAMyB,SAAS,GAAGjB,QAAQ,CAACC,OAAO,QAAQ,EAAE,CAAC,CAACF,KAAK,CAAC,GAAG,CAAC,CAACmB,MAAM,CAACC,OAAO,CAAC,AAAC;IACzE,uEAAuE;IACvE,MAAMC,KAAK,GAAGH,SAAS,CAACI,MAAM,GAAG,CAAC,AAAC;IACnC,wEAAwE;IACxE,+DAA+D;IAC/D,MAAMH,MAAM,GAAGI,IAAAA,oBAAgB,iBAAA,EAC7B,CAACL,SAAS,CAACI,MAAM,GACb;QAAC,MAAM;QAAE,kBAAkB;KAAC,GAC5B;QAAC,CAAC,EAAE,EAAEJ,SAAS,CAACf,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;QAAE,CAAC,EAAE,EAAEe,SAAS,CAACf,IAAI,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC;KAAC,EAC9E;QACE,0CAA0C;QAC1CqB,MAAM,EAAE;YAAC,yBAAyB;SAAC;KACpC,CACF,AAAC;IAEF,OAAO,MAAMC,IAAAA,IAA6B,8BAAA,EAAChC,GAAG,EAAE;QAAE,GAAGwB,KAAK;QAAEI,KAAK;QAAEF,MAAM;KAAE,CAAC,CAAC;AAC/E,CAAC;AAED,eAAepC,mCAAmC,CAChDX,iBAAyB,EACzBsD,WAAgB,EAChBlD,OAAe,EACfH,QAAgB,EAChBsD,YAAqB,EACrB;IACA,IAAIC,OAAO,AAAiB,AAAC;IAE7B,IAAI;QACFA,OAAO,GAAG,IAAIC,GAAG,CAACxD,QAAQ,CAAC,CAAC;IAC9B,EAAE,OAAOyD,KAAK,EAAO;QACnB,IAAIA,KAAK,CAACC,IAAI,KAAK,iBAAiB,EAAE;YACpCL,WAAW,CAACM,IAAI,CAACF,KAAK,CAAC,CAAC;YACxB,MAAMA,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IACD,IAAI,CAACF,OAAO,EAAE;QACZF,WAAW,CAACM,IAAI,CACd,CAAC,aAAa,EAAEC,MAAK,EAAA,QAAA,CAACC,GAAG,CAAC,CAAC,CAAC,EAAE7D,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,uCAAuC,CAAC,CACpF,CAAC;QACF,MAAM,IAAI8D,OAAiB,kBAAA,EAAE,CAAC;IAChC,CAAC;IAED,IAAIP,OAAO,CAACQ,MAAM,KAAK,oBAAoB,EAAE;QAC3CV,WAAW,CAACM,IAAI,CACd,CAAC,aAAa,EAAEC,MAAK,EAAA,QAAA,CAACC,GAAG,CACvB,CAAC,CAAC,EAAE7D,QAAQ,CAAC,CAAC,CAAC,CAChB,CAAC,gFAAgF,CAAC,CACpF,CAAC;QACF,MAAM,IAAI8D,OAAiB,kBAAA,EAAE,CAAC;IAChC,CAAC;IAED,MAAME,QAAQ,GAAG,MAAM7C,WAAW,CAACoC,OAAO,EAAED,YAAY,CAAC,AAAC;IAE1D,IAAI,CAACU,QAAQ,EAAE;QACbX,WAAW,CAACM,IAAI,CACd,CAAC,0BAA0B,EAAEC,MAAK,EAAA,QAAA,CAACC,GAAG,CAAC,CAAC,CAAC,EAAE7D,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAC7F,CAAC;QACF,MAAM,IAAI8D,OAAiB,kBAAA,EAAE,CAAC;IAChC,CAAC;IAED,MAAMG,KAAK,GAAG,MAAM1B,OAAO,CAACyB,QAAQ,CAAC,AAAC;IAEtC,IAAI,CAACC,KAAK,EAAE;QACVZ,WAAW,CAACM,IAAI,CACd,CAAC,oCAAoC,EAAEC,MAAK,EAAA,QAAA,CAACC,GAAG,CAC9C,CAAC,CAAC,EAAE7D,QAAQ,CAAC,CAAC,CAAC,CAChB,CAAC,wDAAwD,CAAC,CAC5D,CAAC;QACF,MAAM,IAAI8D,OAAiB,kBAAA,EAAE,CAAC;IAChC,CAAC;IAEDT,WAAW,CAACa,IAAI,GAAGN,MAAK,EAAA,QAAA,CAACO,IAAI,CAC3B,CAAC,4BAA4B,EAAEP,MAAK,EAAA,QAAA,CAACQ,IAAI,CAACpE,QAAQ,CAAC,CAAC,2BAA2B,CAAC,CACjF,CAAC;IAEF,OAAO,MAAM2C,2BAA2B,CAACqB,QAAQ,EAAE;QACjDxD,GAAG,EAAET,iBAAiB;QACtBK,IAAI,EAAED,OAAO;KACd,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"sources":["../../../src/prebuild/resolveTemplate.ts"],"sourcesContent":["import { ExpoConfig } from '@expo/config';\nimport chalk from 'chalk';\nimport { Ora } from 'ora';\nimport semver from 'semver';\n\nimport { type ResolvedTemplateOption } from './resolveOptions';\nimport { fetchAsync } from '../api/rest/client';\nimport * as Log from '../log';\nimport { createGlobFilter } from '../utils/createFileTransform';\nimport { AbortCommandError } from '../utils/errors';\nimport {\n ExtractProps,\n downloadAndExtractNpmModuleAsync,\n extractLocalNpmTarballAsync,\n extractNpmTarballFromUrlAsync,\n} from '../utils/npm';\nimport { isUrlOk } from '../utils/url';\n\nconst debug = require('debug')('expo:prebuild:resolveTemplate') as typeof console.log;\n\ntype RepoInfo = {\n username: string;\n name: string;\n branch: string;\n filePath: string;\n};\n\nexport async function cloneTemplateAsync({\n templateDirectory,\n template,\n exp,\n ora,\n}: {\n templateDirectory: string;\n template?: ResolvedTemplateOption;\n exp: Pick<ExpoConfig, 'name' | 'sdkVersion'>;\n ora: Ora;\n}): Promise<string> {\n if (template) {\n const appName = exp.name;\n const { type, uri } = template;\n if (type === 'file') {\n return await extractLocalNpmTarballAsync(uri, {\n cwd: templateDirectory,\n name: appName,\n });\n } else if (type === 'npm') {\n return await downloadAndExtractNpmModuleAsync(uri, {\n cwd: templateDirectory,\n name: appName,\n });\n } else if (type === 'repository') {\n return await resolveAndDownloadRepoTemplateAsync(templateDirectory, ora, appName, uri);\n } else {\n throw new Error(`Unknown template type: ${type}`);\n }\n } else {\n const templatePackageName = await getTemplateNpmPackageName(exp.sdkVersion);\n return await downloadAndExtractNpmModuleAsync(templatePackageName, {\n cwd: templateDirectory,\n name: exp.name,\n });\n }\n}\n\n/** Given an `sdkVersion` like `44.0.0` return a fully qualified NPM package name like: `expo-template-bare-minimum@sdk-44` */\nfunction getTemplateNpmPackageName(sdkVersion?: string): string {\n // When undefined or UNVERSIONED, we use the latest version.\n if (!sdkVersion || sdkVersion === 'UNVERSIONED') {\n Log.log('Using an unspecified Expo SDK version. The latest template will be used.');\n return `expo-template-bare-minimum@latest`;\n }\n return `expo-template-bare-minimum@sdk-${semver.major(sdkVersion)}`;\n}\n\nasync function getRepoInfo(url: any, examplePath?: string): Promise<RepoInfo | undefined> {\n const [, username, name, t, _branch, ...file] = url.pathname.split('/');\n const filePath = examplePath ? examplePath.replace(/^\\//, '') : file.join('/');\n\n // Support repos whose entire purpose is to be an example, e.g.\n // https://github.com/:username/:my-cool-example-repo-name.\n if (t === undefined) {\n const infoResponse = await fetchAsync(`https://api.github.com/repos/${username}/${name}`);\n if (infoResponse.status !== 200) {\n return;\n }\n const info: any = await infoResponse.json();\n return { username, name, branch: info['default_branch'], filePath };\n }\n\n // If examplePath is available, the branch name takes the entire path\n const branch = examplePath\n ? `${_branch}/${file.join('/')}`.replace(new RegExp(`/${filePath}|/$`), '')\n : _branch;\n\n if (username && name && branch && t === 'tree') {\n return { username, name, branch, filePath };\n }\n return undefined;\n}\n\nfunction hasRepo({ username, name, branch, filePath }: RepoInfo) {\n const contentsUrl = `https://api.github.com/repos/${username}/${name}/contents`;\n const packagePath = `${filePath ? `/${filePath}` : ''}/package.json`;\n\n return isUrlOk(contentsUrl + packagePath + `?ref=${branch}`);\n}\n\nasync function downloadAndExtractRepoAsync(\n { username, name, branch, filePath }: RepoInfo,\n props: ExtractProps\n): Promise<string> {\n const url = `https://codeload.github.com/${username}/${name}/tar.gz/${branch}`;\n\n debug('Downloading tarball from:', url);\n\n // Extract the (sub)directory into non-empty path segments\n const directory = filePath.replace(/^\\//, '').split('/').filter(Boolean);\n // Remove the (sub)directory paths, and the root folder added by GitHub\n const strip = directory.length + 1;\n // Only extract the relevant (sub)directories, ignoring irrelevant files\n // The filder auto-ignores dotfiles, unless explicitly included\n const filter = createGlobFilter(\n !directory.length\n ? ['*/**', '*/ios/.xcode.env']\n : [`*/${directory.join('/')}/**`, `*/${directory.join('/')}/ios/.xcode.env`],\n {\n // Always ignore the `.xcworkspace` folder\n ignore: ['**/ios/*.xcworkspace/**'],\n }\n );\n\n return await extractNpmTarballFromUrlAsync(url, { ...props, strip, filter });\n}\n\nasync function resolveAndDownloadRepoTemplateAsync(\n templateDirectory: string,\n oraInstance: Ora,\n appName: string,\n template: string,\n templatePath?: string\n) {\n let repoUrl: URL | undefined;\n\n try {\n repoUrl = new URL(template);\n } catch (error: any) {\n if (error.code !== 'ERR_INVALID_URL') {\n oraInstance.fail(error);\n throw error;\n }\n }\n if (!repoUrl) {\n oraInstance.fail(\n `Invalid URL: ${chalk.red(`\"${template}\"`)}. Please use a valid URL and try again.`\n );\n throw new AbortCommandError();\n }\n\n if (repoUrl.origin !== 'https://github.com') {\n oraInstance.fail(\n `Invalid URL: ${chalk.red(\n `\"${template}\"`\n )}. Only GitHub repositories are supported. Please use a GitHub URL and try again.`\n );\n throw new AbortCommandError();\n }\n\n const repoInfo = await getRepoInfo(repoUrl, templatePath);\n\n if (!repoInfo) {\n oraInstance.fail(\n `Found invalid GitHub URL: ${chalk.red(`\"${template}\"`)}. Please fix the URL and try again.`\n );\n throw new AbortCommandError();\n }\n\n const found = await hasRepo(repoInfo);\n\n if (!found) {\n oraInstance.fail(\n `Could not locate the repository for ${chalk.red(\n `\"${template}\"`\n )}. Please check that the repository exists and try again.`\n );\n throw new AbortCommandError();\n }\n\n oraInstance.text = chalk.bold(\n `Downloading files from repo ${chalk.cyan(template)}. This might take a moment.`\n );\n\n return await downloadAndExtractRepoAsync(repoInfo, {\n cwd: templateDirectory,\n name: appName,\n });\n}\n"],"names":["cloneTemplateAsync","debug","require","templateDirectory","template","exp","ora","appName","name","type","uri","extractLocalNpmTarballAsync","cwd","downloadAndExtractNpmModuleAsync","resolveAndDownloadRepoTemplateAsync","Error","templatePackageName","getTemplateNpmPackageName","sdkVersion","Log","log","semver","major","getRepoInfo","url","examplePath","username","t","_branch","file","pathname","split","filePath","replace","join","undefined","infoResponse","fetchAsync","status","info","json","branch","RegExp","hasRepo","contentsUrl","packagePath","isUrlOk","downloadAndExtractRepoAsync","props","directory","filter","Boolean","strip","length","createGlobFilter","ignore","extractNpmTarballFromUrlAsync","oraInstance","templatePath","repoUrl","URL","error","code","fail","chalk","red","AbortCommandError","origin","repoInfo","found","text","bold","cyan"],"mappings":"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"}
@@ -9,11 +9,15 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- updateFromTemplateAsync: ()=>updateFromTemplateAsync,
13
- cloneTemplateAndCopyToProjectAsync: ()=>cloneTemplateAndCopyToProjectAsync
12
+ cloneTemplateAndCopyToProjectAsync: function() {
13
+ return cloneTemplateAndCopyToProjectAsync;
14
+ },
15
+ updateFromTemplateAsync: function() {
16
+ return updateFromTemplateAsync;
17
+ }
14
18
  });
15
19
  function _chalk() {
16
- const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
20
+ const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
17
21
  _chalk = function() {
18
22
  return data;
19
23
  };
@@ -24,12 +28,12 @@ const _renameTemplateAppName = require("./renameTemplateAppName");
24
28
  const _resolveTemplate = require("./resolveTemplate");
25
29
  const _updatePackageJson = require("./updatePackageJson");
26
30
  const _validateTemplatePlatforms = require("./validateTemplatePlatforms");
27
- const _log = /*#__PURE__*/ _interopRequireWildcard(require("../log"));
31
+ const _log = /*#__PURE__*/ _interop_require_wildcard(require("../log"));
28
32
  const _createTempPath = require("../utils/createTempPath");
29
33
  const _errors = require("../utils/errors");
30
34
  const _ora = require("../utils/ora");
31
35
  const _profile = require("../utils/profile");
32
- function _interopRequireDefault(obj) {
36
+ function _interop_require_default(obj) {
33
37
  return obj && obj.__esModule ? obj : {
34
38
  default: obj
35
39
  };
@@ -42,7 +46,7 @@ function _getRequireWildcardCache(nodeInterop) {
42
46
  return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
43
47
  })(nodeInterop);
44
48
  }
45
- function _interopRequireWildcard(obj, nodeInterop) {
49
+ function _interop_require_wildcard(obj, nodeInterop) {
46
50
  if (!nodeInterop && obj && obj.__esModule) {
47
51
  return obj;
48
52
  }
@@ -55,7 +59,9 @@ function _interopRequireWildcard(obj, nodeInterop) {
55
59
  if (cache && cache.has(obj)) {
56
60
  return cache.get(obj);
57
61
  }
58
- var newObj = {};
62
+ var newObj = {
63
+ __proto__: null
64
+ };
59
65
  var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
60
66
  for(var key in obj){
61
67
  if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
@@ -73,11 +79,11 @@ function _interopRequireWildcard(obj, nodeInterop) {
73
79
  }
74
80
  return newObj;
75
81
  }
76
- async function updateFromTemplateAsync(projectRoot, { exp , pkg , template , templateDirectory , platforms , skipDependencyUpdate }) {
82
+ async function updateFromTemplateAsync(projectRoot, { exp, pkg, template, templateDirectory, platforms, skipDependencyUpdate }) {
77
83
  if (!templateDirectory) {
78
84
  templateDirectory = (0, _createTempPath.createTempDirectoryPath)();
79
85
  }
80
- const { copiedPaths , templateChecksum } = await (0, _profile.profile)(cloneTemplateAndCopyToProjectAsync)({
86
+ const { copiedPaths, templateChecksum } = await (0, _profile.profile)(cloneTemplateAndCopyToProjectAsync)({
81
87
  projectRoot,
82
88
  template,
83
89
  templateDirectory,
@@ -92,14 +98,14 @@ async function updateFromTemplateAsync(projectRoot, { exp , pkg , template , tem
92
98
  return {
93
99
  hasNewProjectFiles: !!copiedPaths.length,
94
100
  // If the iOS folder changes or new packages are added, we should rerun pod install.
95
- needsPodInstall: copiedPaths.includes("ios") || !!depsResults.changedDependencies.length,
101
+ needsPodInstall: copiedPaths.includes('ios') || !!depsResults.changedDependencies.length,
96
102
  templateChecksum,
97
103
  ...depsResults
98
104
  };
99
105
  }
100
- async function cloneTemplateAndCopyToProjectAsync({ projectRoot , templateDirectory , template , exp , platforms: unknownPlatforms }) {
101
- const platformDirectories = unknownPlatforms.map((platform)=>`./${platform}`).reverse().join(" and ");
102
- const pluralized = unknownPlatforms.length > 1 ? "directories" : "directory";
106
+ async function cloneTemplateAndCopyToProjectAsync({ projectRoot, templateDirectory, template, exp, platforms: unknownPlatforms }) {
107
+ const platformDirectories = unknownPlatforms.map((platform)=>`./${platform}`).reverse().join(' and ');
108
+ const pluralized = unknownPlatforms.length > 1 ? 'directories' : 'directory';
103
109
  const ora = (0, _ora.logNewSection)(`Creating native ${pluralized} (${platformDirectories})`);
104
110
  try {
105
111
  const templateChecksum = await (0, _resolveTemplate.cloneTemplateAsync)({