@expo/cli 0.17.10 → 0.18.1

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 (693) hide show
  1. package/build/bin/cli +98 -118
  2. package/build/bin/cli.map +1 -1
  3. package/build/src/api/endpoint.js +11 -3
  4. package/build/src/api/endpoint.js.map +1 -1
  5. package/build/src/api/getExpoGoIntermediateCertificate.js +7 -4
  6. package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -1
  7. package/build/src/api/getExpoSchema.js +32 -12
  8. package/build/src/api/getExpoSchema.js.map +1 -1
  9. package/build/src/api/getNativeModuleVersions.js +7 -4
  10. package/build/src/api/getNativeModuleVersions.js.map +1 -1
  11. package/build/src/api/getProjectDevelopmentCertificate.js +7 -4
  12. package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -1
  13. package/build/src/api/getVersions.js +7 -4
  14. package/build/src/api/getVersions.js.map +1 -1
  15. package/build/src/api/graphql/client.js +78 -40
  16. package/build/src/api/graphql/client.js.map +1 -1
  17. package/build/src/api/graphql/queries/AppQuery.js +22 -8
  18. package/build/src/api/graphql/queries/AppQuery.js.map +1 -1
  19. package/build/src/api/graphql/queries/UserQuery.js +13 -5
  20. package/build/src/api/graphql/queries/UserQuery.js.map +1 -1
  21. package/build/src/api/graphql/types/App.js +12 -4
  22. package/build/src/api/graphql/types/App.js.map +1 -1
  23. package/build/src/api/rest/cache/FileSystemCache.js +25 -11
  24. package/build/src/api/rest/cache/FileSystemCache.js.map +1 -1
  25. package/build/src/api/rest/cache/response.js +13 -4
  26. package/build/src/api/rest/cache/response.js.map +1 -1
  27. package/build/src/api/rest/cache/wrapFetchWithCache.js +51 -18
  28. package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -1
  29. package/build/src/api/rest/client.js +55 -30
  30. package/build/src/api/rest/client.js.map +1 -1
  31. package/build/src/api/rest/wrapFetchWithBaseUrl.js +13 -5
  32. package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
  33. package/build/src/api/rest/wrapFetchWithOffline.js +5 -2
  34. package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -1
  35. package/build/src/api/rest/wrapFetchWithProgress.js +40 -19
  36. package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -1
  37. package/build/src/api/rest/wrapFetchWithProxy.js +13 -4
  38. package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -1
  39. package/build/src/api/settings.js +16 -5
  40. package/build/src/api/settings.js.map +1 -1
  41. package/build/src/api/updateDevelopmentSession.js +33 -13
  42. package/build/src/api/updateDevelopmentSession.js.map +1 -1
  43. package/build/src/api/user/UserSettings.js +31 -11
  44. package/build/src/api/user/UserSettings.js.map +1 -1
  45. package/build/src/api/user/actions.js +78 -41
  46. package/build/src/api/user/actions.js.map +1 -1
  47. package/build/src/api/user/expoSsoLauncher.js +72 -27
  48. package/build/src/api/user/expoSsoLauncher.js.map +1 -1
  49. package/build/src/api/user/otp.js +82 -50
  50. package/build/src/api/user/otp.js.map +1 -1
  51. package/build/src/api/user/user.js +80 -48
  52. package/build/src/api/user/user.js.map +1 -1
  53. package/build/src/config/configAsync.js +82 -45
  54. package/build/src/config/configAsync.js.map +1 -1
  55. package/build/src/config/index.js +52 -30
  56. package/build/src/config/index.js.map +1 -1
  57. package/build/src/customize/customizeAsync.js +21 -12
  58. package/build/src/customize/customizeAsync.js.map +1 -1
  59. package/build/src/customize/generate.js +74 -47
  60. package/build/src/customize/generate.js.map +1 -1
  61. package/build/src/customize/index.js +16 -8
  62. package/build/src/customize/index.js.map +1 -1
  63. package/build/src/customize/resolveOptions.js +7 -4
  64. package/build/src/customize/resolveOptions.js.map +1 -1
  65. package/build/src/customize/templates.js +58 -37
  66. package/build/src/customize/templates.js.map +1 -1
  67. package/build/src/customize/typescript.js +50 -29
  68. package/build/src/customize/typescript.js.map +1 -1
  69. package/build/src/export/createMetadataJson.js +14 -7
  70. package/build/src/export/createMetadataJson.js.map +1 -1
  71. package/build/src/export/embed/exportEmbedAsync.js +103 -50
  72. package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
  73. package/build/src/export/embed/index.js +61 -37
  74. package/build/src/export/embed/index.js.map +1 -1
  75. package/build/src/export/embed/resolveOptions.js +14 -5
  76. package/build/src/export/embed/resolveOptions.js.map +1 -1
  77. package/build/src/export/embed/xcodeCompilerLogger.js +33 -9
  78. package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
  79. package/build/src/export/exportApp.js +110 -73
  80. package/build/src/export/exportApp.js.map +1 -1
  81. package/build/src/export/exportAssets.js +84 -47
  82. package/build/src/export/exportAssets.js.map +1 -1
  83. package/build/src/export/exportAsync.js +56 -27
  84. package/build/src/export/exportAsync.js.map +1 -1
  85. package/build/src/export/exportHermes.js +46 -26
  86. package/build/src/export/exportHermes.js.map +1 -1
  87. package/build/src/export/exportStaticAsync.js +109 -66
  88. package/build/src/export/exportStaticAsync.js.map +1 -1
  89. package/build/src/export/favicon.js +47 -15
  90. package/build/src/export/favicon.js.map +1 -1
  91. package/build/src/export/fork-bundleAsync.js +92 -44
  92. package/build/src/export/fork-bundleAsync.js.map +1 -1
  93. package/build/src/export/getPublicExpoManifest.js +16 -7
  94. package/build/src/export/getPublicExpoManifest.js.map +1 -1
  95. package/build/src/export/getResolvedLocales.js +20 -5
  96. package/build/src/export/getResolvedLocales.js.map +1 -1
  97. package/build/src/export/html.js +12 -4
  98. package/build/src/export/html.js.map +1 -1
  99. package/build/src/export/index.js +55 -33
  100. package/build/src/export/index.js.map +1 -1
  101. package/build/src/export/metroAssetLocalPath.js +30 -8
  102. package/build/src/export/metroAssetLocalPath.js.map +1 -1
  103. package/build/src/export/persistMetroAssets.js +59 -33
  104. package/build/src/export/persistMetroAssets.js.map +1 -1
  105. package/build/src/export/publicFolder.js +31 -11
  106. package/build/src/export/publicFolder.js.map +1 -1
  107. package/build/src/export/resolveOptions.js +26 -16
  108. package/build/src/export/resolveOptions.js.map +1 -1
  109. package/build/src/export/saveAssets.js +77 -49
  110. package/build/src/export/saveAssets.js.map +1 -1
  111. package/build/src/export/web/exportWebAsync.js +28 -13
  112. package/build/src/export/web/exportWebAsync.js.map +1 -1
  113. package/build/src/export/web/index.js +53 -31
  114. package/build/src/export/web/index.js.map +1 -1
  115. package/build/src/export/web/resolveOptions.js +4 -1
  116. package/build/src/export/web/resolveOptions.js.map +1 -1
  117. package/build/src/export/writeContents.js +12 -7
  118. package/build/src/export/writeContents.js.map +1 -1
  119. package/build/src/graphql/generated.js +141 -128
  120. package/build/src/graphql/generated.js.map +1 -1
  121. package/build/src/install/applyPlugins.js +50 -26
  122. package/build/src/install/applyPlugins.js.map +1 -1
  123. package/build/src/install/checkPackages.js +68 -36
  124. package/build/src/install/checkPackages.js.map +1 -1
  125. package/build/src/install/fixPackages.js +58 -35
  126. package/build/src/install/fixPackages.js.map +1 -1
  127. package/build/src/install/index.js +21 -13
  128. package/build/src/install/index.js.map +1 -1
  129. package/build/src/install/installAsync.js +107 -64
  130. package/build/src/install/installAsync.js.map +1 -1
  131. package/build/src/install/installExpoPackage.js +60 -27
  132. package/build/src/install/installExpoPackage.js.map +1 -1
  133. package/build/src/install/resolveOptions.js +8 -5
  134. package/build/src/install/resolveOptions.js.map +1 -1
  135. package/build/src/install/utils/autoAddConfigPlugins.js +29 -9
  136. package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
  137. package/build/src/lint/ESlintPrerequisite.js +174 -0
  138. package/build/src/lint/ESlintPrerequisite.js.map +1 -0
  139. package/build/src/lint/index.js +66 -0
  140. package/build/src/lint/index.js.map +1 -0
  141. package/build/src/lint/lintAsync.js +33 -0
  142. package/build/src/lint/lintAsync.js.map +1 -0
  143. package/build/src/log.js +27 -15
  144. package/build/src/log.js.map +1 -1
  145. package/build/src/login/index.js +43 -25
  146. package/build/src/login/index.js.map +1 -1
  147. package/build/src/logout/index.js +43 -25
  148. package/build/src/logout/index.js.map +1 -1
  149. package/build/src/prebuild/clearNativeFolder.js +97 -50
  150. package/build/src/prebuild/clearNativeFolder.js.map +1 -1
  151. package/build/src/prebuild/configureProjectAsync.js +64 -31
  152. package/build/src/prebuild/configureProjectAsync.js.map +1 -1
  153. package/build/src/prebuild/copyTemplateFiles.js +41 -17
  154. package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
  155. package/build/src/prebuild/ensureConfigAsync.js +74 -30
  156. package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
  157. package/build/src/prebuild/index.js +58 -38
  158. package/build/src/prebuild/index.js.map +1 -1
  159. package/build/src/prebuild/prebuildAsync.js +75 -52
  160. package/build/src/prebuild/prebuildAsync.js.map +1 -1
  161. package/build/src/prebuild/renameTemplateAppName.js +124 -0
  162. package/build/src/prebuild/renameTemplateAppName.js.map +1 -0
  163. package/build/src/prebuild/resolveOptions.js +85 -36
  164. package/build/src/prebuild/resolveOptions.js.map +1 -1
  165. package/build/src/prebuild/resolveTemplate.js +102 -46
  166. package/build/src/prebuild/resolveTemplate.js.map +1 -1
  167. package/build/src/prebuild/updateFromTemplate.js +80 -41
  168. package/build/src/prebuild/updateFromTemplate.js.map +1 -1
  169. package/build/src/prebuild/updatePackageJson.js +111 -54
  170. package/build/src/prebuild/updatePackageJson.js.map +1 -1
  171. package/build/src/prebuild/validateTemplatePlatforms.js +56 -23
  172. package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
  173. package/build/src/register/index.js +43 -25
  174. package/build/src/register/index.js.map +1 -1
  175. package/build/src/register/registerAsync.js +14 -11
  176. package/build/src/register/registerAsync.js.map +1 -1
  177. package/build/src/run/android/index.js +64 -32
  178. package/build/src/run/android/index.js.map +1 -1
  179. package/build/src/run/android/resolveDevice.js +9 -6
  180. package/build/src/run/android/resolveDevice.js.map +1 -1
  181. package/build/src/run/android/resolveGradlePropsAsync.js +56 -0
  182. package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -0
  183. package/build/src/run/android/resolveInstallApkName.js +28 -14
  184. package/build/src/run/android/resolveInstallApkName.js.map +1 -1
  185. package/build/src/run/android/resolveLaunchProps.js +16 -7
  186. package/build/src/run/android/resolveLaunchProps.js.map +1 -1
  187. package/build/src/run/android/resolveOptions.js +14 -9
  188. package/build/src/run/android/resolveOptions.js.map +1 -1
  189. package/build/src/run/android/runAndroidAsync.js +39 -27
  190. package/build/src/run/android/runAndroidAsync.js.map +1 -1
  191. package/build/src/run/ensureNativeProject.js +24 -9
  192. package/build/src/run/ensureNativeProject.js.map +1 -1
  193. package/build/src/run/hints.js +23 -9
  194. package/build/src/run/hints.js.map +1 -1
  195. package/build/src/run/index.js +55 -35
  196. package/build/src/run/index.js.map +1 -1
  197. package/build/src/run/ios/XcodeBuild.js +126 -66
  198. package/build/src/run/ios/XcodeBuild.js.map +1 -1
  199. package/build/src/run/ios/appleDevice/AppleDevice.js +52 -27
  200. package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
  201. package/build/src/run/ios/appleDevice/ClientManager.js +70 -31
  202. package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
  203. package/build/src/run/ios/appleDevice/client/AFCClient.js +94 -44
  204. package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
  205. package/build/src/run/ios/appleDevice/client/DebugserverClient.js +63 -24
  206. package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
  207. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +21 -6
  208. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
  209. package/build/src/run/ios/appleDevice/client/LockdowndClient.js +64 -25
  210. package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
  211. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +66 -28
  212. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
  213. package/build/src/run/ios/appleDevice/client/ServiceClient.js +18 -4
  214. package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -1
  215. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +42 -15
  216. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
  217. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +78 -34
  218. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
  219. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +85 -66
  220. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
  221. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +41 -15
  222. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
  223. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +30 -11
  224. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
  225. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +39 -14
  226. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
  227. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +36 -11
  228. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
  229. package/build/src/run/ios/codeSigning/Security.js +40 -21
  230. package/build/src/run/ios/codeSigning/Security.js.map +1 -1
  231. package/build/src/run/ios/codeSigning/configureCodeSigning.js +55 -28
  232. package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
  233. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +67 -36
  234. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
  235. package/build/src/run/ios/codeSigning/settings.js +11 -3
  236. package/build/src/run/ios/codeSigning/settings.js.map +1 -1
  237. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +30 -10
  238. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -1
  239. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +33 -15
  240. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
  241. package/build/src/run/ios/index.js +63 -35
  242. package/build/src/run/ios/index.js.map +1 -1
  243. package/build/src/run/ios/launchApp.js +65 -32
  244. package/build/src/run/ios/launchApp.js.map +1 -1
  245. package/build/src/run/ios/options/promptDevice.js +24 -14
  246. package/build/src/run/ios/options/promptDevice.js.map +1 -1
  247. package/build/src/run/ios/options/resolveDevice.js +64 -41
  248. package/build/src/run/ios/options/resolveDevice.js.map +1 -1
  249. package/build/src/run/ios/options/resolveNativeScheme.js +80 -39
  250. package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
  251. package/build/src/run/ios/options/resolveOptions.js +15 -12
  252. package/build/src/run/ios/options/resolveOptions.js.map +1 -1
  253. package/build/src/run/ios/options/resolveXcodeProject.js +13 -4
  254. package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
  255. package/build/src/run/ios/runIosAsync.js +71 -42
  256. package/build/src/run/ios/runIosAsync.js.map +1 -1
  257. package/build/src/run/resolveBundlerProps.js +8 -5
  258. package/build/src/run/resolveBundlerProps.js.map +1 -1
  259. package/build/src/run/startBundler.js +60 -27
  260. package/build/src/run/startBundler.js.map +1 -1
  261. package/build/src/start/detectDevClient.js +32 -0
  262. package/build/src/start/detectDevClient.js.map +1 -0
  263. package/build/src/start/doctor/Prerequisite.js +15 -7
  264. package/build/src/start/doctor/Prerequisite.js.map +1 -1
  265. package/build/src/start/doctor/SecurityBinPrerequisite.js +13 -4
  266. package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -1
  267. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +57 -24
  268. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
  269. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +57 -24
  270. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -1
  271. package/build/src/start/doctor/apple/XcodePrerequisite.js +132 -57
  272. package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
  273. package/build/src/start/doctor/apple/XcrunPrerequisite.js +34 -13
  274. package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -1
  275. package/build/src/start/doctor/dependencies/bundledNativeModules.js +69 -30
  276. package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -1
  277. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +120 -57
  278. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
  279. package/build/src/start/doctor/dependencies/getMissingPackages.js +38 -12
  280. package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
  281. package/build/src/start/doctor/dependencies/getVersionedPackages.js +29 -15
  282. package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
  283. package/build/src/start/doctor/dependencies/resolvePackages.js +39 -15
  284. package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
  285. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +88 -55
  286. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
  287. package/build/src/start/doctor/ngrok/ExternalModule.js +88 -39
  288. package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
  289. package/build/src/start/doctor/ngrok/NgrokResolver.js +12 -5
  290. package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -1
  291. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +75 -45
  292. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
  293. package/build/src/start/doctor/typescript/updateTSConfig.js +81 -40
  294. package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
  295. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +70 -32
  296. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
  297. package/build/src/start/index.js +62 -42
  298. package/build/src/start/index.js.map +1 -1
  299. package/build/src/start/interface/KeyPressHandler.js +43 -22
  300. package/build/src/start/interface/KeyPressHandler.js.map +1 -1
  301. package/build/src/start/interface/commandsTable.js +81 -41
  302. package/build/src/start/interface/commandsTable.js.map +1 -1
  303. package/build/src/start/interface/interactiveActions.js +91 -68
  304. package/build/src/start/interface/interactiveActions.js.map +1 -1
  305. package/build/src/start/interface/startInterface.js +84 -57
  306. package/build/src/start/interface/startInterface.js.map +1 -1
  307. package/build/src/start/platforms/AppIdResolver.js +16 -7
  308. package/build/src/start/platforms/AppIdResolver.js.map +1 -1
  309. package/build/src/start/platforms/DeviceManager.js +47 -20
  310. package/build/src/start/platforms/DeviceManager.js.map +1 -1
  311. package/build/src/start/platforms/ExpoGoInstaller.js +81 -45
  312. package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
  313. package/build/src/start/platforms/PlatformManager.js +42 -20
  314. package/build/src/start/platforms/PlatformManager.js.map +1 -1
  315. package/build/src/start/platforms/android/ADBServer.js +28 -13
  316. package/build/src/start/platforms/android/ADBServer.js.map +1 -1
  317. package/build/src/start/platforms/android/AndroidAppIdResolver.js +18 -10
  318. package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
  319. package/build/src/start/platforms/android/AndroidDeviceManager.js +86 -54
  320. package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -1
  321. package/build/src/start/platforms/android/AndroidPlatformManager.js +9 -6
  322. package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -1
  323. package/build/src/start/platforms/android/AndroidSdk.js +38 -11
  324. package/build/src/start/platforms/android/AndroidSdk.js.map +1 -1
  325. package/build/src/start/platforms/android/activateWindow.js +54 -21
  326. package/build/src/start/platforms/android/activateWindow.js.map +1 -1
  327. package/build/src/start/platforms/android/adb.js +89 -51
  328. package/build/src/start/platforms/android/adb.js.map +1 -1
  329. package/build/src/start/platforms/android/adbReverse.js +57 -31
  330. package/build/src/start/platforms/android/adbReverse.js.map +1 -1
  331. package/build/src/start/platforms/android/emulator.js +89 -44
  332. package/build/src/start/platforms/android/emulator.js.map +1 -1
  333. package/build/src/start/platforms/android/getDevices.js +11 -10
  334. package/build/src/start/platforms/android/getDevices.js.map +1 -1
  335. package/build/src/start/platforms/android/gradle.js +38 -14
  336. package/build/src/start/platforms/android/gradle.js.map +1 -1
  337. package/build/src/start/platforms/android/promptAndroidDevice.js +22 -16
  338. package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
  339. package/build/src/start/platforms/ios/AppleAppIdResolver.js +31 -10
  340. package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
  341. package/build/src/start/platforms/ios/AppleDeviceManager.js +120 -62
  342. package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -1
  343. package/build/src/start/platforms/ios/ApplePlatformManager.js +7 -4
  344. package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -1
  345. package/build/src/start/platforms/ios/assertSystemRequirements.js +11 -7
  346. package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -1
  347. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +60 -27
  348. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
  349. package/build/src/start/platforms/ios/getBestSimulator.js +60 -30
  350. package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
  351. package/build/src/start/platforms/ios/promptAppleDevice.js +25 -13
  352. package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
  353. package/build/src/start/platforms/ios/simctl.js +75 -46
  354. package/build/src/start/platforms/ios/simctl.js.map +1 -1
  355. package/build/src/start/platforms/ios/simctlLogging.js +100 -47
  356. package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
  357. package/build/src/start/platforms/ios/xcrun.js +21 -6
  358. package/build/src/start/platforms/ios/xcrun.js.map +1 -1
  359. package/build/src/start/project/devices.js +19 -16
  360. package/build/src/start/project/devices.js.map +1 -1
  361. package/build/src/start/project/dotExpo.js +37 -11
  362. package/build/src/start/project/dotExpo.js.map +1 -1
  363. package/build/src/start/project/settings.js +6 -4
  364. package/build/src/start/project/settings.js.map +1 -1
  365. package/build/src/start/resolveOptions.js +52 -27
  366. package/build/src/start/resolveOptions.js.map +1 -1
  367. package/build/src/start/server/AsyncNgrok.js +91 -47
  368. package/build/src/start/server/AsyncNgrok.js.map +1 -1
  369. package/build/src/start/server/BundlerDevServer.js +77 -45
  370. package/build/src/start/server/BundlerDevServer.js.map +1 -1
  371. package/build/src/start/server/DevServerManager.js +100 -70
  372. package/build/src/start/server/DevServerManager.js.map +1 -1
  373. package/build/src/start/server/DevToolsPluginManager.js +35 -18
  374. package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
  375. package/build/src/start/server/DevelopmentSession.js +57 -33
  376. package/build/src/start/server/DevelopmentSession.js.map +1 -1
  377. package/build/src/start/server/ReactDevToolsProxy.js +37 -11
  378. package/build/src/start/server/ReactDevToolsProxy.js.map +1 -1
  379. package/build/src/start/server/UrlCreator.js +61 -27
  380. package/build/src/start/server/UrlCreator.js.map +1 -1
  381. package/build/src/start/server/getStaticRenderFunctions.js +125 -77
  382. package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
  383. package/build/src/start/server/metro/MetroBundlerDevServer.js +333 -158
  384. package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
  385. package/build/src/start/server/metro/MetroTerminalReporter.js +50 -28
  386. package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
  387. package/build/src/start/server/metro/TerminalReporter.js +40 -12
  388. package/build/src/start/server/metro/TerminalReporter.js.map +1 -1
  389. package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -1
  390. package/build/src/start/server/metro/createExpoMetroResolver.js +82 -35
  391. package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -1
  392. package/build/src/start/server/metro/createJResolver.js +143 -73
  393. package/build/src/start/server/metro/createJResolver.js.map +1 -1
  394. package/build/src/start/server/metro/createServerRouteMiddleware.js +47 -38
  395. package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
  396. package/build/src/start/server/metro/debugging/MessageHandler.js +30 -0
  397. package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -0
  398. package/build/src/start/server/metro/debugging/createDebugMiddleware.js +18 -14
  399. package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
  400. package/build/src/start/server/metro/debugging/createHandlersFactory.js +64 -0
  401. package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -0
  402. package/build/src/start/server/metro/debugging/{inspectorHandlers/utils.js → getDebuggerType.js} +6 -8
  403. package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -0
  404. package/build/src/start/server/metro/debugging/{inspectorHandlers → messageHandlers}/NetworkResponse.js +12 -6
  405. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -0
  406. package/build/src/start/server/metro/debugging/messageHandlers/PageReload.js +26 -0
  407. package/build/src/start/server/metro/debugging/messageHandlers/PageReload.js.map +1 -0
  408. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +28 -0
  409. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -0
  410. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +25 -0
  411. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -0
  412. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +31 -0
  413. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -0
  414. package/build/src/start/server/metro/debugging/{inspectorHandlers → messageHandlers}/VscodeRuntimeGetProperties.js +14 -7
  415. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -0
  416. package/build/src/start/server/metro/debugging/pageIsSupported.js +17 -0
  417. package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -0
  418. package/build/src/start/server/metro/debugging/types.js.map +1 -0
  419. package/build/src/start/server/metro/externals.js +67 -69
  420. package/build/src/start/server/metro/externals.js.map +1 -1
  421. package/build/src/start/server/metro/fetchRouterManifest.js +26 -7
  422. package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
  423. package/build/src/start/server/metro/formatFileCandidates.js +28 -18
  424. package/build/src/start/server/metro/formatFileCandidates.js.map +1 -1
  425. package/build/src/start/server/metro/getCssModulesFromBundler.js +44 -12
  426. package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
  427. package/build/src/start/server/metro/instantiateMetro.js +141 -62
  428. package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
  429. package/build/src/start/server/metro/metroErrorInterface.js +75 -47
  430. package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
  431. package/build/src/start/server/metro/metroErrors.js +11 -2
  432. package/build/src/start/server/metro/metroErrors.js.map +1 -1
  433. package/build/src/start/server/metro/metroVirtualModules.js +90 -0
  434. package/build/src/start/server/metro/metroVirtualModules.js.map +1 -0
  435. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +12 -3
  436. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
  437. package/build/src/start/server/metro/router.js +64 -30
  438. package/build/src/start/server/metro/router.js.map +1 -1
  439. package/build/src/start/server/metro/runServer-fork.js +68 -19
  440. package/build/src/start/server/metro/runServer-fork.js.map +1 -1
  441. package/build/src/start/server/metro/serializeHtml.js +32 -19
  442. package/build/src/start/server/metro/serializeHtml.js.map +1 -1
  443. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +19 -5
  444. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
  445. package/build/src/start/server/metro/withMetroMultiPlatform.js +232 -104
  446. package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
  447. package/build/src/start/server/metro/withMetroResolvers.js +95 -47
  448. package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
  449. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +4 -1
  450. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -1
  451. package/build/src/start/server/middleware/CorsMiddleware.js +4 -1
  452. package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -1
  453. package/build/src/start/server/middleware/CreateFileMiddleware.js +33 -13
  454. package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
  455. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +27 -12
  456. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
  457. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +65 -28
  458. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
  459. package/build/src/start/server/middleware/ExpoMiddleware.js +54 -22
  460. package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
  461. package/build/src/start/server/middleware/FaviconMiddleware.js +8 -5
  462. package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -1
  463. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +6 -3
  464. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -1
  465. package/build/src/start/server/middleware/InterstitialPageMiddleware.js +58 -21
  466. package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
  467. package/build/src/start/server/middleware/ManifestMiddleware.js +117 -63
  468. package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
  469. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +35 -10
  470. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -1
  471. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +54 -27
  472. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
  473. package/build/src/start/server/middleware/ServeStaticMiddleware.js +31 -10
  474. package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
  475. package/build/src/start/server/middleware/inspector/JsInspector.js +45 -22
  476. package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
  477. package/build/src/start/server/middleware/inspector/LaunchBrowser.js +25 -11
  478. package/build/src/start/server/middleware/inspector/LaunchBrowser.js.map +1 -1
  479. package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js +4 -2
  480. package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js.map +1 -1
  481. package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js +36 -14
  482. package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js.map +1 -1
  483. package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js +84 -38
  484. package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js.map +1 -1
  485. package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js +42 -20
  486. package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js.map +1 -1
  487. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +40 -13
  488. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
  489. package/build/src/start/server/middleware/inspector/middlwareMutations.js +11 -4
  490. package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -1
  491. package/build/src/start/server/middleware/metroOptions.js +36 -18
  492. package/build/src/start/server/middleware/metroOptions.js.map +1 -1
  493. package/build/src/start/server/middleware/mutations.js +11 -4
  494. package/build/src/start/server/middleware/mutations.js.map +1 -1
  495. package/build/src/start/server/middleware/resolveAssets.js +78 -42
  496. package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
  497. package/build/src/start/server/middleware/resolvePlatform.js +21 -7
  498. package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
  499. package/build/src/start/server/middleware/suppressErrorMiddleware.js +4 -1
  500. package/build/src/start/server/middleware/suppressErrorMiddleware.js.map +1 -1
  501. package/build/src/start/server/openPlatforms.js +7 -6
  502. package/build/src/start/server/openPlatforms.js.map +1 -1
  503. package/build/src/start/server/platformBundlers.js +12 -3
  504. package/build/src/start/server/platformBundlers.js.map +1 -1
  505. package/build/src/start/server/serverLogLikeMetro.js +93 -40
  506. package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
  507. package/build/src/start/server/type-generation/expo-env.js +26 -6
  508. package/build/src/start/server/type-generation/expo-env.js.map +1 -1
  509. package/build/src/start/server/type-generation/routes.js +137 -82
  510. package/build/src/start/server/type-generation/routes.js.map +1 -1
  511. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +44 -23
  512. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
  513. package/build/src/start/server/type-generation/tsconfig.js +41 -16
  514. package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
  515. package/build/src/start/server/webTemplate.js +43 -19
  516. package/build/src/start/server/webTemplate.js.map +1 -1
  517. package/build/src/start/server/webpack/WebpackBundlerDevServer.js +105 -56
  518. package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
  519. package/build/src/start/server/webpack/compile.js +60 -27
  520. package/build/src/start/server/webpack/compile.js.map +1 -1
  521. package/build/src/start/server/webpack/formatWebpackMessages.js +35 -25
  522. package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -1
  523. package/build/src/start/server/webpack/resolveFromProject.js +20 -6
  524. package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
  525. package/build/src/start/server/webpack/tls.js +84 -34
  526. package/build/src/start/server/webpack/tls.js.map +1 -1
  527. package/build/src/start/startAsync.js +98 -52
  528. package/build/src/start/startAsync.js.map +1 -1
  529. package/build/src/utils/FileNotifier.js +73 -28
  530. package/build/src/utils/FileNotifier.js.map +1 -1
  531. package/build/src/utils/analytics/getDevClientProperties.js +48 -22
  532. package/build/src/utils/analytics/getDevClientProperties.js.map +1 -1
  533. package/build/src/utils/analytics/getMetroDebugProperties.js +4 -1
  534. package/build/src/utils/analytics/getMetroDebugProperties.js.map +1 -1
  535. package/build/src/utils/analytics/getMetroProperties.js +4 -1
  536. package/build/src/utils/analytics/getMetroProperties.js.map +1 -1
  537. package/build/src/utils/analytics/metroDebuggerMiddleware.js +14 -6
  538. package/build/src/utils/analytics/metroDebuggerMiddleware.js.map +1 -1
  539. package/build/src/utils/ansi.js +5 -2
  540. package/build/src/utils/ansi.js.map +1 -1
  541. package/build/src/utils/args.js +83 -31
  542. package/build/src/utils/args.js.map +1 -1
  543. package/build/src/utils/array.js +16 -9
  544. package/build/src/utils/array.js.map +1 -1
  545. package/build/src/utils/cocoapods.js +127 -67
  546. package/build/src/utils/cocoapods.js.map +1 -1
  547. package/build/src/utils/codesigning.js +144 -72
  548. package/build/src/utils/codesigning.js.map +1 -1
  549. package/build/src/utils/createFileTransform.js +34 -71
  550. package/build/src/utils/createFileTransform.js.map +1 -1
  551. package/build/src/utils/delay.js +13 -6
  552. package/build/src/utils/delay.js.map +1 -1
  553. package/build/src/utils/dir.js +50 -40
  554. package/build/src/utils/dir.js.map +1 -1
  555. package/build/src/utils/downloadAppAsync.js +51 -18
  556. package/build/src/utils/downloadAppAsync.js.map +1 -1
  557. package/build/src/utils/downloadExpoGoAsync.js +47 -26
  558. package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
  559. package/build/src/utils/editor.js +65 -27
  560. package/build/src/utils/editor.js.map +1 -1
  561. package/build/src/utils/env.js +44 -33
  562. package/build/src/utils/env.js.map +1 -1
  563. package/build/src/utils/errors.js +35 -12
  564. package/build/src/utils/errors.js.map +1 -1
  565. package/build/src/utils/exit.js +10 -7
  566. package/build/src/utils/exit.js.map +1 -1
  567. package/build/src/utils/findUp.js +38 -8
  568. package/build/src/utils/findUp.js.map +1 -1
  569. package/build/src/utils/fn.js +11 -3
  570. package/build/src/utils/fn.js.map +1 -1
  571. package/build/src/utils/getOrPromptApplicationId.js +84 -46
  572. package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
  573. package/build/src/utils/getRunningProcess.js +63 -25
  574. package/build/src/utils/getRunningProcess.js.map +1 -1
  575. package/build/src/utils/git.js +76 -38
  576. package/build/src/utils/git.js.map +1 -1
  577. package/build/src/utils/glob.js +23 -12
  578. package/build/src/utils/glob.js.map +1 -1
  579. package/build/src/utils/interactive.js +5 -2
  580. package/build/src/utils/interactive.js.map +1 -1
  581. package/build/src/utils/ip.js +12 -3
  582. package/build/src/utils/ip.js.map +1 -1
  583. package/build/src/utils/isModuleSymlinked.js +20 -5
  584. package/build/src/utils/isModuleSymlinked.js.map +1 -1
  585. package/build/src/utils/link.js +28 -8
  586. package/build/src/utils/link.js.map +1 -1
  587. package/build/src/utils/mergeGitIgnorePaths.js +45 -28
  588. package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
  589. package/build/src/utils/modifyConfigAsync.js +69 -31
  590. package/build/src/utils/modifyConfigAsync.js.map +1 -1
  591. package/build/src/utils/modifyConfigPlugins.js +50 -23
  592. package/build/src/utils/modifyConfigPlugins.js.map +1 -1
  593. package/build/src/utils/nodeEnv.js +8 -1
  594. package/build/src/utils/nodeEnv.js.map +1 -1
  595. package/build/src/utils/nodeModules.js +29 -8
  596. package/build/src/utils/nodeModules.js.map +1 -1
  597. package/build/src/utils/npm.js +86 -31
  598. package/build/src/utils/npm.js.map +1 -1
  599. package/build/src/utils/obj.js +12 -4
  600. package/build/src/utils/obj.js.map +1 -1
  601. package/build/src/utils/open.js +13 -4
  602. package/build/src/utils/open.js.map +1 -1
  603. package/build/src/utils/ora.js +38 -22
  604. package/build/src/utils/ora.js.map +1 -1
  605. package/build/src/utils/plist.js +73 -29
  606. package/build/src/utils/plist.js.map +1 -1
  607. package/build/src/utils/port.js +74 -36
  608. package/build/src/utils/port.js.map +1 -1
  609. package/build/src/utils/profile.js +56 -29
  610. package/build/src/utils/profile.js.map +1 -1
  611. package/build/src/utils/progress.js +23 -13
  612. package/build/src/utils/progress.js.map +1 -1
  613. package/build/src/utils/prompts.js +45 -28
  614. package/build/src/utils/prompts.js.map +1 -1
  615. package/build/src/utils/resolveArgs.js +23 -20
  616. package/build/src/utils/resolveArgs.js.map +1 -1
  617. package/build/src/utils/scheme.js +128 -52
  618. package/build/src/utils/scheme.js.map +1 -1
  619. package/build/src/utils/strings.js +11 -4
  620. package/build/src/utils/strings.js.map +1 -1
  621. package/build/src/utils/tar.js +56 -23
  622. package/build/src/utils/tar.js.map +1 -1
  623. package/build/src/utils/telemetry/DetachedClient.js +90 -0
  624. package/build/src/utils/telemetry/DetachedClient.js.map +1 -0
  625. package/build/src/utils/telemetry/RudderClient.js +101 -0
  626. package/build/src/utils/telemetry/RudderClient.js.map +1 -0
  627. package/build/src/utils/telemetry/flushDetached.js +44 -0
  628. package/build/src/utils/telemetry/flushDetached.js.map +1 -0
  629. package/build/src/utils/telemetry/getContext.js +112 -0
  630. package/build/src/utils/telemetry/getContext.js.map +1 -0
  631. package/build/src/utils/telemetry/index.js +37 -0
  632. package/build/src/utils/telemetry/index.js.map +1 -0
  633. package/build/src/utils/telemetry/types.js +6 -0
  634. package/build/src/utils/telemetry/types.js.map +1 -0
  635. package/build/src/utils/template.js +27 -2
  636. package/build/src/utils/template.js.map +1 -1
  637. package/build/src/utils/terminal.js +5 -2
  638. package/build/src/utils/terminal.js.map +1 -1
  639. package/build/src/utils/tsconfig/evaluateTsConfig.js +32 -14
  640. package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -1
  641. package/build/src/utils/tsconfig/loadTsConfigPaths.js +34 -14
  642. package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -1
  643. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +8 -4
  644. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -1
  645. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +20 -11
  646. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -1
  647. package/build/src/utils/url.js +35 -19
  648. package/build/src/utils/url.js.map +1 -1
  649. package/build/src/utils/validateApplicationId.js +47 -28
  650. package/build/src/utils/validateApplicationId.js.map +1 -1
  651. package/build/src/utils/variadic.js +15 -11
  652. package/build/src/utils/variadic.js.map +1 -1
  653. package/build/src/whoami/index.js +43 -25
  654. package/build/src/whoami/index.js.map +1 -1
  655. package/build/src/whoami/whoamiAsync.js +50 -23
  656. package/build/src/whoami/whoamiAsync.js.map +1 -1
  657. package/package.json +16 -17
  658. package/static/canary/react-native/Libraries/Renderer/implementations/ReactFabric-dev.js +27907 -0
  659. package/static/canary/react-native/Libraries/Renderer/implementations/ReactFabric-prod.js +9494 -0
  660. package/static/canary/react-native/Libraries/Renderer/implementations/ReactFabric-profiling.js +10015 -0
  661. package/static/canary/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +28375 -0
  662. package/static/canary/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +9714 -0
  663. package/build/src/run/android/resolveGradleProps.js +0 -37
  664. package/build/src/run/android/resolveGradleProps.js.map +0 -1
  665. package/build/src/start/server/metro/bundleApiRoutes.js +0 -52
  666. package/build/src/start/server/metro/bundleApiRoutes.js.map +0 -1
  667. package/build/src/start/server/metro/debugging/InspectorDevice.js +0 -80
  668. package/build/src/start/server/metro/debugging/InspectorDevice.js.map +0 -1
  669. package/build/src/start/server/metro/debugging/InspectorProxy.js +0 -116
  670. package/build/src/start/server/metro/debugging/InspectorProxy.js.map +0 -1
  671. package/build/src/start/server/metro/debugging/inspectorHandlers/NetworkResponse.js.map +0 -1
  672. package/build/src/start/server/metro/debugging/inspectorHandlers/PageReload.js +0 -22
  673. package/build/src/start/server/metro/debugging/inspectorHandlers/PageReload.js.map +0 -1
  674. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerGetPossibleBreakpoints.js +0 -21
  675. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +0 -1
  676. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerScriptParsed.js +0 -56
  677. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerScriptParsed.js.map +0 -1
  678. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerSetBreakpointByUrl.js +0 -18
  679. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +0 -1
  680. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeRuntimeCallFunctionOn.js +0 -24
  681. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeRuntimeCallFunctionOn.js.map +0 -1
  682. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeRuntimeGetProperties.js.map +0 -1
  683. package/build/src/start/server/metro/debugging/inspectorHandlers/types.js.map +0 -1
  684. package/build/src/start/server/metro/debugging/inspectorHandlers/utils.js.map +0 -1
  685. package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js +0 -38
  686. package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js.map +0 -1
  687. package/build/src/start/server/type-generation/__typetests__/generateFixtures.js +0 -38
  688. package/build/src/start/server/type-generation/__typetests__/generateFixtures.js.map +0 -1
  689. package/build/src/start/server/type-generation/__typetests__/route.test.js +0 -184
  690. package/build/src/start/server/type-generation/__typetests__/route.test.js.map +0 -1
  691. package/build/src/utils/analytics/rudderstackClient.js +0 -147
  692. package/build/src/utils/analytics/rudderstackClient.js.map +0 -1
  693. /package/build/src/start/server/metro/debugging/{inspectorHandlers/types.js → types.js} +0 -0
