@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,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.getProjectDevelopmentCertificateAsync = getProjectDevelopmentCertificateAsync;
6
+ var _client = require("./rest/client");
7
+ var _errors = require("../utils/errors");
8
+ async function getProjectDevelopmentCertificateAsync(easProjectId, csrPEM) {
9
+ const response = await (0, _client).fetchAsync(`projects/${encodeURIComponent(easProjectId)}/development-certificates`, {
10
+ method: "POST",
11
+ body: JSON.stringify({
12
+ csrPEM
13
+ })
14
+ });
15
+ if (!response.ok) {
16
+ throw new _errors.CommandError("API", `Unexpected error from Expo servers: ${response.statusText}.`);
17
+ }
18
+ const buffer = await response.buffer();
19
+ return buffer.toString("utf8");
20
+ }
21
+
22
+ //# sourceMappingURL=getProjectDevelopmentCertificate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/api/getProjectDevelopmentCertificate.ts"],"sourcesContent":["import { fetchAsync } from './rest/client';\nimport { CommandError } from '../utils/errors';\n\nexport async function getProjectDevelopmentCertificateAsync(\n easProjectId: string,\n csrPEM: string\n): Promise<string> {\n const response = await fetchAsync(\n `projects/${encodeURIComponent(easProjectId)}/development-certificates`,\n {\n method: 'POST',\n body: JSON.stringify({\n csrPEM,\n }),\n }\n );\n if (!response.ok) {\n throw new CommandError('API', `Unexpected error from Expo servers: ${response.statusText}.`);\n }\n const buffer = await response.buffer();\n return buffer.toString('utf8');\n}\n"],"names":["getProjectDevelopmentCertificateAsync","easProjectId","csrPEM","response","fetchAsync","encodeURIComponent","method","body","JSON","stringify","ok","CommandError","statusText","buffer","toString"],"mappings":"AAAA;;;;QAGsBA,qCAAqC,GAArCA,qCAAqC;AAHhC,IAAA,OAAe,WAAf,eAAe,CAAA;AACb,IAAA,OAAiB,WAAjB,iBAAiB,CAAA;AAEvC,eAAeA,qCAAqC,CACzDC,YAAoB,EACpBC,MAAc,EACG;IACjB,MAAMC,QAAQ,GAAG,MAAMC,CAAAA,GAAAA,OAAU,AAQhC,CAAA,WARgC,CAC/B,CAAC,SAAS,EAAEC,kBAAkB,CAACJ,YAAY,CAAC,CAAC,yBAAyB,CAAC,EACvE;QACEK,MAAM,EAAE,MAAM;QACdC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAAC;YACnBP,MAAM;SACP,CAAC;KACH,CACF,AAAC;IACF,IAAI,CAACC,QAAQ,CAACO,EAAE,EAAE;QAChB,MAAM,IAAIC,OAAY,aAAA,CAAC,KAAK,EAAE,CAAC,oCAAoC,EAAER,QAAQ,CAACS,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;KAC9F;IACD,MAAMC,MAAM,GAAG,MAAMV,QAAQ,CAACU,MAAM,EAAE,AAAC;IACvC,OAAOA,MAAM,CAACC,QAAQ,CAAC,MAAM,CAAC,CAAC;CAChC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.getVersionsAsync = getVersionsAsync;
6
+ var _client = require("./rest/client");
7
+ var _errors = require("../utils/errors");
8
+ async function getVersionsAsync({ skipCache } = {}) {
9
+ // Reconstruct the cached fetch since caching could be disabled.
10
+ const fetchAsync = (0, _client).createCachedFetch({
11
+ skipCache,
12
+ cacheDirectory: "versions-cache",
13
+ // We'll use a 5 minute cache to ensure we stay relatively up to date.
14
+ ttl: 1000 * 60 * 5
15
+ });
16
+ const results = await fetchAsync("versions/latest");
17
+ if (!results.ok) {
18
+ throw new _errors.CommandError("API", `Unexpected response when fetching version info from Expo servers: ${results.statusText}.`);
19
+ }
20
+ const json = await results.json();
21
+ return json.data;
22
+ }
23
+
24
+ //# sourceMappingURL=getVersions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/api/getVersions.ts"],"sourcesContent":["import { createCachedFetch } from './rest/client';\nimport { CommandError } from '../utils/errors';\n\n/** Represents version info for a particular SDK. */\nexport type SDKVersion = {\n /** @example \"2.16.1\" */\n iosVersion?: string;\n /** @example \"https://dpq5q02fu5f55.cloudfront.net/Exponent-2.17.4.tar.gz\" */\n iosClientUrl?: string;\n /** @example \"https://dev.to/expo/expo-sdk-38-is-now-available-5aa0\" */\n releaseNoteUrl?: string;\n /** @example \"2.17.4\" */\n iosClientVersion?: string;\n /** @example \"https://d1ahtucjixef4r.cloudfront.net/Exponent-2.16.1.apk\" */\n androidClientUrl?: string;\n /** @example \"2.16.1\" */\n androidClientVersion?: string;\n /** @example { \"typescript\": \"~3.9.5\" } */\n relatedPackages?: Record<string, string>;\n\n facebookReactNativeVersion: string;\n\n facebookReactVersion?: string;\n\n expoVersion?: string;\n\n beta?: boolean;\n};\n\nexport type SDKVersions = Record<string, SDKVersion>;\n\nexport type Versions = {\n androidUrl: string;\n androidVersion: string;\n iosUrl: string;\n iosVersion: string;\n sdkVersions: SDKVersions;\n};\n\n/** Get versions from remote endpoint. */\nexport async function getVersionsAsync({\n skipCache,\n}: { skipCache?: boolean } = {}): Promise<Versions> {\n // Reconstruct the cached fetch since caching could be disabled.\n const fetchAsync = createCachedFetch({\n skipCache,\n cacheDirectory: 'versions-cache',\n // We'll use a 5 minute cache to ensure we stay relatively up to date.\n ttl: 1000 * 60 * 5,\n });\n\n const results = await fetchAsync('versions/latest');\n if (!results.ok) {\n throw new CommandError(\n 'API',\n `Unexpected response when fetching version info from Expo servers: ${results.statusText}.`\n );\n }\n const json = await results.json();\n return json.data;\n}\n"],"names":["getVersionsAsync","skipCache","fetchAsync","createCachedFetch","cacheDirectory","ttl","results","ok","CommandError","statusText","json","data"],"mappings":"AAAA;;;;QAwCsBA,gBAAgB,GAAhBA,gBAAgB;AAxCJ,IAAA,OAAe,WAAf,eAAe,CAAA;AACpB,IAAA,OAAiB,WAAjB,iBAAiB,CAAA;AAuCvC,eAAeA,gBAAgB,CAAC,EACrCC,SAAS,CAAA,EACe,GAAG,EAAE,EAAqB;IAClD,gEAAgE;IAChE,MAAMC,UAAU,GAAGC,CAAAA,GAAAA,OAAiB,AAKlC,CAAA,kBALkC,CAAC;QACnCF,SAAS;QACTG,cAAc,EAAE,gBAAgB;QAChC,sEAAsE;QACtEC,GAAG,EAAE,IAAI,GAAG,EAAE,GAAG,CAAC;KACnB,CAAC,AAAC;IAEH,MAAMC,OAAO,GAAG,MAAMJ,UAAU,CAAC,iBAAiB,CAAC,AAAC;IACpD,IAAI,CAACI,OAAO,CAACC,EAAE,EAAE;QACf,MAAM,IAAIC,OAAY,aAAA,CACpB,KAAK,EACL,CAAC,kEAAkE,EAAEF,OAAO,CAACG,UAAU,CAAC,CAAC,CAAC,CAC3F,CAAC;KACH;IACD,MAAMC,IAAI,GAAG,MAAMJ,OAAO,CAACI,IAAI,EAAE,AAAC;IAClC,OAAOA,IAAI,CAACC,IAAI,CAAC;CAClB"}
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "GraphqlError", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _core.CombinedError;
9
+ }
10
+ });
11
+ exports.withErrorHandlingAsync = withErrorHandlingAsync;
12
+ exports.graphqlClient = void 0;
13
+ var _core = require("@urql/core");
14
+ var _exchangeRetry = require("@urql/exchange-retry");
15
+ var _nodeFetch = _interopRequireDefault(require("node-fetch"));
16
+ var Log = _interopRequireWildcard(require("../../log"));
17
+ var _endpoint = require("../endpoint");
18
+ var _wrapFetchWithOffline = require("../rest/wrapFetchWithOffline");
19
+ var _wrapFetchWithProxy = require("../rest/wrapFetchWithProxy");
20
+ var _userSettings = _interopRequireDefault(require("../user/UserSettings"));
21
+ function _interopRequireDefault(obj) {
22
+ return obj && obj.__esModule ? obj : {
23
+ default: obj
24
+ };
25
+ }
26
+ function _interopRequireWildcard(obj) {
27
+ if (obj && obj.__esModule) {
28
+ return obj;
29
+ } else {
30
+ var newObj = {};
31
+ if (obj != null) {
32
+ for(var key in obj){
33
+ if (Object.prototype.hasOwnProperty.call(obj, key)) {
34
+ var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};
35
+ if (desc.get || desc.set) {
36
+ Object.defineProperty(newObj, key, desc);
37
+ } else {
38
+ newObj[key] = obj[key];
39
+ }
40
+ }
41
+ }
42
+ }
43
+ newObj.default = obj;
44
+ return newObj;
45
+ }
46
+ }
47
+ const graphqlClient = (0, _core).createClient({
48
+ url: (0, _endpoint).getExpoApiBaseUrl() + "/graphql",
49
+ exchanges: [
50
+ _core.dedupExchange,
51
+ _core.cacheExchange,
52
+ (0, _exchangeRetry).retryExchange({
53
+ maxDelayMs: 4000,
54
+ retryIf: (err)=>{
55
+ return !!(err && (err.networkError || err.graphQLErrors.some((e)=>{
56
+ var ref;
57
+ return e == null ? void 0 : (ref = e.extensions) == null ? void 0 : ref.isTransient;
58
+ })));
59
+ }
60
+ }),
61
+ _core.fetchExchange,
62
+ ],
63
+ // @ts-ignore Type 'typeof fetch' is not assignable to type '(input: RequestInfo, init?: RequestInit | undefined) => Promise<Response>'.
64
+ fetch: (0, _wrapFetchWithOffline).wrapFetchWithOffline((0, _wrapFetchWithProxy).wrapFetchWithProxy(_nodeFetch.default)),
65
+ fetchOptions: ()=>{
66
+ var ref;
67
+ const token = _userSettings.default.getAccessToken();
68
+ if (token) {
69
+ return {
70
+ headers: {
71
+ authorization: `Bearer ${token}`
72
+ }
73
+ };
74
+ }
75
+ const sessionSecret = (ref = _userSettings.default.getSession()) == null ? void 0 : ref.sessionSecret;
76
+ if (sessionSecret) {
77
+ return {
78
+ headers: {
79
+ "expo-session": sessionSecret
80
+ }
81
+ };
82
+ }
83
+ return {};
84
+ }
85
+ });
86
+ exports.graphqlClient = graphqlClient;
87
+ async function withErrorHandlingAsync(promise) {
88
+ const { data , error } = await promise;
89
+ if (error) {
90
+ if (error.graphQLErrors.some((e)=>{
91
+ var ref;
92
+ return e == null ? void 0 : (ref = e.extensions) == null ? void 0 : ref.isTransient;
93
+ })) {
94
+ Log.error(`We've encountered a transient error, please try again shortly.`);
95
+ }
96
+ throw error;
97
+ }
98
+ // Check for a malformed response. This only checks the root query's existence. It doesn't affect
99
+ // returning responses with an empty result set.
100
+ if (!data) {
101
+ throw new Error("Returned query result data is null!");
102
+ }
103
+ return data;
104
+ }
105
+
106
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/api/graphql/client.ts"],"sourcesContent":["import {\n cacheExchange,\n Client,\n CombinedError as GraphqlError,\n createClient as createUrqlClient,\n dedupExchange,\n fetchExchange,\n OperationContext,\n OperationResult,\n PromisifiedSource,\n TypedDocumentNode,\n} from '@urql/core';\nimport { retryExchange } from '@urql/exchange-retry';\nimport { DocumentNode } from 'graphql';\nimport fetch from 'node-fetch';\n\nimport * as Log from '../../log';\nimport { getExpoApiBaseUrl } from '../endpoint';\nimport { wrapFetchWithOffline } from '../rest/wrapFetchWithOffline';\nimport { wrapFetchWithProxy } from '../rest/wrapFetchWithProxy';\nimport UserSettings from '../user/UserSettings';\n\ntype AccessTokenHeaders = {\n authorization: string;\n};\n\ntype SessionHeaders = {\n 'expo-session': string;\n};\n\nexport const graphqlClient = createUrqlClient({\n url: getExpoApiBaseUrl() + '/graphql',\n exchanges: [\n dedupExchange,\n cacheExchange,\n retryExchange({\n maxDelayMs: 4000,\n retryIf: (err) =>\n !!(err && (err.networkError || err.graphQLErrors.some((e) => e?.extensions?.isTransient))),\n }),\n fetchExchange,\n ],\n // @ts-ignore Type 'typeof fetch' is not assignable to type '(input: RequestInfo, init?: RequestInit | undefined) => Promise<Response>'.\n fetch: wrapFetchWithOffline(wrapFetchWithProxy(fetch)),\n fetchOptions: (): { headers?: AccessTokenHeaders | SessionHeaders } => {\n const token = UserSettings.getAccessToken();\n if (token) {\n return {\n headers: {\n authorization: `Bearer ${token}`,\n },\n };\n }\n const sessionSecret = UserSettings.getSession()?.sessionSecret;\n if (sessionSecret) {\n return {\n headers: {\n 'expo-session': sessionSecret,\n },\n };\n }\n return {};\n },\n}) as StricterClient;\n\n/* Please specify additionalTypenames in your Graphql queries */\nexport interface StricterClient extends Client {\n // eslint-disable-next-line @typescript-eslint/ban-types\n query<Data = any, Variables extends object = {}>(\n query: DocumentNode | TypedDocumentNode<Data, Variables> | string,\n variables: Variables | undefined,\n context: Partial<OperationContext> & { additionalTypenames: string[] }\n ): PromisifiedSource<OperationResult<Data, Variables>>;\n}\n\nexport async function withErrorHandlingAsync<T>(promise: Promise<OperationResult<T>>): Promise<T> {\n const { data, error } = await promise;\n\n if (error) {\n if (error.graphQLErrors.some((e) => e?.extensions?.isTransient)) {\n Log.error(`We've encountered a transient error, please try again shortly.`);\n }\n throw error;\n }\n\n // Check for a malformed response. This only checks the root query's existence. It doesn't affect\n // returning responses with an empty result set.\n if (!data) {\n throw new Error('Returned query result data is null!');\n }\n\n return data;\n}\n\nexport { GraphqlError };\n"],"names":["GraphqlError","withErrorHandlingAsync","Log","graphqlClient","createUrqlClient","url","getExpoApiBaseUrl","exchanges","dedupExchange","cacheExchange","retryExchange","maxDelayMs","retryIf","err","networkError","graphQLErrors","some","e","extensions","isTransient","fetchExchange","fetch","wrapFetchWithOffline","wrapFetchWithProxy","fetchOptions","UserSettings","token","getAccessToken","headers","authorization","sessionSecret","getSession","promise","data","error","Error"],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.AppQuery = void 0;
6
+ var _graphql = require("graphql");
7
+ var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
8
+ var _client = require("../client");
9
+ var _app = require("../types/App");
10
+ function _interopRequireDefault(obj) {
11
+ return obj && obj.__esModule ? obj : {
12
+ default: obj
13
+ };
14
+ }
15
+ const AppQuery = {
16
+ async byIdAsync (projectId) {
17
+ const data = await (0, _client).withErrorHandlingAsync(_client.graphqlClient.query(_graphqlTag.default`
18
+ query AppByIdQuery($appId: String!) {
19
+ app {
20
+ byId(appId: $appId) {
21
+ id
22
+ ...AppFragment
23
+ }
24
+ }
25
+ }
26
+ ${(0, _graphql).print(_app.AppFragmentNode)}
27
+ `, {
28
+ appId: projectId
29
+ }, {
30
+ additionalTypenames: [
31
+ "App"
32
+ ]
33
+ }).toPromise());
34
+ return data.app.byId;
35
+ }
36
+ };
37
+ exports.AppQuery = AppQuery;
38
+
39
+ //# sourceMappingURL=AppQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/api/graphql/queries/AppQuery.ts"],"sourcesContent":["import { print } from 'graphql';\nimport gql from 'graphql-tag';\n\nimport { AppByIdQuery } from '../../../graphql/generated';\nimport { graphqlClient, withErrorHandlingAsync } from '../client';\nimport { AppFragmentNode } from '../types/App';\n\nexport const AppQuery = {\n async byIdAsync(projectId: string): Promise<AppByIdQuery['app']['byId']> {\n const data = await withErrorHandlingAsync(\n graphqlClient\n .query<AppByIdQuery>(\n gql`\n query AppByIdQuery($appId: String!) {\n app {\n byId(appId: $appId) {\n id\n ...AppFragment\n }\n }\n }\n ${print(AppFragmentNode)}\n `,\n { appId: projectId },\n {\n additionalTypenames: ['App'],\n }\n )\n .toPromise()\n );\n return data.app.byId;\n },\n};\n"],"names":["AppQuery","byIdAsync","projectId","data","withErrorHandlingAsync","graphqlClient","query","gql","print","AppFragmentNode","appId","additionalTypenames","toPromise","app","byId"],"mappings":"AAAA;;;;;AAAsB,IAAA,QAAS,WAAT,SAAS,CAAA;AACf,IAAA,WAAa,kCAAb,aAAa,EAAA;AAGyB,IAAA,OAAW,WAAX,WAAW,CAAA;AACjC,IAAA,IAAc,WAAd,cAAc,CAAA;;;;;;AAEvC,MAAMA,QAAQ,GAAG;IACtB,MAAMC,SAAS,EAACC,SAAiB,EAAwC;QACvE,MAAMC,IAAI,GAAG,MAAMC,CAAAA,GAAAA,OAAsB,AAoBxC,CAAA,uBApBwC,CACvCC,OAAa,cAAA,CACVC,KAAK,CACJC,WAAG,QAAA,CAAC;;;;;;;;;YASF,EAAEC,CAAAA,GAAAA,QAAK,AAAiB,CAAA,MAAjB,CAACC,IAAe,gBAAA,CAAC,CAAC;UAC3B,CAAC,EACD;YAAEC,KAAK,EAAER,SAAS;SAAE,EACpB;YACES,mBAAmB,EAAE;gBAAC,KAAK;aAAC;SAC7B,CACF,CACAC,SAAS,EAAE,CACf,AAAC;QACF,OAAOT,IAAI,CAACU,GAAG,CAACC,IAAI,CAAC;KACtB;CACF,AAAC;QAzBWd,QAAQ,GAARA,QAAQ"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.UserQuery = void 0;
6
+ var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
7
+ var _client = require("../client");
8
+ function _interopRequireDefault(obj) {
9
+ return obj && obj.__esModule ? obj : {
10
+ default: obj
11
+ };
12
+ }
13
+ const UserQuery = {
14
+ async currentUserAsync () {
15
+ const data = await (0, _client).withErrorHandlingAsync(_client.graphqlClient.query(_graphqlTag.default`
16
+ query CurrentUser {
17
+ meActor {
18
+ __typename
19
+ id
20
+ ... on UserActor {
21
+ primaryAccount {
22
+ id
23
+ }
24
+ username
25
+ }
26
+ ... on Robot {
27
+ firstName
28
+ }
29
+ accounts {
30
+ id
31
+ users {
32
+ actor {
33
+ id
34
+ }
35
+ permissions
36
+ }
37
+ }
38
+ }
39
+ }
40
+ `, /* variables */ undefined, {
41
+ additionalTypenames: [
42
+ "User",
43
+ "SSOUser"
44
+ ]
45
+ }).toPromise());
46
+ return data.meActor;
47
+ }
48
+ };
49
+ exports.UserQuery = UserQuery;
50
+
51
+ //# sourceMappingURL=UserQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/api/graphql/queries/UserQuery.ts"],"sourcesContent":["import gql from 'graphql-tag';\n\nimport { CurrentUserQuery } from '../../../graphql/generated';\nimport { graphqlClient, withErrorHandlingAsync } from '../client';\n\nexport const UserQuery = {\n async currentUserAsync(): Promise<CurrentUserQuery['meActor']> {\n const data = await withErrorHandlingAsync(\n graphqlClient\n .query<CurrentUserQuery>(\n gql`\n query CurrentUser {\n meActor {\n __typename\n id\n ... on UserActor {\n primaryAccount {\n id\n }\n username\n }\n ... on Robot {\n firstName\n }\n accounts {\n id\n users {\n actor {\n id\n }\n permissions\n }\n }\n }\n }\n `,\n /* variables */ undefined,\n {\n additionalTypenames: ['User', 'SSOUser'],\n }\n )\n .toPromise()\n );\n\n return data.meActor;\n },\n};\n"],"names":["UserQuery","currentUserAsync","data","withErrorHandlingAsync","graphqlClient","query","gql","undefined","additionalTypenames","toPromise","meActor"],"mappings":"AAAA;;;;;AAAgB,IAAA,WAAa,kCAAb,aAAa,EAAA;AAGyB,IAAA,OAAW,WAAX,WAAW,CAAA;;;;;;AAE1D,MAAMA,SAAS,GAAG;IACvB,MAAMC,gBAAgB,IAAyC;QAC7D,MAAMC,IAAI,GAAG,MAAMC,CAAAA,GAAAA,OAAsB,AAmCxC,CAAA,uBAnCwC,CACvCC,OAAa,cAAA,CACVC,KAAK,CACJC,WAAG,QAAA,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;UAyBJ,CAAC,EACD,eAAe,CAACC,SAAS,EACzB;YACEC,mBAAmB,EAAE;gBAAC,MAAM;gBAAE,SAAS;aAAC;SACzC,CACF,CACAC,SAAS,EAAE,CACf,AAAC;QAEF,OAAOP,IAAI,CAACQ,OAAO,CAAC;KACrB;CACF,AAAC;QAzCWV,SAAS,GAATA,SAAS"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.AppFragmentNode = void 0;
6
+ var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
7
+ function _interopRequireDefault(obj) {
8
+ return obj && obj.__esModule ? obj : {
9
+ default: obj
10
+ };
11
+ }
12
+ const AppFragmentNode = _graphqlTag.default`
13
+ fragment AppFragment on App {
14
+ id
15
+ scopeKey
16
+ ownerAccount {
17
+ id
18
+ }
19
+ }
20
+ `;
21
+ exports.AppFragmentNode = AppFragmentNode;
22
+
23
+ //# sourceMappingURL=App.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/api/graphql/types/App.ts"],"sourcesContent":["import gql from 'graphql-tag';\n\nexport const AppFragmentNode = gql`\n fragment AppFragment on App {\n id\n scopeKey\n ownerAccount {\n id\n }\n }\n`;\n"],"names":["AppFragmentNode","gql"],"mappings":"AAAA;;;;;AAAgB,IAAA,WAAa,kCAAb,aAAa,EAAA;;;;;;AAEtB,MAAMA,eAAe,GAAGC,WAAG,QAAA,CAAC;;;;;;;;AAQnC,CAAC,AAAC;QARWD,eAAe,GAAfA,eAAe"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ var _cacache = _interopRequireDefault(require("cacache"));
6
+ var _stream = require("stream");
7
+ function _interopRequireDefault(obj) {
8
+ return obj && obj.__esModule ? obj : {
9
+ default: obj
10
+ };
11
+ }
12
+ function getBodyAndMetaKeys(key) {
13
+ return [
14
+ `${key}body`,
15
+ `${key}meta`
16
+ ];
17
+ }
18
+ class FileSystemCache {
19
+ constructor(options){
20
+ this.options = options;
21
+ }
22
+ async get(key) {
23
+ const [, metaKey] = getBodyAndMetaKeys(key);
24
+ const metaInfo = await _cacache.default.get.info(this.options.cacheDirectory, metaKey);
25
+ if (!metaInfo) {
26
+ return undefined;
27
+ }
28
+ const metaBuffer = await _cacache.default.get.byDigest(this.options.cacheDirectory, metaInfo.integrity);
29
+ const metaData = JSON.parse(metaBuffer);
30
+ const { bodyStreamIntegrity , empty , expiration } = metaData;
31
+ delete metaData.bodyStreamIntegrity;
32
+ delete metaData.empty;
33
+ delete metaData.expiration;
34
+ if (expiration && expiration < Date.now()) {
35
+ return undefined;
36
+ }
37
+ const bodyStream = empty ? _stream.Readable.from(Buffer.alloc(0)) : _cacache.default.get.stream.byDigest(this.options.cacheDirectory, bodyStreamIntegrity);
38
+ return {
39
+ bodyStream,
40
+ metaData
41
+ };
42
+ }
43
+ remove(key) {
44
+ const [bodyKey, metaKey] = getBodyAndMetaKeys(key);
45
+ return Promise.all([
46
+ _cacache.default.rm.entry(this.options.cacheDirectory, bodyKey),
47
+ _cacache.default.rm.entry(this.options.cacheDirectory, metaKey),
48
+ ]);
49
+ }
50
+ async set(key, bodyStream, metaData) {
51
+ const [bodyKey, metaKey] = getBodyAndMetaKeys(key);
52
+ const metaCopy = {
53
+ ...metaData
54
+ };
55
+ if (typeof this.options.ttl === "number") {
56
+ metaCopy.expiration = Date.now() + this.options.ttl;
57
+ }
58
+ try {
59
+ metaCopy.bodyStreamIntegrity = await new Promise((fulfill, reject)=>{
60
+ bodyStream.pipe(_cacache.default.put.stream(this.options.cacheDirectory, bodyKey)).on("integrity", (i)=>fulfill(i)
61
+ ).on("error", (e)=>{
62
+ reject(e);
63
+ });
64
+ });
65
+ } catch (err) {
66
+ if (err.code !== "ENODATA") {
67
+ throw err;
68
+ }
69
+ metaCopy.empty = true;
70
+ }
71
+ const metaBuffer = Buffer.from(JSON.stringify(metaCopy));
72
+ await _cacache.default.put(this.options.cacheDirectory, metaKey, metaBuffer);
73
+ const cachedData = await this.get(key);
74
+ return cachedData;
75
+ }
76
+ }
77
+ exports.FileSystemCache = FileSystemCache;
78
+
79
+ //# sourceMappingURL=FileSystemCache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/api/rest/cache/FileSystemCache.ts"],"sourcesContent":["import cacache from 'cacache';\nimport { Readable } from 'stream';\n\nfunction getBodyAndMetaKeys(key: string): [string, string] {\n return [`${key}body`, `${key}meta`];\n}\n\nexport class FileSystemCache {\n constructor(public options: { ttl?: number; cacheDirectory: string }) {}\n\n async get(key: string) {\n const [, metaKey] = getBodyAndMetaKeys(key);\n\n const metaInfo = await cacache.get.info(this.options.cacheDirectory, metaKey);\n\n if (!metaInfo) {\n return undefined;\n }\n\n const metaBuffer = await cacache.get.byDigest(this.options.cacheDirectory, metaInfo.integrity);\n const metaData = JSON.parse(metaBuffer);\n const { bodyStreamIntegrity, empty, expiration } = metaData;\n\n delete metaData.bodyStreamIntegrity;\n delete metaData.empty;\n delete metaData.expiration;\n\n if (expiration && expiration < Date.now()) {\n return undefined;\n }\n\n const bodyStream = empty\n ? Readable.from(Buffer.alloc(0))\n : cacache.get.stream.byDigest(this.options.cacheDirectory, bodyStreamIntegrity);\n\n return {\n bodyStream,\n metaData,\n };\n }\n\n remove(key: string) {\n const [bodyKey, metaKey] = getBodyAndMetaKeys(key);\n\n return Promise.all([\n cacache.rm.entry(this.options.cacheDirectory, bodyKey),\n cacache.rm.entry(this.options.cacheDirectory, metaKey),\n ]);\n }\n\n async set(key: string, bodyStream: NodeJS.ReadStream, metaData: any) {\n const [bodyKey, metaKey] = getBodyAndMetaKeys(key);\n const metaCopy = { ...metaData };\n\n if (typeof this.options.ttl === 'number') {\n metaCopy.expiration = Date.now() + this.options.ttl;\n }\n\n try {\n metaCopy.bodyStreamIntegrity = await new Promise((fulfill, reject) => {\n bodyStream\n .pipe(cacache.put.stream(this.options.cacheDirectory, bodyKey))\n .on('integrity', (i) => fulfill(i))\n .on('error', (e) => {\n reject(e);\n });\n });\n } catch (err: any) {\n if (err.code !== 'ENODATA') {\n throw err;\n }\n\n metaCopy.empty = true;\n }\n\n const metaBuffer = Buffer.from(JSON.stringify(metaCopy));\n await cacache.put(this.options.cacheDirectory, metaKey, metaBuffer);\n const cachedData = await this.get(key);\n\n return cachedData;\n }\n}\n"],"names":["getBodyAndMetaKeys","key","FileSystemCache","constructor","options","get","metaKey","metaInfo","cacache","info","cacheDirectory","undefined","metaBuffer","byDigest","integrity","metaData","JSON","parse","bodyStreamIntegrity","empty","expiration","Date","now","bodyStream","Readable","from","Buffer","alloc","stream","remove","bodyKey","Promise","all","rm","entry","set","metaCopy","ttl","fulfill","reject","pipe","put","on","i","e","err","code","stringify","cachedData"],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ var _nodeFetch = require("node-fetch");
6
+ const responseInternalSymbol = Object.getOwnPropertySymbols(new _nodeFetch.Response())[1];
7
+ class NFCResponse extends _nodeFetch.Response {
8
+ constructor(bodyStream, metaData, ejectFromCache = function ejectFromCache() {
9
+ return this.ejectSelfFromCache();
10
+ }, fromCache = false){
11
+ super(bodyStream, metaData);
12
+ this.ejectFromCache = ejectFromCache;
13
+ this.fromCache = fromCache;
14
+ }
15
+ static serializeMetaFromNodeFetchResponse(res) {
16
+ const metaData = {
17
+ url: res.url,
18
+ status: res.status,
19
+ statusText: res.statusText,
20
+ headers: res.headers.raw(),
21
+ size: res.size,
22
+ timeout: res.timeout,
23
+ // @ts-ignore
24
+ counter: res[responseInternalSymbol].counter
25
+ };
26
+ return metaData;
27
+ }
28
+ }
29
+ exports.NFCResponse = NFCResponse;
30
+
31
+ //# sourceMappingURL=response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/api/rest/cache/response.ts"],"sourcesContent":["import type { CacheObject } from 'cacache';\nimport { BodyInit, Response, ResponseInit } from 'node-fetch';\n\nconst responseInternalSymbol = Object.getOwnPropertySymbols(new Response())[1];\n\nexport class NFCResponse extends Response {\n constructor(\n bodyStream?: BodyInit,\n metaData?: ResponseInit,\n public ejectFromCache: () => Promise<[CacheObject, CacheObject]> = function ejectFromCache(\n this: any\n ) {\n return this.ejectSelfFromCache();\n },\n public fromCache: boolean = false\n ) {\n super(bodyStream, metaData);\n }\n\n static serializeMetaFromNodeFetchResponse(res: Response) {\n const metaData = {\n url: res.url,\n status: res.status,\n statusText: res.statusText,\n headers: res.headers.raw(),\n size: res.size,\n timeout: res.timeout,\n // @ts-ignore\n counter: res[responseInternalSymbol].counter,\n };\n\n return metaData;\n }\n}\n"],"names":["responseInternalSymbol","Object","getOwnPropertySymbols","Response","NFCResponse","constructor","bodyStream","metaData","ejectFromCache","ejectSelfFromCache","fromCache","serializeMetaFromNodeFetchResponse","res","url","status","statusText","headers","raw","size","timeout","counter"],"mappings":"AAAA;;;;AACiD,IAAA,UAAY,WAAZ,YAAY,CAAA;AAE7D,MAAMA,sBAAsB,GAAGC,MAAM,CAACC,qBAAqB,CAAC,IAAIC,UAAQ,SAAA,EAAE,CAAC,CAAC,CAAC,CAAC,AAAC;AAExE,MAAMC,WAAW,SAASD,UAAQ,SAAA;IACvCE,YACEC,UAAqB,EACrBC,QAAuB,EAChBC,cAAyD,GAAG,SAASA,cAAc,GAExF;QACA,OAAO,IAAI,CAACC,kBAAkB,EAAE,CAAC;KAClC,EACMC,SAAkB,GAAG,KAAK,CACjC;QACA,KAAK,CAACJ,UAAU,EAAEC,QAAQ,CAAC,CAAC;aAPrBC,cAAyD,GAAzDA,cAAyD;aAKzDE,SAAkB,GAAlBA,SAAkB;KAG1B;IAED,OAAOC,kCAAkC,CAACC,GAAa,EAAE;QACvD,MAAML,QAAQ,GAAG;YACfM,GAAG,EAAED,GAAG,CAACC,GAAG;YACZC,MAAM,EAAEF,GAAG,CAACE,MAAM;YAClBC,UAAU,EAAEH,GAAG,CAACG,UAAU;YAC1BC,OAAO,EAAEJ,GAAG,CAACI,OAAO,CAACC,GAAG,EAAE;YAC1BC,IAAI,EAAEN,GAAG,CAACM,IAAI;YACdC,OAAO,EAAEP,GAAG,CAACO,OAAO;YACpB,aAAa;YACbC,OAAO,EAAER,GAAG,CAACZ,sBAAsB,CAAC,CAACoB,OAAO;SAC7C,AAAC;QAEF,OAAOb,QAAQ,CAAC;KACjB;CACF;QA5BYH,WAAW,GAAXA,WAAW"}
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.wrapFetchWithCache = wrapFetchWithCache;
6
+ var _crypto = _interopRequireDefault(require("crypto"));
7
+ var _fs = _interopRequireDefault(require("fs"));
8
+ var _nodeFetch = require("node-fetch");
9
+ var _url = require("url");
10
+ var _response = require("./response");
11
+ function _interopRequireDefault(obj) {
12
+ return obj && obj.__esModule ? obj : {
13
+ default: obj
14
+ };
15
+ }
16
+ const CACHE_VERSION = 3;
17
+ const lockPromiseForKey = {};
18
+ const unlockFunctionForKey = {};
19
+ /**
20
+ * Take out a lock. When this function returns (asynchronously),
21
+ * you have the lock.
22
+ * @param {string} key - The key to lock on. Anyone else who
23
+ * tries to lock on the same key will need to wait for it to
24
+ * be unlocked.
25
+ */ async function lock(key) {
26
+ if (!lockPromiseForKey[key]) {
27
+ lockPromiseForKey[key] = Promise.resolve();
28
+ }
29
+ const takeLockPromise = lockPromiseForKey[key];
30
+ lockPromiseForKey[key] = takeLockPromise.then(()=>new Promise((fulfill)=>{
31
+ unlockFunctionForKey[key] = fulfill;
32
+ })
33
+ );
34
+ return takeLockPromise;
35
+ }
36
+ /**
37
+ * Release a lock.
38
+ * @param {string} key - The key to release the lock for.
39
+ * The next person in line will now be able to take out
40
+ * the lock for that key.
41
+ */ function unlock(key) {
42
+ if (unlockFunctionForKey[key]) {
43
+ unlockFunctionForKey[key]();
44
+ delete unlockFunctionForKey[key];
45
+ }
46
+ }
47
+ function md5(str) {
48
+ return _crypto.default.createHash("md5").update(str).digest("hex");
49
+ }
50
+ // Since the boundary in FormData is random,
51
+ // we ignore it for purposes of calculating
52
+ // the cache key.
53
+ function getFormDataCacheKey(formData) {
54
+ const cacheKey = {
55
+ ...formData
56
+ };
57
+ const boundary = formData.getBoundary();
58
+ // @ts-expect-error
59
+ delete cacheKey._boundary;
60
+ const boundaryReplaceRegex = new RegExp(boundary, "g");
61
+ // @ts-expect-error
62
+ cacheKey._streams = cacheKey._streams.map((s)=>{
63
+ if (typeof s === "string") {
64
+ return s.replace(boundaryReplaceRegex, "");
65
+ }
66
+ return s;
67
+ });
68
+ return cacheKey;
69
+ }
70
+ function getBodyCacheKeyJson(body) {
71
+ if (!body) {
72
+ return body;
73
+ }
74
+ if (typeof body === "string") {
75
+ return body;
76
+ }
77
+ if (body instanceof _url.URLSearchParams) {
78
+ return body.toString();
79
+ }
80
+ if (body instanceof _fs.default.ReadStream) {
81
+ return body.path;
82
+ }
83
+ if (body.toString && body.toString() === "[object FormData]") {
84
+ return getFormDataCacheKey(body);
85
+ }
86
+ if (body instanceof Buffer) {
87
+ return body.toString();
88
+ }
89
+ throw new Error("Unsupported body type. Supported body types are: string, number, undefined, null, url.URLSearchParams, fs.ReadStream, FormData");
90
+ }
91
+ function getRequestCacheKey(req) {
92
+ return {
93
+ cache: req.cache,
94
+ credentials: req.credentials,
95
+ destination: req.destination,
96
+ headers: req.headers,
97
+ integrity: req.integrity,
98
+ method: req.method,
99
+ redirect: req.redirect,
100
+ referrer: req.referrer,
101
+ referrerPolicy: req.referrerPolicy,
102
+ url: req.url,
103
+ body: getBodyCacheKeyJson(req.body)
104
+ };
105
+ }
106
+ function getCacheKey(requestArguments) {
107
+ const resource = requestArguments[0];
108
+ const init = requestArguments[1] || {};
109
+ const resourceCacheKeyJson = resource instanceof _nodeFetch.Request ? getRequestCacheKey(resource) : {
110
+ url: resource
111
+ };
112
+ const initCacheKeyJson = {
113
+ ...init
114
+ };
115
+ // @ts-ignore
116
+ resourceCacheKeyJson.body = getBodyCacheKeyJson(resourceCacheKeyJson.body);
117
+ initCacheKeyJson.body = getBodyCacheKeyJson(initCacheKeyJson.body);
118
+ delete initCacheKeyJson.agent;
119
+ return md5(JSON.stringify([
120
+ resourceCacheKeyJson,
121
+ initCacheKeyJson,
122
+ CACHE_VERSION
123
+ ]));
124
+ }
125
+ function wrapFetchWithCache(fetch, cache1) {
126
+ async function getResponse(cache, url, init) {
127
+ const cacheKey = getCacheKey([
128
+ url,
129
+ init
130
+ ]);
131
+ let cachedValue = await cache.get(cacheKey);
132
+ const ejectSelfFromCache = ()=>cache.remove(cacheKey)
133
+ ;
134
+ if (cachedValue) {
135
+ return new _response.NFCResponse(cachedValue.bodyStream, cachedValue.metaData, ejectSelfFromCache, true);
136
+ }
137
+ await lock(cacheKey);
138
+ try {
139
+ cachedValue = await cache.get(cacheKey);
140
+ if (cachedValue) {
141
+ return new _response.NFCResponse(cachedValue.bodyStream, cachedValue.metaData, ejectSelfFromCache, true);
142
+ }
143
+ const fetchResponse = await fetch(url, init);
144
+ const serializedMeta = _response.NFCResponse.serializeMetaFromNodeFetchResponse(fetchResponse);
145
+ const newlyCachedData = await cache.set(cacheKey, // @ts-expect-error
146
+ fetchResponse.body, serializedMeta);
147
+ return new _response.NFCResponse(newlyCachedData.bodyStream, newlyCachedData.metaData, ejectSelfFromCache, false);
148
+ } finally{
149
+ unlock(cacheKey);
150
+ }
151
+ }
152
+ return (url, init)=>getResponse(cache1, url, init)
153
+ ;
154
+ }
155
+
156
+ //# sourceMappingURL=wrapFetchWithCache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/api/rest/cache/wrapFetchWithCache.ts"],"sourcesContent":["/**\n * Copyright (c) 2021 Expo, Inc.\n * Copyright (c) 2020 mistval.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * Based on https://github.com/mistval/node-fetch-cache/blob/9c40ddf786b0de22ce521d8bdaa6347bc44dd629/src/index.js#L1\n * But with TypeScript support to fix Jest tests, and removed unused code.\n */\nimport crypto from 'crypto';\nimport FormData from 'form-data';\nimport fs from 'fs';\nimport { Request, RequestInfo, RequestInit, Response } from 'node-fetch';\nimport { URLSearchParams } from 'url';\n\nimport { FileSystemCache } from './FileSystemCache';\nimport { NFCResponse } from './response';\nimport { FetchLike } from '../client.types';\n\nconst CACHE_VERSION = 3;\n\nconst lockPromiseForKey: Record<string, Promise<any>> = {};\nconst unlockFunctionForKey: Record<string, any> = {};\n\n/**\n * Take out a lock. When this function returns (asynchronously),\n * you have the lock.\n * @param {string} key - The key to lock on. Anyone else who\n * tries to lock on the same key will need to wait for it to\n * be unlocked.\n */\nasync function lock(key: string) {\n if (!lockPromiseForKey[key]) {\n lockPromiseForKey[key] = Promise.resolve();\n }\n\n const takeLockPromise = lockPromiseForKey[key];\n lockPromiseForKey[key] = takeLockPromise.then(\n () =>\n new Promise((fulfill) => {\n unlockFunctionForKey[key] = fulfill;\n })\n );\n\n return takeLockPromise;\n}\n\n/**\n * Release a lock.\n * @param {string} key - The key to release the lock for.\n * The next person in line will now be able to take out\n * the lock for that key.\n */\nfunction unlock(key: string) {\n if (unlockFunctionForKey[key]) {\n unlockFunctionForKey[key]();\n delete unlockFunctionForKey[key];\n }\n}\n\nfunction md5(str: string) {\n return crypto.createHash('md5').update(str).digest('hex');\n}\n\n// Since the boundary in FormData is random,\n// we ignore it for purposes of calculating\n// the cache key.\nfunction getFormDataCacheKey(formData: FormData) {\n const cacheKey = { ...formData };\n const boundary = formData.getBoundary();\n\n // @ts-expect-error\n delete cacheKey._boundary;\n\n const boundaryReplaceRegex = new RegExp(boundary, 'g');\n\n // @ts-expect-error\n cacheKey._streams = cacheKey._streams.map((s) => {\n if (typeof s === 'string') {\n return s.replace(boundaryReplaceRegex, '');\n }\n\n return s;\n });\n\n return cacheKey;\n}\n\nfunction getBodyCacheKeyJson(body: any) {\n if (!body) {\n return body;\n }\n if (typeof body === 'string') {\n return body;\n }\n if (body instanceof URLSearchParams) {\n return body.toString();\n }\n if (body instanceof fs.ReadStream) {\n return body.path;\n }\n if (body.toString && body.toString() === '[object FormData]') {\n return getFormDataCacheKey(body);\n }\n if (body instanceof Buffer) {\n return body.toString();\n }\n\n throw new Error(\n 'Unsupported body type. Supported body types are: string, number, undefined, null, url.URLSearchParams, fs.ReadStream, FormData'\n );\n}\n\nfunction getRequestCacheKey(req: any) {\n return {\n cache: req.cache,\n credentials: req.credentials,\n destination: req.destination,\n headers: req.headers,\n integrity: req.integrity,\n method: req.method,\n redirect: req.redirect,\n referrer: req.referrer,\n referrerPolicy: req.referrerPolicy,\n url: req.url,\n body: getBodyCacheKeyJson(req.body),\n };\n}\n\nfunction getCacheKey(requestArguments: any[]) {\n const resource = requestArguments[0];\n const init = requestArguments[1] || {};\n\n const resourceCacheKeyJson =\n resource instanceof Request ? getRequestCacheKey(resource) : { url: resource };\n\n const initCacheKeyJson = { ...init };\n\n // @ts-ignore\n resourceCacheKeyJson.body = getBodyCacheKeyJson(resourceCacheKeyJson.body);\n initCacheKeyJson.body = getBodyCacheKeyJson(initCacheKeyJson.body);\n\n delete initCacheKeyJson.agent;\n\n return md5(JSON.stringify([resourceCacheKeyJson, initCacheKeyJson, CACHE_VERSION]));\n}\n\nexport function wrapFetchWithCache(\n fetch: FetchLike,\n cache: FileSystemCache\n): (url: RequestInfo, init?: RequestInit | undefined) => Promise<Response> {\n async function getResponse(\n cache: FileSystemCache,\n url: RequestInfo,\n init?: RequestInit | undefined\n ) {\n const cacheKey = getCacheKey([url, init]);\n let cachedValue = await cache.get(cacheKey);\n\n const ejectSelfFromCache = () => cache.remove(cacheKey);\n\n if (cachedValue) {\n return new NFCResponse(\n cachedValue.bodyStream,\n cachedValue.metaData,\n ejectSelfFromCache,\n true\n );\n }\n\n await lock(cacheKey);\n try {\n cachedValue = await cache.get(cacheKey);\n if (cachedValue) {\n return new NFCResponse(\n cachedValue.bodyStream,\n cachedValue.metaData,\n ejectSelfFromCache,\n true\n );\n }\n\n const fetchResponse = await fetch(url, init);\n const serializedMeta = NFCResponse.serializeMetaFromNodeFetchResponse(fetchResponse);\n\n const newlyCachedData = await cache.set(\n cacheKey,\n // @ts-expect-error\n fetchResponse.body,\n serializedMeta\n );\n\n return new NFCResponse(\n newlyCachedData!.bodyStream,\n newlyCachedData!.metaData,\n ejectSelfFromCache,\n false\n );\n } finally {\n unlock(cacheKey);\n }\n }\n return (url: RequestInfo, init?: RequestInit | undefined) => getResponse(cache, url, init);\n}\n"],"names":["wrapFetchWithCache","CACHE_VERSION","lockPromiseForKey","unlockFunctionForKey","lock","key","Promise","resolve","takeLockPromise","then","fulfill","unlock","md5","str","crypto","createHash","update","digest","getFormDataCacheKey","formData","cacheKey","boundary","getBoundary","_boundary","boundaryReplaceRegex","RegExp","_streams","map","s","replace","getBodyCacheKeyJson","body","URLSearchParams","toString","fs","ReadStream","path","Buffer","Error","getRequestCacheKey","req","cache","credentials","destination","headers","integrity","method","redirect","referrer","referrerPolicy","url","getCacheKey","requestArguments","resource","init","resourceCacheKeyJson","Request","initCacheKeyJson","agent","JSON","stringify","fetch","getResponse","cachedValue","get","ejectSelfFromCache","remove","NFCResponse","bodyStream","metaData","fetchResponse","serializedMeta","serializeMetaFromNodeFetchResponse","newlyCachedData","set"],"mappings":"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"}