@expo/cli 0.22.24 → 0.22.25

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 (722) hide show
  1. package/build/bin/cli +93 -91
  2. package/build/bin/cli.map +1 -1
  3. package/build/metro-require/require.js +53 -52
  4. package/build/src/api/endpoint.js +6 -2
  5. package/build/src/api/endpoint.js.map +1 -1
  6. package/build/src/api/getExpoGoIntermediateCertificate.js +5 -3
  7. package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -1
  8. package/build/src/api/getExpoSchema.js +16 -12
  9. package/build/src/api/getExpoSchema.js.map +1 -1
  10. package/build/src/api/getNativeModuleVersions.js +6 -4
  11. package/build/src/api/getNativeModuleVersions.js.map +1 -1
  12. package/build/src/api/getProjectDevelopmentCertificate.js +5 -3
  13. package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -1
  14. package/build/src/api/getVersions.js +7 -5
  15. package/build/src/api/getVersions.js.map +1 -1
  16. package/build/src/api/graphql/client.js +32 -26
  17. package/build/src/api/graphql/client.js.map +1 -1
  18. package/build/src/api/graphql/queries/AppQuery.js +6 -4
  19. package/build/src/api/graphql/queries/AppQuery.js.map +1 -1
  20. package/build/src/api/graphql/queries/UserQuery.js +5 -3
  21. package/build/src/api/graphql/queries/UserQuery.js.map +1 -1
  22. package/build/src/api/graphql/types/App.js +3 -1
  23. package/build/src/api/graphql/types/App.js.map +1 -1
  24. package/build/src/api/rest/cache/FileSystemResponseCache.js +10 -8
  25. package/build/src/api/rest/cache/FileSystemResponseCache.js.map +1 -1
  26. package/build/src/api/rest/cache/ResponseCache.js +20 -12
  27. package/build/src/api/rest/cache/ResponseCache.js.map +1 -1
  28. package/build/src/api/rest/cache/wrapFetchWithCache.js +13 -11
  29. package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -1
  30. package/build/src/api/rest/client.js +53 -35
  31. package/build/src/api/rest/client.js.map +1 -1
  32. package/build/src/api/rest/client.types.js.map +1 -1
  33. package/build/src/api/rest/wrapFetchWithBaseUrl.js +5 -3
  34. package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
  35. package/build/src/api/rest/wrapFetchWithOffline.js +5 -3
  36. package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -1
  37. package/build/src/api/rest/wrapFetchWithProgress.js +11 -7
  38. package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -1
  39. package/build/src/api/rest/wrapFetchWithProxy.js +5 -3
  40. package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -1
  41. package/build/src/api/rest/wrapFetchWithUserAgent.js +8 -6
  42. package/build/src/api/rest/wrapFetchWithUserAgent.js.map +1 -1
  43. package/build/src/api/settings.js +7 -5
  44. package/build/src/api/settings.js.map +1 -1
  45. package/build/src/api/updateDevelopmentSession.js +23 -17
  46. package/build/src/api/updateDevelopmentSession.js.map +1 -1
  47. package/build/src/api/user/UserSettings.js +39 -21
  48. package/build/src/api/user/UserSettings.js.map +1 -1
  49. package/build/src/api/user/actions.js +27 -21
  50. package/build/src/api/user/actions.js.map +1 -1
  51. package/build/src/api/user/expoSsoLauncher.js +30 -26
  52. package/build/src/api/user/expoSsoLauncher.js.map +1 -1
  53. package/build/src/api/user/otp.js +35 -29
  54. package/build/src/api/user/otp.js.map +1 -1
  55. package/build/src/api/user/user.js +44 -30
  56. package/build/src/api/user/user.js.map +1 -1
  57. package/build/src/config/configAsync.js +29 -23
  58. package/build/src/config/configAsync.js.map +1 -1
  59. package/build/src/config/index.js +25 -21
  60. package/build/src/config/index.js.map +1 -1
  61. package/build/src/customize/customizeAsync.js +8 -6
  62. package/build/src/customize/customizeAsync.js.map +1 -1
  63. package/build/src/customize/generate.js +20 -16
  64. package/build/src/customize/generate.js.map +1 -1
  65. package/build/src/customize/index.js +14 -12
  66. package/build/src/customize/index.js.map +1 -1
  67. package/build/src/customize/resolveOptions.js +4 -2
  68. package/build/src/customize/resolveOptions.js.map +1 -1
  69. package/build/src/customize/templates.js +58 -54
  70. package/build/src/customize/templates.js.map +1 -1
  71. package/build/src/customize/typescript.js +11 -7
  72. package/build/src/customize/typescript.js.map +1 -1
  73. package/build/src/export/createMetadataJson.js +11 -9
  74. package/build/src/export/createMetadataJson.js.map +1 -1
  75. package/build/src/export/embed/exportEager.js +8 -6
  76. package/build/src/export/embed/exportEager.js.map +1 -1
  77. package/build/src/export/embed/exportEmbedAsync.js +71 -61
  78. package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
  79. package/build/src/export/embed/exportServer.js +57 -55
  80. package/build/src/export/embed/exportServer.js.map +1 -1
  81. package/build/src/export/embed/index.js +44 -40
  82. package/build/src/export/embed/index.js.map +1 -1
  83. package/build/src/export/embed/resolveOptions.js +44 -36
  84. package/build/src/export/embed/resolveOptions.js.map +1 -1
  85. package/build/src/export/embed/xcodeCompilerLogger.js +39 -27
  86. package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
  87. package/build/src/export/exportApp.js +67 -63
  88. package/build/src/export/exportApp.js.map +1 -1
  89. package/build/src/export/exportAssets.js +35 -27
  90. package/build/src/export/exportAssets.js.map +1 -1
  91. package/build/src/export/exportAsync.js +13 -9
  92. package/build/src/export/exportAsync.js.map +1 -1
  93. package/build/src/export/exportDomComponents.js +53 -45
  94. package/build/src/export/exportDomComponents.js.map +1 -1
  95. package/build/src/export/exportHermes.js +85 -63
  96. package/build/src/export/exportHermes.js.map +1 -1
  97. package/build/src/export/exportStaticAsync.js +72 -62
  98. package/build/src/export/exportStaticAsync.js.map +1 -1
  99. package/build/src/export/favicon.js +33 -27
  100. package/build/src/export/favicon.js.map +1 -1
  101. package/build/src/export/getPublicExpoManifest.js +7 -5
  102. package/build/src/export/getPublicExpoManifest.js.map +1 -1
  103. package/build/src/export/getResolvedLocales.js +11 -9
  104. package/build/src/export/getResolvedLocales.js.map +1 -1
  105. package/build/src/export/html.js +10 -6
  106. package/build/src/export/html.js.map +1 -1
  107. package/build/src/export/index.js +32 -28
  108. package/build/src/export/index.js.map +1 -1
  109. package/build/src/export/metroAssetLocalPath.js +36 -30
  110. package/build/src/export/metroAssetLocalPath.js.map +1 -1
  111. package/build/src/export/persistMetroAssets.js +42 -34
  112. package/build/src/export/persistMetroAssets.js.map +1 -1
  113. package/build/src/export/publicFolder.js +10 -6
  114. package/build/src/export/publicFolder.js.map +1 -1
  115. package/build/src/export/resolveOptions.js +28 -24
  116. package/build/src/export/resolveOptions.js.map +1 -1
  117. package/build/src/export/saveAssets.js +50 -46
  118. package/build/src/export/saveAssets.js.map +1 -1
  119. package/build/src/export/web/exportWebAsync.js +13 -11
  120. package/build/src/export/web/exportWebAsync.js.map +1 -1
  121. package/build/src/export/web/index.js +19 -15
  122. package/build/src/export/web/index.js.map +1 -1
  123. package/build/src/export/web/resolveOptions.js +5 -3
  124. package/build/src/export/web/resolveOptions.js.map +1 -1
  125. package/build/src/export/writeContents.js +4 -2
  126. package/build/src/export/writeContents.js.map +1 -1
  127. package/build/src/graphql/generated.js +400 -274
  128. package/build/src/graphql/generated.js.map +1 -1
  129. package/build/src/install/applyPlugins.js +11 -7
  130. package/build/src/install/applyPlugins.js.map +1 -1
  131. package/build/src/install/checkPackages.js +26 -22
  132. package/build/src/install/checkPackages.js.map +1 -1
  133. package/build/src/install/fixPackages.js +16 -12
  134. package/build/src/install/fixPackages.js.map +1 -1
  135. package/build/src/install/index.js +18 -16
  136. package/build/src/install/index.js.map +1 -1
  137. package/build/src/install/installAsync.js +32 -26
  138. package/build/src/install/installAsync.js.map +1 -1
  139. package/build/src/install/installExpoPackage.js +22 -18
  140. package/build/src/install/installExpoPackage.js.map +1 -1
  141. package/build/src/install/resolveOptions.js +21 -19
  142. package/build/src/install/resolveOptions.js.map +1 -1
  143. package/build/src/install/utils/autoAddConfigPlugins.js +18 -14
  144. package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
  145. package/build/src/install/utils/checkPackagesCompatibility.js +13 -11
  146. package/build/src/install/utils/checkPackagesCompatibility.js.map +1 -1
  147. package/build/src/lint/ESlintPrerequisite.js +50 -44
  148. package/build/src/lint/ESlintPrerequisite.js.map +1 -1
  149. package/build/src/lint/index.js +12 -8
  150. package/build/src/lint/index.js.map +1 -1
  151. package/build/src/lint/lintAsync.js +10 -8
  152. package/build/src/lint/lintAsync.js.map +1 -1
  153. package/build/src/log.js +36 -16
  154. package/build/src/log.js.map +1 -1
  155. package/build/src/login/index.js +24 -20
  156. package/build/src/login/index.js.map +1 -1
  157. package/build/src/logout/index.js +11 -7
  158. package/build/src/logout/index.js.map +1 -1
  159. package/build/src/prebuild/clearNativeFolder.js +38 -26
  160. package/build/src/prebuild/clearNativeFolder.js.map +1 -1
  161. package/build/src/prebuild/configureProjectAsync.js +18 -14
  162. package/build/src/prebuild/configureProjectAsync.js.map +1 -1
  163. package/build/src/prebuild/copyTemplateFiles.js +17 -13
  164. package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
  165. package/build/src/prebuild/ensureConfigAsync.js +6 -4
  166. package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
  167. package/build/src/prebuild/index.js +36 -32
  168. package/build/src/prebuild/index.js.map +1 -1
  169. package/build/src/prebuild/prebuildAsync.js +29 -25
  170. package/build/src/prebuild/prebuildAsync.js.map +1 -1
  171. package/build/src/prebuild/renameTemplateAppName.js +46 -40
  172. package/build/src/prebuild/renameTemplateAppName.js.map +1 -1
  173. package/build/src/prebuild/resolveOptions.js +66 -52
  174. package/build/src/prebuild/resolveOptions.js.map +1 -1
  175. package/build/src/prebuild/resolveTemplate.js +36 -32
  176. package/build/src/prebuild/resolveTemplate.js.map +1 -1
  177. package/build/src/prebuild/updateFromTemplate.js +19 -13
  178. package/build/src/prebuild/updateFromTemplate.js.map +1 -1
  179. package/build/src/prebuild/updatePackageJson.js +53 -39
  180. package/build/src/prebuild/updatePackageJson.js.map +1 -1
  181. package/build/src/prebuild/validateTemplatePlatforms.js +12 -8
  182. package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
  183. package/build/src/register/index.js +11 -7
  184. package/build/src/register/index.js.map +1 -1
  185. package/build/src/register/registerAsync.js +5 -3
  186. package/build/src/register/registerAsync.js.map +1 -1
  187. package/build/src/run/android/index.js +36 -32
  188. package/build/src/run/android/index.js.map +1 -1
  189. package/build/src/run/android/resolveDevice.js +10 -8
  190. package/build/src/run/android/resolveDevice.js.map +1 -1
  191. package/build/src/run/android/resolveGradlePropsAsync.js +18 -16
  192. package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -1
  193. package/build/src/run/android/resolveInstallApkName.js +17 -15
  194. package/build/src/run/android/resolveInstallApkName.js.map +1 -1
  195. package/build/src/run/android/resolveLaunchProps.js +12 -10
  196. package/build/src/run/android/resolveLaunchProps.js.map +1 -1
  197. package/build/src/run/android/resolveOptions.js +4 -2
  198. package/build/src/run/android/resolveOptions.js.map +1 -1
  199. package/build/src/run/android/runAndroidAsync.js +23 -21
  200. package/build/src/run/android/runAndroidAsync.js.map +1 -1
  201. package/build/src/run/ensureNativeProject.js +7 -5
  202. package/build/src/run/ensureNativeProject.js.map +1 -1
  203. package/build/src/run/hints.js +13 -7
  204. package/build/src/run/hints.js.map +1 -1
  205. package/build/src/run/index.js +27 -23
  206. package/build/src/run/index.js.map +1 -1
  207. package/build/src/run/ios/XcodeBuild.js +74 -56
  208. package/build/src/run/ios/XcodeBuild.js.map +1 -1
  209. package/build/src/run/ios/XcodeBuild.types.js.map +1 -1
  210. package/build/src/run/ios/appleDevice/AppleDevice.js +69 -63
  211. package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
  212. package/build/src/run/ios/appleDevice/ClientManager.js +29 -26
  213. package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
  214. package/build/src/run/ios/appleDevice/client/AFCClient.js +28 -25
  215. package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
  216. package/build/src/run/ios/appleDevice/client/DebugserverClient.js +29 -26
  217. package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
  218. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +22 -21
  219. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
  220. package/build/src/run/ios/appleDevice/client/LockdowndClient.js +32 -29
  221. package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
  222. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +28 -24
  223. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
  224. package/build/src/run/ios/appleDevice/client/ServiceClient.js +7 -4
  225. package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -1
  226. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +28 -27
  227. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
  228. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +23 -17
  229. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
  230. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +146 -132
  231. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
  232. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +29 -21
  233. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
  234. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +29 -21
  235. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
  236. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +34 -22
  237. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
  238. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +27 -17
  239. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
  240. package/build/src/run/ios/codeSigning/Security.js +53 -39
  241. package/build/src/run/ios/codeSigning/Security.js.map +1 -1
  242. package/build/src/run/ios/codeSigning/configureCodeSigning.js +13 -9
  243. package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
  244. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +27 -19
  245. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
  246. package/build/src/run/ios/codeSigning/settings.js +9 -5
  247. package/build/src/run/ios/codeSigning/settings.js.map +1 -1
  248. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +14 -12
  249. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -1
  250. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +27 -21
  251. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
  252. package/build/src/run/ios/index.js +40 -36
  253. package/build/src/run/ios/index.js.map +1 -1
  254. package/build/src/run/ios/launchApp.js +23 -17
  255. package/build/src/run/ios/launchApp.js.map +1 -1
  256. package/build/src/run/ios/options/appleDestinations.js +38 -36
  257. package/build/src/run/ios/options/appleDestinations.js.map +1 -1
  258. package/build/src/run/ios/options/promptDevice.js +20 -16
  259. package/build/src/run/ios/options/promptDevice.js.map +1 -1
  260. package/build/src/run/ios/options/resolveDevice.js +30 -24
  261. package/build/src/run/ios/options/resolveDevice.js.map +1 -1
  262. package/build/src/run/ios/options/resolveNativeScheme.js +31 -23
  263. package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
  264. package/build/src/run/ios/options/resolveOptions.js +7 -5
  265. package/build/src/run/ios/options/resolveOptions.js.map +1 -1
  266. package/build/src/run/ios/options/resolveXcodeProject.js +7 -5
  267. package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
  268. package/build/src/run/ios/runIosAsync.js +48 -44
  269. package/build/src/run/ios/runIosAsync.js.map +1 -1
  270. package/build/src/run/ios/validateExternalBinary.js +24 -22
  271. package/build/src/run/ios/validateExternalBinary.js.map +1 -1
  272. package/build/src/run/resolveBundlerProps.js +4 -2
  273. package/build/src/run/resolveBundlerProps.js.map +1 -1
  274. package/build/src/run/startBundler.js +16 -12
  275. package/build/src/run/startBundler.js.map +1 -1
  276. package/build/src/serve/index.js +20 -16
  277. package/build/src/serve/index.js.map +1 -1
  278. package/build/src/serve/serveAsync.js +36 -32
  279. package/build/src/serve/serveAsync.js.map +1 -1
  280. package/build/src/start/detectDevClient.js +13 -9
  281. package/build/src/start/detectDevClient.js.map +1 -1
  282. package/build/src/start/doctor/Prerequisite.js +12 -7
  283. package/build/src/start/doctor/Prerequisite.js.map +1 -1
  284. package/build/src/start/doctor/SecurityBinPrerequisite.js +13 -11
  285. package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -1
  286. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +23 -19
  287. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
  288. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +23 -19
  289. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -1
  290. package/build/src/start/doctor/apple/XcodePrerequisite.js +51 -45
  291. package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
  292. package/build/src/start/doctor/apple/XcrunPrerequisite.js +18 -16
  293. package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -1
  294. package/build/src/start/doctor/dependencies/bundledNativeModules.js +23 -19
  295. package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -1
  296. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +31 -25
  297. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
  298. package/build/src/start/doctor/dependencies/getMissingPackages.js +25 -17
  299. package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
  300. package/build/src/start/doctor/dependencies/getVersionedPackages.js +40 -32
  301. package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
  302. package/build/src/start/doctor/dependencies/resolvePackages.js +32 -26
  303. package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
  304. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +41 -31
  305. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
  306. package/build/src/start/doctor/ngrok/ExternalModule.js +34 -29
  307. package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
  308. package/build/src/start/doctor/ngrok/NgrokResolver.js +12 -8
  309. package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -1
  310. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +32 -28
  311. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
  312. package/build/src/start/doctor/typescript/updateTSConfig.js +23 -17
  313. package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
  314. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +33 -27
  315. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
  316. package/build/src/start/index.js +46 -42
  317. package/build/src/start/index.js.map +1 -1
  318. package/build/src/start/interface/KeyPressHandler.js +18 -14
  319. package/build/src/start/interface/KeyPressHandler.js.map +1 -1
  320. package/build/src/start/interface/commandsTable.js +94 -80
  321. package/build/src/start/interface/commandsTable.js.map +1 -1
  322. package/build/src/start/interface/interactiveActions.js +44 -40
  323. package/build/src/start/interface/interactiveActions.js.map +1 -1
  324. package/build/src/start/interface/startInterface.js +65 -61
  325. package/build/src/start/interface/startInterface.js.map +1 -1
  326. package/build/src/start/platforms/AppIdResolver.js +6 -4
  327. package/build/src/start/platforms/AppIdResolver.js.map +1 -1
  328. package/build/src/start/platforms/DeviceManager.js +10 -6
  329. package/build/src/start/platforms/DeviceManager.js.map +1 -1
  330. package/build/src/start/platforms/ExpoGoInstaller.js +25 -20
  331. package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
  332. package/build/src/start/platforms/PlatformManager.js +17 -15
  333. package/build/src/start/platforms/PlatformManager.js.map +1 -1
  334. package/build/src/start/platforms/android/ADBServer.js +39 -35
  335. package/build/src/start/platforms/android/ADBServer.js.map +1 -1
  336. package/build/src/start/platforms/android/AndroidAppIdResolver.js +18 -16
  337. package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
  338. package/build/src/start/platforms/android/AndroidDeviceManager.js +24 -20
  339. package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -1
  340. package/build/src/start/platforms/android/AndroidPlatformManager.js +17 -17
  341. package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -1
  342. package/build/src/start/platforms/android/AndroidSdk.js +11 -9
  343. package/build/src/start/platforms/android/AndroidSdk.js.map +1 -1
  344. package/build/src/start/platforms/android/activateWindow.js +26 -22
  345. package/build/src/start/platforms/android/activateWindow.js.map +1 -1
  346. package/build/src/start/platforms/android/adb.js +121 -83
  347. package/build/src/start/platforms/android/adb.js.map +1 -1
  348. package/build/src/start/platforms/android/adbReverse.js +20 -12
  349. package/build/src/start/platforms/android/adbReverse.js.map +1 -1
  350. package/build/src/start/platforms/android/emulator.js +36 -26
  351. package/build/src/start/platforms/android/emulator.js.map +1 -1
  352. package/build/src/start/platforms/android/getDevices.js +7 -5
  353. package/build/src/start/platforms/android/getDevices.js.map +1 -1
  354. package/build/src/start/platforms/android/gradle.js +36 -28
  355. package/build/src/start/platforms/android/gradle.js.map +1 -1
  356. package/build/src/start/platforms/android/promptAndroidDevice.js +19 -15
  357. package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
  358. package/build/src/start/platforms/ios/AppleAppIdResolver.js +21 -19
  359. package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
  360. package/build/src/start/platforms/ios/AppleDeviceManager.js +37 -31
  361. package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -1
  362. package/build/src/start/platforms/ios/ApplePlatformManager.js +12 -12
  363. package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -1
  364. package/build/src/start/platforms/ios/assertSystemRequirements.js +9 -7
  365. package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -1
  366. package/build/src/start/platforms/ios/devicectl.js +87 -73
  367. package/build/src/start/platforms/ios/devicectl.js.map +1 -1
  368. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +22 -18
  369. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
  370. package/build/src/start/platforms/ios/getBestSimulator.js +29 -19
  371. package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
  372. package/build/src/start/platforms/ios/promptAppleDevice.js +14 -10
  373. package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
  374. package/build/src/start/platforms/ios/simctl.js +102 -74
  375. package/build/src/start/platforms/ios/simctl.js.map +1 -1
  376. package/build/src/start/platforms/ios/simctlLogging.js +57 -52
  377. package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
  378. package/build/src/start/platforms/ios/xcrun.js +22 -18
  379. package/build/src/start/platforms/ios/xcrun.js.map +1 -1
  380. package/build/src/start/project/devices.js +19 -9
  381. package/build/src/start/project/devices.js.map +1 -1
  382. package/build/src/start/project/dotExpo.js +15 -11
  383. package/build/src/start/project/dotExpo.js.map +1 -1
  384. package/build/src/start/project/settings.js +4 -2
  385. package/build/src/start/project/settings.js.map +1 -1
  386. package/build/src/start/resolveOptions.js +48 -40
  387. package/build/src/start/resolveOptions.js.map +1 -1
  388. package/build/src/start/server/AsyncNgrok.js +55 -51
  389. package/build/src/start/server/AsyncNgrok.js.map +1 -1
  390. package/build/src/start/server/AsyncWsTunnel.js +40 -36
  391. package/build/src/start/server/AsyncWsTunnel.js.map +1 -1
  392. package/build/src/start/server/BundlerDevServer.js +81 -79
  393. package/build/src/start/server/BundlerDevServer.js.map +1 -1
  394. package/build/src/start/server/DevServerManager.js +42 -38
  395. package/build/src/start/server/DevServerManager.js.map +1 -1
  396. package/build/src/start/server/DevToolsPluginManager.js +18 -14
  397. package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
  398. package/build/src/start/server/DevelopmentSession.js +18 -14
  399. package/build/src/start/server/DevelopmentSession.js.map +1 -1
  400. package/build/src/start/server/ReactDevToolsProxy.js +16 -10
  401. package/build/src/start/server/ReactDevToolsProxy.js.map +1 -1
  402. package/build/src/start/server/UrlCreator.js +36 -33
  403. package/build/src/start/server/UrlCreator.js.map +1 -1
  404. package/build/src/start/server/getStaticRenderFunctions.js +29 -21
  405. package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
  406. package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js +6 -4
  407. package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js.map +1 -1
  408. package/build/src/start/server/metro/MetroBundlerDevServer.js +269 -271
  409. package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
  410. package/build/src/start/server/metro/MetroTerminalReporter.js +63 -56
  411. package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
  412. package/build/src/start/server/metro/TerminalReporter.js +39 -33
  413. package/build/src/start/server/metro/TerminalReporter.js.map +1 -1
  414. package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -1
  415. package/build/src/start/server/metro/createExpoMetroResolver.js +46 -40
  416. package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -1
  417. package/build/src/start/server/metro/createJResolver.js +32 -28
  418. package/build/src/start/server/metro/createJResolver.js.map +1 -1
  419. package/build/src/start/server/metro/createServerComponentsMiddleware.js +96 -92
  420. package/build/src/start/server/metro/createServerComponentsMiddleware.js.map +1 -1
  421. package/build/src/start/server/metro/createServerRouteMiddleware.js +32 -30
  422. package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
  423. package/build/src/start/server/metro/debugging/AtlasPrerequisite.js +13 -11
  424. package/build/src/start/server/metro/debugging/AtlasPrerequisite.js.map +1 -1
  425. package/build/src/start/server/metro/debugging/MessageHandler.js +3 -1
  426. package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -1
  427. package/build/src/start/server/metro/debugging/attachAtlas.js +26 -22
  428. package/build/src/start/server/metro/debugging/attachAtlas.js.map +1 -1
  429. package/build/src/start/server/metro/debugging/createDebugMiddleware.js +19 -17
  430. package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
  431. package/build/src/start/server/metro/debugging/createHandlersFactory.js +25 -31
  432. package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -1
  433. package/build/src/start/server/metro/debugging/getDebuggerType.js +6 -4
  434. package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -1
  435. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js +14 -8
  436. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -1
  437. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +7 -5
  438. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -1
  439. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +8 -6
  440. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -1
  441. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +7 -5
  442. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -1
  443. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js +14 -12
  444. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js.map +1 -1
  445. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js +14 -10
  446. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -1
  447. package/build/src/start/server/metro/debugging/pageIsSupported.js +6 -4
  448. package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -1
  449. package/build/src/start/server/metro/debugging/types.js.map +1 -1
  450. package/build/src/start/server/metro/dev-server/createEventSocket.js +18 -16
  451. package/build/src/start/server/metro/dev-server/createEventSocket.js.map +1 -1
  452. package/build/src/start/server/metro/dev-server/createMessageSocket.js +23 -21
  453. package/build/src/start/server/metro/dev-server/createMessageSocket.js.map +1 -1
  454. package/build/src/start/server/metro/dev-server/createMetroMiddleware.js +23 -21
  455. package/build/src/start/server/metro/dev-server/createMetroMiddleware.js.map +1 -1
  456. package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js +4 -2
  457. package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js.map +1 -1
  458. package/build/src/start/server/metro/dev-server/utils/createSocketMap.js +4 -2
  459. package/build/src/start/server/metro/dev-server/utils/createSocketMap.js.map +1 -1
  460. package/build/src/start/server/metro/dev-server/utils/socketMessages.js +8 -4
  461. package/build/src/start/server/metro/dev-server/utils/socketMessages.js.map +1 -1
  462. package/build/src/start/server/metro/externals.js +33 -25
  463. package/build/src/start/server/metro/externals.js.map +1 -1
  464. package/build/src/start/server/metro/fetchRouterManifest.js +16 -12
  465. package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
  466. package/build/src/start/server/metro/formatFileCandidates.js +11 -9
  467. package/build/src/start/server/metro/formatFileCandidates.js.map +1 -1
  468. package/build/src/start/server/metro/getCssModulesFromBundler.js +22 -18
  469. package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
  470. package/build/src/start/server/metro/instantiateMetro.js +85 -79
  471. package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
  472. package/build/src/start/server/metro/log-box/LogBoxLog.js +40 -36
  473. package/build/src/start/server/metro/log-box/LogBoxLog.js.map +1 -1
  474. package/build/src/start/server/metro/log-box/LogBoxSymbolication.js +20 -14
  475. package/build/src/start/server/metro/log-box/LogBoxSymbolication.js.map +1 -1
  476. package/build/src/start/server/metro/log-box/formatProjectFilePath.js +10 -6
  477. package/build/src/start/server/metro/log-box/formatProjectFilePath.js.map +1 -1
  478. package/build/src/start/server/metro/metroErrorInterface.js +88 -78
  479. package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
  480. package/build/src/start/server/metro/metroErrors.js +8 -4
  481. package/build/src/start/server/metro/metroErrors.js.map +1 -1
  482. package/build/src/start/server/metro/metroPrivateServer.js +9 -7
  483. package/build/src/start/server/metro/metroPrivateServer.js.map +1 -1
  484. package/build/src/start/server/metro/metroVirtualModules.js +10 -8
  485. package/build/src/start/server/metro/metroVirtualModules.js.map +1 -1
  486. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +24 -22
  487. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
  488. package/build/src/start/server/metro/router.js +48 -32
  489. package/build/src/start/server/metro/router.js.map +1 -1
  490. package/build/src/start/server/metro/runServer-fork.js +24 -22
  491. package/build/src/start/server/metro/runServer-fork.js.map +1 -1
  492. package/build/src/start/server/metro/serializeHtml.js +24 -22
  493. package/build/src/start/server/metro/serializeHtml.js.map +1 -1
  494. package/build/src/start/server/metro/symbolicate.js.map +1 -1
  495. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +35 -29
  496. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
  497. package/build/src/start/server/metro/withMetroMultiPlatform.js +149 -139
  498. package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
  499. package/build/src/start/server/metro/withMetroResolvers.js +49 -39
  500. package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
  501. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +8 -6
  502. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -1
  503. package/build/src/start/server/middleware/CorsMiddleware.js +17 -15
  504. package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -1
  505. package/build/src/start/server/middleware/CreateFileMiddleware.js +32 -31
  506. package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
  507. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +22 -19
  508. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
  509. package/build/src/start/server/middleware/DomComponentsMiddleware.js +33 -27
  510. package/build/src/start/server/middleware/DomComponentsMiddleware.js.map +1 -1
  511. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +64 -60
  512. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
  513. package/build/src/start/server/middleware/ExpoMiddleware.js +15 -9
  514. package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
  515. package/build/src/start/server/middleware/FaviconMiddleware.js +15 -14
  516. package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -1
  517. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +4 -2
  518. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -1
  519. package/build/src/start/server/middleware/InterstitialPageMiddleware.js +34 -31
  520. package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
  521. package/build/src/start/server/middleware/ManifestMiddleware.js +64 -56
  522. package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
  523. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +23 -19
  524. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -1
  525. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +20 -19
  526. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
  527. package/build/src/start/server/middleware/ServeStaticMiddleware.js +11 -9
  528. package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
  529. package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js +17 -11
  530. package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js.map +1 -1
  531. package/build/src/start/server/middleware/inspector/CdpClient.js +12 -10
  532. package/build/src/start/server/middleware/inspector/CdpClient.js.map +1 -1
  533. package/build/src/start/server/middleware/inspector/JsInspector.js +35 -27
  534. package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
  535. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +21 -19
  536. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
  537. package/build/src/start/server/middleware/inspector/middlwareMutations.js +6 -2
  538. package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -1
  539. package/build/src/start/server/middleware/metroOptions.js +120 -96
  540. package/build/src/start/server/middleware/metroOptions.js.map +1 -1
  541. package/build/src/start/server/middleware/mutations.js +7 -3
  542. package/build/src/start/server/middleware/mutations.js.map +1 -1
  543. package/build/src/start/server/middleware/resolveAssets.js +26 -18
  544. package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
  545. package/build/src/start/server/middleware/resolvePlatform.js +23 -15
  546. package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
  547. package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js +11 -9
  548. package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js.map +1 -1
  549. package/build/src/start/server/middleware/server.types.js.map +1 -1
  550. package/build/src/start/server/openPlatforms.js +10 -8
  551. package/build/src/start/server/openPlatforms.js.map +1 -1
  552. package/build/src/start/server/platformBundlers.js +13 -11
  553. package/build/src/start/server/platformBundlers.js.map +1 -1
  554. package/build/src/start/server/serverLogLikeMetro.js +58 -50
  555. package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
  556. package/build/src/start/server/type-generation/expo-env.js +11 -7
  557. package/build/src/start/server/type-generation/expo-env.js.map +1 -1
  558. package/build/src/start/server/type-generation/routes.js +76 -54
  559. package/build/src/start/server/type-generation/routes.js.map +1 -1
  560. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +21 -19
  561. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
  562. package/build/src/start/server/type-generation/tsconfig.js +36 -28
  563. package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
  564. package/build/src/start/server/webTemplate.js +28 -24
  565. package/build/src/start/server/webTemplate.js.map +1 -1
  566. package/build/src/start/server/webpack/WebpackBundlerDevServer.js +52 -46
  567. package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
  568. package/build/src/start/server/webpack/compile.js +15 -11
  569. package/build/src/start/server/webpack/compile.js.map +1 -1
  570. package/build/src/start/server/webpack/formatWebpackMessages.js +28 -26
  571. package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -1
  572. package/build/src/start/server/webpack/resolveFromProject.js +18 -12
  573. package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
  574. package/build/src/start/server/webpack/tls.js +18 -12
  575. package/build/src/start/server/webpack/tls.js.map +1 -1
  576. package/build/src/start/startAsync.js +31 -27
  577. package/build/src/start/startAsync.js.map +1 -1
  578. package/build/src/utils/FileNotifier.js +20 -17
  579. package/build/src/utils/FileNotifier.js.map +1 -1
  580. package/build/src/utils/ansi.js +7 -5
  581. package/build/src/utils/ansi.js.map +1 -1
  582. package/build/src/utils/args.js +24 -14
  583. package/build/src/utils/args.js.map +1 -1
  584. package/build/src/utils/array.js +18 -6
  585. package/build/src/utils/array.js.map +1 -1
  586. package/build/src/utils/cocoapods.js +54 -46
  587. package/build/src/utils/cocoapods.js.map +1 -1
  588. package/build/src/utils/codesigning.js +78 -68
  589. package/build/src/utils/codesigning.js.map +1 -1
  590. package/build/src/utils/createFileTransform.js +16 -12
  591. package/build/src/utils/createFileTransform.js.map +1 -1
  592. package/build/src/utils/createTempPath.js +17 -13
  593. package/build/src/utils/createTempPath.js.map +1 -1
  594. package/build/src/utils/delay.js +12 -6
  595. package/build/src/utils/delay.js.map +1 -1
  596. package/build/src/utils/dir.js +46 -28
  597. package/build/src/utils/dir.js.map +1 -1
  598. package/build/src/utils/downloadAppAsync.js +10 -8
  599. package/build/src/utils/downloadAppAsync.js.map +1 -1
  600. package/build/src/utils/downloadExpoGoAsync.js +25 -21
  601. package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
  602. package/build/src/utils/editor.js +41 -35
  603. package/build/src/utils/editor.js.map +1 -1
  604. package/build/src/utils/env.js +63 -59
  605. package/build/src/utils/env.js.map +1 -1
  606. package/build/src/utils/errors.js +37 -30
  607. package/build/src/utils/errors.js.map +1 -1
  608. package/build/src/utils/exit.js +35 -31
  609. package/build/src/utils/exit.js.map +1 -1
  610. package/build/src/utils/expoUpdatesCli.js +32 -22
  611. package/build/src/utils/expoUpdatesCli.js.map +1 -1
  612. package/build/src/utils/fetch.js +8 -4
  613. package/build/src/utils/fetch.js.map +1 -1
  614. package/build/src/utils/filePath.js +10 -6
  615. package/build/src/utils/filePath.js.map +1 -1
  616. package/build/src/utils/findUp.js +13 -9
  617. package/build/src/utils/findUp.js.map +1 -1
  618. package/build/src/utils/fn.js +6 -2
  619. package/build/src/utils/fn.js.map +1 -1
  620. package/build/src/utils/getOrPromptApplicationId.js +32 -26
  621. package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
  622. package/build/src/utils/getRunningProcess.js +29 -21
  623. package/build/src/utils/getRunningProcess.js.map +1 -1
  624. package/build/src/utils/git.js +26 -20
  625. package/build/src/utils/git.js.map +1 -1
  626. package/build/src/utils/glob.js +8 -4
  627. package/build/src/utils/glob.js.map +1 -1
  628. package/build/src/utils/interactive.js +3 -1
  629. package/build/src/utils/interactive.js.map +1 -1
  630. package/build/src/utils/ip.js +21 -19
  631. package/build/src/utils/ip.js.map +1 -1
  632. package/build/src/utils/isModuleSymlinked.js +11 -9
  633. package/build/src/utils/isModuleSymlinked.js.map +1 -1
  634. package/build/src/utils/jsonSchemaDeref.js +20 -18
  635. package/build/src/utils/jsonSchemaDeref.js.map +1 -1
  636. package/build/src/utils/link.js +17 -13
  637. package/build/src/utils/link.js.map +1 -1
  638. package/build/src/utils/mergeGitIgnorePaths.js +46 -28
  639. package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
  640. package/build/src/utils/modifyConfigAsync.js +16 -10
  641. package/build/src/utils/modifyConfigAsync.js.map +1 -1
  642. package/build/src/utils/modifyConfigPlugins.js +10 -6
  643. package/build/src/utils/modifyConfigPlugins.js.map +1 -1
  644. package/build/src/utils/nodeEnv.js +12 -6
  645. package/build/src/utils/nodeEnv.js.map +1 -1
  646. package/build/src/utils/nodeModules.js +10 -8
  647. package/build/src/utils/nodeModules.js.map +1 -1
  648. package/build/src/utils/npm.js +50 -36
  649. package/build/src/utils/npm.js.map +1 -1
  650. package/build/src/utils/obj.js +11 -5
  651. package/build/src/utils/obj.js.map +1 -1
  652. package/build/src/utils/open.js +10 -8
  653. package/build/src/utils/open.js.map +1 -1
  654. package/build/src/utils/ora.js +13 -7
  655. package/build/src/utils/ora.js.map +1 -1
  656. package/build/src/utils/plist.js +21 -15
  657. package/build/src/utils/plist.js.map +1 -1
  658. package/build/src/utils/port.js +43 -33
  659. package/build/src/utils/port.js.map +1 -1
  660. package/build/src/utils/profile.js +11 -7
  661. package/build/src/utils/profile.js.map +1 -1
  662. package/build/src/utils/progress.js +11 -5
  663. package/build/src/utils/progress.js.map +1 -1
  664. package/build/src/utils/prompts.js +47 -29
  665. package/build/src/utils/prompts.js.map +1 -1
  666. package/build/src/utils/resolveArgs.js +36 -24
  667. package/build/src/utils/resolveArgs.js.map +1 -1
  668. package/build/src/utils/scheme.js +40 -32
  669. package/build/src/utils/scheme.js.map +1 -1
  670. package/build/src/utils/stream.js +5 -3
  671. package/build/src/utils/stream.js.map +1 -1
  672. package/build/src/utils/strings.js +6 -4
  673. package/build/src/utils/strings.js.map +1 -1
  674. package/build/src/utils/tar.js +19 -15
  675. package/build/src/utils/tar.js.map +1 -1
  676. package/build/src/utils/telemetry/Telemetry.js +29 -27
  677. package/build/src/utils/telemetry/Telemetry.js.map +1 -1
  678. package/build/src/utils/telemetry/clients/FetchClient.js +15 -13
  679. package/build/src/utils/telemetry/clients/FetchClient.js.map +1 -1
  680. package/build/src/utils/telemetry/clients/FetchDetachedClient.js +26 -22
  681. package/build/src/utils/telemetry/clients/FetchDetachedClient.js.map +1 -1
  682. package/build/src/utils/telemetry/clients/RudderClient.js +10 -8
  683. package/build/src/utils/telemetry/clients/RudderClient.js.map +1 -1
  684. package/build/src/utils/telemetry/clients/RudderDetachedClient.js +26 -22
  685. package/build/src/utils/telemetry/clients/RudderDetachedClient.js.map +1 -1
  686. package/build/src/utils/telemetry/clients/flushFetchDetached.js +10 -10
  687. package/build/src/utils/telemetry/clients/flushFetchDetached.js.map +1 -1
  688. package/build/src/utils/telemetry/clients/flushRudderDetached.js +10 -10
  689. package/build/src/utils/telemetry/clients/flushRudderDetached.js.map +1 -1
  690. package/build/src/utils/telemetry/events.js +4 -2
  691. package/build/src/utils/telemetry/events.js.map +1 -1
  692. package/build/src/utils/telemetry/flushDetached.js.map +1 -1
  693. package/build/src/utils/telemetry/index.js +25 -29
  694. package/build/src/utils/telemetry/index.js.map +1 -1
  695. package/build/src/utils/telemetry/types.js.map +1 -1
  696. package/build/src/utils/telemetry/utils/constants.js +8 -4
  697. package/build/src/utils/telemetry/utils/constants.js.map +1 -1
  698. package/build/src/utils/telemetry/utils/context.js +18 -14
  699. package/build/src/utils/telemetry/utils/context.js.map +1 -1
  700. package/build/src/utils/template.js +6 -4
  701. package/build/src/utils/template.js.map +1 -1
  702. package/build/src/utils/terminal.js +4 -2
  703. package/build/src/utils/terminal.js.map +1 -1
  704. package/build/src/utils/tsconfig/evaluateTsConfig.js +21 -17
  705. package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -1
  706. package/build/src/utils/tsconfig/loadTsConfigPaths.js +18 -14
  707. package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -1
  708. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +7 -5
  709. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -1
  710. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +14 -12
  711. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -1
  712. package/build/src/utils/url.js +23 -13
  713. package/build/src/utils/url.js.map +1 -1
  714. package/build/src/utils/validateApplicationId.js +108 -86
  715. package/build/src/utils/validateApplicationId.js.map +1 -1
  716. package/build/src/utils/variadic.js +22 -16
  717. package/build/src/utils/variadic.js.map +1 -1
  718. package/build/src/whoami/index.js +11 -7
  719. package/build/src/whoami/index.js.map +1 -1
  720. package/build/src/whoami/whoamiAsync.js +11 -7
  721. package/build/src/whoami/whoamiAsync.js.map +1 -1
  722. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/fetch.ts"],"sourcesContent":["import type { FetchLike } from '../api/rest/client.types';\n\n/**\n * The Node's built-in fetch API, but polyfilled from `undici` if necessary.\n * @todo(cedric): remove this once we min-support a Node version where fetch can't be disabled\n */\nexport const fetch: FetchLike =\n typeof globalThis.fetch !== 'undefined' ? globalThis.fetch : require('undici').fetch;\n\n/**\n * Node's built-in fetch Headers class, or the polyfilled Headers from `undici` when unavailable.\n * @todo(cedric): remove this once we min-support a Node version where fetch can't be disabled\n */\nexport const Headers: typeof import('undici').Headers =\n typeof globalThis.Headers !== 'undefined' ? globalThis.Headers : require('undici').Headers;\n"],"names":["fetch","Headers","globalThis","require"],"mappings":"AAAA;;;;;;;;;;;IAMaA,KAAK,MAALA,KAAK;IAOLC,OAAO,MAAPA,OAAO;;AAPb,MAAMD,KAAK,GAChB,OAAOE,UAAU,CAACF,KAAK,KAAK,WAAW,GAAGE,UAAU,CAACF,KAAK,GAAGG,OAAO,CAAC,QAAQ,CAAC,CAACH,KAAK,AAAC;AAMhF,MAAMC,OAAO,GAClB,OAAOC,UAAU,CAACD,OAAO,KAAK,WAAW,GAAGC,UAAU,CAACD,OAAO,GAAGE,OAAO,CAAC,QAAQ,CAAC,CAACF,OAAO,AAAC"}