@@ -2,44 +2,100 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- exports.cloneTemplateAsync = cloneTemplateAsync;
6
- exports.resolveTemplateArgAsync = resolveTemplateArgAsync;
7
- var _assert = _interopRequireDefault(require("assert"));
8
- var _chalk = _interopRequireDefault(require("chalk"));
9
- var _fs = _interopRequireDefault(require("fs"));
10
- var _path = _interopRequireDefault(require("path"));
11
- var _semver = _interopRequireDefault(require("semver"));
12
- var _client = require("../api/rest/client");
13
- var Log = _interopRequireWildcard(require("../log"));
14
- var _createFileTransform = require("../utils/createFileTransform");
15
- var _errors = require("../utils/errors");
16
- var _npm = require("../utils/npm");
17
- var _url = require("../utils/url");
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ cloneTemplateAsync: ()=>cloneTemplateAsync,
13
+ resolveTemplateArgAsync: ()=>resolveTemplateArgAsync
14
+ });
15
+ function _assert() {
16
+ const data = /*#__PURE__*/ _interopRequireDefault(require("assert"));
17
+ _assert = function() {
18
+ return data;
19
+ };
20
+ return data;
21
+ }
22
+ function _chalk() {
23
+ const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
24
+ _chalk = function() {
25
+ return data;
26
+ };
27
+ return data;
28
+ }
29
+ function _fs() {
30
+ const data = /*#__PURE__*/ _interopRequireDefault(require("fs"));
31
+ _fs = function() {
32
+ return data;
33
+ };
34
+ return data;
35
+ }
36
+ function _path() {
37
+ const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
38
+ _path = function() {
39
+ return data;
40
+ };
41
+ return data;
42
+ }
43
+ function _semver() {
44
+ const data = /*#__PURE__*/ _interopRequireDefault(require("semver"));
45
+ _semver = function() {
46
+ return data;
47
+ };
48
+ return data;
49
+ }
50
+ const _client = require("../api/rest/client");
51
+ const _log = /*#__PURE__*/ _interopRequireWildcard(require("../log"));
52
+ const _createFileTransform = require("../utils/createFileTransform");
53
+ const _errors = require("../utils/errors");
54
+ const _npm = require("../utils/npm");
55
+ const _url = require("../utils/url");
18
56
  function _interopRequireDefault(obj) {
19
57
  return obj && obj.__esModule ? obj : {
20
58
  default: obj
21
59
  };
22
60
  }
