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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (661) hide show
  1. package/README.md +144 -0
  2. package/build/bin/cli +272 -0
  3. package/build/bin/cli.map +1 -0
  4. package/build/src/api/endpoint.js +27 -0
  5. package/build/src/api/endpoint.js.map +1 -0
  6. package/build/src/api/getExpoGoIntermediateCertificate.js +19 -0
  7. package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -0
  8. package/build/src/api/getExpoSchema.js +69 -0
  9. package/build/src/api/getExpoSchema.js.map +1 -0
  10. package/build/src/api/getNativeModuleVersions.js +31 -0
  11. package/build/src/api/getNativeModuleVersions.js.map +1 -0
  12. package/build/src/api/getProjectDevelopmentCertificate.js +22 -0
  13. package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -0
  14. package/build/src/api/getVersions.js +24 -0
  15. package/build/src/api/getVersions.js.map +1 -0
  16. package/build/src/api/graphql/client.js +106 -0
  17. package/build/src/api/graphql/client.js.map +1 -0
  18. package/build/src/api/graphql/queries/AppQuery.js +39 -0
  19. package/build/src/api/graphql/queries/AppQuery.js.map +1 -0
  20. package/build/src/api/graphql/queries/UserQuery.js +51 -0
  21. package/build/src/api/graphql/queries/UserQuery.js.map +1 -0
  22. package/build/src/api/graphql/types/App.js +23 -0
  23. package/build/src/api/graphql/types/App.js.map +1 -0
  24. package/build/src/api/rest/cache/FileSystemCache.js +79 -0
  25. package/build/src/api/rest/cache/FileSystemCache.js.map +1 -0
  26. package/build/src/api/rest/cache/response.js +31 -0
  27. package/build/src/api/rest/cache/response.js.map +1 -0
  28. package/build/src/api/rest/cache/wrapFetchWithCache.js +156 -0
  29. package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -0
  30. package/build/src/api/rest/client.js +109 -0
  31. package/build/src/api/rest/client.js.map +1 -0
  32. package/build/src/api/rest/client.types.js +6 -0
  33. package/build/src/api/rest/client.types.js.map +1 -0
  34. package/build/src/api/rest/wrapFetchWithBaseUrl.js +23 -0
  35. package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -0
  36. package/build/src/api/rest/wrapFetchWithOffline.js +19 -0
  37. package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -0
  38. package/build/src/api/rest/wrapFetchWithProgress.js +64 -0
  39. package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -0
  40. package/build/src/api/rest/wrapFetchWithProxy.js +26 -0
  41. package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -0
  42. package/build/src/api/settings.js +20 -0
  43. package/build/src/api/settings.js.map +1 -0
  44. package/build/src/api/updateDevelopmentSession.js +74 -0
  45. package/build/src/api/updateDevelopmentSession.js.map +1 -0
  46. package/build/src/api/user/UserSettings.js +71 -0
  47. package/build/src/api/user/UserSettings.js.map +1 -0
  48. package/build/src/api/user/actions.js +107 -0
  49. package/build/src/api/user/actions.js.map +1 -0
  50. package/build/src/api/user/expoSsoLauncher.js +127 -0
  51. package/build/src/api/user/expoSsoLauncher.js.map +1 -0
  52. package/build/src/api/user/otp.js +139 -0
  53. package/build/src/api/user/otp.js.map +1 -0
  54. package/build/src/api/user/user.js +144 -0
  55. package/build/src/api/user/user.js.map +1 -0
  56. package/build/src/config/configAsync.js +137 -0
  57. package/build/src/config/configAsync.js.map +1 -0
  58. package/build/src/config/index.js +75 -0
  59. package/build/src/config/index.js.map +1 -0
  60. package/build/src/customize/customizeAsync.js +43 -0
  61. package/build/src/customize/customizeAsync.js.map +1 -0
  62. package/build/src/customize/generate.js +104 -0
  63. package/build/src/customize/generate.js.map +1 -0
  64. package/build/src/customize/index.js +41 -0
  65. package/build/src/customize/index.js.map +1 -0
  66. package/build/src/customize/resolveOptions.js +18 -0
  67. package/build/src/customize/resolveOptions.js.map +1 -0
  68. package/build/src/customize/templates.js +126 -0
  69. package/build/src/customize/templates.js.map +1 -0
  70. package/build/src/customize/typescript.js +56 -0
  71. package/build/src/customize/typescript.js.map +1 -0
  72. package/build/src/export/createMetadataJson.js +42 -0
  73. package/build/src/export/createMetadataJson.js.map +1 -0
  74. package/build/src/export/embed/exportEmbedAsync.js +146 -0
  75. package/build/src/export/embed/exportEmbedAsync.js.map +1 -0
  76. package/build/src/export/embed/index.js +115 -0
  77. package/build/src/export/embed/index.js.map +1 -0
  78. package/build/src/export/embed/resolveOptions.js +59 -0
  79. package/build/src/export/embed/resolveOptions.js.map +1 -0
  80. package/build/src/export/embed/xcodeCompilerLogger.js +97 -0
  81. package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -0
  82. package/build/src/export/exportApp.js +192 -0
  83. package/build/src/export/exportApp.js.map +1 -0
  84. package/build/src/export/exportAssets.js +176 -0
  85. package/build/src/export/exportAssets.js.map +1 -0
  86. package/build/src/export/exportAsync.js +52 -0
  87. package/build/src/export/exportAsync.js.map +1 -0
  88. package/build/src/export/exportHermes.js +124 -0
  89. package/build/src/export/exportHermes.js.map +1 -0
  90. package/build/src/export/exportStaticAsync.js +278 -0
  91. package/build/src/export/exportStaticAsync.js.map +1 -0
  92. package/build/src/export/favicon.js +89 -0
  93. package/build/src/export/favicon.js.map +1 -0
  94. package/build/src/export/fork-bundleAsync.js +215 -0
  95. package/build/src/export/fork-bundleAsync.js.map +1 -0
  96. package/build/src/export/getPublicExpoManifest.js +28 -0
  97. package/build/src/export/getPublicExpoManifest.js.map +1 -0
  98. package/build/src/export/getResolvedLocales.js +35 -0
  99. package/build/src/export/getResolvedLocales.js.map +1 -0
  100. package/build/src/export/html.js +21 -0
  101. package/build/src/export/html.js.map +1 -0
  102. package/build/src/export/index.js +91 -0
  103. package/build/src/export/index.js.map +1 -0
  104. package/build/src/export/metroAssetLocalPath.js +101 -0
  105. package/build/src/export/metroAssetLocalPath.js.map +1 -0
  106. package/build/src/export/persistMetroAssets.js +190 -0
  107. package/build/src/export/persistMetroAssets.js.map +1 -0
  108. package/build/src/export/publicFolder.js +34 -0
  109. package/build/src/export/publicFolder.js.map +1 -0
  110. package/build/src/export/resolveOptions.js +63 -0
  111. package/build/src/export/resolveOptions.js.map +1 -0
  112. package/build/src/export/saveAssets.js +189 -0
  113. package/build/src/export/saveAssets.js.map +1 -0
  114. package/build/src/export/web/exportWebAsync.js +40 -0
  115. package/build/src/export/web/exportWebAsync.js.map +1 -0
  116. package/build/src/export/web/index.js +66 -0
  117. package/build/src/export/web/index.js.map +1 -0
  118. package/build/src/export/web/resolveOptions.js +13 -0
  119. package/build/src/export/web/resolveOptions.js.map +1 -0
  120. package/build/src/export/writeContents.js +26 -0
  121. package/build/src/export/writeContents.js.map +1 -0
  122. package/build/src/graphql/generated.js +486 -0
  123. package/build/src/graphql/generated.js.map +1 -0
  124. package/build/src/install/applyPlugins.js +52 -0
  125. package/build/src/install/applyPlugins.js.map +1 -0
  126. package/build/src/install/checkPackages.js +78 -0
  127. package/build/src/install/checkPackages.js.map +1 -0
  128. package/build/src/install/fixPackages.js +84 -0
  129. package/build/src/install/fixPackages.js.map +1 -0
  130. package/build/src/install/index.js +51 -0
  131. package/build/src/install/index.js.map +1 -0
  132. package/build/src/install/installAsync.js +134 -0
  133. package/build/src/install/installAsync.js.map +1 -0
  134. package/build/src/install/installExpoPackage.js +79 -0
  135. package/build/src/install/installExpoPackage.js.map +1 -0
  136. package/build/src/install/resolveOptions.js +53 -0
  137. package/build/src/install/resolveOptions.js.map +1 -0
  138. package/build/src/install/utils/autoAddConfigPlugins.js +66 -0
  139. package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -0
  140. package/build/src/log.js +74 -0
  141. package/build/src/log.js.map +1 -0
  142. package/build/src/login/index.js +67 -0
  143. package/build/src/login/index.js.map +1 -0
  144. package/build/src/logout/index.js +48 -0
  145. package/build/src/logout/index.js.map +1 -0
  146. package/build/src/prebuild/clearNativeFolder.js +143 -0
  147. package/build/src/prebuild/clearNativeFolder.js.map +1 -0
  148. package/build/src/prebuild/configureProjectAsync.js +64 -0
  149. package/build/src/prebuild/configureProjectAsync.js.map +1 -0
  150. package/build/src/prebuild/copyTemplateFiles.js +67 -0
  151. package/build/src/prebuild/copyTemplateFiles.js.map +1 -0
  152. package/build/src/prebuild/ensureConfigAsync.js +75 -0
  153. package/build/src/prebuild/ensureConfigAsync.js.map +1 -0
  154. package/build/src/prebuild/index.js +98 -0
  155. package/build/src/prebuild/index.js.map +1 -0
  156. package/build/src/prebuild/prebuildAsync.js +146 -0
  157. package/build/src/prebuild/prebuildAsync.js.map +1 -0
  158. package/build/src/prebuild/resolveOptions.js +115 -0
  159. package/build/src/prebuild/resolveOptions.js.map +1 -0
  160. package/build/src/prebuild/resolveTemplate.js +163 -0
  161. package/build/src/prebuild/resolveTemplate.js.map +1 -0
  162. package/build/src/prebuild/updateFromTemplate.js +103 -0
  163. package/build/src/prebuild/updateFromTemplate.js.map +1 -0
  164. package/build/src/prebuild/updatePackageJson.js +227 -0
  165. package/build/src/prebuild/updatePackageJson.js.map +1 -0
  166. package/build/src/prebuild/validateTemplatePlatforms.js +48 -0
  167. package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -0
  168. package/build/src/register/index.js +48 -0
  169. package/build/src/register/index.js.map +1 -0
  170. package/build/src/register/registerAsync.js +34 -0
  171. package/build/src/register/registerAsync.js.map +1 -0
  172. package/build/src/run/android/index.js +97 -0
  173. package/build/src/run/android/index.js.map +1 -0
  174. package/build/src/run/android/resolveDevice.js +23 -0
  175. package/build/src/run/android/resolveDevice.js.map +1 -0
  176. package/build/src/run/android/resolveGradleProps.js +37 -0
  177. package/build/src/run/android/resolveGradleProps.js.map +1 -0
  178. package/build/src/run/android/resolveInstallApkName.js +51 -0
  179. package/build/src/run/android/resolveInstallApkName.js.map +1 -0
  180. package/build/src/run/android/resolveLaunchProps.js +32 -0
  181. package/build/src/run/android/resolveLaunchProps.js.map +1 -0
  182. package/build/src/run/android/resolveOptions.js +25 -0
  183. package/build/src/run/android/resolveOptions.js.map +1 -0
  184. package/build/src/run/android/runAndroidAsync.js +83 -0
  185. package/build/src/run/android/runAndroidAsync.js.map +1 -0
  186. package/build/src/run/ensureNativeProject.js +36 -0
  187. package/build/src/run/ensureNativeProject.js.map +1 -0
  188. package/build/src/run/hints.js +22 -0
  189. package/build/src/run/hints.js.map +1 -0
  190. package/build/src/run/ios/XcodeBuild.js +276 -0
  191. package/build/src/run/ios/XcodeBuild.js.map +1 -0
  192. package/build/src/run/ios/XcodeBuild.types.js +6 -0
  193. package/build/src/run/ios/XcodeBuild.types.js.map +1 -0
  194. package/build/src/run/ios/appleDevice/AppleDevice.js +195 -0
  195. package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -0
  196. package/build/src/run/ios/appleDevice/ClientManager.js +165 -0
  197. package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -0
  198. package/build/src/run/ios/appleDevice/client/AFCClient.js +195 -0
  199. package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -0
  200. package/build/src/run/ios/appleDevice/client/DebugserverClient.js +107 -0
  201. package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -0
  202. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +97 -0
  203. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -0
  204. package/build/src/run/ios/appleDevice/client/LockdowndClient.js +144 -0
  205. package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -0
  206. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +91 -0
  207. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -0
  208. package/build/src/run/ios/appleDevice/client/ServiceClient.js +21 -0
  209. package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -0
  210. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +117 -0
  211. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -0
  212. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +90 -0
  213. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -0
  214. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +332 -0
  215. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -0
  216. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +133 -0
  217. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -0
  218. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +126 -0
  219. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -0
  220. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +74 -0
  221. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -0
  222. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +65 -0
  223. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -0
  224. package/build/src/run/ios/codeSigning/Security.js +85 -0
  225. package/build/src/run/ios/codeSigning/Security.js.map +1 -0
  226. package/build/src/run/ios/codeSigning/configureCodeSigning.js +77 -0
  227. package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -0
  228. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +102 -0
  229. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -0
  230. package/build/src/run/ios/codeSigning/settings.js +21 -0
  231. package/build/src/run/ios/codeSigning/settings.js.map +1 -0
  232. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +45 -0
  233. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -0
  234. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +79 -0
  235. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -0
  236. package/build/src/run/ios/index.js +98 -0
  237. package/build/src/run/ios/index.js.map +1 -0
  238. package/build/src/run/ios/launchApp.js +75 -0
  239. package/build/src/run/ios/launchApp.js.map +1 -0
  240. package/build/src/run/ios/options/promptDevice.js +50 -0
  241. package/build/src/run/ios/options/promptDevice.js.map +1 -0
  242. package/build/src/run/ios/options/resolveDevice.js +92 -0
  243. package/build/src/run/ios/options/resolveDevice.js.map +1 -0
  244. package/build/src/run/ios/options/resolveNativeScheme.js +101 -0
  245. package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -0
  246. package/build/src/run/ios/options/resolveOptions.js +44 -0
  247. package/build/src/run/ios/options/resolveOptions.js.map +1 -0
  248. package/build/src/run/ios/options/resolveXcodeProject.js +39 -0
  249. package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -0
  250. package/build/src/run/ios/runIosAsync.js +93 -0
  251. package/build/src/run/ios/runIosAsync.js.map +1 -0
  252. package/build/src/run/resolveBundlerProps.js +34 -0
  253. package/build/src/run/resolveBundlerProps.js.map +1 -0
  254. package/build/src/run/startBundler.js +82 -0
  255. package/build/src/run/startBundler.js.map +1 -0
  256. package/build/src/start/doctor/Prerequisite.js +47 -0
  257. package/build/src/start/doctor/Prerequisite.js.map +1 -0
  258. package/build/src/start/doctor/SecurityBinPrerequisite.js +27 -0
  259. package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -0
  260. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +70 -0
  261. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -0
  262. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +69 -0
  263. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -0
  264. package/build/src/start/doctor/apple/XcodePrerequisite.js +158 -0
  265. package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -0
  266. package/build/src/start/doctor/apple/XcrunPrerequisite.js +65 -0
  267. package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -0
  268. package/build/src/start/doctor/dependencies/bundledNativeModules.js +69 -0
  269. package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -0
  270. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +131 -0
  271. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -0
  272. package/build/src/start/doctor/dependencies/getMissingPackages.js +74 -0
  273. package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -0
  274. package/build/src/start/doctor/dependencies/getVersionedPackages.js +136 -0
  275. package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -0
  276. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +195 -0
  277. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -0
  278. package/build/src/start/doctor/ngrok/ExternalModule.js +169 -0
  279. package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -0
  280. package/build/src/start/doctor/ngrok/NgrokResolver.js +22 -0
  281. package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -0
  282. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +165 -0
  283. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -0
  284. package/build/src/start/doctor/typescript/updateTSConfig.js +99 -0
  285. package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -0
  286. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +111 -0
  287. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -0
  288. package/build/src/start/index.js +123 -0
  289. package/build/src/start/index.js.map +1 -0
  290. package/build/src/start/interface/KeyPressHandler.js +101 -0
  291. package/build/src/start/interface/KeyPressHandler.js.map +1 -0
  292. package/build/src/start/interface/commandsTable.js +195 -0
  293. package/build/src/start/interface/commandsTable.js.map +1 -0
  294. package/build/src/start/interface/interactiveActions.js +194 -0
  295. package/build/src/start/interface/interactiveActions.js.map +1 -0
  296. package/build/src/start/interface/startInterface.js +227 -0
  297. package/build/src/start/interface/startInterface.js.map +1 -0
  298. package/build/src/start/platforms/AppIdResolver.js +44 -0
  299. package/build/src/start/platforms/AppIdResolver.js.map +1 -0
  300. package/build/src/start/platforms/DeviceManager.js +43 -0
  301. package/build/src/start/platforms/DeviceManager.js.map +1 -0
  302. package/build/src/start/platforms/ExpoGoInstaller.js +127 -0
  303. package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -0
  304. package/build/src/start/platforms/PlatformManager.js +131 -0
  305. package/build/src/start/platforms/PlatformManager.js.map +1 -0
  306. package/build/src/start/platforms/android/ADBServer.js +114 -0
  307. package/build/src/start/platforms/android/ADBServer.js.map +1 -0
  308. package/build/src/start/platforms/android/AndroidAppIdResolver.js +44 -0
  309. package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -0
  310. package/build/src/start/platforms/android/AndroidDeviceManager.js +183 -0
  311. package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -0
  312. package/build/src/start/platforms/android/AndroidPlatformManager.js +35 -0
  313. package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -0
  314. package/build/src/start/platforms/android/AndroidSdk.js +41 -0
  315. package/build/src/start/platforms/android/AndroidSdk.js.map +1 -0
  316. package/build/src/start/platforms/android/activateWindow.js +80 -0
  317. package/build/src/start/platforms/android/activateWindow.js.map +1 -0
  318. package/build/src/start/platforms/android/adb.js +269 -0
  319. package/build/src/start/platforms/android/adb.js.map +1 -0
  320. package/build/src/start/platforms/android/adbReverse.js +95 -0
  321. package/build/src/start/platforms/android/adbReverse.js.map +1 -0
  322. package/build/src/start/platforms/android/emulator.js +126 -0
  323. package/build/src/start/platforms/android/emulator.js.map +1 -0
  324. package/build/src/start/platforms/android/getDevices.js +36 -0
  325. package/build/src/start/platforms/android/getDevices.js.map +1 -0
  326. package/build/src/start/platforms/android/gradle.js +86 -0
  327. package/build/src/start/platforms/android/gradle.js.map +1 -0
  328. package/build/src/start/platforms/android/promptAndroidDevice.js +56 -0
  329. package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -0
  330. package/build/src/start/platforms/ios/AppleAppIdResolver.js +53 -0
  331. package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -0
  332. package/build/src/start/platforms/ios/AppleDeviceManager.js +216 -0
  333. package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -0
  334. package/build/src/start/platforms/ios/ApplePlatformManager.js +31 -0
  335. package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -0
  336. package/build/src/start/platforms/ios/assertSystemRequirements.js +16 -0
  337. package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -0
  338. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +85 -0
  339. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -0
  340. package/build/src/start/platforms/ios/getBestSimulator.js +101 -0
  341. package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -0
  342. package/build/src/start/platforms/ios/promptAppleDevice.js +56 -0
  343. package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -0
  344. package/build/src/start/platforms/ios/simctl.js +243 -0
  345. package/build/src/start/platforms/ios/simctl.js.map +1 -0
  346. package/build/src/start/platforms/ios/simctlLogging.js +220 -0
  347. package/build/src/start/platforms/ios/simctlLogging.js.map +1 -0
  348. package/build/src/start/platforms/ios/xcrun.js +46 -0
  349. package/build/src/start/platforms/ios/xcrun.js.map +1 -0
  350. package/build/src/start/project/devices.js +79 -0
  351. package/build/src/start/project/devices.js.map +1 -0
  352. package/build/src/start/project/dotExpo.js +74 -0
  353. package/build/src/start/project/dotExpo.js.map +1 -0
  354. package/build/src/start/project/settings.js +13 -0
  355. package/build/src/start/project/settings.js.map +1 -0
  356. package/build/src/start/resolveOptions.js +135 -0
  357. package/build/src/start/resolveOptions.js.map +1 -0
  358. package/build/src/start/server/AsyncNgrok.js +220 -0
  359. package/build/src/start/server/AsyncNgrok.js.map +1 -0
  360. package/build/src/start/server/BundlerDevServer.js +356 -0
  361. package/build/src/start/server/BundlerDevServer.js.map +1 -0
  362. package/build/src/start/server/DevServerManager.js +214 -0
  363. package/build/src/start/server/DevServerManager.js.map +1 -0
  364. package/build/src/start/server/DevToolsPluginManager.js +63 -0
  365. package/build/src/start/server/DevToolsPluginManager.js.map +1 -0
  366. package/build/src/start/server/DevelopmentSession.js +114 -0
  367. package/build/src/start/server/DevelopmentSession.js.map +1 -0
  368. package/build/src/start/server/ReactDevToolsProxy.js +73 -0
  369. package/build/src/start/server/ReactDevToolsProxy.js.map +1 -0
  370. package/build/src/start/server/UrlCreator.js +175 -0
  371. package/build/src/start/server/UrlCreator.js.map +1 -0
  372. package/build/src/start/server/getStaticRenderFunctions.js +164 -0
  373. package/build/src/start/server/getStaticRenderFunctions.js.map +1 -0
  374. package/build/src/start/server/metro/MetroBundlerDevServer.js +485 -0
  375. package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -0
  376. package/build/src/start/server/metro/MetroTerminalReporter.js +165 -0
  377. package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -0
  378. package/build/src/start/server/metro/TerminalReporter.js +92 -0
  379. package/build/src/start/server/metro/TerminalReporter.js.map +1 -0
  380. package/build/src/start/server/metro/TerminalReporter.types.js +6 -0
  381. package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -0
  382. package/build/src/start/server/metro/bundleApiRoutes.js +52 -0
  383. package/build/src/start/server/metro/bundleApiRoutes.js.map +1 -0
  384. package/build/src/start/server/metro/createExpoMetroResolver.js +187 -0
  385. package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -0
  386. package/build/src/start/server/metro/createJResolver.js +149 -0
  387. package/build/src/start/server/metro/createJResolver.js.map +1 -0
  388. package/build/src/start/server/metro/createServerRouteMiddleware.js +124 -0
  389. package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -0
  390. package/build/src/start/server/metro/externals.js +94 -0
  391. package/build/src/start/server/metro/externals.js.map +1 -0
  392. package/build/src/start/server/metro/fetchRouterManifest.js +60 -0
  393. package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -0
  394. package/build/src/start/server/metro/formatFileCandidates.js +72 -0
  395. package/build/src/start/server/metro/formatFileCandidates.js.map +1 -0
  396. package/build/src/start/server/metro/getCssModulesFromBundler.js +77 -0
  397. package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -0
  398. package/build/src/start/server/metro/inspector-proxy/device.js +110 -0
  399. package/build/src/start/server/metro/inspector-proxy/device.js.map +1 -0
  400. package/build/src/start/server/metro/inspector-proxy/handlers/NetworkResponse.js +29 -0
  401. package/build/src/start/server/metro/inspector-proxy/handlers/NetworkResponse.js.map +1 -0
  402. package/build/src/start/server/metro/inspector-proxy/handlers/PageReload.js +22 -0
  403. package/build/src/start/server/metro/inspector-proxy/handlers/PageReload.js.map +1 -0
  404. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerGetPossibleBreakpoints.js +21 -0
  405. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -0
  406. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerScriptParsed.js +55 -0
  407. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerScriptParsed.js.map +1 -0
  408. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerSetBreakpointByUrl.js +17 -0
  409. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -0
  410. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeRuntimeCallFunctionOn.js +24 -0
  411. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeRuntimeCallFunctionOn.js.map +1 -0
  412. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeRuntimeGetProperties.js +39 -0
  413. package/build/src/start/server/metro/inspector-proxy/handlers/VscodeRuntimeGetProperties.js.map +1 -0
  414. package/build/src/start/server/metro/inspector-proxy/handlers/types.js +6 -0
  415. package/build/src/start/server/metro/inspector-proxy/handlers/types.js.map +1 -0
  416. package/build/src/start/server/metro/inspector-proxy/handlers/utils.js +11 -0
  417. package/build/src/start/server/metro/inspector-proxy/handlers/utils.js.map +1 -0
  418. package/build/src/start/server/metro/inspector-proxy/index.js +24 -0
  419. package/build/src/start/server/metro/inspector-proxy/index.js.map +1 -0
  420. package/build/src/start/server/metro/inspector-proxy/proxy.js +169 -0
  421. package/build/src/start/server/metro/inspector-proxy/proxy.js.map +1 -0
  422. package/build/src/start/server/metro/instantiateMetro.js +194 -0
  423. package/build/src/start/server/metro/instantiateMetro.js.map +1 -0
  424. package/build/src/start/server/metro/metroErrorInterface.js +198 -0
  425. package/build/src/start/server/metro/metroErrorInterface.js.map +1 -0
  426. package/build/src/start/server/metro/metroErrors.js +14 -0
  427. package/build/src/start/server/metro/metroErrors.js.map +1 -0
  428. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +51 -0
  429. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -0
  430. package/build/src/start/server/metro/router.js +83 -0
  431. package/build/src/start/server/metro/router.js.map +1 -0
  432. package/build/src/start/server/metro/runServer-fork.js +96 -0
  433. package/build/src/start/server/metro/runServer-fork.js.map +1 -0
  434. package/build/src/start/server/metro/serializeHtml.js +43 -0
  435. package/build/src/start/server/metro/serializeHtml.js.map +1 -0
  436. package/build/src/start/server/metro/symbolicate.js +6 -0
  437. package/build/src/start/server/metro/symbolicate.js.map +1 -0
  438. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +91 -0
  439. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -0
  440. package/build/src/start/server/metro/withMetroMultiPlatform.js +402 -0
  441. package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -0
  442. package/build/src/start/server/metro/withMetroResolvers.js +272 -0
  443. package/build/src/start/server/metro/withMetroResolvers.js.map +1 -0
  444. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +27 -0
  445. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -0
  446. package/build/src/start/server/middleware/CreateFileMiddleware.js +106 -0
  447. package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -0
  448. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +61 -0
  449. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -0
  450. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +236 -0
  451. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -0
  452. package/build/src/start/server/middleware/ExpoMiddleware.js +83 -0
  453. package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -0
  454. package/build/src/start/server/middleware/FaviconMiddleware.js +42 -0
  455. package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -0
  456. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +24 -0
  457. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -0
  458. package/build/src/start/server/middleware/InterstitialPageMiddleware.js +81 -0
  459. package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -0
  460. package/build/src/start/server/middleware/ManifestMiddleware.js +300 -0
  461. package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -0
  462. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +35 -0
  463. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -0
  464. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +75 -0
  465. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -0
  466. package/build/src/start/server/middleware/ServeStaticMiddleware.js +62 -0
  467. package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -0
  468. package/build/src/start/server/middleware/inspector/JsInspector.js +69 -0
  469. package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -0
  470. package/build/src/start/server/middleware/inspector/LaunchBrowser.js +61 -0
  471. package/build/src/start/server/middleware/inspector/LaunchBrowser.js.map +1 -0
  472. package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js +13 -0
  473. package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js.map +1 -0
  474. package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js +82 -0
  475. package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js.map +1 -0
  476. package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js +79 -0
  477. package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js.map +1 -0
  478. package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js +124 -0
  479. package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js.map +1 -0
  480. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +64 -0
  481. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -0
  482. package/build/src/start/server/middleware/inspector/middlwareMutations.js +19 -0
  483. package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -0
  484. package/build/src/start/server/middleware/metroOptions.js +128 -0
  485. package/build/src/start/server/middleware/metroOptions.js.map +1 -0
  486. package/build/src/start/server/middleware/mutations.js +19 -0
  487. package/build/src/start/server/middleware/mutations.js.map +1 -0
  488. package/build/src/start/server/middleware/remoteDevtoolsCorsMiddleware.js +31 -0
  489. package/build/src/start/server/middleware/remoteDevtoolsCorsMiddleware.js.map +1 -0
  490. package/build/src/start/server/middleware/remoteDevtoolsSecurityHeadersMiddleware.js +17 -0
  491. package/build/src/start/server/middleware/remoteDevtoolsSecurityHeadersMiddleware.js.map +1 -0
  492. package/build/src/start/server/middleware/resolveAssets.js +110 -0
  493. package/build/src/start/server/middleware/resolveAssets.js.map +1 -0
  494. package/build/src/start/server/middleware/resolvePlatform.js +47 -0
  495. package/build/src/start/server/middleware/resolvePlatform.js.map +1 -0
  496. package/build/src/start/server/middleware/server.types.js +6 -0
  497. package/build/src/start/server/middleware/server.types.js.map +1 -0
  498. package/build/src/start/server/middleware/suppressErrorMiddleware.js +16 -0
  499. package/build/src/start/server/middleware/suppressErrorMiddleware.js.map +1 -0
  500. package/build/src/start/server/openPlatforms.js +30 -0
  501. package/build/src/start/server/openPlatforms.js.map +1 -0
  502. package/build/src/start/server/platformBundlers.js +18 -0
  503. package/build/src/start/server/platformBundlers.js.map +1 -0
  504. package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js +38 -0
  505. package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js.map +1 -0
  506. package/build/src/start/server/type-generation/__typetests__/generateFixtures.js +38 -0
  507. package/build/src/start/server/type-generation/__typetests__/generateFixtures.js.map +1 -0
  508. package/build/src/start/server/type-generation/__typetests__/route.test.js +176 -0
  509. package/build/src/start/server/type-generation/__typetests__/route.test.js.map +1 -0
  510. package/build/src/start/server/type-generation/expo-env.js +27 -0
  511. package/build/src/start/server/type-generation/expo-env.js.map +1 -0
  512. package/build/src/start/server/type-generation/routes.js +474 -0
  513. package/build/src/start/server/type-generation/routes.js.map +1 -0
  514. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +56 -0
  515. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -0
  516. package/build/src/start/server/type-generation/tsconfig.js +89 -0
  517. package/build/src/start/server/type-generation/tsconfig.js.map +1 -0
  518. package/build/src/start/server/webTemplate.js +84 -0
  519. package/build/src/start/server/webTemplate.js.map +1 -0
  520. package/build/src/start/server/webpack/WebpackBundlerDevServer.js +266 -0
  521. package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -0
  522. package/build/src/start/server/webpack/compile.js +64 -0
  523. package/build/src/start/server/webpack/compile.js.map +1 -0
  524. package/build/src/start/server/webpack/formatWebpackMessages.js +94 -0
  525. package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -0
  526. package/build/src/start/server/webpack/resolveFromProject.js +43 -0
  527. package/build/src/start/server/webpack/resolveFromProject.js.map +1 -0
  528. package/build/src/start/server/webpack/tls.js +72 -0
  529. package/build/src/start/server/webpack/tls.js.map +1 -0
  530. package/build/src/start/startAsync.js +154 -0
  531. package/build/src/start/startAsync.js.map +1 -0
  532. package/build/src/utils/FileNotifier.js +90 -0
  533. package/build/src/utils/FileNotifier.js.map +1 -0
  534. package/build/src/utils/analytics/getDevClientProperties.js +47 -0
  535. package/build/src/utils/analytics/getDevClientProperties.js.map +1 -0
  536. package/build/src/utils/analytics/getMetroDebugProperties.js +15 -0
  537. package/build/src/utils/analytics/getMetroDebugProperties.js.map +1 -0
  538. package/build/src/utils/analytics/getMetroProperties.js +28 -0
  539. package/build/src/utils/analytics/getMetroProperties.js.map +1 -0
  540. package/build/src/utils/analytics/metroDebuggerMiddleware.js +55 -0
  541. package/build/src/utils/analytics/metroDebuggerMiddleware.js.map +1 -0
  542. package/build/src/utils/analytics/rudderstackClient.js +147 -0
  543. package/build/src/utils/analytics/rudderstackClient.js.map +1 -0
  544. package/build/src/utils/ansi.js +17 -0
  545. package/build/src/utils/ansi.js.map +1 -0
  546. package/build/src/utils/args.js +79 -0
  547. package/build/src/utils/args.js.map +1 -0
  548. package/build/src/utils/array.js +67 -0
  549. package/build/src/utils/array.js.map +1 -0
  550. package/build/src/utils/cocoapods.js +191 -0
  551. package/build/src/utils/cocoapods.js.map +1 -0
  552. package/build/src/utils/codesigning.js +311 -0
  553. package/build/src/utils/codesigning.js.map +1 -0
  554. package/build/src/utils/createFileTransform.js +89 -0
  555. package/build/src/utils/createFileTransform.js.map +1 -0
  556. package/build/src/utils/delay.js +39 -0
  557. package/build/src/utils/delay.js.map +1 -0
  558. package/build/src/utils/dir.js +63 -0
  559. package/build/src/utils/dir.js.map +1 -0
  560. package/build/src/utils/downloadAppAsync.js +73 -0
  561. package/build/src/utils/downloadAppAsync.js.map +1 -0
  562. package/build/src/utils/downloadExpoGoAsync.js +116 -0
  563. package/build/src/utils/downloadExpoGoAsync.js.map +1 -0
  564. package/build/src/utils/editor.js +69 -0
  565. package/build/src/utils/editor.js.map +1 -0
  566. package/build/src/utils/env.js +131 -0
  567. package/build/src/utils/env.js.map +1 -0
  568. package/build/src/utils/errors.js +70 -0
  569. package/build/src/utils/errors.js.map +1 -0
  570. package/build/src/utils/exit.js +69 -0
  571. package/build/src/utils/exit.js.map +1 -0
  572. package/build/src/utils/findUp.js +33 -0
  573. package/build/src/utils/findUp.js.map +1 -0
  574. package/build/src/utils/fn.js +32 -0
  575. package/build/src/utils/fn.js.map +1 -0
  576. package/build/src/utils/getOrPromptApplicationId.js +181 -0
  577. package/build/src/utils/getOrPromptApplicationId.js.map +1 -0
  578. package/build/src/utils/getRunningProcess.js +96 -0
  579. package/build/src/utils/getRunningProcess.js.map +1 -0
  580. package/build/src/utils/git.js +89 -0
  581. package/build/src/utils/git.js.map +1 -0
  582. package/build/src/utils/glob.js +65 -0
  583. package/build/src/utils/glob.js.map +1 -0
  584. package/build/src/utils/interactive.js +11 -0
  585. package/build/src/utils/interactive.js.map +1 -0
  586. package/build/src/utils/ip.js +16 -0
  587. package/build/src/utils/ip.js.map +1 -0
  588. package/build/src/utils/isModuleSymlinked.js +37 -0
  589. package/build/src/utils/isModuleSymlinked.js.map +1 -0
  590. package/build/src/utils/link.js +31 -0
  591. package/build/src/utils/link.js.map +1 -0
  592. package/build/src/utils/mergeGitIgnorePaths.js +154 -0
  593. package/build/src/utils/mergeGitIgnorePaths.js.map +1 -0
  594. package/build/src/utils/modifyConfigAsync.js +68 -0
  595. package/build/src/utils/modifyConfigAsync.js.map +1 -0
  596. package/build/src/utils/modifyConfigPlugins.js +51 -0
  597. package/build/src/utils/modifyConfigPlugins.js.map +1 -0
  598. package/build/src/utils/nodeEnv.js +11 -0
  599. package/build/src/utils/nodeEnv.js.map +1 -0
  600. package/build/src/utils/nodeModules.js +29 -0
  601. package/build/src/utils/nodeModules.js.map +1 -0
  602. package/build/src/utils/npm.js +116 -0
  603. package/build/src/utils/npm.js.map +1 -0
  604. package/build/src/utils/obj.js +45 -0
  605. package/build/src/utils/obj.js.map +1 -0
  606. package/build/src/utils/open.js +26 -0
  607. package/build/src/utils/open.js.map +1 -0
  608. package/build/src/utils/ora.js +91 -0
  609. package/build/src/utils/ora.js.map +1 -0
  610. package/build/src/utils/plist.js +59 -0
  611. package/build/src/utils/plist.js.map +1 -0
  612. package/build/src/utils/port.js +160 -0
  613. package/build/src/utils/port.js.map +1 -0
  614. package/build/src/utils/profile.js +63 -0
  615. package/build/src/utils/profile.js.map +1 -0
  616. package/build/src/utils/progress.js +61 -0
  617. package/build/src/utils/progress.js.map +1 -0
  618. package/build/src/utils/prompts.js +116 -0
  619. package/build/src/utils/prompts.js.map +1 -0
  620. package/build/src/utils/resolveArgs.js +140 -0
  621. package/build/src/utils/resolveArgs.js.map +1 -0
  622. package/build/src/utils/scheme.js +128 -0
  623. package/build/src/utils/scheme.js.map +1 -0
  624. package/build/src/utils/strings.js +24 -0
  625. package/build/src/utils/strings.js.map +1 -0
  626. package/build/src/utils/tar.js +62 -0
  627. package/build/src/utils/tar.js.map +1 -0
  628. package/build/src/utils/template.js +21 -0
  629. package/build/src/utils/template.js.map +1 -0
  630. package/build/src/utils/terminal.js +10 -0
  631. package/build/src/utils/terminal.js.map +1 -0
  632. package/build/src/utils/tsconfig/evaluateTsConfig.js +61 -0
  633. package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -0
  634. package/build/src/utils/tsconfig/loadTsConfigPaths.js +61 -0
  635. package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -0
  636. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +88 -0
  637. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -0
  638. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +51 -0
  639. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -0
  640. package/build/src/utils/url.js +67 -0
  641. package/build/src/utils/url.js.map +1 -0
  642. package/build/src/utils/validateApplicationId.js +179 -0
  643. package/build/src/utils/validateApplicationId.js.map +1 -0
  644. package/build/src/utils/variadic.js +65 -0
  645. package/build/src/utils/variadic.js.map +1 -0
  646. package/build/src/whoami/index.js +47 -0
  647. package/build/src/whoami/index.js.map +1 -0
  648. package/build/src/whoami/whoamiAsync.js +44 -0
  649. package/build/src/whoami/whoamiAsync.js.map +1 -0
  650. package/package.json +163 -0
  651. package/static/loading-page/index.html +363 -0
  652. package/static/react-devtools-page/index.html +144 -0
  653. package/static/shims/react-native-web/dist/cjs/exports/AppRegistry/AppContainer.js +13 -0
  654. package/static/shims/react-native-web/dist/cjs/exports/BackHandler/index.js +10 -0
  655. package/static/shims/react-native-web/dist/exports/AppRegistry/AppContainer.js +12 -0
  656. package/static/shims/react-native-web/dist/exports/BackHandler/index.js +7 -0
  657. package/static/template/babel.config.js +6 -0
  658. package/static/template/index.html +36 -0
  659. package/static/template/metro.config.js +7 -0
  660. package/static/template/serve.json +13 -0
  661. package/static/template/webpack.config.js +7 -0
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.resolveStringOrBooleanArgsAsync = resolveStringOrBooleanArgsAsync;
6
+ exports.resolveCustomBooleanArgsAsync = resolveCustomBooleanArgsAsync;
7
+ exports._resolveStringOrBooleanArgs = _resolveStringOrBooleanArgs;
8
+ exports.collapseAliases = collapseAliases;
9
+ exports.assertUnknownArgs = assertUnknownArgs;
10
+ exports.assertDuplicateArgs = assertDuplicateArgs;
11
+ var _array = require("./array");
12
+ var _errors = require("./errors");
13
+ /** Split up arguments that are formatted like `--foo=bar` or `-f="bar"` to `['--foo', 'bar']` */ function splitArgs(args) {
14
+ const result = [];
15
+ for (const arg of args){
16
+ if (arg.startsWith("-")) {
17
+ const [key, ...props] = arg.split("=");
18
+ result.push(key);
19
+ if (props.length) {
20
+ result.push(props.join("="));
21
+ }
22
+ } else {
23
+ result.push(arg);
24
+ }
25
+ }
26
+ return result;
27
+ }
28
+ async function resolveStringOrBooleanArgsAsync(args, rawMap, extraArgs) {
29
+ args = splitArgs(args);
30
+ // Assert any missing arguments
31
+ assertUnknownArgs({
32
+ ...rawMap,
33
+ ...extraArgs
34
+ }, args);
35
+ // Collapse aliases into fully qualified arguments.
36
+ args = collapseAliases(extraArgs, args);
37
+ // Resolve all of the string or boolean arguments and the project root.
38
+ return _resolveStringOrBooleanArgs({
39
+ ...rawMap,
40
+ ...extraArgs
41
+ }, args);
42
+ }
43
+ async function resolveCustomBooleanArgsAsync(args, rawMap, extraArgs) {
44
+ const results = await resolveStringOrBooleanArgsAsync(args, rawMap, extraArgs);
45
+ return {
46
+ ...results,
47
+ args: Object.fromEntries(Object.entries(results.args).map(([key, value])=>{
48
+ if (extraArgs[key]) {
49
+ if (typeof value === "string") {
50
+ if (![
51
+ "true",
52
+ "false"
53
+ ].includes(value)) {
54
+ throw new _errors.CommandError("BAD_ARGS", `Invalid boolean argument: ${key}=${value}. Expected one of: true, false`);
55
+ }
56
+ return [
57
+ key,
58
+ value === "true"
59
+ ];
60
+ }
61
+ }
62
+ return [
63
+ key,
64
+ value
65
+ ];
66
+ }))
67
+ };
68
+ }
69
+ function _resolveStringOrBooleanArgs(arg, args) {
70
+ // Default project root, if a custom one is defined then it will overwrite this.
71
+ let projectRoot = ".";
72
+ // The resolved arguments.
73
+ const settings = {};
74
+ // Create a list of possible arguments, this will filter out aliases.
75
+ const possibleArgs = Object.entries(arg).filter(([, value])=>typeof value !== "string"
76
+ ).map(([key])=>key
77
+ );
78
+ // Loop over arguments in reverse order so we can resolve if a value belongs to a flag.
79
+ for(let i = args.length - 1; i > -1; i--){
80
+ const value = args[i];
81
+ // At this point we should have converted all aliases to fully qualified arguments.
82
+ if (value.startsWith("--")) {
83
+ // If we ever find an argument then it must be a boolean because we are checking in reverse
84
+ // and removing arguments from the array if we find a string.
85
+ settings[value] = true;
86
+ } else {
87
+ // Get the previous argument in the array.
88
+ const nextValue = i > 0 ? args[i - 1] : null;
89
+ if (nextValue && possibleArgs.includes(nextValue)) {
90
+ settings[nextValue] = value;
91
+ i--;
92
+ } else if (// If the last value is not a flag and it doesn't have a recognized flag before it (instead having a string value or nothing)
93
+ // then it must be the project root.
94
+ i === args.length - 1) {
95
+ projectRoot = value;
96
+ } else {
97
+ // This will asserts if two strings are passed in a row and not at the end of the line.
98
+ throw new _errors.CommandError("BAD_ARGS", `Unknown argument: ${value}`);
99
+ }
100
+ }
101
+ }
102
+ return {
103
+ args: settings,
104
+ projectRoot
105
+ };
106
+ }
107
+ function collapseAliases(arg, args) {
108
+ const aliasMap = getAliasTuples(arg);
109
+ for (const [arg1, alias] of aliasMap){
110
+ args = (0, _array).replaceValue(args, arg1, alias);
111
+ }
112
+ // Assert if there are duplicate flags after we collapse the aliases.
113
+ assertDuplicateArgs(args, aliasMap);
114
+ return args;
115
+ }
116
+ function assertUnknownArgs(arg2, args) {
117
+ const allowedArgs = Object.keys(arg2);
118
+ const unknownArgs = args.filter((arg)=>!allowedArgs.includes(arg) && arg.startsWith("-")
119
+ );
120
+ if (unknownArgs.length > 0) {
121
+ throw new _errors.CommandError(`Unknown arguments: ${unknownArgs.join(", ")}`);
122
+ }
123
+ }
124
+ function getAliasTuples(arg) {
125
+ return Object.entries(arg).filter(([, value])=>typeof value === "string"
126
+ );
127
+ }
128
+ function assertDuplicateArgs(args, argNameAliasTuple) {
129
+ for (const [argName, argNameAlias] of argNameAliasTuple){
130
+ if (args.filter((a)=>[
131
+ argName,
132
+ argNameAlias
133
+ ].includes(a)
134
+ ).length > 1) {
135
+ throw new _errors.CommandError("BAD_ARGS", `Can only provide one instance of ${argName} or ${argNameAlias}`);
136
+ }
137
+ }
138
+ }
139
+
140
+ //# sourceMappingURL=resolveArgs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/resolveArgs.ts"],"sourcesContent":["import arg, { Spec } from 'arg';\n\nimport { replaceValue } from './array';\nimport { CommandError } from './errors';\n\n/** Split up arguments that are formatted like `--foo=bar` or `-f=\"bar\"` to `['--foo', 'bar']` */\nfunction splitArgs(args: string[]): string[] {\n const result: string[] = [];\n\n for (const arg of args) {\n if (arg.startsWith('-')) {\n const [key, ...props] = arg.split('=');\n result.push(key);\n if (props.length) {\n result.push(props.join('='));\n }\n } else {\n result.push(arg);\n }\n }\n\n return result;\n}\n\n/**\n * Enables the resolution of arguments that can either be a string or a boolean.\n *\n * @param args arguments that were passed to the command.\n * @param rawMap raw map of arguments that are passed to the command.\n * @param extraArgs extra arguments and aliases that should be resolved as string or boolean.\n * @returns parsed arguments and project root.\n */\nexport async function resolveStringOrBooleanArgsAsync(\n args: string[],\n rawMap: arg.Spec,\n extraArgs: arg.Spec\n) {\n args = splitArgs(args);\n\n // Assert any missing arguments\n assertUnknownArgs(\n {\n ...rawMap,\n ...extraArgs,\n },\n args\n );\n\n // Collapse aliases into fully qualified arguments.\n args = collapseAliases(extraArgs, args);\n\n // Resolve all of the string or boolean arguments and the project root.\n return _resolveStringOrBooleanArgs({ ...rawMap, ...extraArgs }, args);\n}\n\n/**\n * Enables the resolution of boolean arguments that can be formatted like `--foo=true` or `--foo false`\n *\n * @param args arguments that were passed to the command.\n * @param rawMap raw map of arguments that are passed to the command.\n * @param extraArgs extra arguments and aliases that should be resolved as string or boolean.\n * @returns parsed arguments and project root.\n */\nexport async function resolveCustomBooleanArgsAsync(\n args: string[],\n rawMap: arg.Spec,\n extraArgs: arg.Spec\n) {\n const results = await resolveStringOrBooleanArgsAsync(args, rawMap, extraArgs);\n\n return {\n ...results,\n args: Object.fromEntries(\n Object.entries(results.args).map(([key, value]) => {\n if (extraArgs[key]) {\n if (typeof value === 'string') {\n if (!['true', 'false'].includes(value)) {\n throw new CommandError(\n 'BAD_ARGS',\n `Invalid boolean argument: ${key}=${value}. Expected one of: true, false`\n );\n }\n return [key, value === 'true'];\n }\n }\n return [key, value];\n })\n ),\n };\n}\n\nexport function _resolveStringOrBooleanArgs(arg: Spec, args: string[]) {\n // Default project root, if a custom one is defined then it will overwrite this.\n let projectRoot: string = '.';\n // The resolved arguments.\n const settings: Record<string, string | boolean | undefined> = {};\n\n // Create a list of possible arguments, this will filter out aliases.\n const possibleArgs = Object.entries(arg)\n .filter(([, value]) => typeof value !== 'string')\n .map(([key]) => key);\n\n // Loop over arguments in reverse order so we can resolve if a value belongs to a flag.\n for (let i = args.length - 1; i > -1; i--) {\n const value = args[i];\n // At this point we should have converted all aliases to fully qualified arguments.\n if (value.startsWith('--')) {\n // If we ever find an argument then it must be a boolean because we are checking in reverse\n // and removing arguments from the array if we find a string.\n settings[value] = true;\n } else {\n // Get the previous argument in the array.\n const nextValue = i > 0 ? args[i - 1] : null;\n if (nextValue && possibleArgs.includes(nextValue)) {\n settings[nextValue] = value;\n i--;\n } else if (\n // If the last value is not a flag and it doesn't have a recognized flag before it (instead having a string value or nothing)\n // then it must be the project root.\n i ===\n args.length - 1\n ) {\n projectRoot = value;\n } else {\n // This will asserts if two strings are passed in a row and not at the end of the line.\n throw new CommandError('BAD_ARGS', `Unknown argument: ${value}`);\n }\n }\n }\n\n return {\n args: settings,\n projectRoot,\n };\n}\n\n/** Convert all aliases to fully qualified flag names. */\nexport function collapseAliases(arg: Spec, args: string[]): string[] {\n const aliasMap = getAliasTuples(arg);\n\n for (const [arg, alias] of aliasMap) {\n args = replaceValue(args, arg, alias);\n }\n\n // Assert if there are duplicate flags after we collapse the aliases.\n assertDuplicateArgs(args, aliasMap);\n return args;\n}\n\n/** Assert that the spec has unknown arguments. */\nexport function assertUnknownArgs(arg: Spec, args: string[]) {\n const allowedArgs = Object.keys(arg);\n const unknownArgs = args.filter((arg) => !allowedArgs.includes(arg) && arg.startsWith('-'));\n if (unknownArgs.length > 0) {\n throw new CommandError(`Unknown arguments: ${unknownArgs.join(', ')}`);\n }\n}\n\nfunction getAliasTuples(arg: Spec): [string, string][] {\n return Object.entries(arg).filter(([, value]) => typeof value === 'string') as [string, string][];\n}\n\n/** Asserts that a duplicate flag has been used, this naively throws without knowing if an alias or flag were used as the duplicate. */\nexport function assertDuplicateArgs(args: string[], argNameAliasTuple: [string, string][]) {\n for (const [argName, argNameAlias] of argNameAliasTuple) {\n if (args.filter((a) => [argName, argNameAlias].includes(a)).length > 1) {\n throw new CommandError(\n 'BAD_ARGS',\n `Can only provide one instance of ${argName} or ${argNameAlias}`\n );\n }\n }\n}\n"],"names":["resolveStringOrBooleanArgsAsync","resolveCustomBooleanArgsAsync","_resolveStringOrBooleanArgs","collapseAliases","assertUnknownArgs","assertDuplicateArgs","splitArgs","args","result","arg","startsWith","key","props","split","push","length","join","rawMap","extraArgs","results","Object","fromEntries","entries","map","value","includes","CommandError","projectRoot","settings","possibleArgs","filter","i","nextValue","aliasMap","getAliasTuples","alias","replaceValue","allowedArgs","keys","unknownArgs","argNameAliasTuple","argName","argNameAlias","a"],"mappings":"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"}
@@ -0,0 +1,128 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.getSchemesForIosAsync = getSchemesForIosAsync;
6
+ exports.getSchemesForAndroidAsync = getSchemesForAndroidAsync;
7
+ exports.getOptionalDevClientSchemeAsync = getOptionalDevClientSchemeAsync;
8
+ var _config = require("@expo/config");
9
+ var _configPlugins = require("@expo/config-plugins");
10
+ var _getInfoPlistPath = require("@expo/config-plugins/build/ios/utils/getInfoPlistPath");
11
+ var _plist = _interopRequireDefault(require("@expo/plist"));
12
+ var _fs = _interopRequireDefault(require("fs"));
13
+ var _path = _interopRequireDefault(require("path"));
14
+ var _resolveFrom = _interopRequireDefault(require("resolve-from"));
15
+ var _array = require("./array");
16
+ var Log = _interopRequireWildcard(require("../log"));
17
+ var _clearNativeFolder = require("../prebuild/clearNativeFolder");
18
+ function _interopRequireDefault(obj) {
19
+ return obj && obj.__esModule ? obj : {
20
+ default: obj
21
+ };
22
+ }
23
+ function _interopRequireWildcard(obj) {
24
+ if (obj && obj.__esModule) {
25
+ return obj;
26
+ } else {
27
+ var newObj = {};
28
+ if (obj != null) {
29
+ for(var key in obj){
30
+ if (Object.prototype.hasOwnProperty.call(obj, key)) {
31
+ var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};
32
+ if (desc.get || desc.set) {
33
+ Object.defineProperty(newObj, key, desc);
34
+ } else {
35
+ newObj[key] = obj[key];
36
+ }
37
+ }
38
+ }
39
+ }
40
+ newObj.default = obj;
41
+ return newObj;
42
+ }
43
+ }
44
+ const debug = require("debug")("expo:utils:scheme");
45
+ // sort longest to ensure uniqueness.
46
+ // this might be undesirable as it causes the QR code to be longer.
47
+ function sortLongest(obj) {
48
+ return obj.sort((a, b)=>b.length - a.length
49
+ );
50
+ }
51
+ /**
52
+ * Resolve the scheme for the dev client using two methods:
53
+ * - filter on known Expo schemes, starting with `exp+`, avoiding 3rd party schemes.
54
+ * - filter on longest to ensure uniqueness.
55
+ */ function resolveExpoOrLongestScheme(schemes) {
56
+ const expoOnlySchemes = schemes.filter((scheme)=>scheme.startsWith("exp+")
57
+ );
58
+ return expoOnlySchemes.length > 0 ? sortLongest(expoOnlySchemes) : sortLongest(schemes);
59
+ }
60
+ async function getSchemesForIosAsync(projectRoot) {
61
+ try {
62
+ const infoPlistBuildProperty = (0, _getInfoPlistPath).getInfoPlistPathFromPbxproj(projectRoot);
63
+ debug(`ios application Info.plist path:`, infoPlistBuildProperty);
64
+ if (infoPlistBuildProperty) {
65
+ const configPath = _path.default.join(projectRoot, "ios", infoPlistBuildProperty);
66
+ const rawPlist = _fs.default.readFileSync(configPath, "utf8");
67
+ const plistObject = _plist.default.parse(rawPlist);
68
+ const schemes = _configPlugins.IOSConfig.Scheme.getSchemesFromPlist(plistObject);
69
+ debug(`ios application schemes:`, schemes);
70
+ return resolveExpoOrLongestScheme(schemes);
71
+ }
72
+ } catch (error) {
73
+ debug(`expected error collecting ios application schemes for the main target:`, error);
74
+ }
75
+ // No ios folder or some other error
76
+ return [];
77
+ }
78
+ async function getSchemesForAndroidAsync(projectRoot) {
79
+ try {
80
+ const configPath = await _configPlugins.AndroidConfig.Paths.getAndroidManifestAsync(projectRoot);
81
+ const manifest = await _configPlugins.AndroidConfig.Manifest.readAndroidManifestAsync(configPath);
82
+ const schemes = await _configPlugins.AndroidConfig.Scheme.getSchemesFromManifest(manifest);
83
+ debug(`android application schemes:`, schemes);
84
+ return resolveExpoOrLongestScheme(schemes);
85
+ } catch (error) {
86
+ debug(`expected error collecting android application schemes for the main activity:`, error);
87
+ // No android folder or some other error
88
+ return [];
89
+ }
90
+ }
91
+ // TODO: Revisit and test after run code is merged.
92
+ async function getManagedDevClientSchemeAsync(projectRoot) {
93
+ const { exp } = (0, _config).getConfig(projectRoot);
94
+ try {
95
+ const getDefaultScheme = require((0, _resolveFrom).default(projectRoot, "expo-dev-client/getDefaultScheme"));
96
+ const scheme = getDefaultScheme(exp);
97
+ return scheme;
98
+ } catch {
99
+ Log.warn("\nDevelopment build: Unable to get the default URI scheme for the project. Please make sure the expo-dev-client package is installed.");
100
+ return null;
101
+ }
102
+ }
103
+ async function getOptionalDevClientSchemeAsync(projectRoot) {
104
+ const [hasIos, hasAndroid] = await Promise.all([
105
+ (0, _clearNativeFolder).hasRequiredIOSFilesAsync(projectRoot),
106
+ (0, _clearNativeFolder).hasRequiredAndroidFilesAsync(projectRoot),
107
+ ]);
108
+ const [ios, android] = await Promise.all([
109
+ getSchemesForIosAsync(projectRoot),
110
+ getSchemesForAndroidAsync(projectRoot),
111
+ ]);
112
+ // Allow managed projects
113
+ if (!hasIos && !hasAndroid) {
114
+ return getManagedDevClientSchemeAsync(projectRoot);
115
+ }
116
+ let matching;
117
+ // Allow for only one native project to exist.
118
+ if (!hasIos) {
119
+ matching = android[0];
120
+ } else if (!hasAndroid) {
121
+ matching = ios[0];
122
+ } else {
123
+ [matching] = (0, _array).intersecting(ios, android);
124
+ }
125
+ return matching != null ? matching : null;
126
+ }
127
+
128
+ //# sourceMappingURL=scheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/scheme.ts"],"sourcesContent":["import { getConfig } from '@expo/config';\nimport { AndroidConfig, IOSConfig } from '@expo/config-plugins';\nimport { getInfoPlistPathFromPbxproj } from '@expo/config-plugins/build/ios/utils/getInfoPlistPath';\nimport plist from '@expo/plist';\nimport fs from 'fs';\nimport path from 'path';\nimport resolveFrom from 'resolve-from';\n\nimport { intersecting } from './array';\nimport * as Log from '../log';\nimport {\n hasRequiredAndroidFilesAsync,\n hasRequiredIOSFilesAsync,\n} from '../prebuild/clearNativeFolder';\n\nconst debug = require('debug')('expo:utils:scheme') as typeof console.log;\n\n// sort longest to ensure uniqueness.\n// this might be undesirable as it causes the QR code to be longer.\nfunction sortLongest(obj: string[]): string[] {\n return obj.sort((a, b) => b.length - a.length);\n}\n\n/**\n * Resolve the scheme for the dev client using two methods:\n * - filter on known Expo schemes, starting with `exp+`, avoiding 3rd party schemes.\n * - filter on longest to ensure uniqueness.\n */\nfunction resolveExpoOrLongestScheme(schemes: string[]): string[] {\n const expoOnlySchemes = schemes.filter((scheme) => scheme.startsWith('exp+'));\n return expoOnlySchemes.length > 0 ? sortLongest(expoOnlySchemes) : sortLongest(schemes);\n}\n\n// TODO: Revisit and test after run code is merged.\nexport async function getSchemesForIosAsync(projectRoot: string): Promise<string[]> {\n try {\n const infoPlistBuildProperty = getInfoPlistPathFromPbxproj(projectRoot);\n debug(`ios application Info.plist path:`, infoPlistBuildProperty);\n if (infoPlistBuildProperty) {\n const configPath = path.join(projectRoot, 'ios', infoPlistBuildProperty);\n const rawPlist = fs.readFileSync(configPath, 'utf8');\n const plistObject = plist.parse(rawPlist);\n const schemes = IOSConfig.Scheme.getSchemesFromPlist(plistObject);\n debug(`ios application schemes:`, schemes);\n return resolveExpoOrLongestScheme(schemes);\n }\n } catch (error) {\n debug(`expected error collecting ios application schemes for the main target:`, error);\n }\n // No ios folder or some other error\n return [];\n}\n\n// TODO: Revisit and test after run code is merged.\nexport async function getSchemesForAndroidAsync(projectRoot: string): Promise<string[]> {\n try {\n const configPath = await AndroidConfig.Paths.getAndroidManifestAsync(projectRoot);\n const manifest = await AndroidConfig.Manifest.readAndroidManifestAsync(configPath);\n const schemes = await AndroidConfig.Scheme.getSchemesFromManifest(manifest);\n debug(`android application schemes:`, schemes);\n return resolveExpoOrLongestScheme(schemes);\n } catch (error) {\n debug(`expected error collecting android application schemes for the main activity:`, error);\n // No android folder or some other error\n return [];\n }\n}\n\n// TODO: Revisit and test after run code is merged.\nasync function getManagedDevClientSchemeAsync(projectRoot: string): Promise<string | null> {\n const { exp } = getConfig(projectRoot);\n try {\n const getDefaultScheme = require(resolveFrom(projectRoot, 'expo-dev-client/getDefaultScheme'));\n const scheme = getDefaultScheme(exp);\n return scheme;\n } catch {\n Log.warn(\n '\\nDevelopment build: Unable to get the default URI scheme for the project. Please make sure the expo-dev-client package is installed.'\n );\n return null;\n }\n}\n\n// TODO: Revisit and test after run code is merged.\nexport async function getOptionalDevClientSchemeAsync(projectRoot: string): Promise<string | null> {\n const [hasIos, hasAndroid] = await Promise.all([\n hasRequiredIOSFilesAsync(projectRoot),\n hasRequiredAndroidFilesAsync(projectRoot),\n ]);\n\n const [ios, android] = await Promise.all([\n getSchemesForIosAsync(projectRoot),\n getSchemesForAndroidAsync(projectRoot),\n ]);\n\n // Allow managed projects\n if (!hasIos && !hasAndroid) {\n return getManagedDevClientSchemeAsync(projectRoot);\n }\n\n let matching: string;\n // Allow for only one native project to exist.\n if (!hasIos) {\n matching = android[0];\n } else if (!hasAndroid) {\n matching = ios[0];\n } else {\n [matching] = intersecting(ios, android);\n }\n return matching ?? null;\n}\n"],"names":["getSchemesForIosAsync","getSchemesForAndroidAsync","getOptionalDevClientSchemeAsync","Log","debug","require","sortLongest","obj","sort","a","b","length","resolveExpoOrLongestScheme","schemes","expoOnlySchemes","filter","scheme","startsWith","projectRoot","infoPlistBuildProperty","getInfoPlistPathFromPbxproj","configPath","path","join","rawPlist","fs","readFileSync","plistObject","plist","parse","IOSConfig","Scheme","getSchemesFromPlist","error","AndroidConfig","Paths","getAndroidManifestAsync","manifest","Manifest","readAndroidManifestAsync","getSchemesFromManifest","getManagedDevClientSchemeAsync","exp","getConfig","getDefaultScheme","resolveFrom","warn","hasIos","hasAndroid","Promise","all","hasRequiredIOSFilesAsync","hasRequiredAndroidFilesAsync","ios","android","matching","intersecting"],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.joinWithCommasAnd = joinWithCommasAnd;
6
+ function joinWithCommasAnd(items, limit = 10) {
7
+ if (!items.length) {
8
+ return "";
9
+ }
10
+ const uniqueItems = items.filter((value, index, array)=>array.indexOf(value) === index
11
+ );
12
+ if (uniqueItems.length === 1) {
13
+ return uniqueItems[0];
14
+ }
15
+ if (limit && uniqueItems.length > limit) {
16
+ const first = uniqueItems.slice(0, limit);
17
+ const remaining = uniqueItems.length - limit;
18
+ return `${first.join(", ")}, and ${remaining} ${remaining > 1 ? "others" : "other"}`;
19
+ }
20
+ const last = uniqueItems.pop();
21
+ return `${uniqueItems.join(", ")}${uniqueItems.length >= 2 ? "," : ""} and ${last}`;
22
+ }
23
+
24
+ //# sourceMappingURL=strings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/strings.ts"],"sourcesContent":["/**\n * Joins strings with commas and 'and', based on English rules, limiting the number of items enumerated to keep from filling the console.\n * @param items strings to join\n * @param limit max number of strings to enumerate before using 'others'\n * @returns joined string\n */\nexport function joinWithCommasAnd(items: string[], limit: number | undefined = 10): string {\n if (!items.length) {\n return '';\n }\n\n const uniqueItems = items.filter((value, index, array) => array.indexOf(value) === index);\n\n if (uniqueItems.length === 1) {\n return uniqueItems[0];\n }\n\n if (limit && uniqueItems.length > limit) {\n const first = uniqueItems.slice(0, limit);\n const remaining = uniqueItems.length - limit;\n return `${first.join(', ')}, and ${remaining} ${remaining > 1 ? 'others' : 'other'}`;\n }\n\n const last = uniqueItems.pop();\n return `${uniqueItems.join(', ')}${uniqueItems.length >= 2 ? ',' : ''} and ${last}`;\n}\n"],"names":["joinWithCommasAnd","items","limit","length","uniqueItems","filter","value","index","array","indexOf","first","slice","remaining","join","last","pop"],"mappings":"AAMA;;;;QAAgBA,iBAAiB,GAAjBA,iBAAiB;AAA1B,SAASA,iBAAiB,CAACC,KAAe,EAAEC,KAAyB,GAAG,EAAE,EAAU;IACzF,IAAI,CAACD,KAAK,CAACE,MAAM,EAAE;QACjB,OAAO,EAAE,CAAC;KACX;IAED,MAAMC,WAAW,GAAGH,KAAK,CAACI,MAAM,CAAC,CAACC,KAAK,EAAEC,KAAK,EAAEC,KAAK,GAAKA,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,KAAKC,KAAK;IAAA,CAAC,AAAC;IAE1F,IAAIH,WAAW,CAACD,MAAM,KAAK,CAAC,EAAE;QAC5B,OAAOC,WAAW,CAAC,CAAC,CAAC,CAAC;KACvB;IAED,IAAIF,KAAK,IAAIE,WAAW,CAACD,MAAM,GAAGD,KAAK,EAAE;QACvC,MAAMQ,KAAK,GAAGN,WAAW,CAACO,KAAK,CAAC,CAAC,EAAET,KAAK,CAAC,AAAC;QAC1C,MAAMU,SAAS,GAAGR,WAAW,CAACD,MAAM,GAAGD,KAAK,AAAC;QAC7C,OAAO,CAAC,EAAEQ,KAAK,CAACG,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,EAAED,SAAS,CAAC,CAAC,EAAEA,SAAS,GAAG,CAAC,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC;KACtF;IAED,MAAME,IAAI,GAAGV,WAAW,CAACW,GAAG,EAAE,AAAC;IAC/B,OAAO,CAAC,EAAEX,WAAW,CAACS,IAAI,CAAC,IAAI,CAAC,CAAC,EAAET,WAAW,CAACD,MAAM,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,KAAK,EAAEW,IAAI,CAAC,CAAC,CAAC;CACrF"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.extractAsync = extractAsync;
6
+ var _spawnAsync = _interopRequireDefault(require("@expo/spawn-async"));
7
+ var _tar = _interopRequireDefault(require("tar"));
8
+ var Log = _interopRequireWildcard(require("../log"));
9
+ function _interopRequireDefault(obj) {
10
+ return obj && obj.__esModule ? obj : {
11
+ default: obj
12
+ };
13
+ }
14
+ function _interopRequireWildcard(obj) {
15
+ if (obj && obj.__esModule) {
16
+ return obj;
17
+ } else {
18
+ var newObj = {};
19
+ if (obj != null) {
20
+ for(var key in obj){
21
+ if (Object.prototype.hasOwnProperty.call(obj, key)) {
22
+ var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};
23
+ if (desc.get || desc.set) {
24
+ Object.defineProperty(newObj, key, desc);
25
+ } else {
26
+ newObj[key] = obj[key];
27
+ }
28
+ }
29
+ }
30
+ }
31
+ newObj.default = obj;
32
+ return newObj;
33
+ }
34
+ }
35
+ const debug = require("debug")("expo:utils:tar");
36
+ async function extractAsync(input, output) {
37
+ try {
38
+ if (process.platform !== "win32") {
39
+ debug(`Extracting ${input} to ${output}`);
40
+ await (0, _spawnAsync).default("tar", [
41
+ "-xf",
42
+ input,
43
+ "-C",
44
+ output
45
+ ], {
46
+ stdio: "inherit"
47
+ });
48
+ return;
49
+ }
50
+ } catch (error) {
51
+ Log.warn(`Failed to extract tar using native tools, falling back on JS tar module. ${error.message}`);
52
+ }
53
+ debug(`Extracting ${input} to ${output} using JS tar module`);
54
+ // tar node module has previously had problems with big files, and seems to
55
+ // be slower, so only use it as a backup.
56
+ await _tar.default.extract({
57
+ file: input,
58
+ cwd: output
59
+ });
60
+ }
61
+
62
+ //# sourceMappingURL=tar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/tar.ts"],"sourcesContent":["import spawnAsync from '@expo/spawn-async';\nimport tar from 'tar';\n\nimport * as Log from '../log';\n\nconst debug = require('debug')('expo:utils:tar') as typeof console.log;\n\n/** Extract a tar using built-in tools if available and falling back on Node.js. */\nexport async function extractAsync(input: string, output: string): Promise<void> {\n try {\n if (process.platform !== 'win32') {\n debug(`Extracting ${input} to ${output}`);\n await spawnAsync('tar', ['-xf', input, '-C', output], {\n stdio: 'inherit',\n });\n return;\n }\n } catch (error: any) {\n Log.warn(\n `Failed to extract tar using native tools, falling back on JS tar module. ${error.message}`\n );\n }\n debug(`Extracting ${input} to ${output} using JS tar module`);\n // tar node module has previously had problems with big files, and seems to\n // be slower, so only use it as a backup.\n await tar.extract({ file: input, cwd: output });\n}\n"],"names":["extractAsync","Log","debug","require","input","output","process","platform","spawnAsync","stdio","error","warn","message","tar","extract","file","cwd"],"mappings":"AAAA;;;;QAQsBA,YAAY,GAAZA,YAAY;AARX,IAAA,WAAmB,kCAAnB,mBAAmB,EAAA;AAC1B,IAAA,IAAK,kCAAL,KAAK,EAAA;AAETC,IAAAA,GAAG,mCAAM,QAAQ,EAAd;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEf,MAAMC,KAAK,GAAGC,OAAO,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,AAAsB,AAAC;AAGhE,eAAeH,YAAY,CAACI,KAAa,EAAEC,MAAc,EAAiB;IAC/E,IAAI;QACF,IAAIC,OAAO,CAACC,QAAQ,KAAK,OAAO,EAAE;YAChCL,KAAK,CAAC,CAAC,WAAW,EAAEE,KAAK,CAAC,IAAI,EAAEC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAMG,CAAAA,GAAAA,WAAU,AAEd,CAAA,QAFc,CAAC,KAAK,EAAE;gBAAC,KAAK;gBAAEJ,KAAK;gBAAE,IAAI;gBAAEC,MAAM;aAAC,EAAE;gBACpDI,KAAK,EAAE,SAAS;aACjB,CAAC,CAAC;YACH,OAAO;SACR;KACF,CAAC,OAAOC,KAAK,EAAO;QACnBT,GAAG,CAACU,IAAI,CACN,CAAC,yEAAyE,EAAED,KAAK,CAACE,OAAO,CAAC,CAAC,CAC5F,CAAC;KACH;IACDV,KAAK,CAAC,CAAC,WAAW,EAAEE,KAAK,CAAC,IAAI,EAAEC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAC9D,2EAA2E;IAC3E,yCAAyC;IACzC,MAAMQ,IAAG,QAAA,CAACC,OAAO,CAAC;QAAEC,IAAI,EAAEX,KAAK;QAAEY,GAAG,EAAEX,MAAM;KAAE,CAAC,CAAC;CACjD"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.unsafeTemplate = unsafeTemplate;
6
+ function unsafeTemplate(strings, ...keys) {
7
+ return (...values)=>{
8
+ const lastValue = values[values.length - 1];
9
+ const dict = typeof lastValue === "object" ? lastValue : {};
10
+ const result = [
11
+ strings[0]
12
+ ];
13
+ keys.forEach((key, i)=>{
14
+ const value = typeof key === "number" && Number.isInteger(key) ? values[key] : dict[key];
15
+ result.push(value, strings[i + 1]);
16
+ });
17
+ return result.join("");
18
+ };
19
+ }
20
+
21
+ //# sourceMappingURL=template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/template.ts"],"sourcesContent":["/**\n * Simple unsafe interpolation for template strings. Does NOT escape values.\n *\n * Arguments can be named or numeric.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#tagged_templates\n *\n * @example\n * const t1Closure = unsafeTemplate`${0}${1}${0}!`;\n * // const t1Closure = unsafeTemplate([\"\",\"\",\"\",\"!\"],0,1,0);\n * t1Closure(\"Y\", \"A\"); // \"YAY!\"\n *\n * @example\n * const t2Closure = unsafeTemplate`${0} ${\"foo\"}!`;\n * // const t2Closure = unsafeTemplate([\"\",\" \",\"!\"],0,\"foo\");\n * t2Closure(\"Hello\", { foo: \"World\" }); // \"Hello World!\"\n *\n * @example\n * const t3Closure = unsafeTemplate`I'm ${\"name\"}. I'm almost ${\"age\"} years old.`;\n * // const t3Closure = unsafeTemplate([\"I'm \", \". I'm almost \", \" years old.\"], \"name\", \"age\");\n * t3Closure(\"foo\", { name: \"MDN\", age: 30 }); // \"I'm MDN. I'm almost 30 years old.\"\n * t3Closure({ name: \"MDN\", age: 30 }); // \"I'm MDN. I'm almost 30 years old.\"\n */\nexport function unsafeTemplate(strings: TemplateStringsArray, ...keys: (string | number)[]) {\n return (\n ...values: (string | number)[] | [...(string | number)[], Record<string | number, string>]\n ) => {\n const lastValue = values[values.length - 1];\n const dict = typeof lastValue === 'object' ? lastValue : {};\n const result = [strings[0]];\n keys.forEach((key, i) => {\n const value = typeof key === 'number' && Number.isInteger(key) ? values[key] : dict[key];\n result.push(value as string, strings[i + 1]);\n });\n return result.join('');\n };\n}\n"],"names":["unsafeTemplate","strings","keys","values","lastValue","length","dict","result","forEach","key","i","value","Number","isInteger","push","join"],"mappings":"AAuBA;;;;QAAgBA,cAAc,GAAdA,cAAc;AAAvB,SAASA,cAAc,CAACC,OAA6B,EAAE,GAAGC,IAAI,AAAqB,EAAE;IAC1F,OAAO,CACL,GAAGC,MAAM,AAAiF,GACvF;QACH,MAAMC,SAAS,GAAGD,MAAM,CAACA,MAAM,CAACE,MAAM,GAAG,CAAC,CAAC,AAAC;QAC5C,MAAMC,IAAI,GAAG,OAAOF,SAAS,KAAK,QAAQ,GAAGA,SAAS,GAAG,EAAE,AAAC;QAC5D,MAAMG,MAAM,GAAG;YAACN,OAAO,CAAC,CAAC,CAAC;SAAC,AAAC;QAC5BC,IAAI,CAACM,OAAO,CAAC,CAACC,GAAG,EAAEC,CAAC,GAAK;YACvB,MAAMC,KAAK,GAAG,OAAOF,GAAG,KAAK,QAAQ,IAAIG,MAAM,CAACC,SAAS,CAACJ,GAAG,CAAC,GAAGN,MAAM,CAACM,GAAG,CAAC,GAAGH,IAAI,CAACG,GAAG,CAAC,AAAC;YACzFF,MAAM,CAACO,IAAI,CAACH,KAAK,EAAYV,OAAO,CAACS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAC9C,CAAC,CAAC;QACH,OAAOH,MAAM,CAACQ,IAAI,CAAC,EAAE,CAAC,CAAC;KACxB,CAAC;CACH"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.getUserTerminal = getUserTerminal;
6
+ function getUserTerminal() {
7
+ return process.env.REACT_TERMINAL || (process.platform === "darwin" ? process.env.TERM_PROGRAM : process.env.TERM);
8
+ }
9
+
10
+ //# sourceMappingURL=terminal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/terminal.ts"],"sourcesContent":["/** @returns the environment variable indicating the default terminal program to use. */\nexport function getUserTerminal(): string | undefined {\n return (\n process.env.REACT_TERMINAL ||\n (process.platform === 'darwin' ? process.env.TERM_PROGRAM : process.env.TERM)\n );\n}\n"],"names":["getUserTerminal","process","env","REACT_TERMINAL","platform","TERM_PROGRAM","TERM"],"mappings":"AACA;;;;QAAgBA,eAAe,GAAfA,eAAe;AAAxB,SAASA,eAAe,GAAuB;IACpD,OACEC,OAAO,CAACC,GAAG,CAACC,cAAc,IAC1B,CAACF,OAAO,CAACG,QAAQ,KAAK,QAAQ,GAAGH,OAAO,CAACC,GAAG,CAACG,YAAY,GAAGJ,OAAO,CAACC,GAAG,CAACI,IAAI,CAAC,CAC7E;CACH"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.evaluateTsConfig = evaluateTsConfig;
6
+ exports.importTypeScriptFromProjectOptionally = importTypeScriptFromProjectOptionally;
7
+ var _path = _interopRequireDefault(require("path"));
8
+ var _resolveFrom = _interopRequireDefault(require("resolve-from"));
9
+ function _interopRequireDefault(obj) {
10
+ return obj && obj.__esModule ? obj : {
11
+ default: obj
12
+ };
13
+ }
14
+ function evaluateTsConfig(ts, tsConfigPath) {
15
+ const formatDiagnosticsHost = {
16
+ getNewLine: ()=>require("os").EOL
17
+ ,
18
+ getCurrentDirectory: ts.sys.getCurrentDirectory,
19
+ getCanonicalFileName: (fileName)=>fileName
20
+ };
21
+ try {
22
+ var ref;
23
+ const { config , error } = ts.readConfigFile(tsConfigPath, ts.sys.readFile);
24
+ if (error) {
25
+ throw new Error(ts.formatDiagnostic(error, formatDiagnosticsHost));
26
+ }
27
+ const jsonFileContents = ts.parseJsonConfigFileContent(config, {
28
+ ...ts.sys,
29
+ readDirectory: (_, ext)=>[
30
+ ext ? `file${ext[0]}` : `file.ts`
31
+ ]
32
+ }, _path.default.dirname(tsConfigPath));
33
+ if (jsonFileContents.errors) {
34
+ // filter out "no inputs were found in config file" error
35
+ jsonFileContents.errors = jsonFileContents.errors.filter(({ code })=>code !== 18003
36
+ );
37
+ }
38
+ if ((ref = jsonFileContents.errors) == null ? void 0 : ref.length) {
39
+ throw new Error(ts.formatDiagnostic(jsonFileContents.errors[0], formatDiagnosticsHost));
40
+ }
41
+ return {
42
+ compilerOptions: jsonFileContents.options,
43
+ raw: config.raw
44
+ };
45
+ } catch (error) {
46
+ if ((error == null ? void 0 : error.name) === "SyntaxError") {
47
+ var _message;
48
+ throw new Error("tsconfig.json is invalid:\n" + ((_message = error.message) != null ? _message : ""));
49
+ }
50
+ throw error;
51
+ }
52
+ }
53
+ function importTypeScriptFromProjectOptionally(projectRoot) {
54
+ const resolvedPath = _resolveFrom.default.silent(projectRoot, "typescript");
55
+ if (!resolvedPath) {
56
+ return null;
57
+ }
58
+ return require(resolvedPath);
59
+ }
60
+
61
+ //# sourceMappingURL=evaluateTsConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/utils/tsconfig/evaluateTsConfig.ts"],"sourcesContent":["import path from 'path';\nimport resolveFrom from 'resolve-from';\n\nexport function evaluateTsConfig(ts: typeof import('typescript'), tsConfigPath: string) {\n const formatDiagnosticsHost: import('typescript').FormatDiagnosticsHost = {\n getNewLine: () => require('os').EOL,\n getCurrentDirectory: ts.sys.getCurrentDirectory,\n getCanonicalFileName: (fileName: string) => fileName,\n };\n\n try {\n const { config, error } = ts.readConfigFile(tsConfigPath, ts.sys.readFile);\n\n if (error) {\n throw new Error(ts.formatDiagnostic(error, formatDiagnosticsHost));\n }\n\n const jsonFileContents = ts.parseJsonConfigFileContent(\n config,\n {\n ...ts.sys,\n readDirectory: (_, ext) => [ext ? `file${ext[0]}` : `file.ts`],\n },\n path.dirname(tsConfigPath)\n );\n\n if (jsonFileContents.errors) {\n // filter out \"no inputs were found in config file\" error\n jsonFileContents.errors = jsonFileContents.errors.filter(({ code }) => code !== 18003);\n }\n\n if (jsonFileContents.errors?.length) {\n throw new Error(ts.formatDiagnostic(jsonFileContents.errors[0], formatDiagnosticsHost));\n }\n\n return { compilerOptions: jsonFileContents.options, raw: config.raw };\n } catch (error: any) {\n if (error?.name === 'SyntaxError') {\n throw new Error('tsconfig.json is invalid:\\n' + (error.message ?? ''));\n }\n throw error;\n }\n}\n\nexport function importTypeScriptFromProjectOptionally(\n projectRoot: string\n): typeof import('typescript') | null {\n const resolvedPath = resolveFrom.silent(projectRoot, 'typescript');\n if (!resolvedPath) {\n return null;\n }\n return require(resolvedPath);\n}\n"],"names":["evaluateTsConfig","importTypeScriptFromProjectOptionally","ts","tsConfigPath","formatDiagnosticsHost","getNewLine","require","EOL","getCurrentDirectory","sys","getCanonicalFileName","fileName","jsonFileContents","config","error","readConfigFile","readFile","Error","formatDiagnostic","parseJsonConfigFileContent","readDirectory","_","ext","path","dirname","errors","filter","code","length","compilerOptions","options","raw","name","message","projectRoot","resolvedPath","resolveFrom","silent"],"mappings":"AAAA;;;;QAGgBA,gBAAgB,GAAhBA,gBAAgB;QAyChBC,qCAAqC,GAArCA,qCAAqC;AA5CpC,IAAA,KAAM,kCAAN,MAAM,EAAA;AACC,IAAA,YAAc,kCAAd,cAAc,EAAA;;;;;;AAE/B,SAASD,gBAAgB,CAACE,EAA+B,EAAEC,YAAoB,EAAE;IACtF,MAAMC,qBAAqB,GAA+C;QACxEC,UAAU,EAAE,IAAMC,OAAO,CAAC,IAAI,CAAC,CAACC,GAAG;QAAA;QACnCC,mBAAmB,EAAEN,EAAE,CAACO,GAAG,CAACD,mBAAmB;QAC/CE,oBAAoB,EAAE,CAACC,QAAgB,GAAKA,QAAQ;KACrD,AAAC;IAEF,IAAI;YAqBEC,GAAuB;QApB3B,MAAM,EAAEC,MAAM,CAAA,EAAEC,KAAK,CAAA,EAAE,GAAGZ,EAAE,CAACa,cAAc,CAACZ,YAAY,EAAED,EAAE,CAACO,GAAG,CAACO,QAAQ,CAAC,AAAC;QAE3E,IAAIF,KAAK,EAAE;YACT,MAAM,IAAIG,KAAK,CAACf,EAAE,CAACgB,gBAAgB,CAACJ,KAAK,EAAEV,qBAAqB,CAAC,CAAC,CAAC;SACpE;QAED,MAAMQ,gBAAgB,GAAGV,EAAE,CAACiB,0BAA0B,CACpDN,MAAM,EACN;YACE,GAAGX,EAAE,CAACO,GAAG;YACTW,aAAa,EAAE,CAACC,CAAC,EAAEC,GAAG,GAAK;oBAACA,GAAG,GAAG,CAAC,IAAI,EAAEA,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;iBAAC;SAC/D,EACDC,KAAI,QAAA,CAACC,OAAO,CAACrB,YAAY,CAAC,CAC3B,AAAC;QAEF,IAAIS,gBAAgB,CAACa,MAAM,EAAE;YAC3B,yDAAyD;YACzDb,gBAAgB,CAACa,MAAM,GAAGb,gBAAgB,CAACa,MAAM,CAACC,MAAM,CAAC,CAAC,EAAEC,IAAI,CAAA,EAAE,GAAKA,IAAI,KAAK,KAAK;YAAA,CAAC,CAAC;SACxF;QAED,IAAIf,CAAAA,GAAuB,GAAvBA,gBAAgB,CAACa,MAAM,SAAQ,GAA/Bb,KAAAA,CAA+B,GAA/BA,GAAuB,CAAEgB,MAAM,EAAE;YACnC,MAAM,IAAIX,KAAK,CAACf,EAAE,CAACgB,gBAAgB,CAACN,gBAAgB,CAACa,MAAM,CAAC,CAAC,CAAC,EAAErB,qBAAqB,CAAC,CAAC,CAAC;SACzF;QAED,OAAO;YAAEyB,eAAe,EAAEjB,gBAAgB,CAACkB,OAAO;YAAEC,GAAG,EAAElB,MAAM,CAACkB,GAAG;SAAE,CAAC;KACvE,CAAC,OAAOjB,KAAK,EAAO;QACnB,IAAIA,CAAAA,KAAK,QAAM,GAAXA,KAAAA,CAAW,GAAXA,KAAK,CAAEkB,IAAI,CAAA,KAAK,aAAa,EAAE;gBACgBlB,QAAa;YAA9D,MAAM,IAAIG,KAAK,CAAC,6BAA6B,GAAG,CAACH,CAAAA,QAAa,GAAbA,KAAK,CAACmB,OAAO,YAAbnB,QAAa,GAAI,EAAE,CAAC,CAAC,CAAC;SACxE;QACD,MAAMA,KAAK,CAAC;KACb;CACF;AAEM,SAASb,qCAAqC,CACnDiC,WAAmB,EACiB;IACpC,MAAMC,YAAY,GAAGC,YAAW,QAAA,CAACC,MAAM,CAACH,WAAW,EAAE,YAAY,CAAC,AAAC;IACnE,IAAI,CAACC,YAAY,EAAE;QACjB,OAAO,IAAI,CAAC;KACb;IACD,OAAO7B,OAAO,CAAC6B,YAAY,CAAC,CAAC;CAC9B"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.loadTsConfigPathsAsync = loadTsConfigPathsAsync;
6
+ exports.readTsconfigAsync = readTsconfigAsync;
7
+ var _jsonFile = _interopRequireDefault(require("@expo/json-file"));
8
+ var _path = _interopRequireDefault(require("path"));
9
+ var _evaluateTsConfig = require("./evaluateTsConfig");
10
+ var _dir = require("../dir");
11
+ function _interopRequireDefault(obj) {
12
+ return obj && obj.__esModule ? obj : {
13
+ default: obj
14
+ };
15
+ }
16
+ const debug = require("debug")("expo:utils:tsconfig:load");
17
+ async function loadTsConfigPathsAsync(dir) {
18
+ var ref;
19
+ const options = (ref = await readTsconfigAsync(dir)) != null ? ref : await readJsconfigAsync(dir);
20
+ if (options) {
21
+ var ref1, ref2;
22
+ const [, config] = options;
23
+ return {
24
+ paths: (ref1 = config.compilerOptions) == null ? void 0 : ref1.paths,
25
+ baseUrl: ((ref2 = config.compilerOptions) == null ? void 0 : ref2.baseUrl) ? _path.default.resolve(dir, config.compilerOptions.baseUrl) : undefined
26
+ };
27
+ }
28
+ return null;
29
+ }
30
+ async function readJsconfigAsync(projectRoot) {
31
+ const configPath = _path.default.join(projectRoot, "jsconfig.json");
32
+ if (await (0, _dir).fileExistsAsync(configPath)) {
33
+ const config = await _jsonFile.default.readAsync(configPath, {
34
+ json5: true
35
+ });
36
+ if (config) {
37
+ return [
38
+ configPath,
39
+ config
40
+ ];
41
+ }
42
+ }
43
+ return null;
44
+ }
45
+ async function readTsconfigAsync(projectRoot) {
46
+ const configPath = _path.default.join(projectRoot, "tsconfig.json");
47
+ if (await (0, _dir).fileExistsAsync(configPath)) {
48
+ // We need to fully evaluate the tsconfig to get the baseUrl and paths in case they were applied in `extends`.
49
+ const ts = (0, _evaluateTsConfig).importTypeScriptFromProjectOptionally(projectRoot);
50
+ if (ts) {
51
+ return [
52
+ configPath,
53
+ (0, _evaluateTsConfig).evaluateTsConfig(ts, configPath)
54
+ ];
55
+ }
56
+ debug(`typescript module not found in: ${projectRoot}`);
57
+ }
58
+ return null;
59
+ }
60
+
61
+ //# sourceMappingURL=loadTsConfigPaths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/utils/tsconfig/loadTsConfigPaths.ts"],"sourcesContent":["import JsonFile from '@expo/json-file';\nimport path from 'path';\n\nimport { evaluateTsConfig, importTypeScriptFromProjectOptionally } from './evaluateTsConfig';\nimport { fileExistsAsync } from '../dir';\n\nexport type TsConfigPaths = {\n paths?: Record<string, string[]>;\n baseUrl?: string;\n};\n\ntype ConfigReadResults = [\n string,\n {\n compilerOptions?: {\n baseUrl?: string;\n paths?: Record<string, string[]>;\n };\n },\n];\n\nconst debug = require('debug')('expo:utils:tsconfig:load') as typeof console.log;\n\nexport async function loadTsConfigPathsAsync(dir: string): Promise<TsConfigPaths | null> {\n const options = (await readTsconfigAsync(dir)) ?? (await readJsconfigAsync(dir));\n if (options) {\n const [, config] = options;\n return {\n paths: config.compilerOptions?.paths,\n baseUrl: config.compilerOptions?.baseUrl\n ? path.resolve(dir, config.compilerOptions.baseUrl)\n : undefined,\n };\n }\n return null;\n}\n\nasync function readJsconfigAsync(projectRoot: string): Promise<null | ConfigReadResults> {\n const configPath = path.join(projectRoot, 'jsconfig.json');\n if (await fileExistsAsync(configPath)) {\n const config = await JsonFile.readAsync(configPath, { json5: true });\n if (config) {\n return [configPath, config];\n }\n }\n return null;\n}\n\n// TODO: Refactor for speed\nexport async function readTsconfigAsync(projectRoot: string): Promise<null | ConfigReadResults> {\n const configPath = path.join(projectRoot, 'tsconfig.json');\n if (await fileExistsAsync(configPath)) {\n // We need to fully evaluate the tsconfig to get the baseUrl and paths in case they were applied in `extends`.\n const ts = importTypeScriptFromProjectOptionally(projectRoot);\n if (ts) {\n return [configPath, evaluateTsConfig(ts, configPath)];\n }\n debug(`typescript module not found in: ${projectRoot}`);\n }\n return null;\n}\n"],"names":["loadTsConfigPathsAsync","readTsconfigAsync","debug","require","dir","options","readJsconfigAsync","config","paths","compilerOptions","baseUrl","path","resolve","undefined","projectRoot","configPath","join","fileExistsAsync","JsonFile","readAsync","json5","ts","importTypeScriptFromProjectOptionally","evaluateTsConfig"],"mappings":"AAAA;;;;QAuBsBA,sBAAsB,GAAtBA,sBAAsB;QA0BtBC,iBAAiB,GAAjBA,iBAAiB;AAjDlB,IAAA,SAAiB,kCAAjB,iBAAiB,EAAA;AACrB,IAAA,KAAM,kCAAN,MAAM,EAAA;AAEiD,IAAA,iBAAoB,WAApB,oBAAoB,CAAA;AAC5D,IAAA,IAAQ,WAAR,QAAQ,CAAA;;;;;;AAiBxC,MAAMC,KAAK,GAAGC,OAAO,CAAC,OAAO,CAAC,CAAC,0BAA0B,CAAC,AAAsB,AAAC;AAE1E,eAAeH,sBAAsB,CAACI,GAAW,EAAiC;QACvE,GAA8B;IAA9C,MAAMC,OAAO,GAAG,CAAA,GAA8B,GAA7B,MAAMJ,iBAAiB,CAACG,GAAG,CAAC,YAA7B,GAA8B,GAAK,MAAME,iBAAiB,CAACF,GAAG,CAAC,AAAC,AAAC;IACjF,IAAIC,OAAO,EAAE;YAGFE,IAAsB,EACpBA,IAAsB;QAHjC,MAAM,GAAGA,MAAM,CAAC,GAAGF,OAAO,AAAC;QAC3B,OAAO;YACLG,KAAK,EAAED,CAAAA,IAAsB,GAAtBA,MAAM,CAACE,eAAe,SAAO,GAA7BF,KAAAA,CAA6B,GAA7BA,IAAsB,CAAEC,KAAK;YACpCE,OAAO,EAAEH,CAAAA,CAAAA,IAAsB,GAAtBA,MAAM,CAACE,eAAe,SAAS,GAA/BF,KAAAA,CAA+B,GAA/BA,IAAsB,CAAEG,OAAO,CAAA,GACpCC,KAAI,QAAA,CAACC,OAAO,CAACR,GAAG,EAAEG,MAAM,CAACE,eAAe,CAACC,OAAO,CAAC,GACjDG,SAAS;SACd,CAAC;KACH;IACD,OAAO,IAAI,CAAC;CACb;AAED,eAAeP,iBAAiB,CAACQ,WAAmB,EAAqC;IACvF,MAAMC,UAAU,GAAGJ,KAAI,QAAA,CAACK,IAAI,CAACF,WAAW,EAAE,eAAe,CAAC,AAAC;IAC3D,IAAI,MAAMG,CAAAA,GAAAA,IAAe,AAAY,CAAA,gBAAZ,CAACF,UAAU,CAAC,EAAE;QACrC,MAAMR,MAAM,GAAG,MAAMW,SAAQ,QAAA,CAACC,SAAS,CAACJ,UAAU,EAAE;YAAEK,KAAK,EAAE,IAAI;SAAE,CAAC,AAAC;QACrE,IAAIb,MAAM,EAAE;YACV,OAAO;gBAACQ,UAAU;gBAAER,MAAM;aAAC,CAAC;SAC7B;KACF;IACD,OAAO,IAAI,CAAC;CACb;AAGM,eAAeN,iBAAiB,CAACa,WAAmB,EAAqC;IAC9F,MAAMC,UAAU,GAAGJ,KAAI,QAAA,CAACK,IAAI,CAACF,WAAW,EAAE,eAAe,CAAC,AAAC;IAC3D,IAAI,MAAMG,CAAAA,GAAAA,IAAe,AAAY,CAAA,gBAAZ,CAACF,UAAU,CAAC,EAAE;QACrC,8GAA8G;QAC9G,MAAMM,EAAE,GAAGC,CAAAA,GAAAA,iBAAqC,AAAa,CAAA,sCAAb,CAACR,WAAW,CAAC,AAAC;QAC9D,IAAIO,EAAE,EAAE;YACN,OAAO;gBAACN,UAAU;gBAAEQ,CAAAA,GAAAA,iBAAgB,AAAgB,CAAA,iBAAhB,CAACF,EAAE,EAAEN,UAAU,CAAC;aAAC,CAAC;SACvD;QACDb,KAAK,CAAC,CAAC,gCAAgC,EAAEY,WAAW,CAAC,CAAC,CAAC,CAAC;KACzD;IACD,OAAO,IAAI,CAAC;CACb"}