1
+ {"version":3,"sources":["../../../src/utils/fetch.ts"],"sourcesContent":["import type { FetchLike } from '../api/rest/client.types';\n\n/**\n * The Node's built-in fetch API, but polyfilled from `undici` if necessary.\n * @todo(cedric): remove this once we min-support a Node version where fetch can't be disabled\n */\nexport const fetch: FetchLike =\n typeof globalThis.fetch !== 'undefined' ? globalThis.fetch : require('undici').fetch;\n\n/**\n * Node's built-in fetch Headers class, or the polyfilled Headers from `undici` when unavailable.\n * @todo(cedric): remove this once we min-support a Node version where fetch can't be disabled\n */\nexport const Headers: typeof import('undici').Headers =\n typeof globalThis.Headers !== 'undefined' ? globalThis.Headers : require('undici').Headers;\n"],"names":["Headers","fetch","globalThis","require"],"mappings":";;;;;;;;;;;IAaaA,OAAO;eAAPA;;IAPAC,KAAK;eAALA;;;AAAN,MAAMA,QACX,OAAOC,WAAWD,KAAK,KAAK,cAAcC,WAAWD,KAAK,GAAGE,QAAQ,UAAUF,KAAK;AAM/E,MAAMD,UACX,OAAOE,WAAWF,OAAO,KAAK,cAAcE,WAAWF,OAAO,GAAGG,QAAQ,UAAUH,OAAO"}
@@ -9,30 +9,34 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- resolveRealEntryFilePath: ()=>resolveRealEntryFilePath,
13
- toPosixPath: ()=>toPosixPath
12
+ resolveRealEntryFilePath: function() {
13
+ return resolveRealEntryFilePath;
14
+ },
15
+ toPosixPath: function() {
16
+ return toPosixPath;
17
+ }
14
18
  });
