@ankhorage/deploy 0.3.0 → 0.5.0

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 (340) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +1 -2
  3. package/dist/domain/AndroidDeploymentIntent.d.ts +10 -0
  4. package/dist/domain/AndroidDeploymentIntent.d.ts.map +1 -0
  5. package/dist/domain/AndroidDeploymentIntent.js +3 -0
  6. package/dist/domain/AndroidDeploymentIntent.js.map +1 -0
  7. package/dist/domain/AndroidDeploymentPublication.d.ts +12 -0
  8. package/dist/domain/AndroidDeploymentPublication.d.ts.map +1 -0
  9. package/dist/domain/AndroidDeploymentPublication.js +2 -0
  10. package/dist/domain/AndroidDeploymentPublication.js.map +1 -0
  11. package/dist/domain/DeploymentCurrentState.d.ts +6 -3
  12. package/dist/domain/DeploymentCurrentState.d.ts.map +1 -1
  13. package/dist/domain/DeploymentCurrentState.js.map +1 -1
  14. package/dist/domain/DeploymentDesiredRevisions.d.ts +3 -0
  15. package/dist/domain/DeploymentDesiredRevisions.d.ts.map +1 -0
  16. package/dist/domain/DeploymentDesiredRevisions.js +2 -0
  17. package/dist/domain/DeploymentDesiredRevisions.js.map +1 -0
  18. package/dist/domain/DeploymentTargetChange.d.ts +1 -1
  19. package/dist/domain/DeploymentTargetChange.d.ts.map +1 -1
  20. package/dist/domain/DeploymentTargetChange.js +1 -0
  21. package/dist/domain/DeploymentTargetChange.js.map +1 -1
  22. package/dist/domain/WebDeploymentPublication.d.ts +9 -0
  23. package/dist/domain/WebDeploymentPublication.d.ts.map +1 -0
  24. package/dist/domain/WebDeploymentPublication.js +2 -0
  25. package/dist/domain/WebDeploymentPublication.js.map +1 -0
  26. package/dist/domain/WebDeploymentPublishIntent.d.ts +6 -0
  27. package/dist/domain/WebDeploymentPublishIntent.d.ts.map +1 -0
  28. package/dist/domain/WebDeploymentPublishIntent.js +2 -0
  29. package/dist/domain/WebDeploymentPublishIntent.js.map +1 -0
  30. package/dist/engine/createDeploymentChanges.d.ts +2 -0
  31. package/dist/engine/createDeploymentChanges.d.ts.map +1 -1
  32. package/dist/engine/createDeploymentChanges.js +22 -7
  33. package/dist/engine/createDeploymentChanges.js.map +1 -1
  34. package/dist/engine/createDeploymentPlan.d.ts +2 -0
  35. package/dist/engine/createDeploymentPlan.d.ts.map +1 -1
  36. package/dist/engine/createDeploymentPlan.js.map +1 -1
  37. package/dist/engine/targetSnapshot.d.ts +2 -2
  38. package/dist/engine/targetSnapshot.d.ts.map +1 -1
  39. package/dist/engine/targetSnapshot.js +14 -9
  40. package/dist/engine/targetSnapshot.js.map +1 -1
  41. package/dist/index.d.ts +5 -0
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +3 -0
  44. package/dist/index.js.map +1 -1
  45. package/dist/project/android/ProjectAndroidDeploymentAccess.d.ts +7 -0
  46. package/dist/project/android/ProjectAndroidDeploymentAccess.d.ts.map +1 -0
  47. package/dist/project/android/ProjectAndroidDeploymentAccess.js +2 -0
  48. package/dist/project/android/ProjectAndroidDeploymentAccess.js.map +1 -0
  49. package/dist/project/android/ProjectAndroidDeploymentExecution.d.ts +12 -0
  50. package/dist/project/android/ProjectAndroidDeploymentExecution.d.ts.map +1 -0
  51. package/dist/project/android/ProjectAndroidDeploymentExecution.js +2 -0
  52. package/dist/project/android/ProjectAndroidDeploymentExecution.js.map +1 -0
  53. package/dist/project/android/ProjectAndroidDeploymentInspection.d.ts +21 -0
  54. package/dist/project/android/ProjectAndroidDeploymentInspection.d.ts.map +1 -0
  55. package/dist/project/android/ProjectAndroidDeploymentInspection.js +2 -0
  56. package/dist/project/android/ProjectAndroidDeploymentInspection.js.map +1 -0
  57. package/dist/project/android/ProjectAndroidDeploymentRuntime.d.ts +13 -0
  58. package/dist/project/android/ProjectAndroidDeploymentRuntime.d.ts.map +1 -0
  59. package/dist/project/android/ProjectAndroidDeploymentRuntime.js +12 -0
  60. package/dist/project/android/ProjectAndroidDeploymentRuntime.js.map +1 -0
  61. package/dist/project/android/ProjectAndroidExecutionState.d.ts +10 -0
  62. package/dist/project/android/ProjectAndroidExecutionState.d.ts.map +1 -0
  63. package/dist/project/android/ProjectAndroidExecutionState.js +2 -0
  64. package/dist/project/android/ProjectAndroidExecutionState.js.map +1 -0
  65. package/dist/project/android/createProjectAndroidDeploymentPlan.d.ts +4 -0
  66. package/dist/project/android/createProjectAndroidDeploymentPlan.d.ts.map +1 -0
  67. package/dist/project/android/createProjectAndroidDeploymentPlan.js +13 -0
  68. package/dist/project/android/createProjectAndroidDeploymentPlan.js.map +1 -0
  69. package/dist/project/android/executeProjectAndroidDeployment.d.ts +12 -0
  70. package/dist/project/android/executeProjectAndroidDeployment.d.ts.map +1 -0
  71. package/dist/project/android/executeProjectAndroidDeployment.js +164 -0
  72. package/dist/project/android/executeProjectAndroidDeployment.js.map +1 -0
  73. package/dist/project/android/executeProjectAndroidStep.d.ts +15 -0
  74. package/dist/project/android/executeProjectAndroidStep.d.ts.map +1 -0
  75. package/dist/project/android/executeProjectAndroidStep.js +124 -0
  76. package/dist/project/android/executeProjectAndroidStep.js.map +1 -0
  77. package/dist/project/android/inspectProjectAndroidDeployment.d.ts +11 -0
  78. package/dist/project/android/inspectProjectAndroidDeployment.d.ts.map +1 -0
  79. package/dist/project/android/inspectProjectAndroidDeployment.js +90 -0
  80. package/dist/project/android/inspectProjectAndroidDeployment.js.map +1 -0
  81. package/dist/project/android/inspectProjectAndroidEasSetup.d.ts +5 -0
  82. package/dist/project/android/inspectProjectAndroidEasSetup.d.ts.map +1 -0
  83. package/dist/project/android/inspectProjectAndroidEasSetup.js +18 -0
  84. package/dist/project/android/inspectProjectAndroidEasSetup.js.map +1 -0
  85. package/dist/project/android/inspectProjectAndroidGooglePlay.d.ts +16 -0
  86. package/dist/project/android/inspectProjectAndroidGooglePlay.d.ts.map +1 -0
  87. package/dist/project/android/inspectProjectAndroidGooglePlay.js +52 -0
  88. package/dist/project/android/inspectProjectAndroidGooglePlay.js.map +1 -0
  89. package/dist/project/android/normalizeProjectAndroidDesired.d.ts +13 -0
  90. package/dist/project/android/normalizeProjectAndroidDesired.d.ts.map +1 -0
  91. package/dist/project/android/normalizeProjectAndroidDesired.js +25 -0
  92. package/dist/project/android/normalizeProjectAndroidDesired.js.map +1 -0
  93. package/dist/project/android/readCurrentProjectAndroidDeployment.d.ts +8 -0
  94. package/dist/project/android/readCurrentProjectAndroidDeployment.d.ts.map +1 -0
  95. package/dist/project/android/readCurrentProjectAndroidDeployment.js +44 -0
  96. package/dist/project/android/readCurrentProjectAndroidDeployment.js.map +1 -0
  97. package/dist/project/android/recordProjectAndroidDeployment.d.ts +21 -0
  98. package/dist/project/android/recordProjectAndroidDeployment.d.ts.map +1 -0
  99. package/dist/project/android/recordProjectAndroidDeployment.js +36 -0
  100. package/dist/project/android/recordProjectAndroidDeployment.js.map +1 -0
  101. package/dist/project/android/resolveProjectAndroidDeploymentAccess.d.ts +9 -0
  102. package/dist/project/android/resolveProjectAndroidDeploymentAccess.d.ts.map +1 -0
  103. package/dist/project/android/resolveProjectAndroidDeploymentAccess.js +7 -0
  104. package/dist/project/android/resolveProjectAndroidDeploymentAccess.js.map +1 -0
  105. package/dist/project/android/scopeProjectAndroidDeploymentAccess.d.ts +3 -0
  106. package/dist/project/android/scopeProjectAndroidDeploymentAccess.d.ts.map +1 -0
  107. package/dist/project/android/scopeProjectAndroidDeploymentAccess.js +7 -0
  108. package/dist/project/android/scopeProjectAndroidDeploymentAccess.js.map +1 -0
  109. package/dist/project/areDeploymentPlansEqual.d.ts +3 -0
  110. package/dist/project/areDeploymentPlansEqual.d.ts.map +1 -0
  111. package/dist/project/areDeploymentPlansEqual.js +4 -0
  112. package/dist/project/areDeploymentPlansEqual.js.map +1 -0
  113. package/dist/project/history/validation/observedTarget.d.ts.map +1 -1
  114. package/dist/project/history/validation/observedTarget.js +13 -6
  115. package/dist/project/history/validation/observedTarget.js.map +1 -1
  116. package/dist/project/index.d.ts +12 -0
  117. package/dist/project/index.d.ts.map +1 -1
  118. package/dist/project/index.js +6 -0
  119. package/dist/project/index.js.map +1 -1
  120. package/dist/project/setupBlockingOutcome.d.ts +14 -0
  121. package/dist/project/setupBlockingOutcome.d.ts.map +1 -0
  122. package/dist/project/setupBlockingOutcome.js +38 -0
  123. package/dist/project/setupBlockingOutcome.js.map +1 -0
  124. package/dist/project/web/ProjectWebDeploymentAccess.d.ts +7 -0
  125. package/dist/project/web/ProjectWebDeploymentAccess.d.ts.map +1 -0
  126. package/dist/project/web/ProjectWebDeploymentAccess.js +2 -0
  127. package/dist/project/web/ProjectWebDeploymentAccess.js.map +1 -0
  128. package/dist/project/web/ProjectWebDeploymentExecution.d.ts +12 -0
  129. package/dist/project/web/ProjectWebDeploymentExecution.d.ts.map +1 -0
  130. package/dist/project/web/ProjectWebDeploymentExecution.js +2 -0
  131. package/dist/project/web/ProjectWebDeploymentExecution.js.map +1 -0
  132. package/dist/project/web/ProjectWebDeploymentInspection.d.ts +19 -0
  133. package/dist/project/web/ProjectWebDeploymentInspection.d.ts.map +1 -0
  134. package/dist/project/web/ProjectWebDeploymentInspection.js +2 -0
  135. package/dist/project/web/ProjectWebDeploymentInspection.js.map +1 -0
  136. package/dist/project/web/ProjectWebDeploymentRuntime.d.ts +9 -0
  137. package/dist/project/web/ProjectWebDeploymentRuntime.d.ts.map +1 -0
  138. package/dist/project/web/ProjectWebDeploymentRuntime.js +8 -0
  139. package/dist/project/web/ProjectWebDeploymentRuntime.js.map +1 -0
  140. package/dist/project/web/ProjectWebExecutionState.d.ts +9 -0
  141. package/dist/project/web/ProjectWebExecutionState.d.ts.map +1 -0
  142. package/dist/project/web/ProjectWebExecutionState.js +2 -0
  143. package/dist/project/web/ProjectWebExecutionState.js.map +1 -0
  144. package/dist/project/web/areDeploymentPlansEqual.d.ts +2 -0
  145. package/dist/project/web/areDeploymentPlansEqual.d.ts.map +1 -0
  146. package/dist/project/web/areDeploymentPlansEqual.js +2 -0
  147. package/dist/project/web/areDeploymentPlansEqual.js.map +1 -0
  148. package/dist/project/web/createProjectWebDeploymentPlan.d.ts +4 -0
  149. package/dist/project/web/createProjectWebDeploymentPlan.d.ts.map +1 -0
  150. package/dist/project/web/createProjectWebDeploymentPlan.js +13 -0
  151. package/dist/project/web/createProjectWebDeploymentPlan.js.map +1 -0
  152. package/dist/project/web/executeProjectWebDeployment.d.ts +14 -0
  153. package/dist/project/web/executeProjectWebDeployment.d.ts.map +1 -0
  154. package/dist/project/web/executeProjectWebDeployment.js +118 -0
  155. package/dist/project/web/executeProjectWebDeployment.js.map +1 -0
  156. package/dist/project/web/executeProjectWebStep.d.ts +16 -0
  157. package/dist/project/web/executeProjectWebStep.d.ts.map +1 -0
  158. package/dist/project/web/executeProjectWebStep.js +80 -0
  159. package/dist/project/web/executeProjectWebStep.js.map +1 -0
  160. package/dist/project/web/inspectProjectWebDeployment.d.ts +9 -0
  161. package/dist/project/web/inspectProjectWebDeployment.d.ts.map +1 -0
  162. package/dist/project/web/inspectProjectWebDeployment.js +56 -0
  163. package/dist/project/web/inspectProjectWebDeployment.js.map +1 -0
  164. package/dist/project/web/inspectProjectWebSetup.d.ts +5 -0
  165. package/dist/project/web/inspectProjectWebSetup.d.ts.map +1 -0
  166. package/dist/project/web/inspectProjectWebSetup.js +14 -0
  167. package/dist/project/web/inspectProjectWebSetup.js.map +1 -0
  168. package/dist/project/web/normalizeProjectWebDesired.d.ts +12 -0
  169. package/dist/project/web/normalizeProjectWebDesired.d.ts.map +1 -0
  170. package/dist/project/web/normalizeProjectWebDesired.js +20 -0
  171. package/dist/project/web/normalizeProjectWebDesired.js.map +1 -0
  172. package/dist/project/web/readCurrentProjectWebDeployment.d.ts +3 -0
  173. package/dist/project/web/readCurrentProjectWebDeployment.d.ts.map +1 -0
  174. package/dist/project/web/readCurrentProjectWebDeployment.js +24 -0
  175. package/dist/project/web/readCurrentProjectWebDeployment.js.map +1 -0
  176. package/dist/project/web/recordProjectWebDeployment.d.ts +19 -0
  177. package/dist/project/web/recordProjectWebDeployment.d.ts.map +1 -0
  178. package/dist/project/web/recordProjectWebDeployment.js +36 -0
  179. package/dist/project/web/recordProjectWebDeployment.js.map +1 -0
  180. package/dist/project/web/resolveProjectWebDeploymentAccess.d.ts +9 -0
  181. package/dist/project/web/resolveProjectWebDeploymentAccess.d.ts.map +1 -0
  182. package/dist/project/web/resolveProjectWebDeploymentAccess.js +7 -0
  183. package/dist/project/web/resolveProjectWebDeploymentAccess.js.map +1 -0
  184. package/dist/project/web/setupBlockingOutcome.d.ts +4 -0
  185. package/dist/project/web/setupBlockingOutcome.d.ts.map +1 -0
  186. package/dist/project/web/setupBlockingOutcome.js +12 -0
  187. package/dist/project/web/setupBlockingOutcome.js.map +1 -0
  188. package/dist/providers/eas/android/EasAndroidBuildArtifact.d.ts +8 -0
  189. package/dist/providers/eas/android/EasAndroidBuildArtifact.d.ts.map +1 -0
  190. package/dist/providers/eas/android/EasAndroidBuildArtifact.js +2 -0
  191. package/dist/providers/eas/android/EasAndroidBuildArtifact.js.map +1 -0
  192. package/dist/providers/eas/android/buildAndroidWithEas.d.ts +25 -0
  193. package/dist/providers/eas/android/buildAndroidWithEas.d.ts.map +1 -0
  194. package/dist/providers/eas/android/buildAndroidWithEas.js +58 -0
  195. package/dist/providers/eas/android/buildAndroidWithEas.js.map +1 -0
  196. package/dist/providers/eas/android/generateLocalAndroidFingerprint.d.ts +15 -0
  197. package/dist/providers/eas/android/generateLocalAndroidFingerprint.d.ts.map +1 -0
  198. package/dist/providers/eas/android/generateLocalAndroidFingerprint.js +51 -0
  199. package/dist/providers/eas/android/generateLocalAndroidFingerprint.js.map +1 -0
  200. package/dist/providers/eas/android/inspectEasAndroidConfig.d.ts +28 -0
  201. package/dist/providers/eas/android/inspectEasAndroidConfig.d.ts.map +1 -0
  202. package/dist/providers/eas/android/inspectEasAndroidConfig.js +40 -0
  203. package/dist/providers/eas/android/inspectEasAndroidConfig.js.map +1 -0
  204. package/dist/providers/eas/android/parseEasAndroidBuild.d.ts +3 -0
  205. package/dist/providers/eas/android/parseEasAndroidBuild.d.ts.map +1 -0
  206. package/dist/providers/eas/android/parseEasAndroidBuild.js +45 -0
  207. package/dist/providers/eas/android/parseEasAndroidBuild.js.map +1 -0
  208. package/dist/providers/eas/android/parseEasAndroidConfig.d.ts +3 -0
  209. package/dist/providers/eas/android/parseEasAndroidConfig.d.ts.map +1 -0
  210. package/dist/providers/eas/android/parseEasAndroidConfig.js +59 -0
  211. package/dist/providers/eas/android/parseEasAndroidConfig.js.map +1 -0
  212. package/dist/providers/eas/createEasSetupAdapter.d.ts +13 -0
  213. package/dist/providers/eas/createEasSetupAdapter.d.ts.map +1 -0
  214. package/dist/providers/eas/createEasSetupAdapter.js +72 -0
  215. package/dist/providers/eas/createEasSetupAdapter.js.map +1 -0
  216. package/dist/providers/eas/parseEasWebPublication.d.ts +3 -0
  217. package/dist/providers/eas/parseEasWebPublication.d.ts.map +1 -0
  218. package/dist/providers/eas/parseEasWebPublication.js +31 -0
  219. package/dist/providers/eas/parseEasWebPublication.js.map +1 -0
  220. package/dist/providers/eas/publishWebToEas.d.ts +27 -0
  221. package/dist/providers/eas/publishWebToEas.d.ts.map +1 -0
  222. package/dist/providers/eas/publishWebToEas.js +52 -0
  223. package/dist/providers/eas/publishWebToEas.js.map +1 -0
  224. package/dist/providers/eas/resolveEasProcessEnvironment.d.ts +17 -0
  225. package/dist/providers/eas/resolveEasProcessEnvironment.d.ts.map +1 -0
  226. package/dist/providers/eas/resolveEasProcessEnvironment.js +27 -0
  227. package/dist/providers/eas/resolveEasProcessEnvironment.js.map +1 -0
  228. package/dist/providers/googlePlay/GooglePlayTokenFactory.d.ts +7 -0
  229. package/dist/providers/googlePlay/GooglePlayTokenFactory.d.ts.map +1 -0
  230. package/dist/providers/googlePlay/GooglePlayTokenFactory.js +14 -0
  231. package/dist/providers/googlePlay/GooglePlayTokenFactory.js.map +1 -0
  232. package/dist/providers/googlePlay/GooglePlayTrackState.d.ts +12 -0
  233. package/dist/providers/googlePlay/GooglePlayTrackState.d.ts.map +1 -0
  234. package/dist/providers/googlePlay/GooglePlayTrackState.js +35 -0
  235. package/dist/providers/googlePlay/GooglePlayTrackState.js.map +1 -0
  236. package/dist/providers/googlePlay/GooglePlayTransport.d.ts +15 -0
  237. package/dist/providers/googlePlay/GooglePlayTransport.d.ts.map +1 -0
  238. package/dist/providers/googlePlay/GooglePlayTransport.js +12 -0
  239. package/dist/providers/googlePlay/GooglePlayTransport.js.map +1 -0
  240. package/dist/providers/googlePlay/commitGooglePlayEdit.d.ts +8 -0
  241. package/dist/providers/googlePlay/commitGooglePlayEdit.d.ts.map +1 -0
  242. package/dist/providers/googlePlay/commitGooglePlayEdit.js +17 -0
  243. package/dist/providers/googlePlay/commitGooglePlayEdit.js.map +1 -0
  244. package/dist/providers/googlePlay/createGooglePlaySetupAdapter.d.ts +6 -0
  245. package/dist/providers/googlePlay/createGooglePlaySetupAdapter.d.ts.map +1 -0
  246. package/dist/providers/googlePlay/createGooglePlaySetupAdapter.js +32 -0
  247. package/dist/providers/googlePlay/createGooglePlaySetupAdapter.js.map +1 -0
  248. package/dist/providers/googlePlay/downloadAndroidArchive.d.ts +9 -0
  249. package/dist/providers/googlePlay/downloadAndroidArchive.d.ts.map +1 -0
  250. package/dist/providers/googlePlay/downloadAndroidArchive.js +28 -0
  251. package/dist/providers/googlePlay/downloadAndroidArchive.js.map +1 -0
  252. package/dist/providers/googlePlay/googlePlayUrls.d.ts +6 -0
  253. package/dist/providers/googlePlay/googlePlayUrls.d.ts.map +1 -0
  254. package/dist/providers/googlePlay/googlePlayUrls.js +18 -0
  255. package/dist/providers/googlePlay/googlePlayUrls.js.map +1 -0
  256. package/dist/providers/googlePlay/insertGooglePlayEdit.d.ts +7 -0
  257. package/dist/providers/googlePlay/insertGooglePlayEdit.d.ts.map +1 -0
  258. package/dist/providers/googlePlay/insertGooglePlayEdit.js +32 -0
  259. package/dist/providers/googlePlay/insertGooglePlayEdit.js.map +1 -0
  260. package/dist/providers/googlePlay/inspectGooglePlayTrack.d.ts +27 -0
  261. package/dist/providers/googlePlay/inspectGooglePlayTrack.d.ts.map +1 -0
  262. package/dist/providers/googlePlay/inspectGooglePlayTrack.js +80 -0
  263. package/dist/providers/googlePlay/inspectGooglePlayTrack.js.map +1 -0
  264. package/dist/providers/googlePlay/publishAndroidToGooglePlay.d.ts +32 -0
  265. package/dist/providers/googlePlay/publishAndroidToGooglePlay.d.ts.map +1 -0
  266. package/dist/providers/googlePlay/publishAndroidToGooglePlay.js +74 -0
  267. package/dist/providers/googlePlay/publishAndroidToGooglePlay.js.map +1 -0
  268. package/dist/providers/googlePlay/resolveGooglePlayAccessToken.d.ts +17 -0
  269. package/dist/providers/googlePlay/resolveGooglePlayAccessToken.d.ts.map +1 -0
  270. package/dist/providers/googlePlay/resolveGooglePlayAccessToken.js +62 -0
  271. package/dist/providers/googlePlay/resolveGooglePlayAccessToken.js.map +1 -0
  272. package/dist/providers/googlePlay/updateGooglePlayTrack.d.ts +12 -0
  273. package/dist/providers/googlePlay/updateGooglePlayTrack.d.ts.map +1 -0
  274. package/dist/providers/googlePlay/updateGooglePlayTrack.js +26 -0
  275. package/dist/providers/googlePlay/updateGooglePlayTrack.js.map +1 -0
  276. package/dist/providers/googlePlay/uploadGooglePlayBundle.d.ts +9 -0
  277. package/dist/providers/googlePlay/uploadGooglePlayBundle.d.ts.map +1 -0
  278. package/dist/providers/googlePlay/uploadGooglePlayBundle.js +34 -0
  279. package/dist/providers/googlePlay/uploadGooglePlayBundle.js.map +1 -0
  280. package/dist/providers/googlePlay/verifyGooglePlayPublication.d.ts +23 -0
  281. package/dist/providers/googlePlay/verifyGooglePlayPublication.d.ts.map +1 -0
  282. package/dist/providers/googlePlay/verifyGooglePlayPublication.js +31 -0
  283. package/dist/providers/googlePlay/verifyGooglePlayPublication.js.map +1 -0
  284. package/dist/runtime/http/DeploymentHttpProbe.d.ts +6 -0
  285. package/dist/runtime/http/DeploymentHttpProbe.d.ts.map +1 -0
  286. package/dist/runtime/http/DeploymentHttpProbe.js +2 -0
  287. package/dist/runtime/http/DeploymentHttpProbe.js.map +1 -0
  288. package/dist/runtime/http/probeDeploymentHttp.d.ts +3 -0
  289. package/dist/runtime/http/probeDeploymentHttp.d.ts.map +1 -0
  290. package/dist/runtime/http/probeDeploymentHttp.js +5 -0
  291. package/dist/runtime/http/probeDeploymentHttp.js.map +1 -0
  292. package/dist/runtime/process/DeploymentProcessRunner.d.ts +13 -0
  293. package/dist/runtime/process/DeploymentProcessRunner.d.ts.map +1 -0
  294. package/dist/runtime/process/DeploymentProcessRunner.js +2 -0
  295. package/dist/runtime/process/DeploymentProcessRunner.js.map +1 -0
  296. package/dist/runtime/process/runDeploymentProcess.d.ts +3 -0
  297. package/dist/runtime/process/runDeploymentProcess.d.ts.map +1 -0
  298. package/dist/runtime/process/runDeploymentProcess.js +29 -0
  299. package/dist/runtime/process/runDeploymentProcess.js.map +1 -0
  300. package/dist/targets/android/createAndroidDeploymentRevision.d.ts +3 -0
  301. package/dist/targets/android/createAndroidDeploymentRevision.d.ts.map +1 -0
  302. package/dist/targets/android/createAndroidDeploymentRevision.js +11 -0
  303. package/dist/targets/android/createAndroidDeploymentRevision.js.map +1 -0
  304. package/dist/targets/android/createAndroidTargetPlanContributor.d.ts +3 -0
  305. package/dist/targets/android/createAndroidTargetPlanContributor.d.ts.map +1 -0
  306. package/dist/targets/android/createAndroidTargetPlanContributor.js +26 -0
  307. package/dist/targets/android/createAndroidTargetPlanContributor.js.map +1 -0
  308. package/dist/targets/android/isAndroidDeploymentIntentValid.d.ts +3 -0
  309. package/dist/targets/android/isAndroidDeploymentIntentValid.d.ts.map +1 -0
  310. package/dist/targets/android/isAndroidDeploymentIntentValid.js +7 -0
  311. package/dist/targets/android/isAndroidDeploymentIntentValid.js.map +1 -0
  312. package/dist/targets/android/normalizeAndroidProviders.d.ts +16 -0
  313. package/dist/targets/android/normalizeAndroidProviders.d.ts.map +1 -0
  314. package/dist/targets/android/normalizeAndroidProviders.js +16 -0
  315. package/dist/targets/android/normalizeAndroidProviders.js.map +1 -0
  316. package/dist/targets/web/PreparedWebArtifact.d.ts +5 -0
  317. package/dist/targets/web/PreparedWebArtifact.d.ts.map +1 -0
  318. package/dist/targets/web/PreparedWebArtifact.js +2 -0
  319. package/dist/targets/web/PreparedWebArtifact.js.map +1 -0
  320. package/dist/targets/web/createWebTargetPlanContributor.d.ts +3 -0
  321. package/dist/targets/web/createWebTargetPlanContributor.d.ts.map +1 -0
  322. package/dist/targets/web/createWebTargetPlanContributor.js +32 -0
  323. package/dist/targets/web/createWebTargetPlanContributor.js.map +1 -0
  324. package/dist/targets/web/hashWebExport.d.ts +2 -0
  325. package/dist/targets/web/hashWebExport.d.ts.map +1 -0
  326. package/dist/targets/web/hashWebExport.js +30 -0
  327. package/dist/targets/web/hashWebExport.js.map +1 -0
  328. package/dist/targets/web/normalizeWebProviders.d.ts +16 -0
  329. package/dist/targets/web/normalizeWebProviders.d.ts.map +1 -0
  330. package/dist/targets/web/normalizeWebProviders.js +16 -0
  331. package/dist/targets/web/normalizeWebProviders.js.map +1 -0
  332. package/dist/targets/web/prepareWebArtifact.d.ts +16 -0
  333. package/dist/targets/web/prepareWebArtifact.d.ts.map +1 -0
  334. package/dist/targets/web/prepareWebArtifact.js +46 -0
  335. package/dist/targets/web/prepareWebArtifact.js.map +1 -0
  336. package/dist/targets/web/verifyWebPublication.d.ts +5 -0
  337. package/dist/targets/web/verifyWebPublication.d.ts.map +1 -0
  338. package/dist/targets/web/verifyWebPublication.js +25 -0
  339. package/dist/targets/web/verifyWebPublication.js.map +1 -0
  340. package/package.json +3 -2