23
- function _interopRequireWildcard(obj) {
24
- if (obj && obj.__esModule) {
61
+ function _getRequireWildcardCache(nodeInterop) {
62
+ if (typeof WeakMap !== "function") return null;
63
+ var cacheBabelInterop = new WeakMap();
64
+ var cacheNodeInterop = new WeakMap();
65
+ return (_getRequireWildcardCache = function(nodeInterop) {
66
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
67
+ })(nodeInterop);
68
+ }
69
+ function _interopRequireWildcard(obj, nodeInterop) {
70
+ if (!nodeInterop && obj && obj.__esModule) {
25
71
  return obj;
26
- } else {
27
- var newObj = {};
28
- if (obj != null) {
29
- for(var key in obj){
30
- if (Object.prototype.hasOwnProperty.call(obj, key)) {
31
- var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};
32
- if (desc.get || desc.set) {
33
- Object.defineProperty(newObj, key, desc);
34
- } else {
35
- newObj[key] = obj[key];
36
- }
37
- }
72
+ }
73
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
74
+ return {
75
+ default: obj
76
+ };
77
+ }
78
+ var cache = _getRequireWildcardCache(nodeInterop);
79
+ if (cache && cache.has(obj)) {
80
+ return cache.get(obj);
81
+ }
82
+ var newObj = {};
83
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
84
+ for(var key in obj){
85
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
86
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
87
+ if (desc && (desc.get || desc.set)) {
88
+ Object.defineProperty(newObj, key, desc);
89
+ } else {
90
+ newObj[key] = obj[key];
38
91
  }
39
92
  }
40
- newObj.default = obj;
41
- return newObj;
42
93
  }
94
+ newObj.default = obj;
95
+ if (cache) {
96
+ cache.set(obj, newObj);
97
+ }
98
+ return newObj;
43
99
  }
44
100
  const debug = require("debug")("expo:prebuild:resolveTemplate");
45
101
  async function cloneTemplateAsync({ templateDirectory , template , exp , ora }) {
@@ -47,7 +103,7 @@ async function cloneTemplateAsync({ templateDirectory , template , exp , ora })
47
103
  return await resolveTemplateArgAsync(templateDirectory, ora, exp.name, template);
48
104
  } else {
49
105
  const templatePackageName = await getTemplateNpmPackageName(exp.sdkVersion);
50
- return await (0, _npm).downloadAndExtractNpmModuleAsync(templatePackageName, {
106
+ return await (0, _npm.downloadAndExtractNpmModuleAsync)(templatePackageName, {
51
107
  cwd: templateDirectory,
52
108
  name: exp.name
53
109
  });
@@ -56,10 +112,10 @@ async function cloneTemplateAsync({ templateDirectory , template , exp , ora })
56
112
  /** Given an `sdkVersion` like `44.0.0` return a fully qualified NPM package name like: `expo-template-bare-minimum@sdk-44` */ function getTemplateNpmPackageName(sdkVersion) {
57
113
  // When undefined or UNVERSIONED, we use the latest version.
58
114
  if (!sdkVersion || sdkVersion === "UNVERSIONED") {
59
- Log.log("Using an unspecified Expo SDK version. The latest template will be used.");
115
+ _log.log("Using an unspecified Expo SDK version. The latest template will be used.");
60
116
  return `expo-template-bare-minimum@latest`;
61
117
  }
62
- return `expo-template-bare-minimum@sdk-${_semver.default.major(sdkVersion)}`;
118
+ return `expo-template-bare-minimum@sdk-${_semver().default.major(sdkVersion)}`;
63
119
  }
64
120
  async function getRepoInfo(url, examplePath) {
65
121
  const [, username, name, t, _branch, ...file] = url.pathname.split("/");
@@ -67,7 +123,7 @@ async function getRepoInfo(url, examplePath) {
67
123
  // Support repos whose entire purpose is to be an example, e.g.
68
124
  // https://github.com/:username/:my-cool-example-repo-name.
69
125
  if (t === undefined) {
70
- const infoResponse = await (0, _client).fetchAsync(`https://api.github.com/repos/${username}/${name}`);
126
+ const infoResponse = await (0, _client.fetchAsync)(`https://api.github.com/repos/${username}/${name}`);
71
127
  if (infoResponse.status !== 200) {
72
128
  return;
73
129
  }
@@ -94,7 +150,7 @@ async function getRepoInfo(url, examplePath) {
94
150
  function hasRepo({ username , name , branch , filePath }) {
95
151
  const contentsUrl = `https://api.github.com/repos/${username}/${name}/contents`;
96
152
  const packagePath = `${filePath ? `/${filePath}` : ""}/package.json`;
97
- return (0, _url).isUrlOk(contentsUrl + packagePath + `?ref=${branch}`);
153
+ return (0, _url.isUrlOk)(contentsUrl + packagePath + `?ref=${branch}`);
98
154
  }
99
155
  async function downloadAndExtractRepoAsync({ username , name , branch , filePath }, props) {
100
156
  const url = `https://codeload.github.com/${username}/${name}/tar.gz/${branch}`;
@@ -105,7 +161,7 @@ async function downloadAndExtractRepoAsync({ username , name , branch , filePath
105
161
  const strip = directory.length + 1;
106
162
  // Only extract the relevant (sub)directories, ignoring irrelevant files
107
163
  // The filder auto-ignores dotfiles, unless explicitly included
108
- const filter = (0, _createFileTransform).createGlobFilter(!directory.length ? [
164
+ const filter = (0, _createFileTransform.createGlobFilter)(!directory.length ? [
109
165
  "*/**",
110
166
  "*/ios/.xcode.env"
111
167
  ] : [
@@ -117,14 +173,14 @@ async function downloadAndExtractRepoAsync({ username , name , branch , filePath
117
173
  "**/ios/*.xcworkspace/**"
118
174
  ]
119
175
  });
120
- return await (0, _npm).extractNpmTarballFromUrlAsync(url, {
176
+ return await (0, _npm.extractNpmTarballFromUrlAsync)(url, {
121
177
  ...props,
122
178
  strip,
123
179
  filter
124
180
  });
125
181
  }
126
182
  async function resolveTemplateArgAsync(templateDirectory, oraInstance, appName, template, templatePath) {
127
- (0, _assert).default(template, "template is required");
183
+ (0, _assert().default)(template, "template is required");
128
184
  let repoUrl;
129
185
  try {
130
186
  repoUrl = new URL(template);
@@ -136,34 +192,34 @@ async function resolveTemplateArgAsync(templateDirectory, oraInstance, appName,
136
192
  }
137
193
  // On Windows, we can actually create a URL from a local path
138
194
  // Double-check if the created URL is not a path to avoid mixing up URLs and paths
139
- if (process.platform === "win32" && repoUrl && _path.default.isAbsolute(repoUrl.toString())) {
195
+ if (process.platform === "win32" && repoUrl && _path().default.isAbsolute(repoUrl.toString())) {
140
196
  repoUrl = undefined;
141
197
  }
142
198
  if (!repoUrl) {
143
- const templatePath = _path.default.resolve(template);
144
- if (!_fs.default.existsSync(templatePath)) {
145
- throw new _errors.CommandError(`template file does not exist: ${templatePath}`);
199
+ const templatePath1 = _path().default.resolve(template);
200
+ if (!_fs().default.existsSync(templatePath1)) {
201
+ throw new _errors.CommandError(`template file does not exist: ${templatePath1}`);
146
202
  }
147
- return await (0, _npm).extractLocalNpmTarballAsync(templatePath, {
203
+ return await (0, _npm.extractLocalNpmTarballAsync)(templatePath1, {
148
204
  cwd: templateDirectory,
149
205
  name: appName
150
206
  });
151
207
  }
152
208
  if (repoUrl.origin !== "https://github.com") {
153
- oraInstance.fail(`Invalid URL: ${_chalk.default.red(`"${template}"`)}. Only GitHub repositories are supported. Please use a GitHub URL and try again.`);
209
+ oraInstance.fail(`Invalid URL: ${_chalk().default.red(`"${template}"`)}. Only GitHub repositories are supported. Please use a GitHub URL and try again.`);
154
210
  throw new _errors.AbortCommandError();
155
211
  }
156
212
  const repoInfo = await getRepoInfo(repoUrl, templatePath);
157
213
  if (!repoInfo) {
158
- oraInstance.fail(`Found invalid GitHub URL: ${_chalk.default.red(`"${template}"`)}. Please fix the URL and try again.`);
214
+ oraInstance.fail(`Found invalid GitHub URL: ${_chalk().default.red(`"${template}"`)}. Please fix the URL and try again.`);
159
215
  throw new _errors.AbortCommandError();
160
216
  }
161
217
  const found = await hasRepo(repoInfo);
162
218
  if (!found) {
163
- oraInstance.fail(`Could not locate the repository for ${_chalk.default.red(`"${template}"`)}. Please check that the repository exists and try again.`);
219
+ oraInstance.fail(`Could not locate the repository for ${_chalk().default.red(`"${template}"`)}. Please check that the repository exists and try again.`);
164
220
  throw new _errors.AbortCommandError();
165
221
  }
166
- oraInstance.text = _chalk.default.bold(`Downloading files from repo ${_chalk.default.cyan(template)}. This might take a moment.`);
222
+ oraInstance.text = _chalk().default.bold(`Downloading files from repo ${_chalk().default.cyan(template)}. This might take a moment.`);
167
223
  return await downloadAndExtractRepoAsync(repoInfo, {
168
224
  cwd: templateDirectory,
169
225
  name: appName
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/prebuild/resolveTemplate.ts"],"sourcesContent":["import { ExpoConfig } from '@expo/config';\nimport assert from 'assert';\nimport chalk from 'chalk';\nimport fs from 'fs';\nimport { Ora } from 'ora';\nimport path from 'path';\nimport semver from 'semver';\n\nimport { fetchAsync } from '../api/rest/client';\nimport * as Log from '../log';\nimport { createGlobFilter } from '../utils/createFileTransform';\nimport { AbortCommandError, CommandError } 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?: string;\n exp: Pick<ExpoConfig, 'name' | 'sdkVersion'>;\n ora: Ora;\n}): Promise<string> {\n if (template) {\n return await resolveTemplateArgAsync(templateDirectory, ora, exp.name, template);\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 = 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\nexport async function resolveTemplateArgAsync(\n templateDirectory: string,\n oraInstance: Ora,\n appName: string,\n template: string,\n templatePath?: string\n): Promise<string> {\n assert(template, 'template is required');\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\n // On Windows, we can actually create a URL from a local path\n // Double-check if the created URL is not a path to avoid mixing up URLs and paths\n if (process.platform === 'win32' && repoUrl && path.isAbsolute(repoUrl.toString())) {\n repoUrl = undefined;\n }\n\n if (!repoUrl) {\n const templatePath = path.resolve(template);\n if (!fs.existsSync(templatePath)) {\n throw new CommandError(`template file does not exist: ${templatePath}`);\n }\n\n return await extractLocalNpmTarballAsync(templatePath, {\n cwd: templateDirectory,\n name: appName,\n });\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","resolveTemplateArgAsync","Log","debug","require","templateDirectory","template","exp","ora","name","templatePackageName","getTemplateNpmPackageName","sdkVersion","downloadAndExtractNpmModuleAsync","cwd","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","appName","templatePath","assert","repoUrl","URL","error","code","fail","process","platform","path","isAbsolute","toString","resolve","fs","existsSync","CommandError","extractLocalNpmTarballAsync","origin","chalk","red","AbortCommandError","repoInfo","found","text","bold","cyan"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/prebuild/resolveTemplate.ts"],"sourcesContent":["import { ExpoConfig } from '@expo/config';\nimport assert from 'assert';\nimport chalk from 'chalk';\nimport fs from 'fs';\nimport { Ora } from 'ora';\nimport path from 'path';\nimport semver from 'semver';\n\nimport { fetchAsync } from '../api/rest/client';\nimport * as Log from '../log';\nimport { createGlobFilter } from '../utils/createFileTransform';\nimport { AbortCommandError, CommandError } 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?: string;\n exp: Pick<ExpoConfig, 'name' | 'sdkVersion'>;\n ora: Ora;\n}): Promise<string> {\n if (template) {\n return await resolveTemplateArgAsync(templateDirectory, ora, exp.name, template);\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 = 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\nexport async function resolveTemplateArgAsync(\n templateDirectory: string,\n oraInstance: Ora,\n appName: string,\n template: string,\n templatePath?: string\n): Promise<string> {\n assert(template, 'template is required');\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\n // On Windows, we can actually create a URL from a local path\n // Double-check if the created URL is not a path to avoid mixing up URLs and paths\n if (process.platform === 'win32' && repoUrl && path.isAbsolute(repoUrl.toString())) {\n repoUrl = undefined;\n }\n\n if (!repoUrl) {\n const templatePath = path.resolve(template);\n if (!fs.existsSync(templatePath)) {\n throw new CommandError(`template file does not exist: ${templatePath}`);\n }\n\n return await extractLocalNpmTarballAsync(templatePath, {\n cwd: templateDirectory,\n name: appName,\n });\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","resolveTemplateArgAsync","debug","require","templateDirectory","template","exp","ora","name","templatePackageName","getTemplateNpmPackageName","sdkVersion","downloadAndExtractNpmModuleAsync","cwd","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","appName","templatePath","assert","repoUrl","URL","error","code","fail","process","platform","path","isAbsolute","toString","resolve","fs","existsSync","CommandError","extractLocalNpmTarballAsync","origin","chalk","red","AbortCommandError","repoInfo","found","text","bold","cyan"],"mappings":"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"}
@@ -2,58 +2,89 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- exports.updateFromTemplateAsync = updateFromTemplateAsync;
6
- exports.cloneTemplateAndCopyToProjectAsync = cloneTemplateAndCopyToProjectAsync;
7
- var _chalk = _interopRequireDefault(require("chalk"));
8
- var _copyTemplateFiles = require("./copyTemplateFiles");
9
- var _resolveTemplate = require("./resolveTemplate");
10
- var _updatePackageJson = require("./updatePackageJson");
11
- var _validateTemplatePlatforms = require("./validateTemplatePlatforms");
12
- var Log = _interopRequireWildcard(require("../log"));
13
- var _errors = require("../utils/errors");
14
- var _ora = require("../utils/ora");
15
- var _profile = require("../utils/profile");
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ updateFromTemplateAsync: ()=>updateFromTemplateAsync,
13
+ cloneTemplateAndCopyToProjectAsync: ()=>cloneTemplateAndCopyToProjectAsync
14
+ });
15
+ function _chalk() {
16
+ const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
17
+ _chalk = function() {
18
+ return data;
19
+ };
20
+ return data;
21
+ }
22
+ const _copyTemplateFiles = require("./copyTemplateFiles");
23
+ const _renameTemplateAppName = require("./renameTemplateAppName");
24
+ const _resolveTemplate = require("./resolveTemplate");
25
+ const _updatePackageJson = require("./updatePackageJson");
26
+ const _validateTemplatePlatforms = require("./validateTemplatePlatforms");
27
+ const _log = /*#__PURE__*/ _interopRequireWildcard(require("../log"));
28
+ const _errors = require("../utils/errors");
29
+ const _ora = require("../utils/ora");
30
+ const _profile = require("../utils/profile");
16
31
  function _interopRequireDefault(obj) {
17
32
  return obj && obj.__esModule ? obj : {
18
33
  default: obj
19
34
  };
20
35
  }
21
- function _interopRequireWildcard(obj) {
22
- if (obj && obj.__esModule) {
36
+ function _getRequireWildcardCache(nodeInterop) {
37
+ if (typeof WeakMap !== "function") return null;
38
+ var cacheBabelInterop = new WeakMap();
39
+ var cacheNodeInterop = new WeakMap();
40
+ return (_getRequireWildcardCache = function(nodeInterop) {
41
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
42
+ })(nodeInterop);
43
+ }
44
+ function _interopRequireWildcard(obj, nodeInterop) {
45
+ if (!nodeInterop && obj && obj.__esModule) {
23
46
  return obj;
24
- } else {
25
- var newObj = {};
26
- if (obj != null) {
27
- for(var key in obj){
28
- if (Object.prototype.hasOwnProperty.call(obj, key)) {
29
- var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};
30
- if (desc.get || desc.set) {
31
- Object.defineProperty(newObj, key, desc);
32
- } else {
33
- newObj[key] = obj[key];
34
- }
35
- }
47
+ }
48
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
49
+ return {
50
+ default: obj
51
+ };
52
+ }
53
+ var cache = _getRequireWildcardCache(nodeInterop);
54
+ if (cache && cache.has(obj)) {
55
+ return cache.get(obj);
56
+ }
57
+ var newObj = {};
58
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
59
+ for(var key in obj){
60
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
61
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
62
+ if (desc && (desc.get || desc.set)) {
63
+ Object.defineProperty(newObj, key, desc);
64
+ } else {
65
+ newObj[key] = obj[key];
36
66
  }
37
67
  }
38
- newObj.default = obj;
39
- return newObj;
40
68
  }
69
+ newObj.default = obj;
70
+ if (cache) {
71
+ cache.set(obj, newObj);
72
+ }
73
+ return newObj;
41
74
  }
42
75
  async function updateFromTemplateAsync(projectRoot, { exp , pkg , template , templateDirectory , platforms , skipDependencyUpdate }) {
43
76
  if (!templateDirectory) {
44
- const temporary = await Promise.resolve().then(function() {
45
- return _interopRequireWildcard(require("tempy"));
46
- });
77
+ const temporary = await Promise.resolve().then(()=>/*#__PURE__*/ _interopRequireWildcard(require("tempy")));
47
78
  templateDirectory = temporary.directory();
48
79
  }
49
- const { copiedPaths , templateChecksum } = await (0, _profile).profile(cloneTemplateAndCopyToProjectAsync)({
80
+ const { copiedPaths , templateChecksum } = await (0, _profile.profile)(cloneTemplateAndCopyToProjectAsync)({
50
81
  projectRoot,
51
82
  template,
52
83
  templateDirectory,
53
84
  exp,
54
85
  platforms
55
86
  });
56
- const depsResults = await (0, _profile).profile(_updatePackageJson.updatePackageJSONAsync)(projectRoot, {
87
+ const depsResults = await (0, _profile.profile)(_updatePackageJson.updatePackageJSONAsync)(projectRoot, {
57
88
  templateDirectory,
58
89
  pkg,
59
90
  skipDependencyUpdate
@@ -67,36 +98,44 @@ async function updateFromTemplateAsync(projectRoot, { exp , pkg , template , tem
67
98
  };
68
99
  }
69
100
  async function cloneTemplateAndCopyToProjectAsync({ projectRoot , templateDirectory , template , exp , platforms: unknownPlatforms }) {
70
- const platformDirectories = unknownPlatforms.map((platform)=>`./${platform}`
71
- ).reverse().join(" and ");
101
+ const platformDirectories = unknownPlatforms.map((platform)=>`./${platform}`).reverse().join(" and ");
72
102
  const pluralized = unknownPlatforms.length > 1 ? "directories" : "directory";
73
- const ora = (0, _ora).logNewSection(`Creating native ${pluralized} (${platformDirectories})`);
103
+ const ora = (0, _ora.logNewSection)(`Creating native ${pluralized} (${platformDirectories})`);
74
104
  try {
75
- const templateChecksum = await (0, _resolveTemplate).cloneTemplateAsync({
105
+ const templateChecksum = await (0, _resolveTemplate.cloneTemplateAsync)({
76
106
  templateDirectory,
77
107
  template,
78
108
  exp,
79
109
  ora
80
110
  });
81
- const platforms = (0, _validateTemplatePlatforms).validateTemplatePlatforms({
111
+ const platforms = (0, _validateTemplatePlatforms.validateTemplatePlatforms)({
82
112
  templateDirectory,
83
113
  platforms: unknownPlatforms
84
114
  });
85
- const results = (0, _copyTemplateFiles).copyTemplateFiles(projectRoot, {
115
+ const results = (0, _copyTemplateFiles.copyTemplateFiles)(projectRoot, {
86
116
  templateDirectory,
87
117
  platforms
88
118
  });
89
- ora.succeed((0, _copyTemplateFiles).createCopyFilesSuccessMessage(platforms, results));
119
+ const files = await (0, _renameTemplateAppName.getTemplateFilesToRenameAsync)({
120
+ cwd: projectRoot
121
+ });
122
+ await (0, _renameTemplateAppName.renameTemplateAppNameAsync)({
123
+ cwd: projectRoot,
124
+ files,
125
+ name: exp.name
126
+ });
127
+ // Says: "Created native directories"
128
+ ora.succeed((0, _copyTemplateFiles.createCopyFilesSuccessMessage)(platforms, results));
90
129
  return {
91
130
  copiedPaths: results.copiedPaths,
92
131
  templateChecksum
93
132
  };
94
133
  } catch (e) {
95
134
  if (!(e instanceof _errors.AbortCommandError)) {
96
- Log.error(e.message);
135
+ _log.error(e.message);
97
136
  }
98
137
  ora.fail(`Failed to create the native ${pluralized}`);
99
- Log.log(_chalk.default.yellow(_chalk.default`You may want to delete the {bold ./ios} and/or {bold ./android} directories before trying again.`));
138
+ _log.log(_chalk().default.yellow((0, _chalk().default)`You may want to delete the {bold ./ios} and/or {bold ./android} directories before trying again.`));
100
139
  throw new _errors.SilentError(e);
101
140
  }
102
141
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/prebuild/updateFromTemplate.ts"],"sourcesContent":["import { ExpoConfig, PackageJSONConfig } from '@expo/config';\nimport { ModPlatform } from '@expo/config-plugins';\nimport chalk from 'chalk';\n\nimport { copyTemplateFiles, createCopyFilesSuccessMessage } from './copyTemplateFiles';\nimport { cloneTemplateAsync } from './resolveTemplate';\nimport { DependenciesModificationResults, updatePackageJSONAsync } from './updatePackageJson';\nimport { validateTemplatePlatforms } from './validateTemplatePlatforms';\nimport * as Log from '../log';\nimport { AbortCommandError, SilentError } from '../utils/errors';\nimport { logNewSection } from '../utils/ora';\nimport { profile } from '../utils/profile';\n\n/**\n * Creates local native files from an input template file path.\n *\n * @return `true` if the project is prebuilding, and `false` if it's syncing.\n */\nexport async function updateFromTemplateAsync(\n projectRoot: string,\n {\n exp,\n pkg,\n template,\n templateDirectory,\n platforms,\n skipDependencyUpdate,\n }: {\n /** Expo Config */\n exp: ExpoConfig;\n /** package.json as JSON */\n pkg: PackageJSONConfig;\n /** Template reference ID. */\n template?: string;\n /** Directory to write the template to before copying into the project. */\n templateDirectory?: string;\n /** List of platforms to clone. */\n platforms: ModPlatform[];\n /** List of dependencies to skip updating. */\n skipDependencyUpdate?: string[];\n }\n): Promise<\n {\n /** Indicates if new files were created in the project. */\n hasNewProjectFiles: boolean;\n /** Indicates that the project needs to run `pod install` */\n needsPodInstall: boolean;\n /** The template checksum used to create the native project. */\n templateChecksum: string;\n } & DependenciesModificationResults\n> {\n if (!templateDirectory) {\n const temporary = await import('tempy');\n templateDirectory = temporary.directory();\n }\n\n const { copiedPaths, templateChecksum } = await profile(cloneTemplateAndCopyToProjectAsync)({\n projectRoot,\n template,\n templateDirectory,\n exp,\n platforms,\n });\n\n const depsResults = await profile(updatePackageJSONAsync)(projectRoot, {\n templateDirectory,\n pkg,\n skipDependencyUpdate,\n });\n\n return {\n hasNewProjectFiles: !!copiedPaths.length,\n // If the iOS folder changes or new packages are added, we should rerun pod install.\n needsPodInstall: copiedPaths.includes('ios') || !!depsResults.changedDependencies.length,\n templateChecksum,\n ...depsResults,\n };\n}\n\n/**\n * Extract the template and copy the ios and android directories over to the project directory.\n *\n * @return `true` if any project files were created.\n */\nexport async function cloneTemplateAndCopyToProjectAsync({\n projectRoot,\n templateDirectory,\n template,\n exp,\n platforms: unknownPlatforms,\n}: {\n projectRoot: string;\n templateDirectory: string;\n template?: string;\n exp: Pick<ExpoConfig, 'name' | 'sdkVersion'>;\n platforms: ModPlatform[];\n}): Promise<{ copiedPaths: string[]; templateChecksum: string }> {\n const platformDirectories = unknownPlatforms\n .map((platform) => `./${platform}`)\n .reverse()\n .join(' and ');\n\n const pluralized = unknownPlatforms.length > 1 ? 'directories' : 'directory';\n const ora = logNewSection(`Creating native ${pluralized} (${platformDirectories})`);\n\n try {\n const templateChecksum = await cloneTemplateAsync({ templateDirectory, template, exp, ora });\n\n const platforms = validateTemplatePlatforms({\n templateDirectory,\n platforms: unknownPlatforms,\n });\n\n const results = copyTemplateFiles(projectRoot, {\n templateDirectory,\n platforms,\n });\n\n ora.succeed(createCopyFilesSuccessMessage(platforms, results));\n\n return {\n copiedPaths: results.copiedPaths,\n templateChecksum,\n };\n } catch (e: any) {\n if (!(e instanceof AbortCommandError)) {\n Log.error(e.message);\n }\n ora.fail(`Failed to create the native ${pluralized}`);\n Log.log(\n chalk.yellow(\n chalk`You may want to delete the {bold ./ios} and/or {bold ./android} directories before trying again.`\n )\n );\n throw new SilentError(e);\n }\n}\n"],"names":["updateFromTemplateAsync","cloneTemplateAndCopyToProjectAsync","Log","projectRoot","exp","pkg","template","templateDirectory","platforms","skipDependencyUpdate","temporary","directory","copiedPaths","templateChecksum","profile","depsResults","updatePackageJSONAsync","hasNewProjectFiles","length","needsPodInstall","includes","changedDependencies","unknownPlatforms","platformDirectories","map","platform","reverse","join","pluralized","ora","logNewSection","cloneTemplateAsync","validateTemplatePlatforms","results","copyTemplateFiles","succeed","createCopyFilesSuccessMessage","e","AbortCommandError","error","message","fail","log","chalk","yellow","SilentError"],"mappings":"AAAA;;;;QAkBsBA,uBAAuB,GAAvBA,uBAAuB;QAkEvBC,kCAAkC,GAAlCA,kCAAkC;AAlFtC,IAAA,MAAO,kCAAP,OAAO,EAAA;AAEwC,IAAA,kBAAqB,WAArB,qBAAqB,CAAA;AACnD,IAAA,gBAAmB,WAAnB,mBAAmB,CAAA;AACkB,IAAA,kBAAqB,WAArB,qBAAqB,CAAA;AACnD,IAAA,0BAA6B,WAA7B,6BAA6B,CAAA;AAC3DC,IAAAA,GAAG,mCAAM,QAAQ,EAAd;AACgC,IAAA,OAAiB,WAAjB,iBAAiB,CAAA;AAClC,IAAA,IAAc,WAAd,cAAc,CAAA;AACpB,IAAA,QAAkB,WAAlB,kBAAkB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOnC,eAAeF,uBAAuB,CAC3CG,WAAmB,EACnB,EACEC,GAAG,CAAA,EACHC,GAAG,CAAA,EACHC,QAAQ,CAAA,EACRC,iBAAiB,CAAA,EACjBC,SAAS,CAAA,EACTC,oBAAoB,CAAA,EAcrB,EAUD;IACA,IAAI,CAACF,iBAAiB,EAAE;QACtB,MAAMG,SAAS,GAAG,MAAM;mDAAO,OAAO;UAAC,AAAC;QACxCH,iBAAiB,GAAGG,SAAS,CAACC,SAAS,EAAE,CAAC;KAC3C;IAED,MAAM,EAAEC,WAAW,CAAA,EAAEC,gBAAgB,CAAA,EAAE,GAAG,MAAMC,CAAAA,GAAAA,QAAO,AAAoC,CAAA,QAApC,CAACb,kCAAkC,CAAC,CAAC;QAC1FE,WAAW;QACXG,QAAQ;QACRC,iBAAiB;QACjBH,GAAG;QACHI,SAAS;KACV,CAAC,AAAC;IAEH,MAAMO,WAAW,GAAG,MAAMD,CAAAA,GAAAA,QAAO,AAAwB,CAAA,QAAxB,CAACE,kBAAsB,uBAAA,CAAC,CAACb,WAAW,EAAE;QACrEI,iBAAiB;QACjBF,GAAG;QACHI,oBAAoB;KACrB,CAAC,AAAC;IAEH,OAAO;QACLQ,kBAAkB,EAAE,CAAC,CAACL,WAAW,CAACM,MAAM;QACxC,oFAAoF;QACpFC,eAAe,EAAEP,WAAW,CAACQ,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAACL,WAAW,CAACM,mBAAmB,CAACH,MAAM;QACxFL,gBAAgB;QAChB,GAAGE,WAAW;KACf,CAAC;CACH;AAOM,eAAed,kCAAkC,CAAC,EACvDE,WAAW,CAAA,EACXI,iBAAiB,CAAA,EACjBD,QAAQ,CAAA,EACRF,GAAG,CAAA,EACHI,SAAS,EAAEc,gBAAgB,CAAA,EAO5B,EAAgE;IAC/D,MAAMC,mBAAmB,GAAGD,gBAAgB,CACzCE,GAAG,CAAC,CAACC,QAAQ,GAAK,CAAC,EAAE,EAAEA,QAAQ,CAAC,CAAC;IAAA,CAAC,CAClCC,OAAO,EAAE,CACTC,IAAI,CAAC,OAAO,CAAC,AAAC;IAEjB,MAAMC,UAAU,GAAGN,gBAAgB,CAACJ,MAAM,GAAG,CAAC,GAAG,aAAa,GAAG,WAAW,AAAC;IAC7E,MAAMW,GAAG,GAAGC,CAAAA,GAAAA,IAAa,AAA0D,CAAA,cAA1D,CAAC,CAAC,gBAAgB,EAAEF,UAAU,CAAC,EAAE,EAAEL,mBAAmB,CAAC,CAAC,CAAC,CAAC,AAAC;IAEpF,IAAI;QACF,MAAMV,gBAAgB,GAAG,MAAMkB,CAAAA,GAAAA,gBAAkB,AAA2C,CAAA,mBAA3C,CAAC;YAAExB,iBAAiB;YAAED,QAAQ;YAAEF,GAAG;YAAEyB,GAAG;SAAE,CAAC,AAAC;QAE7F,MAAMrB,SAAS,GAAGwB,CAAAA,GAAAA,0BAAyB,AAGzC,CAAA,0BAHyC,CAAC;YAC1CzB,iBAAiB;YACjBC,SAAS,EAAEc,gBAAgB;SAC5B,CAAC,AAAC;QAEH,MAAMW,OAAO,GAAGC,CAAAA,GAAAA,kBAAiB,AAG/B,CAAA,kBAH+B,CAAC/B,WAAW,EAAE;YAC7CI,iBAAiB;YACjBC,SAAS;SACV,CAAC,AAAC;QAEHqB,GAAG,CAACM,OAAO,CAACC,CAAAA,GAAAA,kBAA6B,AAAoB,CAAA,8BAApB,CAAC5B,SAAS,EAAEyB,OAAO,CAAC,CAAC,CAAC;QAE/D,OAAO;YACLrB,WAAW,EAAEqB,OAAO,CAACrB,WAAW;YAChCC,gBAAgB;SACjB,CAAC;KACH,CAAC,OAAOwB,CAAC,EAAO;QACf,IAAI,CAAC,CAACA,CAAC,YAAYC,OAAiB,kBAAA,CAAC,EAAE;YACrCpC,GAAG,CAACqC,KAAK,CAACF,CAAC,CAACG,OAAO,CAAC,CAAC;SACtB;QACDX,GAAG,CAACY,IAAI,CAAC,CAAC,4BAA4B,EAAEb,UAAU,CAAC,CAAC,CAAC,CAAC;QACtD1B,GAAG,CAACwC,GAAG,CACLC,MAAK,QAAA,CAACC,MAAM,CACVD,MAAK,QAAA,CAAC,gGAAgG,CAAC,CACxG,CACF,CAAC;QACF,MAAM,IAAIE,OAAW,YAAA,CAACR,CAAC,CAAC,CAAC;KAC1B;CACF"}
1
+ {"version":3,"sources":["../../../src/prebuild/updateFromTemplate.ts"],"sourcesContent":["import { ExpoConfig, PackageJSONConfig } from '@expo/config';\nimport { ModPlatform } from '@expo/config-plugins';\nimport chalk from 'chalk';\n\nimport { copyTemplateFiles, createCopyFilesSuccessMessage } from './copyTemplateFiles';\nimport { getTemplateFilesToRenameAsync, renameTemplateAppNameAsync } from './renameTemplateAppName';\nimport { cloneTemplateAsync } from './resolveTemplate';\nimport { DependenciesModificationResults, updatePackageJSONAsync } from './updatePackageJson';\nimport { validateTemplatePlatforms } from './validateTemplatePlatforms';\nimport * as Log from '../log';\nimport { AbortCommandError, SilentError } from '../utils/errors';\nimport { logNewSection } from '../utils/ora';\nimport { profile } from '../utils/profile';\n\n/**\n * Creates local native files from an input template file path.\n *\n * @return `true` if the project is prebuilding, and `false` if it's syncing.\n */\nexport async function updateFromTemplateAsync(\n projectRoot: string,\n {\n exp,\n pkg,\n template,\n templateDirectory,\n platforms,\n skipDependencyUpdate,\n }: {\n /** Expo Config */\n exp: ExpoConfig;\n /** package.json as JSON */\n pkg: PackageJSONConfig;\n /** Template reference ID. */\n template?: string;\n /** Directory to write the template to before copying into the project. */\n templateDirectory?: string;\n /** List of platforms to clone. */\n platforms: ModPlatform[];\n /** List of dependencies to skip updating. */\n skipDependencyUpdate?: string[];\n }\n): Promise<\n {\n /** Indicates if new files were created in the project. */\n hasNewProjectFiles: boolean;\n /** Indicates that the project needs to run `pod install` */\n needsPodInstall: boolean;\n /** The template checksum used to create the native project. */\n templateChecksum: string;\n } & DependenciesModificationResults\n> {\n if (!templateDirectory) {\n const temporary = await import('tempy');\n templateDirectory = temporary.directory();\n }\n\n const { copiedPaths, templateChecksum } = await profile(cloneTemplateAndCopyToProjectAsync)({\n projectRoot,\n template,\n templateDirectory,\n exp,\n platforms,\n });\n\n const depsResults = await profile(updatePackageJSONAsync)(projectRoot, {\n templateDirectory,\n pkg,\n skipDependencyUpdate,\n });\n\n return {\n hasNewProjectFiles: !!copiedPaths.length,\n // If the iOS folder changes or new packages are added, we should rerun pod install.\n needsPodInstall: copiedPaths.includes('ios') || !!depsResults.changedDependencies.length,\n templateChecksum,\n ...depsResults,\n };\n}\n\n/**\n * Extract the template and copy the ios and android directories over to the project directory.\n *\n * @return `true` if any project files were created.\n */\nexport async function cloneTemplateAndCopyToProjectAsync({\n projectRoot,\n templateDirectory,\n template,\n exp,\n platforms: unknownPlatforms,\n}: {\n projectRoot: string;\n templateDirectory: string;\n template?: string;\n exp: Pick<ExpoConfig, 'name' | 'sdkVersion'>;\n platforms: ModPlatform[];\n}): Promise<{ copiedPaths: string[]; templateChecksum: string }> {\n const platformDirectories = unknownPlatforms\n .map((platform) => `./${platform}`)\n .reverse()\n .join(' and ');\n\n const pluralized = unknownPlatforms.length > 1 ? 'directories' : 'directory';\n const ora = logNewSection(`Creating native ${pluralized} (${platformDirectories})`);\n\n try {\n const templateChecksum = await cloneTemplateAsync({ templateDirectory, template, exp, ora });\n\n const platforms = validateTemplatePlatforms({\n templateDirectory,\n platforms: unknownPlatforms,\n });\n\n const results = copyTemplateFiles(projectRoot, {\n templateDirectory,\n platforms,\n });\n\n const files = await getTemplateFilesToRenameAsync({ cwd: projectRoot });\n await renameTemplateAppNameAsync({\n cwd: projectRoot,\n files,\n name: exp.name,\n });\n\n // Says: \"Created native directories\"\n ora.succeed(createCopyFilesSuccessMessage(platforms, results));\n\n return {\n copiedPaths: results.copiedPaths,\n templateChecksum,\n };\n } catch (e: any) {\n if (!(e instanceof AbortCommandError)) {\n Log.error(e.message);\n }\n ora.fail(`Failed to create the native ${pluralized}`);\n Log.log(\n chalk.yellow(\n chalk`You may want to delete the {bold ./ios} and/or {bold ./android} directories before trying again.`\n )\n );\n throw new SilentError(e);\n }\n}\n"],"names":["updateFromTemplateAsync","cloneTemplateAndCopyToProjectAsync","projectRoot","exp","pkg","template","templateDirectory","platforms","skipDependencyUpdate","temporary","directory","copiedPaths","templateChecksum","profile","depsResults","updatePackageJSONAsync","hasNewProjectFiles","length","needsPodInstall","includes","changedDependencies","unknownPlatforms","platformDirectories","map","platform","reverse","join","pluralized","ora","logNewSection","cloneTemplateAsync","validateTemplatePlatforms","results","copyTemplateFiles","files","getTemplateFilesToRenameAsync","cwd","renameTemplateAppNameAsync","name","succeed","createCopyFilesSuccessMessage","e","AbortCommandError","Log","error","message","fail","log","chalk","yellow","SilentError"],"mappings":"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"}