15
19
  function _fs() {
16
- const data = /*#__PURE__*/ _interopRequireDefault(require("fs"));
20
+ const data = /*#__PURE__*/ _interop_require_default(require("fs"));
17
21
  _fs = function() {
18
22
  return data;
19
23
  };
20
24
  return data;
21
25
  }
22
- function _interopRequireDefault(obj) {
26
+ function _interop_require_default(obj) {
23
27
  return obj && obj.__esModule ? obj : {
24
28
  default: obj
25
29
  };
26
30
  }
27
31
  const REGEXP_REPLACE_SLASHES = /\\/g;
28
32
  function resolveRealEntryFilePath(projectRoot, entryFile) {
29
- if (projectRoot.startsWith("/private/var") && entryFile.startsWith("/var")) {
33
+ if (projectRoot.startsWith('/private/var') && entryFile.startsWith('/var')) {
30
34
  return _fs().default.realpathSync(entryFile);
31
35
  }
32
36
  return entryFile;
33
37
  }
34
38
  function toPosixPath(filePath) {
35
- return filePath.replace(REGEXP_REPLACE_SLASHES, "/");
39
+ return filePath.replace(REGEXP_REPLACE_SLASHES, '/');
36
40
  }
37
41
 
38
42
  //# sourceMappingURL=filePath.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/filePath.ts"],"sourcesContent":["import fs from 'fs';\n\nconst REGEXP_REPLACE_SLASHES = /\\\\/g;\n\n/**\n * This is a workaround for Metro not resolving entry file paths to their real location.\n * When running exports through `eas build --local` on macOS, the `/var/folders` path is used instead of `/private/var/folders`.\n *\n * See: https://github.com/expo/expo/issues/28890\n */\nexport function resolveRealEntryFilePath(projectRoot: string, entryFile: string): string {\n if (projectRoot.startsWith('/private/var') && entryFile.startsWith('/var')) {\n return fs.realpathSync(entryFile);\n }\n\n return entryFile;\n}\n\n/**\n * Convert any platform-specific path to a POSIX path.\n */\nexport function toPosixPath(filePath: string): string {\n return filePath.replace(REGEXP_REPLACE_SLASHES, '/');\n}\n"],"names":["resolveRealEntryFilePath","toPosixPath","REGEXP_REPLACE_SLASHES","projectRoot","entryFile","startsWith","fs","realpathSync","filePath","replace"],"mappings":"AAAA;;;;;;;;;;;IAUgBA,wBAAwB,MAAxBA,wBAAwB;IAWxBC,WAAW,MAAXA,WAAW;;;8DArBZ,IAAI;;;;;;;;;;;AAEnB,MAAMC,sBAAsB,QAAQ,AAAC;AAQ9B,SAASF,wBAAwB,CAACG,WAAmB,EAAEC,SAAiB,EAAU;IACvF,IAAID,WAAW,CAACE,UAAU,CAAC,cAAc,CAAC,IAAID,SAAS,CAACC,UAAU,CAAC,MAAM,CAAC,EAAE;QAC1E,OAAOC,GAAE,EAAA,QAAA,CAACC,YAAY,CAACH,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,OAAOA,SAAS,CAAC;AACnB,CAAC;AAKM,SAASH,WAAW,CAACO,QAAgB,EAAU;IACpD,OAAOA,QAAQ,CAACC,OAAO,CAACP,sBAAsB,EAAE,GAAG,CAAC,CAAC;AACvD,CAAC"}
1
+ {"version":3,"sources":["../../../src/utils/filePath.ts"],"sourcesContent":["import fs from 'fs';\n\nconst REGEXP_REPLACE_SLASHES = /\\\\/g;\n\n/**\n * This is a workaround for Metro not resolving entry file paths to their real location.\n * When running exports through `eas build --local` on macOS, the `/var/folders` path is used instead of `/private/var/folders`.\n *\n * See: https://github.com/expo/expo/issues/28890\n */\nexport function resolveRealEntryFilePath(projectRoot: string, entryFile: string): string {\n if (projectRoot.startsWith('/private/var') && entryFile.startsWith('/var')) {\n return fs.realpathSync(entryFile);\n }\n\n return entryFile;\n}\n\n/**\n * Convert any platform-specific path to a POSIX path.\n */\nexport function toPosixPath(filePath: string): string {\n return filePath.replace(REGEXP_REPLACE_SLASHES, '/');\n}\n"],"names":["resolveRealEntryFilePath","toPosixPath","REGEXP_REPLACE_SLASHES","projectRoot","entryFile","startsWith","fs","realpathSync","filePath","replace"],"mappings":";;;;;;;;;;;IAUgBA,wBAAwB;eAAxBA;;IAWAC,WAAW;eAAXA;;;;gEArBD;;;;;;;;;;;AAEf,MAAMC,yBAAyB;AAQxB,SAASF,yBAAyBG,WAAmB,EAAEC,SAAiB;IAC7E,IAAID,YAAYE,UAAU,CAAC,mBAAmBD,UAAUC,UAAU,CAAC,SAAS;QAC1E,OAAOC,aAAE,CAACC,YAAY,CAACH;IACzB;IAEA,OAAOA;AACT;AAKO,SAASH,YAAYO,QAAgB;IAC1C,OAAOA,SAASC,OAAO,CAACP,wBAAwB;AAClD"}
@@ -9,25 +9,29 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- findUpProjectRootOrAssert: ()=>findUpProjectRootOrAssert,
13
- findFileInParents: ()=>findFileInParents
12
+ findFileInParents: function() {
13
+ return findFileInParents;
14
+ },
15
+ findUpProjectRootOrAssert: function() {
16
+ return findUpProjectRootOrAssert;
17
+ }
14
18
  });