@@ -0,0 +1,21 @@
1
+ import type { AppDeployManifest } from '@ankhorage/contracts/deploy';
2
+ import type { AndroidDeploymentIntent } from '../../domain/AndroidDeploymentIntent';
3
+ import type { DeploymentCurrentState } from '../../domain/DeploymentCurrentState';
4
+ import type { DeploymentFailure } from '../../domain/DeploymentFailure';
5
+ import type { DeploymentProviderSetupInspectionResult } from '../../domain/DeploymentProviderSetupInspectionResult';
6
+ export interface ProjectAndroidDeploymentInspection {
7
+ readonly projectRoot: string;
8
+ readonly desired: AppDeployManifest;
9
+ readonly current: DeploymentCurrentState;
10
+ readonly intent: AndroidDeploymentIntent;
11
+ readonly desiredRevision?: string;
12
+ readonly setups: readonly DeploymentProviderSetupInspectionResult[];
13
+ }
14
+ export type ProjectAndroidDeploymentInspectionResult = {
15
+ readonly ok: true;
16
+ readonly inspection: ProjectAndroidDeploymentInspection;
17
+ } | {
18
+ readonly ok: false;
19
+ readonly failure: DeploymentFailure;
20
+ };
21
+ //# sourceMappingURL=ProjectAndroidDeploymentInspection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectAndroidDeploymentInspection.d.ts","sourceRoot":"","sources":["../../../src/project/android/ProjectAndroidDeploymentInspection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAClF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,KAAK,EAAE,uCAAuC,EAAE,MAAM,sDAAsD,CAAC;AAEpH,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,SAAS,uCAAuC,EAAE,CAAC;CACrE;AAED,MAAM,MAAM,wCAAwC,GAChD;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,kCAAkC,CAAA;CAAE,GAC9E;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAA;CAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ProjectAndroidDeploymentInspection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectAndroidDeploymentInspection.js","sourceRoot":"","sources":["../../../src/project/android/ProjectAndroidDeploymentInspection.ts"],"names":[],"mappings":"","sourcesContent":["import type { AppDeployManifest } from '@ankhorage/contracts/deploy';\n\nimport type { AndroidDeploymentIntent } from '../../domain/AndroidDeploymentIntent';\nimport type { DeploymentCurrentState } from '../../domain/DeploymentCurrentState';\nimport type { DeploymentFailure } from '../../domain/DeploymentFailure';\nimport type { DeploymentProviderSetupInspectionResult } from '../../domain/DeploymentProviderSetupInspectionResult';\n\nexport interface ProjectAndroidDeploymentInspection {\n readonly projectRoot: string;\n readonly desired: AppDeployManifest;\n readonly current: DeploymentCurrentState;\n readonly intent: AndroidDeploymentIntent;\n readonly desiredRevision?: string;\n readonly setups: readonly DeploymentProviderSetupInspectionResult[];\n}\n\nexport type ProjectAndroidDeploymentInspectionResult =\n | { readonly ok: true; readonly inspection: ProjectAndroidDeploymentInspection }\n | { readonly ok: false; readonly failure: DeploymentFailure };\n"]}
@@ -0,0 +1,13 @@
1
+ import type { GooglePlayTokenFactory } from '../../providers/googlePlay/GooglePlayTokenFactory';
2
+ import type { GooglePlayTransport } from '../../providers/googlePlay/GooglePlayTransport';
3
+ import type { AndroidArchiveDownloader } from '../../providers/googlePlay/downloadAndroidArchive';
4
+ import type { DeploymentProcessRunner } from '../../runtime/process/DeploymentProcessRunner';
5
+ export interface ProjectAndroidDeploymentRuntime {
6
+ readonly runProcess: DeploymentProcessRunner;
7
+ readonly createGooglePlayToken: GooglePlayTokenFactory;
8
+ readonly requestGooglePlay: GooglePlayTransport;
9
+ readonly downloadArchive: AndroidArchiveDownloader;
10
+ readonly now: () => Date;
11
+ }
12
+ export declare const projectAndroidDeploymentRuntime: ProjectAndroidDeploymentRuntime;
13
+ //# sourceMappingURL=ProjectAndroidDeploymentRuntime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectAndroidDeploymentRuntime.d.ts","sourceRoot":"","sources":["../../../src/project/android/ProjectAndroidDeploymentRuntime.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAEhG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AAE1F,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mDAAmD,CAAC;AAClG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AAG7F,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,UAAU,EAAE,uBAAuB,CAAC;IAC7C,QAAQ,CAAC,qBAAqB,EAAE,sBAAsB,CAAC;IACvD,QAAQ,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;IAChD,QAAQ,CAAC,eAAe,EAAE,wBAAwB,CAAC;IACnD,QAAQ,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,eAAO,MAAM,+BAA+B,EAAE,+BAM7C,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { createGooglePlayAccessToken } from '../../providers/googlePlay/GooglePlayTokenFactory';
2
+ import { fetchGooglePlay } from '../../providers/googlePlay/GooglePlayTransport';
3
+ import { downloadAndroidArchive } from '../../providers/googlePlay/downloadAndroidArchive';
4
+ import { runDeploymentProcess } from '../../runtime/process/runDeploymentProcess';
5
+ export const projectAndroidDeploymentRuntime = {
6
+ runProcess: runDeploymentProcess,
7
+ createGooglePlayToken: createGooglePlayAccessToken,
8
+ requestGooglePlay: fetchGooglePlay,
9
+ downloadArchive: downloadAndroidArchive,
10
+ now: () => new Date(),
11
+ };
12
+ //# sourceMappingURL=ProjectAndroidDeploymentRuntime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectAndroidDeploymentRuntime.js","sourceRoot":"","sources":["../../../src/project/android/ProjectAndroidDeploymentRuntime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,mDAAmD,CAAC;AAEhG,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AAEjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAG3F,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAUlF,MAAM,CAAC,MAAM,+BAA+B,GAAoC;IAC9E,UAAU,EAAE,oBAAoB;IAChC,qBAAqB,EAAE,2BAA2B;IAClD,iBAAiB,EAAE,eAAe;IAClC,eAAe,EAAE,sBAAsB;IACvC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE;CACtB,CAAC","sourcesContent":["import { createGooglePlayAccessToken } from '../../providers/googlePlay/GooglePlayTokenFactory';\nimport type { GooglePlayTokenFactory } from '../../providers/googlePlay/GooglePlayTokenFactory';\nimport { fetchGooglePlay } from '../../providers/googlePlay/GooglePlayTransport';\nimport type { GooglePlayTransport } from '../../providers/googlePlay/GooglePlayTransport';\nimport { downloadAndroidArchive } from '../../providers/googlePlay/downloadAndroidArchive';\nimport type { AndroidArchiveDownloader } from '../../providers/googlePlay/downloadAndroidArchive';\nimport type { DeploymentProcessRunner } from '../../runtime/process/DeploymentProcessRunner';\nimport { runDeploymentProcess } from '../../runtime/process/runDeploymentProcess';\n\nexport interface ProjectAndroidDeploymentRuntime {\n readonly runProcess: DeploymentProcessRunner;\n readonly createGooglePlayToken: GooglePlayTokenFactory;\n readonly requestGooglePlay: GooglePlayTransport;\n readonly downloadArchive: AndroidArchiveDownloader;\n readonly now: () => Date;\n}\n\nexport const projectAndroidDeploymentRuntime: ProjectAndroidDeploymentRuntime = {\n runProcess: runDeploymentProcess,\n createGooglePlayToken: createGooglePlayAccessToken,\n requestGooglePlay: fetchGooglePlay,\n downloadArchive: downloadAndroidArchive,\n now: () => new Date(),\n};\n"]}
@@ -0,0 +1,10 @@
1
+ import type { AndroidDeploymentPublication } from '../../domain/AndroidDeploymentPublication';
2
+ import type { DeploymentVerificationResult } from '../../domain/DeploymentVerificationResult';
3
+ import type { EasAndroidBuildArtifact } from '../../providers/eas/android/EasAndroidBuildArtifact';
4
+ export interface ProjectAndroidExecutionState {
5
+ fingerprint: string | null;
6
+ build: EasAndroidBuildArtifact | null;
7
+ publication: AndroidDeploymentPublication | null;
8
+ verification: DeploymentVerificationResult | null;
9
+ }
10
+ //# sourceMappingURL=ProjectAndroidExecutionState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectAndroidExecutionState.d.ts","sourceRoot":"","sources":["../../../src/project/android/ProjectAndroidExecutionState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AAC9F,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AAC9F,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAEnG,MAAM,WAAW,4BAA4B;IAC3C,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,uBAAuB,GAAG,IAAI,CAAC;IACtC,WAAW,EAAE,4BAA4B,GAAG,IAAI,CAAC;IACjD,YAAY,EAAE,4BAA4B,GAAG,IAAI,CAAC;CACnD"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ProjectAndroidExecutionState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectAndroidExecutionState.js","sourceRoot":"","sources":["../../../src/project/android/ProjectAndroidExecutionState.ts"],"names":[],"mappings":"","sourcesContent":["import type { AndroidDeploymentPublication } from '../../domain/AndroidDeploymentPublication';\nimport type { DeploymentVerificationResult } from '../../domain/DeploymentVerificationResult';\nimport type { EasAndroidBuildArtifact } from '../../providers/eas/android/EasAndroidBuildArtifact';\n\nexport interface ProjectAndroidExecutionState {\n fingerprint: string | null;\n build: EasAndroidBuildArtifact | null;\n publication: AndroidDeploymentPublication | null;\n verification: DeploymentVerificationResult | null;\n}\n"]}
@@ -0,0 +1,4 @@
1
+ import type { DeploymentPlan } from '../../domain/DeploymentPlan';
2
+ import type { ProjectAndroidDeploymentInspection } from './ProjectAndroidDeploymentInspection';
3
+ export declare function createProjectAndroidDeploymentPlan(inspection: ProjectAndroidDeploymentInspection): DeploymentPlan;
4
+ //# sourceMappingURL=createProjectAndroidDeploymentPlan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createProjectAndroidDeploymentPlan.d.ts","sourceRoot":"","sources":["../../../src/project/android/createProjectAndroidDeploymentPlan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAGlE,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAE/F,wBAAgB,kCAAkC,CAChD,UAAU,EAAE,kCAAkC,GAC7C,cAAc,CAShB"}
@@ -0,0 +1,13 @@
1
+ import { createDeploymentPlan } from '../../engine/createDeploymentPlan';
2
+ import { createAndroidTargetPlanContributor } from '../../targets/android/createAndroidTargetPlanContributor';
3
+ export function createProjectAndroidDeploymentPlan(inspection) {
4
+ return createDeploymentPlan({
5
+ desired: inspection.desired,
6
+ current: inspection.current,
7
+ ...(inspection.desiredRevision === undefined
8
+ ? {}
9
+ : { desiredRevisions: { android: inspection.desiredRevision } }),
10
+ contributors: { android: createAndroidTargetPlanContributor() },
11
+ });
12
+ }
13
+ //# sourceMappingURL=createProjectAndroidDeploymentPlan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createProjectAndroidDeploymentPlan.js","sourceRoot":"","sources":["../../../src/project/android/createProjectAndroidDeploymentPlan.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,kCAAkC,EAAE,MAAM,0DAA0D,CAAC;AAG9G,MAAM,UAAU,kCAAkC,CAChD,UAA8C;IAE9C,OAAO,oBAAoB,CAAC;QAC1B,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,GAAG,CAAC,UAAU,CAAC,eAAe,KAAK,SAAS;YAC1C,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,gBAAgB,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,eAAe,EAAE,EAAE,CAAC;QAClE,YAAY,EAAE,EAAE,OAAO,EAAE,kCAAkC,EAAE,EAAE;KAChE,CAAC,CAAC;AACL,CAAC","sourcesContent":["import type { DeploymentPlan } from '../../domain/DeploymentPlan';\nimport { createDeploymentPlan } from '../../engine/createDeploymentPlan';\nimport { createAndroidTargetPlanContributor } from '../../targets/android/createAndroidTargetPlanContributor';\nimport type { ProjectAndroidDeploymentInspection } from './ProjectAndroidDeploymentInspection';\n\nexport function createProjectAndroidDeploymentPlan(\n inspection: ProjectAndroidDeploymentInspection,\n): DeploymentPlan {\n return createDeploymentPlan({\n desired: inspection.desired,\n current: inspection.current,\n ...(inspection.desiredRevision === undefined\n ? {}\n : { desiredRevisions: { android: inspection.desiredRevision } }),\n contributors: { android: createAndroidTargetPlanContributor() },\n });\n}\n"]}
@@ -0,0 +1,12 @@
1
+ import type { DeploymentPlan } from '../../domain/DeploymentPlan';
2
+ import type { ProjectAndroidDeploymentAccess } from './ProjectAndroidDeploymentAccess';
3
+ import type { ProjectAndroidDeploymentExecution } from './ProjectAndroidDeploymentExecution';
4
+ import type { ProjectAndroidDeploymentInspection } from './ProjectAndroidDeploymentInspection';
5
+ import type { ProjectAndroidDeploymentRuntime } from './ProjectAndroidDeploymentRuntime';
6
+ export interface ExecuteProjectAndroidDeploymentOptions extends ProjectAndroidDeploymentAccess {
7
+ readonly inspection: ProjectAndroidDeploymentInspection;
8
+ readonly plan: DeploymentPlan;
9
+ }
10
+ export declare function executeProjectAndroidDeployment(options: ExecuteProjectAndroidDeploymentOptions): Promise<ProjectAndroidDeploymentExecution>;
11
+ export declare function executeProjectAndroidDeploymentWithRuntime(options: ExecuteProjectAndroidDeploymentOptions, runtime: ProjectAndroidDeploymentRuntime): Promise<ProjectAndroidDeploymentExecution>;
12
+ //# sourceMappingURL=executeProjectAndroidDeployment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executeProjectAndroidDeployment.d.ts","sourceRoot":"","sources":["../../../src/project/android/executeProjectAndroidDeployment.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AASlE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AACvF,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AAC7F,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAC/F,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AAMzF,MAAM,WAAW,sCAAuC,SAAQ,8BAA8B;IAC5F,QAAQ,CAAC,UAAU,EAAE,kCAAkC,CAAC;IACxD,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;CAC/B;AAED,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,iCAAiC,CAAC,CAE5C;AAED,wBAAsB,0CAA0C,CAC9D,OAAO,EAAE,sCAAsC,EAC/C,OAAO,EAAE,+BAA+B,GACvC,OAAO,CAAC,iCAAiC,CAAC,CAiB5C"}
@@ -0,0 +1,164 @@
1
+ import { executeDeploymentPlan } from '../../engine/executeDeploymentPlan';
2
+ import { areDeploymentPlansEqual } from '../areDeploymentPlansEqual';
3
+ import { projectSetupBlockingOutcome } from '../setupBlockingOutcome';
4
+ import { createProjectAndroidDeploymentPlan } from './createProjectAndroidDeploymentPlan';
5
+ import { executeProjectAndroidStep } from './executeProjectAndroidStep';
6
+ import { inspectProjectAndroidEasSetup } from './inspectProjectAndroidEasSetup';
7
+ import { inspectProjectAndroidGooglePlay } from './inspectProjectAndroidGooglePlay';
8
+ import { projectAndroidDeploymentRuntime } from './ProjectAndroidDeploymentRuntime';
9
+ import { recordProjectAndroidDeployment } from './recordProjectAndroidDeployment';
10
+ import { resolveProjectAndroidDeploymentAccess } from './resolveProjectAndroidDeploymentAccess';
11
+ export function executeProjectAndroidDeployment(options) {
12
+ return executeProjectAndroidDeploymentWithRuntime(options, projectAndroidDeploymentRuntime);
13
+ }
14
+ export async function executeProjectAndroidDeploymentWithRuntime(options, runtime) {
15
+ const expected = createProjectAndroidDeploymentPlan(options.inspection);
16
+ if (!areDeploymentPlansEqual(expected, options.plan)) {
17
+ return fromPreflight(failedOutcome('ANDROID_PLAN_MISMATCH', 'Android deployment plan is invalid.'));
18
+ }
19
+ if (options.plan.steps.length === 0)
20
+ return executeNoChange(options.plan);
21
+ if (options.plan.steps[0]?.id === 'android:remove')
22
+ return executeRemove(options, runtime);
23
+ const packageName = desiredPackage(options.inspection);
24
+ if (packageName === null) {
25
+ return fromPreflight(failedOutcome('ANDROID_PACKAGE_MISSING', 'Android package is missing.'));
26
+ }
27
+ const access = resolveProjectAndroidDeploymentAccess(options);
28
+ const blocker = await inspectExecutionSetup(options.inspection, packageName, access, runtime);
29
+ if (blocker !== null)
30
+ return fromPreflight(blocker);
31
+ return executeMutablePlan(options, packageName, access, runtime);
32
+ }
33
+ async function inspectExecutionSetup(inspection, packageName, access, runtime) {
34
+ const [eas, google] = await Promise.all([
35
+ inspectProjectAndroidEasSetup(inspection.projectRoot, access, runtime),
36
+ inspectProjectAndroidGooglePlay({
37
+ packageName,
38
+ track: inspection.intent.track,
39
+ access,
40
+ runtime,
41
+ }),
42
+ ]);
43
+ return easBlocker(eas) ?? googleBlocker(google.setup);
44
+ }
45
+ function easBlocker(result) {
46
+ return projectSetupBlockingOutcome(result, {
47
+ target: 'android',
48
+ capability: 'build',
49
+ incompleteCode: 'ANDROID_BUILD_SETUP_INCOMPLETE',
50
+ incompleteMessage: 'Android build setup requires provisioning before deployment.',
51
+ unavailableCode: 'ANDROID_BUILD_UNAVAILABLE',
52
+ unavailableMessage: 'The Android build capability is not available.',
53
+ });
54
+ }
55
+ function googleBlocker(result) {
56
+ return projectSetupBlockingOutcome(result, {
57
+ target: 'android',
58
+ capability: 'publish',
59
+ incompleteCode: 'ANDROID_PUBLISH_SETUP_INCOMPLETE',
60
+ incompleteMessage: 'Android publishing setup requires provisioning before deployment.',
61
+ unavailableCode: 'ANDROID_PUBLISH_UNAVAILABLE',
62
+ unavailableMessage: 'The Android publish capability is not available.',
63
+ });
64
+ }
65
+ async function executeMutablePlan(options, packageName, access, runtime) {
66
+ const state = {
67
+ fingerprint: null,
68
+ build: null,
69
+ publication: null,
70
+ verification: null,
71
+ };
72
+ const execution = await executeDeploymentPlan({
73
+ plan: options.plan,
74
+ executeStep: (step) => executeProjectAndroidStep({
75
+ step,
76
+ inspection: options.inspection,
77
+ packageName,
78
+ access,
79
+ runtime,
80
+ state,
81
+ }),
82
+ });
83
+ return finalizeExecution(options, execution, state, runtime);
84
+ }
85
+ async function finalizeExecution(options, execution, state, runtime) {
86
+ if (execution.status !== 'completed' ||
87
+ state.publication === null ||
88
+ state.verification?.ok !== true) {
89
+ return result(execution, state, false);
90
+ }
91
+ const history = await recordProjectAndroidDeployment({
92
+ inspection: options.inspection,
93
+ publication: state.publication,
94
+ plan: options.plan,
95
+ execution,
96
+ verification: state.verification,
97
+ recordedAt: runtime.now().toISOString(),
98
+ });
99
+ return history.recorded
100
+ ? result(execution, state, true)
101
+ : { ...result(execution, state, false), historyFailure: history.failure };
102
+ }
103
+ async function executeNoChange(plan) {
104
+ const execution = await executeDeploymentPlan({
105
+ plan,
106
+ executeStep: () => Promise.resolve({ status: 'completed' }),
107
+ });
108
+ return { execution, publication: null, verification: null, historyRecorded: false };
109
+ }
110
+ async function executeRemove(options, runtime) {
111
+ const state = {
112
+ fingerprint: null,
113
+ build: null,
114
+ publication: null,
115
+ verification: null,
116
+ };
117
+ const access = resolveProjectAndroidDeploymentAccess(options);
118
+ const execution = await executeDeploymentPlan({
119
+ plan: options.plan,
120
+ executeStep: (step) => executeProjectAndroidStep({
121
+ step,
122
+ inspection: options.inspection,
123
+ packageName: currentPackage(options.inspection) ?? '',
124
+ access,
125
+ runtime,
126
+ state,
127
+ }),
128
+ });
129
+ return result(execution, state, false);
130
+ }
131
+ function fromPreflight(outcome) {
132
+ const execution = outcome.status === 'action-required'
133
+ ? { status: 'action-required', action: outcome.action, records: [] }
134
+ : {
135
+ status: 'failed',
136
+ failure: outcome.status === 'failed'
137
+ ? outcome.error
138
+ : {
139
+ code: 'ANDROID_PREFLIGHT_FAILED',
140
+ message: 'Android deployment preflight failed.',
141
+ },
142
+ records: [],
143
+ };
144
+ return { execution, publication: null, verification: null, historyRecorded: false };
145
+ }
146
+ function result(execution, state, historyRecorded) {
147
+ return {
148
+ execution,
149
+ publication: state.publication,
150
+ verification: state.verification,
151
+ historyRecorded,
152
+ };
153
+ }
154
+ function desiredPackage(inspection) {
155
+ const android = inspection.desired.targets.android;
156
+ return android?.enabled === true ? android.package : null;
157
+ }
158
+ function currentPackage(inspection) {
159
+ return inspection.current.targets.android?.package ?? null;
160
+ }
161
+ function failedOutcome(code, message) {
162
+ return { status: 'failed', error: { code, message, target: 'android' } };
163
+ }
164
+ //# sourceMappingURL=executeProjectAndroidDeployment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executeProjectAndroidDeployment.js","sourceRoot":"","sources":["../../../src/project/android/executeProjectAndroidDeployment.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DeploymentExecutionResult } from '../../domain/DeploymentExecutionResult';\nimport type { DeploymentPlan } from '../../domain/DeploymentPlan';\nimport type { DeploymentStepOutcome } from '../../domain/DeploymentStepOutcome';\nimport { executeDeploymentPlan } from '../../engine/executeDeploymentPlan';\nimport { areDeploymentPlansEqual } from '../areDeploymentPlansEqual';\nimport { projectSetupBlockingOutcome } from '../setupBlockingOutcome';\nimport { createProjectAndroidDeploymentPlan } from './createProjectAndroidDeploymentPlan';\nimport { executeProjectAndroidStep } from './executeProjectAndroidStep';\nimport { inspectProjectAndroidEasSetup } from './inspectProjectAndroidEasSetup';\nimport { inspectProjectAndroidGooglePlay } from './inspectProjectAndroidGooglePlay';\nimport type { ProjectAndroidDeploymentAccess } from './ProjectAndroidDeploymentAccess';\nimport type { ProjectAndroidDeploymentExecution } from './ProjectAndroidDeploymentExecution';\nimport type { ProjectAndroidDeploymentInspection } from './ProjectAndroidDeploymentInspection';\nimport type { ProjectAndroidDeploymentRuntime } from './ProjectAndroidDeploymentRuntime';\nimport { projectAndroidDeploymentRuntime } from './ProjectAndroidDeploymentRuntime';\nimport type { ProjectAndroidExecutionState } from './ProjectAndroidExecutionState';\nimport { recordProjectAndroidDeployment } from './recordProjectAndroidDeployment';\nimport { resolveProjectAndroidDeploymentAccess } from './resolveProjectAndroidDeploymentAccess';\n\nexport interface ExecuteProjectAndroidDeploymentOptions extends ProjectAndroidDeploymentAccess {\n readonly inspection: ProjectAndroidDeploymentInspection;\n readonly plan: DeploymentPlan;\n}\n\nexport function executeProjectAndroidDeployment(\n options: ExecuteProjectAndroidDeploymentOptions,\n): Promise<ProjectAndroidDeploymentExecution> {\n return executeProjectAndroidDeploymentWithRuntime(options, projectAndroidDeploymentRuntime);\n}\n\nexport async function executeProjectAndroidDeploymentWithRuntime(\n options: ExecuteProjectAndroidDeploymentOptions,\n runtime: ProjectAndroidDeploymentRuntime,\n): Promise<ProjectAndroidDeploymentExecution> {\n const expected = createProjectAndroidDeploymentPlan(options.inspection);\n if (!areDeploymentPlansEqual(expected, options.plan)) {\n return fromPreflight(\n failedOutcome('ANDROID_PLAN_MISMATCH', 'Android deployment plan is invalid.'),\n );\n }\n if (options.plan.steps.length === 0) return executeNoChange(options.plan);\n if (options.plan.steps[0]?.id === 'android:remove') return executeRemove(options, runtime);\n const packageName = desiredPackage(options.inspection);\n if (packageName === null) {\n return fromPreflight(failedOutcome('ANDROID_PACKAGE_MISSING', 'Android package is missing.'));\n }\n const access = resolveProjectAndroidDeploymentAccess(options);\n const blocker = await inspectExecutionSetup(options.inspection, packageName, access, runtime);\n if (blocker !== null) return fromPreflight(blocker);\n return executeMutablePlan(options, packageName, access, runtime);\n}\n\nasync function inspectExecutionSetup(\n inspection: ProjectAndroidDeploymentInspection,\n packageName: string,\n access: ReturnType<typeof resolveProjectAndroidDeploymentAccess>,\n runtime: ProjectAndroidDeploymentRuntime,\n): Promise<DeploymentStepOutcome | null> {\n const [eas, google] = await Promise.all([\n inspectProjectAndroidEasSetup(inspection.projectRoot, access, runtime),\n inspectProjectAndroidGooglePlay({\n packageName,\n track: inspection.intent.track,\n access,\n runtime,\n }),\n ]);\n return easBlocker(eas) ?? googleBlocker(google.setup);\n}\n\nfunction easBlocker(result: Parameters<typeof projectSetupBlockingOutcome>[0]) {\n return projectSetupBlockingOutcome(result, {\n target: 'android',\n capability: 'build',\n incompleteCode: 'ANDROID_BUILD_SETUP_INCOMPLETE',\n incompleteMessage: 'Android build setup requires provisioning before deployment.',\n unavailableCode: 'ANDROID_BUILD_UNAVAILABLE',\n unavailableMessage: 'The Android build capability is not available.',\n });\n}\n\nfunction googleBlocker(result: Parameters<typeof projectSetupBlockingOutcome>[0]) {\n return projectSetupBlockingOutcome(result, {\n target: 'android',\n capability: 'publish',\n incompleteCode: 'ANDROID_PUBLISH_SETUP_INCOMPLETE',\n incompleteMessage: 'Android publishing setup requires provisioning before deployment.',\n unavailableCode: 'ANDROID_PUBLISH_UNAVAILABLE',\n unavailableMessage: 'The Android publish capability is not available.',\n });\n}\n\nasync function executeMutablePlan(\n options: ExecuteProjectAndroidDeploymentOptions,\n packageName: string,\n access: ReturnType<typeof resolveProjectAndroidDeploymentAccess>,\n runtime: ProjectAndroidDeploymentRuntime,\n): Promise<ProjectAndroidDeploymentExecution> {\n const state: ProjectAndroidExecutionState = {\n fingerprint: null,\n build: null,\n publication: null,\n verification: null,\n };\n const execution = await executeDeploymentPlan({\n plan: options.plan,\n executeStep: (step) =>\n executeProjectAndroidStep({\n step,\n inspection: options.inspection,\n packageName,\n access,\n runtime,\n state,\n }),\n });\n return finalizeExecution(options, execution, state, runtime);\n}\n\nasync function finalizeExecution(\n options: ExecuteProjectAndroidDeploymentOptions,\n execution: DeploymentExecutionResult,\n state: ProjectAndroidExecutionState,\n runtime: ProjectAndroidDeploymentRuntime,\n): Promise<ProjectAndroidDeploymentExecution> {\n if (\n execution.status !== 'completed' ||\n state.publication === null ||\n state.verification?.ok !== true\n ) {\n return result(execution, state, false);\n }\n const history = await recordProjectAndroidDeployment({\n inspection: options.inspection,\n publication: state.publication,\n plan: options.plan,\n execution,\n verification: state.verification,\n recordedAt: runtime.now().toISOString(),\n });\n return history.recorded\n ? result(execution, state, true)\n : { ...result(execution, state, false), historyFailure: history.failure };\n}\n\nasync function executeNoChange(plan: DeploymentPlan): Promise<ProjectAndroidDeploymentExecution> {\n const execution = await executeDeploymentPlan({\n plan,\n executeStep: () => Promise.resolve({ status: 'completed' }),\n });\n return { execution, publication: null, verification: null, historyRecorded: false };\n}\n\nasync function executeRemove(\n options: ExecuteProjectAndroidDeploymentOptions,\n runtime: ProjectAndroidDeploymentRuntime,\n): Promise<ProjectAndroidDeploymentExecution> {\n const state: ProjectAndroidExecutionState = {\n fingerprint: null,\n build: null,\n publication: null,\n verification: null,\n };\n const access = resolveProjectAndroidDeploymentAccess(options);\n const execution = await executeDeploymentPlan({\n plan: options.plan,\n executeStep: (step) =>\n executeProjectAndroidStep({\n step,\n inspection: options.inspection,\n packageName: currentPackage(options.inspection) ?? '',\n access,\n runtime,\n state,\n }),\n });\n return result(execution, state, false);\n}\n\nfunction fromPreflight(outcome: DeploymentStepOutcome): ProjectAndroidDeploymentExecution {\n const execution: DeploymentExecutionResult =\n outcome.status === 'action-required'\n ? { status: 'action-required', action: outcome.action, records: [] }\n : {\n status: 'failed',\n failure:\n outcome.status === 'failed'\n ? outcome.error\n : {\n code: 'ANDROID_PREFLIGHT_FAILED',\n message: 'Android deployment preflight failed.',\n },\n records: [],\n };\n return { execution, publication: null, verification: null, historyRecorded: false };\n}\n\nfunction result(\n execution: DeploymentExecutionResult,\n state: ProjectAndroidExecutionState,\n historyRecorded: boolean,\n): ProjectAndroidDeploymentExecution {\n return {\n execution,\n publication: state.publication,\n verification: state.verification,\n historyRecorded,\n };\n}\n\nfunction desiredPackage(inspection: ProjectAndroidDeploymentInspection): string | null {\n const android = inspection.desired.targets.android;\n return android?.enabled === true ? android.package : null;\n}\n\nfunction currentPackage(inspection: ProjectAndroidDeploymentInspection): string | null {\n return inspection.current.targets.android?.package ?? null;\n}\n\nfunction failedOutcome(code: string, message: string): DeploymentStepOutcome {\n return { status: 'failed', error: { code, message, target: 'android' } };\n}\n"]}
@@ -0,0 +1,15 @@
1
+ import type { DeploymentPlanStep } from '../../domain/DeploymentPlanStep';
2
+ import type { DeploymentStepOutcome } from '../../domain/DeploymentStepOutcome';
3
+ import type { ProjectAndroidDeploymentInspection } from './ProjectAndroidDeploymentInspection';
4
+ import type { ProjectAndroidDeploymentRuntime } from './ProjectAndroidDeploymentRuntime';
5
+ import type { ProjectAndroidExecutionState } from './ProjectAndroidExecutionState';
6
+ import type { ResolvedProjectAndroidDeploymentAccess } from './resolveProjectAndroidDeploymentAccess';
7
+ export declare function executeProjectAndroidStep(options: {
8
+ readonly step: DeploymentPlanStep;
9
+ readonly inspection: ProjectAndroidDeploymentInspection;
10
+ readonly packageName: string;
11
+ readonly access: ResolvedProjectAndroidDeploymentAccess;
12
+ readonly runtime: ProjectAndroidDeploymentRuntime;
13
+ readonly state: ProjectAndroidExecutionState;
14
+ }): Promise<DeploymentStepOutcome>;
15
+ //# sourceMappingURL=executeProjectAndroidStep.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executeProjectAndroidStep.d.ts","sourceRoot":"","sources":["../../../src/project/android/executeProjectAndroidStep.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAOhF,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAC/F,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACzF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,yCAAyC,CAAC;AAEtG,wBAAsB,yBAAyB,CAAC,OAAO,EAAE;IACvD,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,kCAAkC,CAAC;IACxD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,sCAAsC,CAAC;IACxD,QAAQ,CAAC,OAAO,EAAE,+BAA+B,CAAC;IAClD,QAAQ,CAAC,KAAK,EAAE,4BAA4B,CAAC;CAC9C,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAejC"}
@@ -0,0 +1,124 @@
1
+ import { buildAndroidWithEas } from '../../providers/eas/android/buildAndroidWithEas';
2
+ import { generateLocalAndroidFingerprint } from '../../providers/eas/android/generateLocalAndroidFingerprint';
3
+ import { inspectEasAndroidConfig } from '../../providers/eas/android/inspectEasAndroidConfig';
4
+ import { publishAndroidToGooglePlay } from '../../providers/googlePlay/publishAndroidToGooglePlay';
5
+ import { verifyGooglePlayPublication } from '../../providers/googlePlay/verifyGooglePlayPublication';
6
+ import { createAndroidDeploymentRevision } from '../../targets/android/createAndroidDeploymentRevision';
7
+ export async function executeProjectAndroidStep(options) {
8
+ switch (options.step.id) {
9
+ case 'android:prepare':
10
+ return prepareStep(options);
11
+ case 'android:build':
12
+ return buildStep(options);
13
+ case 'android:publish':
14
+ return publishStep(options);
15
+ case 'android:verify':
16
+ return verifyStep(options);
17
+ case 'android:remove':
18
+ return removeStep();
19
+ default:
20
+ return failed('ANDROID_STEP_UNSUPPORTED', 'Unsupported Android deployment step.');
21
+ }
22
+ }
23
+ async function prepareStep(options) {
24
+ const expected = options.inspection.desiredRevision;
25
+ if (expected === undefined)
26
+ return failed('ANDROID_REVISION_MISSING', 'Planned Android revision is missing.');
27
+ const config = await inspectEasAndroidConfig({
28
+ projectRoot: options.inspection.projectRoot,
29
+ packageName: options.packageName,
30
+ buildProfile: options.inspection.intent.buildProfile,
31
+ ...options.access,
32
+ runProcess: options.runtime.runProcess,
33
+ });
34
+ if (config.status === 'action-required')
35
+ return { status: 'action-required', action: config.action };
36
+ if (config.status === 'failed')
37
+ return { status: 'failed', error: config.failure };
38
+ const fingerprint = await generateLocalAndroidFingerprint({
39
+ projectRoot: options.inspection.projectRoot,
40
+ profileEnvironment: config.config.profileEnvironment,
41
+ runProcess: options.runtime.runProcess,
42
+ });
43
+ if (fingerprint.status === 'failed')
44
+ return { status: 'failed', error: fingerprint.failure };
45
+ const revision = createAndroidDeploymentRevision(fingerprint.fingerprint, options.inspection.intent);
46
+ if (revision !== expected) {
47
+ return failed('ANDROID_SOURCE_CHANGED_AFTER_PLAN', 'Android source changed after the deployment plan was created.');
48
+ }
49
+ options.state.fingerprint = fingerprint.fingerprint;
50
+ return { status: 'completed' };
51
+ }
52
+ async function buildStep(options) {
53
+ if (options.state.fingerprint === null)
54
+ return failed('ANDROID_FINGERPRINT_MISSING', 'Prepared Android fingerprint is missing.');
55
+ const result = await buildAndroidWithEas({
56
+ projectRoot: options.inspection.projectRoot,
57
+ buildProfile: options.inspection.intent.buildProfile,
58
+ expectedFingerprint: options.state.fingerprint,
59
+ ...options.access,
60
+ runProcess: options.runtime.runProcess,
61
+ });
62
+ if (result.status === 'action-required')
63
+ return { status: 'action-required', action: result.action };
64
+ if (result.status === 'failed')
65
+ return { status: 'failed', error: result.failure };
66
+ options.state.build = result.artifact;
67
+ return { status: 'completed' };
68
+ }
69
+ async function publishStep(options) {
70
+ const revision = options.inspection.desiredRevision;
71
+ if (options.state.build === null || revision === undefined) {
72
+ return failed('ANDROID_BUILD_MISSING', 'Completed Android build is missing.');
73
+ }
74
+ const result = await publishAndroidToGooglePlay({
75
+ packageName: options.packageName,
76
+ revision,
77
+ intent: options.inspection.intent,
78
+ build: options.state.build,
79
+ ...options.access,
80
+ createToken: options.runtime.createGooglePlayToken,
81
+ request: options.runtime.requestGooglePlay,
82
+ downloadArchive: options.runtime.downloadArchive,
83
+ });
84
+ if (result.status === 'action-required')
85
+ return { status: 'action-required', action: result.action };
86
+ if (result.status === 'failed')
87
+ return { status: 'failed', error: result.failure };
88
+ options.state.publication = result.publication;
89
+ return { status: 'completed' };
90
+ }
91
+ async function verifyStep(options) {
92
+ if (options.state.publication === null) {
93
+ return failed('ANDROID_PUBLICATION_MISSING', 'Android publication result is missing.');
94
+ }
95
+ const result = await verifyGooglePlayPublication({
96
+ packageName: options.packageName,
97
+ publication: options.state.publication,
98
+ ...options.access,
99
+ createToken: options.runtime.createGooglePlayToken,
100
+ request: options.runtime.requestGooglePlay,
101
+ });
102
+ if (result.status === 'action-required')
103
+ return { status: 'action-required', action: result.action };
104
+ options.state.verification = result.verification;
105
+ return result.verification.ok
106
+ ? { status: 'completed' }
107
+ : failed('ANDROID_VERIFICATION_FAILED', 'Published Android deployment verification failed.');
108
+ }
109
+ function removeStep() {
110
+ return {
111
+ status: 'action-required',
112
+ action: {
113
+ type: 'manual-action',
114
+ target: 'android',
115
+ provider: 'google-play',
116
+ code: 'ANDROID_REMOVAL_REQUIRES_MANUAL_ACTION',
117
+ message: 'Review Google Play release state before removing the Android deployment target.',
118
+ },
119
+ };
120
+ }
121
+ function failed(code, message) {
122
+ return { status: 'failed', error: { code, message, target: 'android' } };
123
+ }
124
+ //# sourceMappingURL=executeProjectAndroidStep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executeProjectAndroidStep.js","sourceRoot":"","sources":["../../../src/project/android/executeProjectAndroidStep.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DeploymentPlanStep } from '../../domain/DeploymentPlanStep';\nimport type { DeploymentStepOutcome } from '../../domain/DeploymentStepOutcome';\nimport { buildAndroidWithEas } from '../../providers/eas/android/buildAndroidWithEas';\nimport { generateLocalAndroidFingerprint } from '../../providers/eas/android/generateLocalAndroidFingerprint';\nimport { inspectEasAndroidConfig } from '../../providers/eas/android/inspectEasAndroidConfig';\nimport { publishAndroidToGooglePlay } from '../../providers/googlePlay/publishAndroidToGooglePlay';\nimport { verifyGooglePlayPublication } from '../../providers/googlePlay/verifyGooglePlayPublication';\nimport { createAndroidDeploymentRevision } from '../../targets/android/createAndroidDeploymentRevision';\nimport type { ProjectAndroidDeploymentInspection } from './ProjectAndroidDeploymentInspection';\nimport type { ProjectAndroidDeploymentRuntime } from './ProjectAndroidDeploymentRuntime';\nimport type { ProjectAndroidExecutionState } from './ProjectAndroidExecutionState';\nimport type { ResolvedProjectAndroidDeploymentAccess } from './resolveProjectAndroidDeploymentAccess';\n\nexport async function executeProjectAndroidStep(options: {\n readonly step: DeploymentPlanStep;\n readonly inspection: ProjectAndroidDeploymentInspection;\n readonly packageName: string;\n readonly access: ResolvedProjectAndroidDeploymentAccess;\n readonly runtime: ProjectAndroidDeploymentRuntime;\n readonly state: ProjectAndroidExecutionState;\n}): Promise<DeploymentStepOutcome> {\n switch (options.step.id) {\n case 'android:prepare':\n return prepareStep(options);\n case 'android:build':\n return buildStep(options);\n case 'android:publish':\n return publishStep(options);\n case 'android:verify':\n return verifyStep(options);\n case 'android:remove':\n return removeStep();\n default:\n return failed('ANDROID_STEP_UNSUPPORTED', 'Unsupported Android deployment step.');\n }\n}\n\nasync function prepareStep(\n options: Parameters<typeof executeProjectAndroidStep>[0],\n): Promise<DeploymentStepOutcome> {\n const expected = options.inspection.desiredRevision;\n if (expected === undefined)\n return failed('ANDROID_REVISION_MISSING', 'Planned Android revision is missing.');\n const config = await inspectEasAndroidConfig({\n projectRoot: options.inspection.projectRoot,\n packageName: options.packageName,\n buildProfile: options.inspection.intent.buildProfile,\n ...options.access,\n runProcess: options.runtime.runProcess,\n });\n if (config.status === 'action-required')\n return { status: 'action-required', action: config.action };\n if (config.status === 'failed') return { status: 'failed', error: config.failure };\n const fingerprint = await generateLocalAndroidFingerprint({\n projectRoot: options.inspection.projectRoot,\n profileEnvironment: config.config.profileEnvironment,\n runProcess: options.runtime.runProcess,\n });\n if (fingerprint.status === 'failed') return { status: 'failed', error: fingerprint.failure };\n const revision = createAndroidDeploymentRevision(\n fingerprint.fingerprint,\n options.inspection.intent,\n );\n if (revision !== expected) {\n return failed(\n 'ANDROID_SOURCE_CHANGED_AFTER_PLAN',\n 'Android source changed after the deployment plan was created.',\n );\n }\n options.state.fingerprint = fingerprint.fingerprint;\n return { status: 'completed' };\n}\n\nasync function buildStep(\n options: Parameters<typeof executeProjectAndroidStep>[0],\n): Promise<DeploymentStepOutcome> {\n if (options.state.fingerprint === null)\n return failed('ANDROID_FINGERPRINT_MISSING', 'Prepared Android fingerprint is missing.');\n const result = await buildAndroidWithEas({\n projectRoot: options.inspection.projectRoot,\n buildProfile: options.inspection.intent.buildProfile,\n expectedFingerprint: options.state.fingerprint,\n ...options.access,\n runProcess: options.runtime.runProcess,\n });\n if (result.status === 'action-required')\n return { status: 'action-required', action: result.action };\n if (result.status === 'failed') return { status: 'failed', error: result.failure };\n options.state.build = result.artifact;\n return { status: 'completed' };\n}\n\nasync function publishStep(\n options: Parameters<typeof executeProjectAndroidStep>[0],\n): Promise<DeploymentStepOutcome> {\n const revision = options.inspection.desiredRevision;\n if (options.state.build === null || revision === undefined) {\n return failed('ANDROID_BUILD_MISSING', 'Completed Android build is missing.');\n }\n const result = await publishAndroidToGooglePlay({\n packageName: options.packageName,\n revision,\n intent: options.inspection.intent,\n build: options.state.build,\n ...options.access,\n createToken: options.runtime.createGooglePlayToken,\n request: options.runtime.requestGooglePlay,\n downloadArchive: options.runtime.downloadArchive,\n });\n if (result.status === 'action-required')\n return { status: 'action-required', action: result.action };\n if (result.status === 'failed') return { status: 'failed', error: result.failure };\n options.state.publication = result.publication;\n return { status: 'completed' };\n}\n\nasync function verifyStep(\n options: Parameters<typeof executeProjectAndroidStep>[0],\n): Promise<DeploymentStepOutcome> {\n if (options.state.publication === null) {\n return failed('ANDROID_PUBLICATION_MISSING', 'Android publication result is missing.');\n }\n const result = await verifyGooglePlayPublication({\n packageName: options.packageName,\n publication: options.state.publication,\n ...options.access,\n createToken: options.runtime.createGooglePlayToken,\n request: options.runtime.requestGooglePlay,\n });\n if (result.status === 'action-required')\n return { status: 'action-required', action: result.action };\n options.state.verification = result.verification;\n return result.verification.ok\n ? { status: 'completed' }\n : failed('ANDROID_VERIFICATION_FAILED', 'Published Android deployment verification failed.');\n}\n\nfunction removeStep(): DeploymentStepOutcome {\n return {\n status: 'action-required',\n action: {\n type: 'manual-action',\n target: 'android',\n provider: 'google-play',\n code: 'ANDROID_REMOVAL_REQUIRES_MANUAL_ACTION',\n message: 'Review Google Play release state before removing the Android deployment target.',\n },\n };\n}\n\nfunction failed(code: string, message: string): DeploymentStepOutcome {\n return { status: 'failed', error: { code, message, target: 'android' } };\n}\n"]}
@@ -0,0 +1,11 @@
1
+ import type { AndroidDeploymentIntent } from '../../domain/AndroidDeploymentIntent';
2
+ import type { ProjectAndroidDeploymentAccess } from './ProjectAndroidDeploymentAccess';
3
+ import type { ProjectAndroidDeploymentInspectionResult } from './ProjectAndroidDeploymentInspection';
4
+ import type { ProjectAndroidDeploymentRuntime } from './ProjectAndroidDeploymentRuntime';
5
+ export interface InspectProjectAndroidDeploymentOptions extends ProjectAndroidDeploymentAccess {
6
+ readonly projectRoot: string;
7
+ readonly intent: AndroidDeploymentIntent;
8
+ }
9
+ export declare function inspectProjectAndroidDeployment(options: InspectProjectAndroidDeploymentOptions): Promise<ProjectAndroidDeploymentInspectionResult>;
10
+ export declare function inspectProjectAndroidDeploymentWithRuntime(options: InspectProjectAndroidDeploymentOptions, runtime: ProjectAndroidDeploymentRuntime): Promise<ProjectAndroidDeploymentInspectionResult>;
11
+ //# sourceMappingURL=inspectProjectAndroidDeployment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspectProjectAndroidDeployment.d.ts","sourceRoot":"","sources":["../../../src/project/android/inspectProjectAndroidDeployment.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAWpF,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AACvF,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,sCAAsC,CAAC;AACrG,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AAKzF,MAAM,WAAW,sCAAuC,SAAQ,8BAA8B;IAC5F,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;CAC1C;AAED,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,wCAAwC,CAAC,CAEnD;AAED,wBAAsB,0CAA0C,CAC9D,OAAO,EAAE,sCAAsC,EAC/C,OAAO,EAAE,+BAA+B,GACvC,OAAO,CAAC,wCAAwC,CAAC,CAgCnD"}