15
19
  function _path() {
16
- const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
20
+ const data = /*#__PURE__*/ _interop_require_default(require("path"));
17
21
  _path = function() {
18
22
  return data;
19
23
  };
20
24
  return data;
21
25
  }
22
- function _resolveFrom() {
23
- const data = /*#__PURE__*/ _interopRequireDefault(require("resolve-from"));
24
- _resolveFrom = function() {
26
+ function _resolvefrom() {
27
+ const data = /*#__PURE__*/ _interop_require_default(require("resolve-from"));
28
+ _resolvefrom = function() {
25
29
  return data;
26
30
  };
27
31
  return data;
28
32
  }
29
33
  const _errors = require("../utils/errors");
30
- function _interopRequireDefault(obj) {
34
+ function _interop_require_default(obj) {
31
35
  return obj && obj.__esModule ? obj : {
32
36
  default: obj
33
37
  };
@@ -40,14 +44,14 @@ function findUpProjectRootOrAssert(cwd) {
40
44
  return projectRoot;
41
45
  }
42
46
  function findUpProjectRoot(cwd) {
43
- const found = _resolveFrom().default.silent(cwd, "./package.json");
47
+ const found = _resolvefrom().default.silent(cwd, './package.json');
44
48
  if (found) return _path().default.dirname(found);
45
49
  const parent = _path().default.dirname(cwd);
46
50
  if (parent === cwd) return null;
47
51
  return findUpProjectRoot(parent);
48
52
  }
49
53
  function findFileInParents(cwd, fileName) {
50
- const found = _resolveFrom().default.silent(cwd, `./${fileName}`);
54
+ const found = _resolvefrom().default.silent(cwd, `./${fileName}`);
51
55
  if (found) return found;
52
56
  const parent = _path().default.dirname(cwd);
53
57
  if (parent === cwd) return null;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/findUp.ts"],"sourcesContent":["import path from 'path';\nimport resolveFrom from 'resolve-from';\n\nimport { CommandError } from '../utils/errors';\n\n/** Look up directories until one with a `package.json` can be found, assert if none can be found. */\nexport function findUpProjectRootOrAssert(cwd: string): string {\n const projectRoot = findUpProjectRoot(cwd);\n if (!projectRoot) {\n throw new CommandError(`Project root directory not found (working directory: ${cwd})`);\n }\n return projectRoot;\n}\n\nfunction findUpProjectRoot(cwd: string): string | null {\n const found = resolveFrom.silent(cwd, './package.json');\n if (found) return path.dirname(found);\n\n const parent = path.dirname(cwd);\n if (parent === cwd) return null;\n\n return findUpProjectRoot(parent);\n}\n\n/**\n * Find a file in the (closest) parent directories.\n * This will recursively look for the file, until the root directory is reached.\n */\nexport function findFileInParents(cwd: string, fileName: string): string | null {\n const found = resolveFrom.silent(cwd, `./${fileName}`);\n if (found) return found;\n\n const parent = path.dirname(cwd);\n if (parent === cwd) return null;\n\n return findFileInParents(parent, fileName);\n}\n"],"names":["findUpProjectRootOrAssert","findFileInParents","cwd","projectRoot","findUpProjectRoot","CommandError","found","resolveFrom","silent","path","dirname","parent","fileName"],"mappings":"AAAA;;;;;;;;;;;IAMgBA,yBAAyB,MAAzBA,yBAAyB;IAsBzBC,iBAAiB,MAAjBA,iBAAiB;;;8DA5BhB,MAAM;;;;;;;8DACC,cAAc;;;;;;wBAET,iBAAiB;;;;;;AAGvC,SAASD,yBAAyB,CAACE,GAAW,EAAU;IAC7D,MAAMC,WAAW,GAAGC,iBAAiB,CAACF,GAAG,CAAC,AAAC;IAC3C,IAAI,CAACC,WAAW,EAAE;QAChB,MAAM,IAAIE,OAAY,aAAA,CAAC,CAAC,qDAAqD,EAAEH,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACzF,CAAC;IACD,OAAOC,WAAW,CAAC;AACrB,CAAC;AAED,SAASC,iBAAiB,CAACF,GAAW,EAAiB;IACrD,MAAMI,KAAK,GAAGC,YAAW,EAAA,QAAA,CAACC,MAAM,CAACN,GAAG,EAAE,gBAAgB,CAAC,AAAC;IACxD,IAAII,KAAK,EAAE,OAAOG,KAAI,EAAA,QAAA,CAACC,OAAO,CAACJ,KAAK,CAAC,CAAC;IAEtC,MAAMK,MAAM,GAAGF,KAAI,EAAA,QAAA,CAACC,OAAO,CAACR,GAAG,CAAC,AAAC;IACjC,IAAIS,MAAM,KAAKT,GAAG,EAAE,OAAO,IAAI,CAAC;IAEhC,OAAOE,iBAAiB,CAACO,MAAM,CAAC,CAAC;AACnC,CAAC;AAMM,SAASV,iBAAiB,CAACC,GAAW,EAAEU,QAAgB,EAAiB;IAC9E,MAAMN,KAAK,GAAGC,YAAW,EAAA,QAAA,CAACC,MAAM,CAACN,GAAG,EAAE,CAAC,EAAE,EAAEU,QAAQ,CAAC,CAAC,CAAC,AAAC;IACvD,IAAIN,KAAK,EAAE,OAAOA,KAAK,CAAC;IAExB,MAAMK,MAAM,GAAGF,KAAI,EAAA,QAAA,CAACC,OAAO,CAACR,GAAG,CAAC,AAAC;IACjC,IAAIS,MAAM,KAAKT,GAAG,EAAE,OAAO,IAAI,CAAC;IAEhC,OAAOD,iBAAiB,CAACU,MAAM,EAAEC,QAAQ,CAAC,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"sources":["../../../src/utils/findUp.ts"],"sourcesContent":["import path from 'path';\nimport resolveFrom from 'resolve-from';\n\nimport { CommandError } from '../utils/errors';\n\n/** Look up directories until one with a `package.json` can be found, assert if none can be found. */\nexport function findUpProjectRootOrAssert(cwd: string): string {\n const projectRoot = findUpProjectRoot(cwd);\n if (!projectRoot) {\n throw new CommandError(`Project root directory not found (working directory: ${cwd})`);\n }\n return projectRoot;\n}\n\nfunction findUpProjectRoot(cwd: string): string | null {\n const found = resolveFrom.silent(cwd, './package.json');\n if (found) return path.dirname(found);\n\n const parent = path.dirname(cwd);\n if (parent === cwd) return null;\n\n return findUpProjectRoot(parent);\n}\n\n/**\n * Find a file in the (closest) parent directories.\n * This will recursively look for the file, until the root directory is reached.\n */\nexport function findFileInParents(cwd: string, fileName: string): string | null {\n const found = resolveFrom.silent(cwd, `./${fileName}`);\n if (found) return found;\n\n const parent = path.dirname(cwd);\n if (parent === cwd) return null;\n\n return findFileInParents(parent, fileName);\n}\n"],"names":["findFileInParents","findUpProjectRootOrAssert","cwd","projectRoot","findUpProjectRoot","CommandError","found","resolveFrom","silent","path","dirname","parent","fileName"],"mappings":";;;;;;;;;;;IA4BgBA,iBAAiB;eAAjBA;;IAtBAC,yBAAyB;eAAzBA;;;;gEANC;;;;;;;gEACO;;;;;;wBAEK;;;;;;AAGtB,SAASA,0BAA0BC,GAAW;IACnD,MAAMC,cAAcC,kBAAkBF;IACtC,IAAI,CAACC,aAAa;QAChB,MAAM,IAAIE,oBAAY,CAAC,CAAC,qDAAqD,EAAEH,IAAI,CAAC,CAAC;IACvF;IACA,OAAOC;AACT;AAEA,SAASC,kBAAkBF,GAAW;IACpC,MAAMI,QAAQC,sBAAW,CAACC,MAAM,CAACN,KAAK;IACtC,IAAII,OAAO,OAAOG,eAAI,CAACC,OAAO,CAACJ;IAE/B,MAAMK,SAASF,eAAI,CAACC,OAAO,CAACR;IAC5B,IAAIS,WAAWT,KAAK,OAAO;IAE3B,OAAOE,kBAAkBO;AAC3B;AAMO,SAASX,kBAAkBE,GAAW,EAAEU,QAAgB;IAC7D,MAAMN,QAAQC,sBAAW,CAACC,MAAM,CAACN,KAAK,CAAC,EAAE,EAAEU,UAAU;IACrD,IAAIN,OAAO,OAAOA;IAElB,MAAMK,SAASF,eAAI,CAACC,OAAO,CAACR;IAC5B,IAAIS,WAAWT,KAAK,OAAO;IAE3B,OAAOF,kBAAkBW,QAAQC;AACnC"}
@@ -9,8 +9,12 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- memoize: ()=>memoize,
13
- guardAsync: ()=>guardAsync
12
+ guardAsync: function() {
13
+ return guardAsync;
14
+ },
15
+ memoize: function() {
16
+ return memoize;
17
+ }
14
18
  });
15
19
  function memoize(fn) {
16
20
  const cache = new Map();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/fn.ts"],"sourcesContent":["/** `lodash.memoize` */\nexport function memoize<T extends (...args: any[]) => any>(fn: T): T {\n const cache = new Map<string, any>();\n return ((...args: any[]) => {\n const key = JSON.stringify(args);\n if (cache.has(key)) {\n return cache.get(key);\n }\n const result = fn(...args);\n cache.set(key, result);\n return result;\n }) as T;\n}\n\n/** memoizes an async function to prevent subsequent calls that might be invoked before the function has finished resolving. */\nexport function guardAsync<V, T extends (...args: any[]) => Promise<V>>(fn: T): T {\n let invoked = false;\n let returnValue: V;\n\n const guard: any = async (...args: any[]): Promise<V> => {\n if (!invoked) {\n invoked = true;\n returnValue = await fn(...args);\n }\n\n return returnValue;\n };\n\n return guard;\n}\n"],"names":["memoize","guardAsync","fn","cache","Map","args","key","JSON","stringify","has","get","result","set","invoked","returnValue","guard"],"mappings":"AAAA,qBAAqB,GACrB;;;;;;;;;;;IAAgBA,OAAO,MAAPA,OAAO;IAcPC,UAAU,MAAVA,UAAU;;AAdnB,SAASD,OAAO,CAAoCE,EAAK,EAAK;IACnE,MAAMC,KAAK,GAAG,IAAIC,GAAG,EAAe,AAAC;IACrC,OAAQ,CAAC,GAAGC,IAAI,AAAO,GAAK;QAC1B,MAAMC,GAAG,GAAGC,IAAI,CAACC,SAAS,CAACH,IAAI,CAAC,AAAC;QACjC,IAAIF,KAAK,CAACM,GAAG,CAACH,GAAG,CAAC,EAAE;YAClB,OAAOH,KAAK,CAACO,GAAG,CAACJ,GAAG,CAAC,CAAC;QACxB,CAAC;QACD,MAAMK,MAAM,GAAGT,EAAE,IAAIG,IAAI,CAAC,AAAC;QAC3BF,KAAK,CAACS,GAAG,CAACN,GAAG,EAAEK,MAAM,CAAC,CAAC;QACvB,OAAOA,MAAM,CAAC;IAChB,CAAC,CAAO;AACV,CAAC;AAGM,SAASV,UAAU,CAA8CC,EAAK,EAAK;IAChF,IAAIW,OAAO,GAAG,KAAK,AAAC;IACpB,IAAIC,WAAW,AAAG,AAAC;IAEnB,MAAMC,KAAK,GAAQ,OAAO,GAAGV,IAAI,AAAO,GAAiB;QACvD,IAAI,CAACQ,OAAO,EAAE;YACZA,OAAO,GAAG,IAAI,CAAC;YACfC,WAAW,GAAG,MAAMZ,EAAE,IAAIG,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,OAAOS,WAAW,CAAC;IACrB,CAAC,AAAC;IAEF,OAAOC,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"sources":["../../../src/utils/fn.ts"],"sourcesContent":["/** `lodash.memoize` */\nexport function memoize<T extends (...args: any[]) => any>(fn: T): T {\n const cache = new Map<string, any>();\n return ((...args: any[]) => {\n const key = JSON.stringify(args);\n if (cache.has(key)) {\n return cache.get(key);\n }\n const result = fn(...args);\n cache.set(key, result);\n return result;\n }) as T;\n}\n\n/** memoizes an async function to prevent subsequent calls that might be invoked before the function has finished resolving. */\nexport function guardAsync<V, T extends (...args: any[]) => Promise<V>>(fn: T): T {\n let invoked = false;\n let returnValue: V;\n\n const guard: any = async (...args: any[]): Promise<V> => {\n if (!invoked) {\n invoked = true;\n returnValue = await fn(...args);\n }\n\n return returnValue;\n };\n\n return guard;\n}\n"],"names":["guardAsync","memoize","fn","cache","Map","args","key","JSON","stringify","has","get","result","set","invoked","returnValue","guard"],"mappings":"AAAA,qBAAqB;;;;;;;;;;;IAeLA,UAAU;eAAVA;;IAdAC,OAAO;eAAPA;;;AAAT,SAASA,QAA2CC,EAAK;IAC9D,MAAMC,QAAQ,IAAIC;IAClB,OAAQ,CAAC,GAAGC;QACV,MAAMC,MAAMC,KAAKC,SAAS,CAACH;QAC3B,IAAIF,MAAMM,GAAG,CAACH,MAAM;YAClB,OAAOH,MAAMO,GAAG,CAACJ;QACnB;QACA,MAAMK,SAAST,MAAMG;QACrBF,MAAMS,GAAG,CAACN,KAAKK;QACf,OAAOA;IACT;AACF;AAGO,SAASX,WAAwDE,EAAK;IAC3E,IAAIW,UAAU;IACd,IAAIC;IAEJ,MAAMC,QAAa,OAAO,GAAGV;QAC3B,IAAI,CAACQ,SAAS;YACZA,UAAU;YACVC,cAAc,MAAMZ,MAAMG;QAC5B;QAEA,OAAOS;IACT;IAEA,OAAOC;AACT"}
@@ -9,8 +9,12 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- getOrPromptForBundleIdentifier: ()=>getOrPromptForBundleIdentifier,
13
- getOrPromptForPackage: ()=>getOrPromptForPackage
12
+ getOrPromptForBundleIdentifier: function() {
13
+ return getOrPromptForBundleIdentifier;
14
+ },
15
+ getOrPromptForPackage: function() {
16
+ return getOrPromptForPackage;
17
+ }
14
18
  });
15
19
  function _config() {
16
20
  const data = require("@expo/config");
@@ -20,7 +24,7 @@ function _config() {
20
24
  return data;
21
25
  }
22
26
  function _chalk() {
23
- const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
27
+ const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
24
28
  _chalk = function() {
25
29
  return data;
26
30
  };
@@ -29,10 +33,10 @@ function _chalk() {
29
33
  const _fn = require("./fn");
30
34
  const _link = require("./link");
31
35
  const _modifyConfigAsync = require("./modifyConfigAsync");
32
- const _prompts = /*#__PURE__*/ _interopRequireWildcard(require("./prompts"));
36
+ const _prompts = /*#__PURE__*/ _interop_require_wildcard(require("./prompts"));
33
37
  const _validateApplicationId = require("./validateApplicationId");
34
- const _log = /*#__PURE__*/ _interopRequireWildcard(require("../log"));
35
- function _interopRequireDefault(obj) {
38
+ const _log = /*#__PURE__*/ _interop_require_wildcard(require("../log"));
39
+ function _interop_require_default(obj) {
36
40
  return obj && obj.__esModule ? obj : {
37
41
  default: obj
38
42
  };
@@ -45,7 +49,7 @@ function _getRequireWildcardCache(nodeInterop) {
45
49
  return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
46
50
  })(nodeInterop);
47
51
  }
48
- function _interopRequireWildcard(obj, nodeInterop) {
52
+ function _interop_require_wildcard(obj, nodeInterop) {
49
53
  if (!nodeInterop && obj && obj.__esModule) {
50
54
  return obj;
51
55
  }
@@ -58,7 +62,9 @@ function _interopRequireWildcard(obj, nodeInterop) {
58
62
  if (cache && cache.has(obj)) {
59
63
  return cache.get(obj);
60
64
  }
61
- var newObj = {};
65
+ var newObj = {
66
+ __proto__: null
67
+ };
62
68
  var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
63
69
  for(var key in obj){
64
70
  if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
@@ -76,16 +82,16 @@ function _interopRequireWildcard(obj, nodeInterop) {
76
82
  }
77
83
  return newObj;
78
84
  }
79
- const debug = require("debug")("expo:app-id");
85
+ const debug = require('debug')('expo:app-id');
80
86
  function getExpoUsername(exp) {
81
87
  // Account for if the environment variable was an empty string.
82
- return (0, _config().getAccountUsername)(exp) || "anonymous";
88
+ return (0, _config().getAccountUsername)(exp) || 'anonymous';
83
89
  }
84
90
  const NO_BUNDLE_ID_MESSAGE = `Project must have a \`ios.bundleIdentifier\` set in the Expo config (app.json or app.config.js).`;
85
91
  const NO_PACKAGE_MESSAGE = `Project must have a \`android.package\` set in the Expo config (app.json or app.config.js).`;
86
92
  async function getOrPromptForBundleIdentifier(projectRoot, exp = (0, _config().getConfig)(projectRoot).exp) {
87
- var ref;
88
- const current = (ref = exp.ios) == null ? void 0 : ref.bundleIdentifier;
93
+ var _exp_ios;
94
+ const current = (_exp_ios = exp.ios) == null ? void 0 : _exp_ios.bundleIdentifier;
89
95
  if (current) {
90
96
  (0, _validateApplicationId.assertValidBundleId)(current);
91
97
  return current;
@@ -95,14 +101,14 @@ async function getOrPromptForBundleIdentifier(projectRoot, exp = (0, _config().g
95
101
  const memoLog = (0, _fn.memoize)(_log.log);
96
102
  async function promptForBundleIdWithInitialAsync(projectRoot, exp, bundleIdentifier) {
97
103
  if (!bundleIdentifier) {
98
- memoLog((0, _chalk().default)`\n{bold 📝 iOS Bundle Identifier} {dim ${(0, _link.learnMore)("https://expo.fyi/bundle-identifier")}}\n`);
104
+ memoLog((0, _chalk().default)`\n{bold 📝 iOS Bundle Identifier} {dim ${(0, _link.learnMore)('https://expo.fyi/bundle-identifier')}}\n`);
99
105
  // Prompt the user for the bundle ID.
100
106
  // Even if the project is using a dynamic config we can still
101
107
  // prompt a better error message, recommend a default value, and help the user
102
108
  // validate their custom bundle ID upfront.
103
- const { input } = await (0, _prompts.default)({
104
- type: "text",
105
- name: "input",
109
+ const { input } = await (0, _prompts.default)({
110
+ type: 'text',
111
+ name: 'input',
106
112
  // The Apple helps people know this isn't an EAS feature.
107
113
  message: `What would you like your iOS bundle identifier to be?`,
108
114
  validate: _validateApplicationId.validateBundleId
@@ -146,8 +152,8 @@ async function warnAndConfirmAsync(warning) {
146
152
  }
147
153
  // Recommend a bundle identifier based on the username and project slug.
148
154
  function getRecommendedBundleId(exp) {
149
- var ref;
150
- const possibleIdFromAndroid = ((ref = exp.android) == null ? void 0 : ref.package) ? (0, _validateApplicationId.getSanitizedBundleIdentifier)(exp.android.package) : undefined;
155
+ var _exp_android;
156
+ const possibleIdFromAndroid = ((_exp_android = exp.android) == null ? void 0 : _exp_android.package) ? (0, _validateApplicationId.getSanitizedBundleIdentifier)(exp.android.package) : undefined;
151
157
  // Attempt to use the android package name first since it's convenient to have them aligned.
152
158
  if (possibleIdFromAndroid && (0, _validateApplicationId.validateBundleId)(possibleIdFromAndroid)) {
153
159
  return possibleIdFromAndroid;
@@ -162,8 +168,8 @@ function getRecommendedBundleId(exp) {
162
168
  }
163
169
  // Recommend a package name based on the username and project slug.
164
170
  function getRecommendedPackageName(exp) {
165
- var ref;
166
- const possibleIdFromApple = ((ref = exp.ios) == null ? void 0 : ref.bundleIdentifier) ? (0, _validateApplicationId.getSanitizedPackage)(exp.ios.bundleIdentifier) : undefined;
171
+ var _exp_ios;
172
+ const possibleIdFromApple = ((_exp_ios = exp.ios) == null ? void 0 : _exp_ios.bundleIdentifier) ? (0, _validateApplicationId.getSanitizedPackage)(exp.ios.bundleIdentifier) : undefined;
167
173
  // Attempt to use the ios bundle id first since it's convenient to have them aligned.
168
174
  if (possibleIdFromApple && (0, _validateApplicationId.validatePackage)(possibleIdFromApple)) {
169
175
  return possibleIdFromApple;
@@ -179,8 +185,8 @@ function getRecommendedPackageName(exp) {
179
185
  return undefined;
180
186
  }
181
187
  async function getOrPromptForPackage(projectRoot, exp = (0, _config().getConfig)(projectRoot).exp) {
182
- var ref;
183
- const current = (ref = exp.android) == null ? void 0 : ref.package;
188
+ var _exp_android;
189
+ const current = (_exp_android = exp.android) == null ? void 0 : _exp_android.package;
184
190
  if (current) {
185
191
  (0, _validateApplicationId.assertValidPackage)(current);
186
192
  return current;
@@ -192,14 +198,14 @@ function promptForPackageAsync(projectRoot, exp) {
192
198
  }
193
199
  async function promptForPackageWithInitialAsync(projectRoot, exp, packageName) {
194
200
  if (!packageName) {
195
- memoLog((0, _chalk().default)`\n{bold 📝 Android package} {dim ${(0, _link.learnMore)("https://expo.fyi/android-package")}}\n`);
201
+ memoLog((0, _chalk().default)`\n{bold 📝 Android package} {dim ${(0, _link.learnMore)('https://expo.fyi/android-package')}}\n`);
196
202
  // Prompt the user for the android package.
197
203
  // Even if the project is using a dynamic config we can still
198
204
  // prompt a better error message, recommend a default value, and help the user
199
205
  // validate their custom android package upfront.
200
- const { input } = await (0, _prompts.default)({
201
- type: "text",
202
- name: "input",
206
+ const { input } = await (0, _prompts.default)({
207
+ type: 'text',
208
+ name: 'input',
203
209
  message: `What would you like your Android package name to be?`,
204
210
  validate: _validateApplicationId.validatePackageWithWarning
205
211
  }, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/getOrPromptApplicationId.ts"],"sourcesContent":["import { ExpoConfig, getAccountUsername, getConfig } from '@expo/config';\nimport chalk from 'chalk';\n\nimport { memoize } from './fn';\nimport { learnMore } from './link';\nimport { attemptModification } from './modifyConfigAsync';\nimport prompt, { confirmAsync } from './prompts';\nimport {\n assertValidBundleId,\n assertValidPackage,\n getBundleIdWarningAsync,\n getPackageNameWarningAsync,\n getSanitizedBundleIdentifier,\n getSanitizedPackage,\n validateBundleId,\n validatePackage,\n validatePackageWithWarning,\n} from './validateApplicationId';\nimport * as Log from '../log';\n\nconst debug = require('debug')('expo:app-id') as typeof console.log;\n\nfunction getExpoUsername(exp: ExpoConfig) {\n // Account for if the environment variable was an empty string.\n return getAccountUsername(exp) || 'anonymous';\n}\n\nconst NO_BUNDLE_ID_MESSAGE = `Project must have a \\`ios.bundleIdentifier\\` set in the Expo config (app.json or app.config.js).`;\n\nconst NO_PACKAGE_MESSAGE = `Project must have a \\`android.package\\` set in the Expo config (app.json or app.config.js).`;\n\n/**\n * Get the bundle identifier from the Expo config or prompt the user to choose a new bundle identifier.\n * Prompted value will be validated against the App Store and a local regex.\n * If the project Expo config is a static JSON file, the bundle identifier will be updated in the config automatically.\n */\nexport async function getOrPromptForBundleIdentifier(\n projectRoot: string,\n exp: ExpoConfig = getConfig(projectRoot).exp\n): Promise<string> {\n const current = exp.ios?.bundleIdentifier;\n if (current) {\n assertValidBundleId(current);\n return current;\n }\n\n return promptForBundleIdWithInitialAsync(projectRoot, exp, getRecommendedBundleId(exp));\n}\n\nconst memoLog = memoize(Log.log);\n\nasync function promptForBundleIdWithInitialAsync(\n projectRoot: string,\n exp: ExpoConfig,\n bundleIdentifier?: string\n): Promise<string> {\n if (!bundleIdentifier) {\n memoLog(\n chalk`\\n{bold 📝 iOS Bundle Identifier} {dim ${learnMore(\n 'https://expo.fyi/bundle-identifier'\n )}}\\n`\n );\n\n // Prompt the user for the bundle ID.\n // Even if the project is using a dynamic config we can still\n // prompt a better error message, recommend a default value, and help the user\n // validate their custom bundle ID upfront.\n const { input } = await prompt(\n {\n type: 'text',\n name: 'input',\n // The Apple helps people know this isn't an EAS feature.\n message: `What would you like your iOS bundle identifier to be?`,\n validate: validateBundleId,\n },\n {\n nonInteractiveHelp: NO_BUNDLE_ID_MESSAGE,\n }\n );\n bundleIdentifier = input as string;\n }\n\n // Warn the user if the bundle ID is already in use.\n const warning = await getBundleIdWarningAsync(bundleIdentifier);\n\n if (warning && !(await warnAndConfirmAsync(warning))) {\n // Cycle the Bundle ID prompt to try again.\n return await promptForBundleIdWithInitialAsync(projectRoot, exp);\n }\n\n // Apply the changes to the config.\n if (\n await attemptModification(\n projectRoot,\n {\n ios: { ...(exp.ios || {}), bundleIdentifier },\n },\n { ios: { bundleIdentifier } }\n )\n ) {\n Log.log(chalk.gray`\\u203A Apple bundle identifier: ${bundleIdentifier}`);\n }\n\n return bundleIdentifier;\n}\n\nasync function warnAndConfirmAsync(warning: string): Promise<boolean> {\n Log.log();\n Log.warn(warning);\n Log.log();\n if (\n !(await confirmAsync({\n message: `Continue?`,\n initial: true,\n }))\n ) {\n return false;\n }\n return true;\n}\n\n// Recommend a bundle identifier based on the username and project slug.\nfunction getRecommendedBundleId(exp: ExpoConfig): string | undefined {\n const possibleIdFromAndroid = exp.android?.package\n ? getSanitizedBundleIdentifier(exp.android.package)\n : undefined;\n // Attempt to use the android package name first since it's convenient to have them aligned.\n if (possibleIdFromAndroid && validateBundleId(possibleIdFromAndroid)) {\n return possibleIdFromAndroid;\n } else {\n const username = getExpoUsername(exp);\n const possibleId = getSanitizedBundleIdentifier(`com.${username}.${exp.slug}`);\n if (validateBundleId(possibleId)) {\n return possibleId;\n }\n }\n\n return undefined;\n}\n\n// Recommend a package name based on the username and project slug.\nfunction getRecommendedPackageName(exp: ExpoConfig): string | undefined {\n const possibleIdFromApple = exp.ios?.bundleIdentifier\n ? getSanitizedPackage(exp.ios.bundleIdentifier)\n : undefined;\n\n // Attempt to use the ios bundle id first since it's convenient to have them aligned.\n if (possibleIdFromApple && validatePackage(possibleIdFromApple)) {\n return possibleIdFromApple;\n } else {\n const username = getExpoUsername(exp);\n const possibleId = getSanitizedPackage(`com.${username}.${exp.slug}`);\n if (validatePackage(possibleId)) {\n return possibleId;\n } else {\n debug(\n `Recommended package name is invalid: \"${possibleId}\" (username: ${username}, slug: ${exp.slug})`\n );\n }\n }\n return undefined;\n}\n\n/**\n * Get the package name from the Expo config or prompt the user to choose a new package name.\n * Prompted value will be validated against the Play Store and a local regex.\n * If the project Expo config is a static JSON file, the package name will be updated in the config automatically.\n */\nexport async function getOrPromptForPackage(\n projectRoot: string,\n exp: ExpoConfig = getConfig(projectRoot).exp\n): Promise<string> {\n const current = exp.android?.package;\n if (current) {\n assertValidPackage(current);\n return current;\n }\n\n return await promptForPackageAsync(projectRoot, exp);\n}\n\nfunction promptForPackageAsync(projectRoot: string, exp: ExpoConfig): Promise<string> {\n return promptForPackageWithInitialAsync(projectRoot, exp, getRecommendedPackageName(exp));\n}\n\nasync function promptForPackageWithInitialAsync(\n projectRoot: string,\n exp: ExpoConfig,\n packageName?: string\n): Promise<string> {\n if (!packageName) {\n memoLog(\n chalk`\\n{bold 📝 Android package} {dim ${learnMore('https://expo.fyi/android-package')}}\\n`\n );\n\n // Prompt the user for the android package.\n // Even if the project is using a dynamic config we can still\n // prompt a better error message, recommend a default value, and help the user\n // validate their custom android package upfront.\n const { input } = await prompt(\n {\n type: 'text',\n name: 'input',\n message: `What would you like your Android package name to be?`,\n validate: validatePackageWithWarning,\n },\n {\n nonInteractiveHelp: NO_PACKAGE_MESSAGE,\n }\n );\n packageName = input as string;\n }\n\n // Warn the user if the package name is already in use.\n const warning = await getPackageNameWarningAsync(packageName);\n if (warning && !(await warnAndConfirmAsync(warning))) {\n // Cycle the Package name prompt to try again.\n return promptForPackageWithInitialAsync(projectRoot, exp);\n }\n\n // Apply the changes to the config.\n if (\n await attemptModification(\n projectRoot,\n {\n android: { ...(exp.android || {}), package: packageName },\n },\n {\n android: { package: packageName },\n }\n )\n ) {\n Log.log(chalk.gray`\\u203A Android package name: ${packageName}`);\n }\n\n return packageName;\n}\n"],"names":["getOrPromptForBundleIdentifier","getOrPromptForPackage","debug","require","getExpoUsername","exp","getAccountUsername","NO_BUNDLE_ID_MESSAGE","NO_PACKAGE_MESSAGE","projectRoot","getConfig","current","ios","bundleIdentifier","assertValidBundleId","promptForBundleIdWithInitialAsync","getRecommendedBundleId","memoLog","memoize","Log","log","chalk","learnMore","input","prompt","type","name","message","validate","validateBundleId","nonInteractiveHelp","warning","getBundleIdWarningAsync","warnAndConfirmAsync","attemptModification","gray","warn","confirmAsync","initial","possibleIdFromAndroid","android","package","getSanitizedBundleIdentifier","undefined","username","possibleId","slug","getRecommendedPackageName","possibleIdFromApple","getSanitizedPackage","validatePackage","assertValidPackage","promptForPackageAsync","promptForPackageWithInitialAsync","packageName","validatePackageWithWarning","getPackageNameWarningAsync"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/utils/getOrPromptApplicationId.ts"],"sourcesContent":["import { ExpoConfig, getAccountUsername, getConfig } from '@expo/config';\nimport chalk from 'chalk';\n\nimport { memoize } from './fn';\nimport { learnMore } from './link';\nimport { attemptModification } from './modifyConfigAsync';\nimport prompt, { confirmAsync } from './prompts';\nimport {\n assertValidBundleId,\n assertValidPackage,\n getBundleIdWarningAsync,\n getPackageNameWarningAsync,\n getSanitizedBundleIdentifier,\n getSanitizedPackage,\n validateBundleId,\n validatePackage,\n validatePackageWithWarning,\n} from './validateApplicationId';\nimport * as Log from '../log';\n\nconst debug = require('debug')('expo:app-id') as typeof console.log;\n\nfunction getExpoUsername(exp: ExpoConfig) {\n // Account for if the environment variable was an empty string.\n return getAccountUsername(exp) || 'anonymous';\n}\n\nconst NO_BUNDLE_ID_MESSAGE = `Project must have a \\`ios.bundleIdentifier\\` set in the Expo config (app.json or app.config.js).`;\n\nconst NO_PACKAGE_MESSAGE = `Project must have a \\`android.package\\` set in the Expo config (app.json or app.config.js).`;\n\n/**\n * Get the bundle identifier from the Expo config or prompt the user to choose a new bundle identifier.\n * Prompted value will be validated against the App Store and a local regex.\n * If the project Expo config is a static JSON file, the bundle identifier will be updated in the config automatically.\n */\nexport async function getOrPromptForBundleIdentifier(\n projectRoot: string,\n exp: ExpoConfig = getConfig(projectRoot).exp\n): Promise<string> {\n const current = exp.ios?.bundleIdentifier;\n if (current) {\n assertValidBundleId(current);\n return current;\n }\n\n return promptForBundleIdWithInitialAsync(projectRoot, exp, getRecommendedBundleId(exp));\n}\n\nconst memoLog = memoize(Log.log);\n\nasync function promptForBundleIdWithInitialAsync(\n projectRoot: string,\n exp: ExpoConfig,\n bundleIdentifier?: string\n): Promise<string> {\n if (!bundleIdentifier) {\n memoLog(\n chalk`\\n{bold 📝 iOS Bundle Identifier} {dim ${learnMore(\n 'https://expo.fyi/bundle-identifier'\n )}}\\n`\n );\n\n // Prompt the user for the bundle ID.\n // Even if the project is using a dynamic config we can still\n // prompt a better error message, recommend a default value, and help the user\n // validate their custom bundle ID upfront.\n const { input } = await prompt(\n {\n type: 'text',\n name: 'input',\n // The Apple helps people know this isn't an EAS feature.\n message: `What would you like your iOS bundle identifier to be?`,\n validate: validateBundleId,\n },\n {\n nonInteractiveHelp: NO_BUNDLE_ID_MESSAGE,\n }\n );\n bundleIdentifier = input as string;\n }\n\n // Warn the user if the bundle ID is already in use.\n const warning = await getBundleIdWarningAsync(bundleIdentifier);\n\n if (warning && !(await warnAndConfirmAsync(warning))) {\n // Cycle the Bundle ID prompt to try again.\n return await promptForBundleIdWithInitialAsync(projectRoot, exp);\n }\n\n // Apply the changes to the config.\n if (\n await attemptModification(\n projectRoot,\n {\n ios: { ...(exp.ios || {}), bundleIdentifier },\n },\n { ios: { bundleIdentifier } }\n )\n ) {\n Log.log(chalk.gray`\\u203A Apple bundle identifier: ${bundleIdentifier}`);\n }\n\n return bundleIdentifier;\n}\n\nasync function warnAndConfirmAsync(warning: string): Promise<boolean> {\n Log.log();\n Log.warn(warning);\n Log.log();\n if (\n !(await confirmAsync({\n message: `Continue?`,\n initial: true,\n }))\n ) {\n return false;\n }\n return true;\n}\n\n// Recommend a bundle identifier based on the username and project slug.\nfunction getRecommendedBundleId(exp: ExpoConfig): string | undefined {\n const possibleIdFromAndroid = exp.android?.package\n ? getSanitizedBundleIdentifier(exp.android.package)\n : undefined;\n // Attempt to use the android package name first since it's convenient to have them aligned.\n if (possibleIdFromAndroid && validateBundleId(possibleIdFromAndroid)) {\n return possibleIdFromAndroid;\n } else {\n const username = getExpoUsername(exp);\n const possibleId = getSanitizedBundleIdentifier(`com.${username}.${exp.slug}`);\n if (validateBundleId(possibleId)) {\n return possibleId;\n }\n }\n\n return undefined;\n}\n\n// Recommend a package name based on the username and project slug.\nfunction getRecommendedPackageName(exp: ExpoConfig): string | undefined {\n const possibleIdFromApple = exp.ios?.bundleIdentifier\n ? getSanitizedPackage(exp.ios.bundleIdentifier)\n : undefined;\n\n // Attempt to use the ios bundle id first since it's convenient to have them aligned.\n if (possibleIdFromApple && validatePackage(possibleIdFromApple)) {\n return possibleIdFromApple;\n } else {\n const username = getExpoUsername(exp);\n const possibleId = getSanitizedPackage(`com.${username}.${exp.slug}`);\n if (validatePackage(possibleId)) {\n return possibleId;\n } else {\n debug(\n `Recommended package name is invalid: \"${possibleId}\" (username: ${username}, slug: ${exp.slug})`\n );\n }\n }\n return undefined;\n}\n\n/**\n * Get the package name from the Expo config or prompt the user to choose a new package name.\n * Prompted value will be validated against the Play Store and a local regex.\n * If the project Expo config is a static JSON file, the package name will be updated in the config automatically.\n */\nexport async function getOrPromptForPackage(\n projectRoot: string,\n exp: ExpoConfig = getConfig(projectRoot).exp\n): Promise<string> {\n const current = exp.android?.package;\n if (current) {\n assertValidPackage(current);\n return current;\n }\n\n return await promptForPackageAsync(projectRoot, exp);\n}\n\nfunction promptForPackageAsync(projectRoot: string, exp: ExpoConfig): Promise<string> {\n return promptForPackageWithInitialAsync(projectRoot, exp, getRecommendedPackageName(exp));\n}\n\nasync function promptForPackageWithInitialAsync(\n projectRoot: string,\n exp: ExpoConfig,\n packageName?: string\n): Promise<string> {\n if (!packageName) {\n memoLog(\n chalk`\\n{bold 📝 Android package} {dim ${learnMore('https://expo.fyi/android-package')}}\\n`\n );\n\n // Prompt the user for the android package.\n // Even if the project is using a dynamic config we can still\n // prompt a better error message, recommend a default value, and help the user\n // validate their custom android package upfront.\n const { input } = await prompt(\n {\n type: 'text',\n name: 'input',\n message: `What would you like your Android package name to be?`,\n validate: validatePackageWithWarning,\n },\n {\n nonInteractiveHelp: NO_PACKAGE_MESSAGE,\n }\n );\n packageName = input as string;\n }\n\n // Warn the user if the package name is already in use.\n const warning = await getPackageNameWarningAsync(packageName);\n if (warning && !(await warnAndConfirmAsync(warning))) {\n // Cycle the Package name prompt to try again.\n return promptForPackageWithInitialAsync(projectRoot, exp);\n }\n\n // Apply the changes to the config.\n if (\n await attemptModification(\n projectRoot,\n {\n android: { ...(exp.android || {}), package: packageName },\n },\n {\n android: { package: packageName },\n }\n )\n ) {\n Log.log(chalk.gray`\\u203A Android package name: ${packageName}`);\n }\n\n return packageName;\n}\n"],"names":["getOrPromptForBundleIdentifier","getOrPromptForPackage","debug","require","getExpoUsername","exp","getAccountUsername","NO_BUNDLE_ID_MESSAGE","NO_PACKAGE_MESSAGE","projectRoot","getConfig","current","ios","bundleIdentifier","assertValidBundleId","promptForBundleIdWithInitialAsync","getRecommendedBundleId","memoLog","memoize","Log","log","chalk","learnMore","input","prompt","type","name","message","validate","validateBundleId","nonInteractiveHelp","warning","getBundleIdWarningAsync","warnAndConfirmAsync","attemptModification","gray","warn","confirmAsync","initial","possibleIdFromAndroid","android","package","getSanitizedBundleIdentifier","undefined","username","possibleId","slug","getRecommendedPackageName","possibleIdFromApple","getSanitizedPackage","validatePackage","assertValidPackage","promptForPackageAsync","promptForPackageWithInitialAsync","packageName","validatePackageWithWarning","getPackageNameWarningAsync"],"mappings":"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"}
@@ -9,19 +9,25 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- getPID: ()=>getPID,
13
- getDirectoryOfProcessById: ()=>getDirectoryOfProcessById,
14
- getRunningProcess: ()=>getRunningProcess
12
+ getDirectoryOfProcessById: function() {
13
+ return getDirectoryOfProcessById;
14
+ },
15
+ getPID: function() {
16
+ return getPID;
17
+ },
18
+ getRunningProcess: function() {
19
+ return getRunningProcess;
20
+ }
15
21
  });
16
- function _childProcess() {
22
+ function _child_process() {
17
23
  const data = require("child_process");
18
- _childProcess = function() {
24
+ _child_process = function() {
19
25
  return data;
20
26
  };
21
27
  return data;
22
28
  }
23
29
  function _path() {
24
- const data = /*#__PURE__*/ _interopRequireWildcard(require("path"));
30
+ const data = /*#__PURE__*/ _interop_require_wildcard(require("path"));
25
31
  _path = function() {
26
32
  return data;
27
33
  };
@@ -35,7 +41,7 @@ function _getRequireWildcardCache(nodeInterop) {
35
41
  return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
36
42
  })(nodeInterop);
37
43
  }
38
- function _interopRequireWildcard(obj, nodeInterop) {
44
+ function _interop_require_wildcard(obj, nodeInterop) {
39
45
  if (!nodeInterop && obj && obj.__esModule) {
40
46
  return obj;
41
47
  }
@@ -48,7 +54,9 @@ function _interopRequireWildcard(obj, nodeInterop) {
48
54
  if (cache && cache.has(obj)) {
49
55
  return cache.get(obj);
50
56
  }
51
- var newObj = {};
57
+ var newObj = {
58
+ __proto__: null
59
+ };
52
60
  var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
53
61
  for(var key in obj){
54
62
  if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
@@ -66,23 +74,23 @@ function _interopRequireWildcard(obj, nodeInterop) {
66
74
  }
67
75
  return newObj;
68
76
  }
69
- const debug = require("debug")("expo:utils:getRunningProcess");
77
+ const debug = require('debug')('expo:utils:getRunningProcess');
70
78
  const defaultOptions = {
71
- encoding: "utf8",
79
+ encoding: 'utf8',
72
80
  stdio: [
73
- "pipe",
74
- "pipe",
75
- "ignore"
81
+ 'pipe',
82
+ 'pipe',
83
+ 'ignore'
76
84
  ]
77
85
  };
78
86
  function getPID(port) {
79
87
  try {
80
- const results = (0, _childProcess().execFileSync)("lsof", [
88
+ const results = (0, _child_process().execFileSync)('lsof', [
81
89
  `-i:${port}`,
82
- "-P",
83
- "-t",
84
- "-sTCP:LISTEN"
85
- ], defaultOptions).split("\n")[0].trim();
90
+ '-P',
91
+ '-t',
92
+ '-sTCP:LISTEN'
93
+ ], defaultOptions).split('\n')[0].trim();
86
94
  const pid = Number(results);
87
95
  debug(`pid: ${pid} for port: ${port}`);
88
96
  return pid;
@@ -92,7 +100,7 @@ function getPID(port) {
92
100
  }
93
101
  }
94
102
  /** Get `package.json` `name` field for a given directory. Returns `null` if none exist. */ function getPackageName(packageRoot) {
95
- const packageJson = _path().join(packageRoot, "package.json");
103
+ const packageJson = _path().join(packageRoot, 'package.json');
96
104
  try {
97
105
  return require(packageJson).name || null;
98
106
  } catch {
@@ -104,10 +112,10 @@ function getPID(port) {
104
112
  if (name) {
105
113
  return name;
106
114
  }
107
- return (0, _childProcess().execSync)(`ps -o command -p ${pid} | sed -n 2p`, defaultOptions).replace(/\n$/, "").trim();
115
+ return (0, _child_process().execSync)(`ps -o command -p ${pid} | sed -n 2p`, defaultOptions).replace(/\n$/, '').trim();
108
116
  }
109
117
  function getDirectoryOfProcessById(processId) {
110
- return (0, _childProcess().execSync)(`lsof -p ${processId} | awk '$4=="cwd" {for (i=9; i<=NF; i++) printf "%s ", $i}'`, defaultOptions).trim();
118
+ return (0, _child_process().execSync)(`lsof -p ${processId} | awk '$4=="cwd" {for (i=9; i<=NF; i++) printf "%s ", $i}'`, defaultOptions).trim();
111
119
  }
112
120
  function getRunningProcess(port) {
113
121
  // 63828
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/getRunningProcess.ts"],"sourcesContent":["import { execFileSync, execSync, ExecSyncOptionsWithStringEncoding } from 'child_process';\nimport * as path from 'path';\n\nconst debug = require('debug')('expo:utils:getRunningProcess') as typeof console.log;\n\nconst defaultOptions: ExecSyncOptionsWithStringEncoding = {\n encoding: 'utf8',\n stdio: ['pipe', 'pipe', 'ignore'],\n};\n\n/** Returns a pid value for a running port like `63828` or null if nothing is running on the given port. */\nexport function getPID(port: number): number | null {\n try {\n const results = execFileSync('lsof', [`-i:${port}`, '-P', '-t', '-sTCP:LISTEN'], defaultOptions)\n .split('\\n')[0]\n .trim();\n const pid = Number(results);\n debug(`pid: ${pid} for port: ${port}`);\n return pid;\n } catch (error: any) {\n debug(`No pid found for port: ${port}. Error: ${error}`);\n return null;\n }\n}\n\n/** Get `package.json` `name` field for a given directory. Returns `null` if none exist. */\nfunction getPackageName(packageRoot: string): string | null {\n const packageJson = path.join(packageRoot, 'package.json');\n try {\n return require(packageJson).name || null;\n } catch {\n return null;\n }\n}\n\n/** Returns a command like `node /Users/evanbacon/.../bin/expo start` or the package.json name. */\nfunction getProcessCommand(pid: number, procDirectory: string): string {\n const name = getPackageName(procDirectory);\n\n if (name) {\n return name;\n }\n return execSync(`ps -o command -p ${pid} | sed -n 2p`, defaultOptions).replace(/\\n$/, '').trim();\n}\n\n/** Get directory for a given process ID. */\nexport function getDirectoryOfProcessById(processId: number): string {\n return execSync(\n `lsof -p ${processId} | awk '$4==\"cwd\" {for (i=9; i<=NF; i++) printf \"%s \", $i}'`,\n defaultOptions\n ).trim();\n}\n\n/** Get information about a running process given a port. Returns null if no process is running on the given port. */\nexport function getRunningProcess(port: number): {\n /** The PID value for the port. */\n pid: number;\n /** Get the directory for the running process. */\n directory: string;\n /** The command running the process like `node /Users/evanbacon/.../bin/expo start` or the `package.json` name like `my-app`. */\n command: string;\n} | null {\n // 63828\n const pid = getPID(port);\n if (!pid) {\n return null;\n }\n\n try {\n // /Users/evanbacon/Documents/GitHub/lab/myapp\n const directory = getDirectoryOfProcessById(pid);\n // /Users/evanbacon/Documents/GitHub/lab/myapp/package.json\n const command = getProcessCommand(pid, directory);\n // TODO: Have a better message for reusing another process.\n return { pid, directory, command };\n } catch {\n return null;\n }\n}\n"],"names":["getPID","getDirectoryOfProcessById","getRunningProcess","debug","require","defaultOptions","encoding","stdio","port","results","execFileSync","split","trim","pid","Number","error","getPackageName","packageRoot","packageJson","path","join","name","getProcessCommand","procDirectory","execSync","replace","processId","directory","command"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/utils/getRunningProcess.ts"],"sourcesContent":["import { execFileSync, execSync, ExecSyncOptionsWithStringEncoding } from 'child_process';\nimport * as path from 'path';\n\nconst debug = require('debug')('expo:utils:getRunningProcess') as typeof console.log;\n\nconst defaultOptions: ExecSyncOptionsWithStringEncoding = {\n encoding: 'utf8',\n stdio: ['pipe', 'pipe', 'ignore'],\n};\n\n/** Returns a pid value for a running port like `63828` or null if nothing is running on the given port. */\nexport function getPID(port: number): number | null {\n try {\n const results = execFileSync('lsof', [`-i:${port}`, '-P', '-t', '-sTCP:LISTEN'], defaultOptions)\n .split('\\n')[0]\n .trim();\n const pid = Number(results);\n debug(`pid: ${pid} for port: ${port}`);\n return pid;\n } catch (error: any) {\n debug(`No pid found for port: ${port}. Error: ${error}`);\n return null;\n }\n}\n\n/** Get `package.json` `name` field for a given directory. Returns `null` if none exist. */\nfunction getPackageName(packageRoot: string): string | null {\n const packageJson = path.join(packageRoot, 'package.json');\n try {\n return require(packageJson).name || null;\n } catch {\n return null;\n }\n}\n\n/** Returns a command like `node /Users/evanbacon/.../bin/expo start` or the package.json name. */\nfunction getProcessCommand(pid: number, procDirectory: string): string {\n const name = getPackageName(procDirectory);\n\n if (name) {\n return name;\n }\n return execSync(`ps -o command -p ${pid} | sed -n 2p`, defaultOptions).replace(/\\n$/, '').trim();\n}\n\n/** Get directory for a given process ID. */\nexport function getDirectoryOfProcessById(processId: number): string {\n return execSync(\n `lsof -p ${processId} | awk '$4==\"cwd\" {for (i=9; i<=NF; i++) printf \"%s \", $i}'`,\n defaultOptions\n ).trim();\n}\n\n/** Get information about a running process given a port. Returns null if no process is running on the given port. */\nexport function getRunningProcess(port: number): {\n /** The PID value for the port. */\n pid: number;\n /** Get the directory for the running process. */\n directory: string;\n /** The command running the process like `node /Users/evanbacon/.../bin/expo start` or the `package.json` name like `my-app`. */\n command: string;\n} | null {\n // 63828\n const pid = getPID(port);\n if (!pid) {\n return null;\n }\n\n try {\n // /Users/evanbacon/Documents/GitHub/lab/myapp\n const directory = getDirectoryOfProcessById(pid);\n // /Users/evanbacon/Documents/GitHub/lab/myapp/package.json\n const command = getProcessCommand(pid, directory);\n // TODO: Have a better message for reusing another process.\n return { pid, directory, command };\n } catch {\n return null;\n }\n}\n"],"names":["getDirectoryOfProcessById","getPID","getRunningProcess","debug","require","defaultOptions","encoding","stdio","port","results","execFileSync","split","trim","pid","Number","error","getPackageName","packageRoot","packageJson","path","join","name","getProcessCommand","procDirectory","execSync","replace","processId","directory","command"],"mappings":";;;;;;;;;;;IA8CgBA,yBAAyB;eAAzBA;;IAnCAC,MAAM;eAANA;;IA2CAC,iBAAiB;eAAjBA;;;;yBAtD0D;;;;;;;iEACpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtB,MAAMC,QAAQC,QAAQ,SAAS;AAE/B,MAAMC,iBAAoD;IACxDC,UAAU;IACVC,OAAO;QAAC;QAAQ;QAAQ;KAAS;AACnC;AAGO,SAASN,OAAOO,IAAY;IACjC,IAAI;QACF,MAAMC,UAAUC,IAAAA,6BAAY,EAAC,QAAQ;YAAC,CAAC,GAAG,EAAEF,MAAM;YAAE;YAAM;YAAM;SAAe,EAAEH,gBAC9EM,KAAK,CAAC,KAAK,CAAC,EAAE,CACdC,IAAI;QACP,MAAMC,MAAMC,OAAOL;QACnBN,MAAM,CAAC,KAAK,EAAEU,IAAI,WAAW,EAAEL,MAAM;QACrC,OAAOK;IACT,EAAE,OAAOE,OAAY;QACnBZ,MAAM,CAAC,uBAAuB,EAAEK,KAAK,SAAS,EAAEO,OAAO;QACvD,OAAO;IACT;AACF;AAEA,yFAAyF,GACzF,SAASC,eAAeC,WAAmB;IACzC,MAAMC,cAAcC,QAAKC,IAAI,CAACH,aAAa;IAC3C,IAAI;QACF,OAAOb,QAAQc,aAAaG,IAAI,IAAI;IACtC,EAAE,OAAM;QACN,OAAO;IACT;AACF;AAEA,gGAAgG,GAChG,SAASC,kBAAkBT,GAAW,EAAEU,aAAqB;IAC3D,MAAMF,OAAOL,eAAeO;IAE5B,IAAIF,MAAM;QACR,OAAOA;IACT;IACA,OAAOG,IAAAA,yBAAQ,EAAC,CAAC,iBAAiB,EAAEX,IAAI,YAAY,CAAC,EAAER,gBAAgBoB,OAAO,CAAC,OAAO,IAAIb,IAAI;AAChG;AAGO,SAASZ,0BAA0B0B,SAAiB;IACzD,OAAOF,IAAAA,yBAAQ,EACb,CAAC,QAAQ,EAAEE,UAAU,2DAA2D,CAAC,EACjFrB,gBACAO,IAAI;AACR;AAGO,SAASV,kBAAkBM,IAAY;IAQ5C,QAAQ;IACR,MAAMK,MAAMZ,OAAOO;IACnB,IAAI,CAACK,KAAK;QACR,OAAO;IACT;IAEA,IAAI;QACF,8CAA8C;QAC9C,MAAMc,YAAY3B,0BAA0Ba;QAC5C,2DAA2D;QAC3D,MAAMe,UAAUN,kBAAkBT,KAAKc;QACvC,2DAA2D;QAC3D,OAAO;YAAEd;YAAKc;YAAWC;QAAQ;IACnC,EAAE,OAAM;QACN,OAAO;IACT;AACF"}
@@ -9,18 +9,22 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- maybeBailOnGitStatusAsync: ()=>maybeBailOnGitStatusAsync,
13
- validateGitStatusAsync: ()=>validateGitStatusAsync
12
+ maybeBailOnGitStatusAsync: function() {
13
+ return maybeBailOnGitStatusAsync;
14
+ },
15
+ validateGitStatusAsync: function() {
16
+ return validateGitStatusAsync;
17
+ }
14
18
  });
15
- function _spawnAsync() {
16
- const data = /*#__PURE__*/ _interopRequireDefault(require("@expo/spawn-async"));
17
- _spawnAsync = function() {
19
+ function _spawnasync() {
20
+ const data = /*#__PURE__*/ _interop_require_default(require("@expo/spawn-async"));
21
+ _spawnasync = function() {
18
22
  return data;
19
23
  };
20
24
  return data;
21
25
  }
22
26
  function _chalk() {
23
- const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
27
+ const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
24
28
  _chalk = function() {
25
29
  return data;
26
30
  };
@@ -29,8 +33,8 @@ function _chalk() {
29
33
  const _env = require("./env");
30
34
  const _interactive = require("./interactive");
31
35
  const _prompts = require("./prompts");
32
- const _log = /*#__PURE__*/ _interopRequireWildcard(require("../log"));
33
- function _interopRequireDefault(obj) {
36
+ const _log = /*#__PURE__*/ _interop_require_wildcard(require("../log"));
37
+ function _interop_require_default(obj) {
34
38
  return obj && obj.__esModule ? obj : {
35
39
  default: obj
36
40
  };
@@ -43,7 +47,7 @@ function _getRequireWildcardCache(nodeInterop) {
43
47
  return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
44
48
  })(nodeInterop);
45
49
  }
46
- function _interopRequireWildcard(obj, nodeInterop) {
50
+ function _interop_require_wildcard(obj, nodeInterop) {
47
51
  if (!nodeInterop && obj && obj.__esModule) {
48
52
  return obj;
49
53
  }
@@ -56,7 +60,9 @@ function _interopRequireWildcard(obj, nodeInterop) {
56
60
  if (cache && cache.has(obj)) {
57
61
  return cache.get(obj);
58
62
  }
59
- var newObj = {};
63
+ var newObj = {
64
+ __proto__: null
65
+ };
60
66
  var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
61
67
  for(var key in obj){
62
68
  if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
@@ -76,7 +82,7 @@ function _interopRequireWildcard(obj, nodeInterop) {
76
82
  }
77
83
  async function maybeBailOnGitStatusAsync() {
78
84
  if (_env.env.EXPO_NO_GIT_STATUS) {
79
- _log.warn("Git status is dirty but the command will continue because EXPO_NO_GIT_STATUS is enabled...");
85
+ _log.warn('Git status is dirty but the command will continue because EXPO_NO_GIT_STATUS is enabled...');
80
86
  return false;
81
87
  }
82
88
  const isGitStatusClean = await validateGitStatusAsync();
@@ -98,23 +104,23 @@ async function maybeBailOnGitStatusAsync() {
98
104
  return false;
99
105
  }
100
106
  async function validateGitStatusAsync() {
101
- let workingTreeStatus = "unknown";
107
+ let workingTreeStatus = 'unknown';
102
108
  try {
103
- const result = await (0, _spawnAsync().default)("git", [
104
- "status",
105
- "--porcelain"
109
+ const result = await (0, _spawnasync().default)('git', [
110
+ 'status',
111
+ '--porcelain'
106
112
  ]);
107
- workingTreeStatus = result.stdout === "" ? "clean" : "dirty";
113
+ workingTreeStatus = result.stdout === '' ? 'clean' : 'dirty';
108
114
  } catch {
109
115
  // Maybe git is not installed?
110
116
  // Maybe this project is not using git?
111
117
  }
112
- if (workingTreeStatus === "clean") {
118
+ if (workingTreeStatus === 'clean') {
113
119
  return true;
114
- } else if (workingTreeStatus === "dirty") {
115
- logWarning("Git branch has uncommited file changes", `It's recommended to commit all changes before proceeding in case you want to revert generated changes.`);
120
+ } else if (workingTreeStatus === 'dirty') {
121
+ logWarning('Git branch has uncommited file changes', `It's recommended to commit all changes before proceeding in case you want to revert generated changes.`);
116
122
  } else {
117
- logWarning("No git repo found in current directory", `Use git to track file changes before running commands that modify project files.`);
123
+ logWarning('No git repo found in current directory', `Use git to track file changes before running commands that modify project files.`);
118
124
  }
119
125
  return false;
120
126
  }