@ankhorage/deploy 0.5.0 → 0.7.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 (441) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +1 -1
  3. package/dist/domain/IosDeploymentIntent.d.ts +5 -0
  4. package/dist/domain/IosDeploymentIntent.d.ts.map +1 -0
  5. package/dist/domain/IosDeploymentIntent.js +2 -0
  6. package/dist/domain/IosDeploymentIntent.js.map +1 -0
  7. package/dist/domain/IosDeploymentPublication.d.ts +10 -0
  8. package/dist/domain/IosDeploymentPublication.d.ts.map +1 -0
  9. package/dist/domain/IosDeploymentPublication.js +2 -0
  10. package/dist/domain/IosDeploymentPublication.js.map +1 -0
  11. package/dist/domain/storeListing/StoreListingAsset.d.ts +9 -0
  12. package/dist/domain/storeListing/StoreListingAsset.d.ts.map +1 -0
  13. package/dist/domain/storeListing/StoreListingAsset.js +2 -0
  14. package/dist/domain/storeListing/StoreListingAsset.js.map +1 -0
  15. package/dist/domain/storeListing/StoreListingAssetSet.d.ts +9 -0
  16. package/dist/domain/storeListing/StoreListingAssetSet.d.ts.map +1 -0
  17. package/dist/domain/storeListing/StoreListingAssetSet.js +2 -0
  18. package/dist/domain/storeListing/StoreListingAssetSet.js.map +1 -0
  19. package/dist/domain/storeListing/StoreListingDesiredState.d.ts +8 -0
  20. package/dist/domain/storeListing/StoreListingDesiredState.d.ts.map +1 -0
  21. package/dist/domain/storeListing/StoreListingDesiredState.js +2 -0
  22. package/dist/domain/storeListing/StoreListingDesiredState.js.map +1 -0
  23. package/dist/domain/storeListing/StoreListingDiagnostic.d.ts +12 -0
  24. package/dist/domain/storeListing/StoreListingDiagnostic.d.ts.map +1 -0
  25. package/dist/domain/storeListing/StoreListingDiagnostic.js +2 -0
  26. package/dist/domain/storeListing/StoreListingDiagnostic.js.map +1 -0
  27. package/dist/domain/storeListing/StoreListingField.d.ts +2 -0
  28. package/dist/domain/storeListing/StoreListingField.d.ts.map +1 -0
  29. package/dist/domain/storeListing/StoreListingField.js +2 -0
  30. package/dist/domain/storeListing/StoreListingField.js.map +1 -0
  31. package/dist/domain/storeListing/StoreListingLocale.d.ts +13 -0
  32. package/dist/domain/storeListing/StoreListingLocale.d.ts.map +1 -0
  33. package/dist/domain/storeListing/StoreListingLocale.js +2 -0
  34. package/dist/domain/storeListing/StoreListingLocale.js.map +1 -0
  35. package/dist/domain/storeListing/StoreListingPlan.d.ts +10 -0
  36. package/dist/domain/storeListing/StoreListingPlan.d.ts.map +1 -0
  37. package/dist/domain/storeListing/StoreListingPlan.js +2 -0
  38. package/dist/domain/storeListing/StoreListingPlan.js.map +1 -0
  39. package/dist/domain/storeListing/StoreListingPlanStep.d.ts +10 -0
  40. package/dist/domain/storeListing/StoreListingPlanStep.d.ts.map +1 -0
  41. package/dist/domain/storeListing/StoreListingPlanStep.js +2 -0
  42. package/dist/domain/storeListing/StoreListingPlanStep.js.map +1 -0
  43. package/dist/domain/storeListing/StoreListingRemoteAssetSet.d.ts +9 -0
  44. package/dist/domain/storeListing/StoreListingRemoteAssetSet.d.ts.map +1 -0
  45. package/dist/domain/storeListing/StoreListingRemoteAssetSet.js +2 -0
  46. package/dist/domain/storeListing/StoreListingRemoteAssetSet.js.map +1 -0
  47. package/dist/domain/storeListing/StoreListingTarget.d.ts +2 -0
  48. package/dist/domain/storeListing/StoreListingTarget.d.ts.map +1 -0
  49. package/dist/domain/storeListing/StoreListingTarget.js +2 -0
  50. package/dist/domain/storeListing/StoreListingTarget.js.map +1 -0
  51. package/dist/domain/storeListing/StoreListingTargetState.d.ts +13 -0
  52. package/dist/domain/storeListing/StoreListingTargetState.d.ts.map +1 -0
  53. package/dist/domain/storeListing/StoreListingTargetState.js +2 -0
  54. package/dist/domain/storeListing/StoreListingTargetState.js.map +1 -0
  55. package/dist/domain/storeListing/createStoreListingCurrentRevision.d.ts +3 -0
  56. package/dist/domain/storeListing/createStoreListingCurrentRevision.d.ts.map +1 -0
  57. package/dist/domain/storeListing/createStoreListingCurrentRevision.js +16 -0
  58. package/dist/domain/storeListing/createStoreListingCurrentRevision.js.map +1 -0
  59. package/dist/domain/storeListing/createStoreListingPlan.d.ts +9 -0
  60. package/dist/domain/storeListing/createStoreListingPlan.d.ts.map +1 -0
  61. package/dist/domain/storeListing/createStoreListingPlan.js +85 -0
  62. package/dist/domain/storeListing/createStoreListingPlan.js.map +1 -0
  63. package/dist/domain/storeListing/normalizeStoreListingLocale.d.ts +2 -0
  64. package/dist/domain/storeListing/normalizeStoreListingLocale.d.ts.map +1 -0
  65. package/dist/domain/storeListing/normalizeStoreListingLocale.js +18 -0
  66. package/dist/domain/storeListing/normalizeStoreListingLocale.js.map +1 -0
  67. package/dist/domain/storeListing/storeListingLocaleFieldValue.d.ts +4 -0
  68. package/dist/domain/storeListing/storeListingLocaleFieldValue.d.ts.map +1 -0
  69. package/dist/domain/storeListing/storeListingLocaleFieldValue.js +23 -0
  70. package/dist/domain/storeListing/storeListingLocaleFieldValue.js.map +1 -0
  71. package/dist/index.d.ts +2 -0
  72. package/dist/index.d.ts.map +1 -1
  73. package/dist/index.js.map +1 -1
  74. package/dist/project/index.d.ts +6 -0
  75. package/dist/project/index.d.ts.map +1 -1
  76. package/dist/project/index.js +3 -0
  77. package/dist/project/index.js.map +1 -1
  78. package/dist/project/ios/ProjectIosDeploymentAccess.d.ts +7 -0
  79. package/dist/project/ios/ProjectIosDeploymentAccess.d.ts.map +1 -0
  80. package/dist/project/ios/ProjectIosDeploymentAccess.js +2 -0
  81. package/dist/project/ios/ProjectIosDeploymentAccess.js.map +1 -0
  82. package/dist/project/ios/ProjectIosDeploymentExecution.d.ts +12 -0
  83. package/dist/project/ios/ProjectIosDeploymentExecution.d.ts.map +1 -0
  84. package/dist/project/ios/ProjectIosDeploymentExecution.js +2 -0
  85. package/dist/project/ios/ProjectIosDeploymentExecution.js.map +1 -0
  86. package/dist/project/ios/ProjectIosDeploymentInspection.d.ts +21 -0
  87. package/dist/project/ios/ProjectIosDeploymentInspection.d.ts.map +1 -0
  88. package/dist/project/ios/ProjectIosDeploymentInspection.js +2 -0
  89. package/dist/project/ios/ProjectIosDeploymentInspection.js.map +1 -0
  90. package/dist/project/ios/ProjectIosDeploymentRuntime.d.ts +19 -0
  91. package/dist/project/ios/ProjectIosDeploymentRuntime.d.ts.map +1 -0
  92. package/dist/project/ios/ProjectIosDeploymentRuntime.js +22 -0
  93. package/dist/project/ios/ProjectIosDeploymentRuntime.js.map +1 -0
  94. package/dist/project/ios/ProjectIosExecutionState.d.ts +12 -0
  95. package/dist/project/ios/ProjectIosExecutionState.d.ts.map +1 -0
  96. package/dist/project/ios/ProjectIosExecutionState.js +2 -0
  97. package/dist/project/ios/ProjectIosExecutionState.js.map +1 -0
  98. package/dist/project/ios/createProjectIosDeploymentPlan.d.ts +4 -0
  99. package/dist/project/ios/createProjectIosDeploymentPlan.d.ts.map +1 -0
  100. package/dist/project/ios/createProjectIosDeploymentPlan.js +13 -0
  101. package/dist/project/ios/createProjectIosDeploymentPlan.js.map +1 -0
  102. package/dist/project/ios/executeProjectIosDeployment.d.ts +12 -0
  103. package/dist/project/ios/executeProjectIosDeployment.d.ts.map +1 -0
  104. package/dist/project/ios/executeProjectIosDeployment.js +160 -0
  105. package/dist/project/ios/executeProjectIosDeployment.js.map +1 -0
  106. package/dist/project/ios/executeProjectIosStep.d.ts +15 -0
  107. package/dist/project/ios/executeProjectIosStep.d.ts.map +1 -0
  108. package/dist/project/ios/executeProjectIosStep.js +171 -0
  109. package/dist/project/ios/executeProjectIosStep.js.map +1 -0
  110. package/dist/project/ios/inspectProjectIosAppStoreConnect.d.ts +15 -0
  111. package/dist/project/ios/inspectProjectIosAppStoreConnect.d.ts.map +1 -0
  112. package/dist/project/ios/inspectProjectIosAppStoreConnect.js +55 -0
  113. package/dist/project/ios/inspectProjectIosAppStoreConnect.js.map +1 -0
  114. package/dist/project/ios/inspectProjectIosDeployment.d.ts +11 -0
  115. package/dist/project/ios/inspectProjectIosDeployment.d.ts.map +1 -0
  116. package/dist/project/ios/inspectProjectIosDeployment.js +96 -0
  117. package/dist/project/ios/inspectProjectIosDeployment.js.map +1 -0
  118. package/dist/project/ios/inspectProjectIosEasSetup.d.ts +5 -0
  119. package/dist/project/ios/inspectProjectIosEasSetup.d.ts.map +1 -0
  120. package/dist/project/ios/inspectProjectIosEasSetup.js +18 -0
  121. package/dist/project/ios/inspectProjectIosEasSetup.js.map +1 -0
  122. package/dist/project/ios/normalizeProjectIosDesired.d.ts +13 -0
  123. package/dist/project/ios/normalizeProjectIosDesired.d.ts.map +1 -0
  124. package/dist/project/ios/normalizeProjectIosDesired.js +25 -0
  125. package/dist/project/ios/normalizeProjectIosDesired.js.map +1 -0
  126. package/dist/project/ios/readCurrentProjectIosDeployment.d.ts +8 -0
  127. package/dist/project/ios/readCurrentProjectIosDeployment.d.ts.map +1 -0
  128. package/dist/project/ios/readCurrentProjectIosDeployment.js +52 -0
  129. package/dist/project/ios/readCurrentProjectIosDeployment.js.map +1 -0
  130. package/dist/project/ios/recordProjectIosDeployment.d.ts +21 -0
  131. package/dist/project/ios/recordProjectIosDeployment.d.ts.map +1 -0
  132. package/dist/project/ios/recordProjectIosDeployment.js +36 -0
  133. package/dist/project/ios/recordProjectIosDeployment.js.map +1 -0
  134. package/dist/project/ios/resolveProjectIosDeploymentAccess.d.ts +9 -0
  135. package/dist/project/ios/resolveProjectIosDeploymentAccess.d.ts.map +1 -0
  136. package/dist/project/ios/resolveProjectIosDeploymentAccess.js +7 -0
  137. package/dist/project/ios/resolveProjectIosDeploymentAccess.js.map +1 -0
  138. package/dist/project/ios/scopeProjectIosDeploymentAccess.d.ts +3 -0
  139. package/dist/project/ios/scopeProjectIosDeploymentAccess.d.ts.map +1 -0
  140. package/dist/project/ios/scopeProjectIosDeploymentAccess.js +7 -0
  141. package/dist/project/ios/scopeProjectIosDeploymentAccess.js.map +1 -0
  142. package/dist/project/storeListing/ProjectStoreListing.d.ts +8 -0
  143. package/dist/project/storeListing/ProjectStoreListing.d.ts.map +1 -0
  144. package/dist/project/storeListing/ProjectStoreListing.js +2 -0
  145. package/dist/project/storeListing/ProjectStoreListing.js.map +1 -0
  146. package/dist/project/storeListing/ProjectStoreListingAccess.d.ts +7 -0
  147. package/dist/project/storeListing/ProjectStoreListingAccess.d.ts.map +1 -0
  148. package/dist/project/storeListing/ProjectStoreListingAccess.js +2 -0
  149. package/dist/project/storeListing/ProjectStoreListingAccess.js.map +1 -0
  150. package/dist/project/storeListing/ProjectStoreListingAsset.d.ts +5 -0
  151. package/dist/project/storeListing/ProjectStoreListingAsset.d.ts.map +1 -0
  152. package/dist/project/storeListing/ProjectStoreListingAsset.js +2 -0
  153. package/dist/project/storeListing/ProjectStoreListingAsset.js.map +1 -0
  154. package/dist/project/storeListing/ProjectStoreListingAssetSet.d.ts +9 -0
  155. package/dist/project/storeListing/ProjectStoreListingAssetSet.d.ts.map +1 -0
  156. package/dist/project/storeListing/ProjectStoreListingAssetSet.js +2 -0
  157. package/dist/project/storeListing/ProjectStoreListingAssetSet.js.map +1 -0
  158. package/dist/project/storeListing/ProjectStoreListingRuntime.d.ts +17 -0
  159. package/dist/project/storeListing/ProjectStoreListingRuntime.d.ts.map +1 -0
  160. package/dist/project/storeListing/ProjectStoreListingRuntime.js +19 -0
  161. package/dist/project/storeListing/ProjectStoreListingRuntime.js.map +1 -0
  162. package/dist/project/storeListing/ProjectStoreListingTargetIdentity.d.ts +5 -0
  163. package/dist/project/storeListing/ProjectStoreListingTargetIdentity.d.ts.map +1 -0
  164. package/dist/project/storeListing/ProjectStoreListingTargetIdentity.js +2 -0
  165. package/dist/project/storeListing/ProjectStoreListingTargetIdentity.js.map +1 -0
  166. package/dist/project/storeListing/createProjectStoreListingRevision.d.ts +4 -0
  167. package/dist/project/storeListing/createProjectStoreListingRevision.d.ts.map +1 -0
  168. package/dist/project/storeListing/createProjectStoreListingRevision.js +24 -0
  169. package/dist/project/storeListing/createProjectStoreListingRevision.js.map +1 -0
  170. package/dist/project/storeListing/parseStoreListingLocale.d.ts +3 -0
  171. package/dist/project/storeListing/parseStoreListingLocale.d.ts.map +1 -0
  172. package/dist/project/storeListing/parseStoreListingLocale.js +76 -0
  173. package/dist/project/storeListing/parseStoreListingLocale.js.map +1 -0
  174. package/dist/project/storeListing/readProjectStoreListing.d.ts +5 -0
  175. package/dist/project/storeListing/readProjectStoreListing.d.ts.map +1 -0
  176. package/dist/project/storeListing/readProjectStoreListing.js +24 -0
  177. package/dist/project/storeListing/readProjectStoreListing.js.map +1 -0
  178. package/dist/project/storeListing/readStoreListingAssets.d.ts +8 -0
  179. package/dist/project/storeListing/readStoreListingAssets.d.ts.map +1 -0
  180. package/dist/project/storeListing/readStoreListingAssets.js +110 -0
  181. package/dist/project/storeListing/readStoreListingAssets.js.map +1 -0
  182. package/dist/project/storeListing/readStoreListingLocales.d.ts +3 -0
  183. package/dist/project/storeListing/readStoreListingLocales.d.ts.map +1 -0
  184. package/dist/project/storeListing/readStoreListingLocales.js +43 -0
  185. package/dist/project/storeListing/readStoreListingLocales.js.map +1 -0
  186. package/dist/project/storeListing/resolveProjectStoreListingAccess.d.ts +9 -0
  187. package/dist/project/storeListing/resolveProjectStoreListingAccess.d.ts.map +1 -0
  188. package/dist/project/storeListing/resolveProjectStoreListingAccess.js +7 -0
  189. package/dist/project/storeListing/resolveProjectStoreListingAccess.js.map +1 -0
  190. package/dist/project/storeListing/resolveProjectStoreListingTargets.d.ts +20 -0
  191. package/dist/project/storeListing/resolveProjectStoreListingTargets.d.ts.map +1 -0
  192. package/dist/project/storeListing/resolveProjectStoreListingTargets.js +16 -0
  193. package/dist/project/storeListing/resolveProjectStoreListingTargets.js.map +1 -0
  194. package/dist/project/storeListing/toStoreListingDesiredState.d.ts +4 -0
  195. package/dist/project/storeListing/toStoreListingDesiredState.d.ts.map +1 -0
  196. package/dist/project/storeListing/toStoreListingDesiredState.js +15 -0
  197. package/dist/project/storeListing/toStoreListingDesiredState.js.map +1 -0
  198. package/dist/providers/appStoreConnect/AppStoreConnectIosState.d.ts +17 -0
  199. package/dist/providers/appStoreConnect/AppStoreConnectIosState.d.ts.map +1 -0
  200. package/dist/providers/appStoreConnect/AppStoreConnectIosState.js +2 -0
  201. package/dist/providers/appStoreConnect/AppStoreConnectIosState.js.map +1 -0
  202. package/dist/providers/appStoreConnect/AppStoreConnectPublicationResult.d.ts +19 -0
  203. package/dist/providers/appStoreConnect/AppStoreConnectPublicationResult.d.ts.map +1 -0
  204. package/dist/providers/appStoreConnect/AppStoreConnectPublicationResult.js +2 -0
  205. package/dist/providers/appStoreConnect/AppStoreConnectPublicationResult.js.map +1 -0
  206. package/dist/providers/appStoreConnect/AppStoreConnectRequestTracker.d.ts +9 -0
  207. package/dist/providers/appStoreConnect/AppStoreConnectRequestTracker.d.ts.map +1 -0
  208. package/dist/providers/appStoreConnect/AppStoreConnectRequestTracker.js +13 -0
  209. package/dist/providers/appStoreConnect/AppStoreConnectRequestTracker.js.map +1 -0
  210. package/dist/providers/appStoreConnect/AppStoreConnectTokenFactory.d.ts +8 -0
  211. package/dist/providers/appStoreConnect/AppStoreConnectTokenFactory.d.ts.map +1 -0
  212. package/dist/providers/appStoreConnect/AppStoreConnectTokenFactory.js +21 -0
  213. package/dist/providers/appStoreConnect/AppStoreConnectTokenFactory.js.map +1 -0
  214. package/dist/providers/appStoreConnect/AppStoreConnectTransport.d.ts +13 -0
  215. package/dist/providers/appStoreConnect/AppStoreConnectTransport.d.ts.map +1 -0
  216. package/dist/providers/appStoreConnect/AppStoreConnectTransport.js +15 -0
  217. package/dist/providers/appStoreConnect/AppStoreConnectTransport.js.map +1 -0
  218. package/dist/providers/appStoreConnect/AppStoreListingContext.d.ts +21 -0
  219. package/dist/providers/appStoreConnect/AppStoreListingContext.d.ts.map +1 -0
  220. package/dist/providers/appStoreConnect/AppStoreListingContext.js +2 -0
  221. package/dist/providers/appStoreConnect/AppStoreListingContext.js.map +1 -0
  222. package/dist/providers/appStoreConnect/AppStoreListingContextResult.d.ts +14 -0
  223. package/dist/providers/appStoreConnect/AppStoreListingContextResult.d.ts.map +1 -0
  224. package/dist/providers/appStoreConnect/AppStoreListingContextResult.js +2 -0
  225. package/dist/providers/appStoreConnect/AppStoreListingContextResult.js.map +1 -0
  226. package/dist/providers/appStoreConnect/AppStoreUploadTransport.d.ts +17 -0
  227. package/dist/providers/appStoreConnect/AppStoreUploadTransport.d.ts.map +1 -0
  228. package/dist/providers/appStoreConnect/AppStoreUploadTransport.js +12 -0
  229. package/dist/providers/appStoreConnect/AppStoreUploadTransport.js.map +1 -0
  230. package/dist/providers/appStoreConnect/BuildUploadOperation.d.ts +13 -0
  231. package/dist/providers/appStoreConnect/BuildUploadOperation.d.ts.map +1 -0
  232. package/dist/providers/appStoreConnect/BuildUploadOperation.js +2 -0
  233. package/dist/providers/appStoreConnect/BuildUploadOperation.js.map +1 -0
  234. package/dist/providers/appStoreConnect/appStoreConnectUrls.d.ts +10 -0
  235. package/dist/providers/appStoreConnect/appStoreConnectUrls.d.ts.map +1 -0
  236. package/dist/providers/appStoreConnect/appStoreConnectUrls.js +42 -0
  237. package/dist/providers/appStoreConnect/appStoreConnectUrls.js.map +1 -0
  238. package/dist/providers/appStoreConnect/appStoreListingFields.d.ts +2 -0
  239. package/dist/providers/appStoreConnect/appStoreListingFields.d.ts.map +1 -0
  240. package/dist/providers/appStoreConnect/appStoreListingFields.js +11 -0
  241. package/dist/providers/appStoreConnect/appStoreListingFields.js.map +1 -0
  242. package/dist/providers/appStoreConnect/appStoreListingUrls.d.ts +5 -0
  243. package/dist/providers/appStoreConnect/appStoreListingUrls.d.ts.map +1 -0
  244. package/dist/providers/appStoreConnect/appStoreListingUrls.js +22 -0
  245. package/dist/providers/appStoreConnect/appStoreListingUrls.js.map +1 -0
  246. package/dist/providers/appStoreConnect/attachAppStoreVersionBuild.d.ts +8 -0
  247. package/dist/providers/appStoreConnect/attachAppStoreVersionBuild.d.ts.map +1 -0
  248. package/dist/providers/appStoreConnect/attachAppStoreVersionBuild.js +12 -0
  249. package/dist/providers/appStoreConnect/attachAppStoreVersionBuild.js.map +1 -0
  250. package/dist/providers/appStoreConnect/commitAppStoreBuildUploadFile.d.ts +7 -0
  251. package/dist/providers/appStoreConnect/commitAppStoreBuildUploadFile.d.ts.map +1 -0
  252. package/dist/providers/appStoreConnect/commitAppStoreBuildUploadFile.js +18 -0
  253. package/dist/providers/appStoreConnect/commitAppStoreBuildUploadFile.js.map +1 -0
  254. package/dist/providers/appStoreConnect/createAppStoreBuildUpload.d.ts +9 -0
  255. package/dist/providers/appStoreConnect/createAppStoreBuildUpload.d.ts.map +1 -0
  256. package/dist/providers/appStoreConnect/createAppStoreBuildUpload.js +41 -0
  257. package/dist/providers/appStoreConnect/createAppStoreBuildUpload.js.map +1 -0
  258. package/dist/providers/appStoreConnect/createAppStoreConnectSetupAdapter.d.ts +7 -0
  259. package/dist/providers/appStoreConnect/createAppStoreConnectSetupAdapter.d.ts.map +1 -0
  260. package/dist/providers/appStoreConnect/createAppStoreConnectSetupAdapter.js +33 -0
  261. package/dist/providers/appStoreConnect/createAppStoreConnectSetupAdapter.js.map +1 -0
  262. package/dist/providers/appStoreConnect/createAppStoreListingDiagnostics.d.ts +4 -0
  263. package/dist/providers/appStoreConnect/createAppStoreListingDiagnostics.d.ts.map +1 -0
  264. package/dist/providers/appStoreConnect/createAppStoreListingDiagnostics.js +85 -0
  265. package/dist/providers/appStoreConnect/createAppStoreListingDiagnostics.js.map +1 -0
  266. package/dist/providers/appStoreConnect/downloadIosArchive.d.ts +9 -0
  267. package/dist/providers/appStoreConnect/downloadIosArchive.d.ts.map +1 -0
  268. package/dist/providers/appStoreConnect/downloadIosArchive.js +28 -0
  269. package/dist/providers/appStoreConnect/downloadIosArchive.js.map +1 -0
  270. package/dist/providers/appStoreConnect/executeBuildUploadOperations.d.ts +8 -0
  271. package/dist/providers/appStoreConnect/executeBuildUploadOperations.d.ts.map +1 -0
  272. package/dist/providers/appStoreConnect/executeBuildUploadOperations.js +15 -0
  273. package/dist/providers/appStoreConnect/executeBuildUploadOperations.js.map +1 -0
  274. package/dist/providers/appStoreConnect/inspectAppStoreConnectIos.d.ts +27 -0
  275. package/dist/providers/appStoreConnect/inspectAppStoreConnectIos.d.ts.map +1 -0
  276. package/dist/providers/appStoreConnect/inspectAppStoreConnectIos.js +177 -0
  277. package/dist/providers/appStoreConnect/inspectAppStoreConnectIos.js.map +1 -0
  278. package/dist/providers/appStoreConnect/isAppStoreScreenshotVariant.d.ts +2 -0
  279. package/dist/providers/appStoreConnect/isAppStoreScreenshotVariant.d.ts.map +1 -0
  280. package/dist/providers/appStoreConnect/isAppStoreScreenshotVariant.js +39 -0
  281. package/dist/providers/appStoreConnect/isAppStoreScreenshotVariant.js.map +1 -0
  282. package/dist/providers/appStoreConnect/isEditableAppStoreListingState.d.ts +2 -0
  283. package/dist/providers/appStoreConnect/isEditableAppStoreListingState.d.ts.map +1 -0
  284. package/dist/providers/appStoreConnect/isEditableAppStoreListingState.js +12 -0
  285. package/dist/providers/appStoreConnect/isEditableAppStoreListingState.js.map +1 -0
  286. package/dist/providers/appStoreConnect/mapAppStoreLocale.d.ts +2 -0
  287. package/dist/providers/appStoreConnect/mapAppStoreLocale.d.ts.map +1 -0
  288. package/dist/providers/appStoreConnect/mapAppStoreLocale.js +112 -0
  289. package/dist/providers/appStoreConnect/mapAppStoreLocale.js.map +1 -0
  290. package/dist/providers/appStoreConnect/parseAppStoreAppId.d.ts +2 -0
  291. package/dist/providers/appStoreConnect/parseAppStoreAppId.d.ts.map +1 -0
  292. package/dist/providers/appStoreConnect/parseAppStoreAppId.js +22 -0
  293. package/dist/providers/appStoreConnect/parseAppStoreAppId.js.map +1 -0
  294. package/dist/providers/appStoreConnect/parseAppStoreListingLocalizations.d.ts +8 -0
  295. package/dist/providers/appStoreConnect/parseAppStoreListingLocalizations.d.ts.map +1 -0
  296. package/dist/providers/appStoreConnect/parseAppStoreListingLocalizations.js +68 -0
  297. package/dist/providers/appStoreConnect/parseAppStoreListingLocalizations.js.map +1 -0
  298. package/dist/providers/appStoreConnect/parseBuildUploadFileReservation.d.ts +3 -0
  299. package/dist/providers/appStoreConnect/parseBuildUploadFileReservation.d.ts.map +1 -0
  300. package/dist/providers/appStoreConnect/parseBuildUploadFileReservation.js +81 -0
  301. package/dist/providers/appStoreConnect/parseBuildUploadFileReservation.js.map +1 -0
  302. package/dist/providers/appStoreConnect/parseEditableAppStoreResourceId.d.ts +2 -0
  303. package/dist/providers/appStoreConnect/parseEditableAppStoreResourceId.d.ts.map +1 -0
  304. package/dist/providers/appStoreConnect/parseEditableAppStoreResourceId.js +28 -0
  305. package/dist/providers/appStoreConnect/parseEditableAppStoreResourceId.js.map +1 -0
  306. package/dist/providers/appStoreConnect/prepareAppStoreVersion.d.ts +8 -0
  307. package/dist/providers/appStoreConnect/prepareAppStoreVersion.d.ts.map +1 -0
  308. package/dist/providers/appStoreConnect/prepareAppStoreVersion.js +66 -0
  309. package/dist/providers/appStoreConnect/prepareAppStoreVersion.js.map +1 -0
  310. package/dist/providers/appStoreConnect/publishIosToAppStoreConnect.d.ts +21 -0
  311. package/dist/providers/appStoreConnect/publishIosToAppStoreConnect.d.ts.map +1 -0
  312. package/dist/providers/appStoreConnect/publishIosToAppStoreConnect.js +124 -0
  313. package/dist/providers/appStoreConnect/publishIosToAppStoreConnect.js.map +1 -0
  314. package/dist/providers/appStoreConnect/readAppStoreJson.d.ts +7 -0
  315. package/dist/providers/appStoreConnect/readAppStoreJson.d.ts.map +1 -0
  316. package/dist/providers/appStoreConnect/readAppStoreJson.js +12 -0
  317. package/dist/providers/appStoreConnect/readAppStoreJson.js.map +1 -0
  318. package/dist/providers/appStoreConnect/reserveAppStoreBuildUploadFile.d.ts +9 -0
  319. package/dist/providers/appStoreConnect/reserveAppStoreBuildUploadFile.d.ts.map +1 -0
  320. package/dist/providers/appStoreConnect/reserveAppStoreBuildUploadFile.js +32 -0
  321. package/dist/providers/appStoreConnect/reserveAppStoreBuildUploadFile.js.map +1 -0
  322. package/dist/providers/appStoreConnect/resolveAppStoreConnectToken.d.ts +18 -0
  323. package/dist/providers/appStoreConnect/resolveAppStoreConnectToken.d.ts.map +1 -0
  324. package/dist/providers/appStoreConnect/resolveAppStoreConnectToken.js +64 -0
  325. package/dist/providers/appStoreConnect/resolveAppStoreConnectToken.js.map +1 -0
  326. package/dist/providers/appStoreConnect/resolveAppStoreListingContext.d.ts +10 -0
  327. package/dist/providers/appStoreConnect/resolveAppStoreListingContext.d.ts.map +1 -0
  328. package/dist/providers/appStoreConnect/resolveAppStoreListingContext.js +103 -0
  329. package/dist/providers/appStoreConnect/resolveAppStoreListingContext.js.map +1 -0
  330. package/dist/providers/appStoreConnect/toAppStoreCurrentLocales.d.ts +4 -0
  331. package/dist/providers/appStoreConnect/toAppStoreCurrentLocales.d.ts.map +1 -0
  332. package/dist/providers/appStoreConnect/toAppStoreCurrentLocales.js +27 -0
  333. package/dist/providers/appStoreConnect/toAppStoreCurrentLocales.js.map +1 -0
  334. package/dist/providers/appStoreConnect/verifyAppStoreConnectPublication.d.ts +23 -0
  335. package/dist/providers/appStoreConnect/verifyAppStoreConnectPublication.d.ts.map +1 -0
  336. package/dist/providers/appStoreConnect/verifyAppStoreConnectPublication.js +60 -0
  337. package/dist/providers/appStoreConnect/verifyAppStoreConnectPublication.js.map +1 -0
  338. package/dist/providers/appStoreConnect/verifyAppStoreVersionBuild.d.ts +9 -0
  339. package/dist/providers/appStoreConnect/verifyAppStoreVersionBuild.d.ts.map +1 -0
  340. package/dist/providers/appStoreConnect/verifyAppStoreVersionBuild.js +26 -0
  341. package/dist/providers/appStoreConnect/verifyAppStoreVersionBuild.js.map +1 -0
  342. package/dist/providers/appStoreConnect/waitForAppStoreBuildUpload.d.ts +14 -0
  343. package/dist/providers/appStoreConnect/waitForAppStoreBuildUpload.d.ts.map +1 -0
  344. package/dist/providers/appStoreConnect/waitForAppStoreBuildUpload.js +69 -0
  345. package/dist/providers/appStoreConnect/waitForAppStoreBuildUpload.js.map +1 -0
  346. package/dist/providers/eas/ios/EasIosBuildArtifact.d.ts +9 -0
  347. package/dist/providers/eas/ios/EasIosBuildArtifact.d.ts.map +1 -0
  348. package/dist/providers/eas/ios/EasIosBuildArtifact.js +2 -0
  349. package/dist/providers/eas/ios/EasIosBuildArtifact.js.map +1 -0
  350. package/dist/providers/eas/ios/buildIosWithEas.d.ts +26 -0
  351. package/dist/providers/eas/ios/buildIosWithEas.d.ts.map +1 -0
  352. package/dist/providers/eas/ios/buildIosWithEas.js +60 -0
  353. package/dist/providers/eas/ios/buildIosWithEas.js.map +1 -0
  354. package/dist/providers/eas/ios/generateLocalIosFingerprint.d.ts +15 -0
  355. package/dist/providers/eas/ios/generateLocalIosFingerprint.d.ts.map +1 -0
  356. package/dist/providers/eas/ios/generateLocalIosFingerprint.js +48 -0
  357. package/dist/providers/eas/ios/generateLocalIosFingerprint.js.map +1 -0
  358. package/dist/providers/eas/ios/inspectEasIosConfig.d.ts +28 -0
  359. package/dist/providers/eas/ios/inspectEasIosConfig.d.ts.map +1 -0
  360. package/dist/providers/eas/ios/inspectEasIosConfig.js +40 -0
  361. package/dist/providers/eas/ios/inspectEasIosConfig.js.map +1 -0
  362. package/dist/providers/eas/ios/parseEasIosBuild.d.ts +3 -0
  363. package/dist/providers/eas/ios/parseEasIosBuild.d.ts.map +1 -0
  364. package/dist/providers/eas/ios/parseEasIosBuild.js +41 -0
  365. package/dist/providers/eas/ios/parseEasIosBuild.js.map +1 -0
  366. package/dist/providers/eas/ios/parseEasIosConfig.d.ts +3 -0
  367. package/dist/providers/eas/ios/parseEasIosConfig.d.ts.map +1 -0
  368. package/dist/providers/eas/ios/parseEasIosConfig.js +56 -0
  369. package/dist/providers/eas/ios/parseEasIosConfig.js.map +1 -0
  370. package/dist/providers/googlePlay/GooglePlayRequestTracker.d.ts +9 -0
  371. package/dist/providers/googlePlay/GooglePlayRequestTracker.d.ts.map +1 -0
  372. package/dist/providers/googlePlay/GooglePlayRequestTracker.js +13 -0
  373. package/dist/providers/googlePlay/GooglePlayRequestTracker.js.map +1 -0
  374. package/dist/providers/googlePlay/GooglePlayStoreListingResult.d.ts +14 -0
  375. package/dist/providers/googlePlay/GooglePlayStoreListingResult.d.ts.map +1 -0
  376. package/dist/providers/googlePlay/GooglePlayStoreListingResult.js +2 -0
  377. package/dist/providers/googlePlay/GooglePlayStoreListingResult.js.map +1 -0
  378. package/dist/providers/googlePlay/GooglePlayTransport.d.ts +1 -1
  379. package/dist/providers/googlePlay/GooglePlayTransport.d.ts.map +1 -1
  380. package/dist/providers/googlePlay/GooglePlayTransport.js.map +1 -1
  381. package/dist/providers/googlePlay/createGooglePlayListingDiagnostics.d.ts +4 -0
  382. package/dist/providers/googlePlay/createGooglePlayListingDiagnostics.d.ts.map +1 -0
  383. package/dist/providers/googlePlay/createGooglePlayListingDiagnostics.js +52 -0
  384. package/dist/providers/googlePlay/createGooglePlayListingDiagnostics.js.map +1 -0
  385. package/dist/providers/googlePlay/googlePlayListingUrls.d.ts +5 -0
  386. package/dist/providers/googlePlay/googlePlayListingUrls.d.ts.map +1 -0
  387. package/dist/providers/googlePlay/googlePlayListingUrls.js +21 -0
  388. package/dist/providers/googlePlay/googlePlayListingUrls.js.map +1 -0
  389. package/dist/providers/googlePlay/googlePlayStoreListingFields.d.ts +2 -0
  390. package/dist/providers/googlePlay/googlePlayStoreListingFields.d.ts.map +1 -0
  391. package/dist/providers/googlePlay/googlePlayStoreListingFields.js +7 -0
  392. package/dist/providers/googlePlay/googlePlayStoreListingFields.js.map +1 -0
  393. package/dist/providers/googlePlay/inspectGooglePlayStoreListing.d.ts +15 -0
  394. package/dist/providers/googlePlay/inspectGooglePlayStoreListing.d.ts.map +1 -0
  395. package/dist/providers/googlePlay/inspectGooglePlayStoreListing.js +105 -0
  396. package/dist/providers/googlePlay/inspectGooglePlayStoreListing.js.map +1 -0
  397. package/dist/providers/googlePlay/listGooglePlayImageHashes.d.ts +2 -0
  398. package/dist/providers/googlePlay/listGooglePlayImageHashes.d.ts.map +1 -0
  399. package/dist/providers/googlePlay/listGooglePlayImageHashes.js +2 -0
  400. package/dist/providers/googlePlay/listGooglePlayImageHashes.js.map +1 -0
  401. package/dist/providers/googlePlay/mapGooglePlayImageType.d.ts +2 -0
  402. package/dist/providers/googlePlay/mapGooglePlayImageType.d.ts.map +1 -0
  403. package/dist/providers/googlePlay/mapGooglePlayImageType.js +21 -0
  404. package/dist/providers/googlePlay/mapGooglePlayImageType.js.map +1 -0
  405. package/dist/providers/googlePlay/parseGooglePlayListings.d.ts +3 -0
  406. package/dist/providers/googlePlay/parseGooglePlayListings.d.ts.map +1 -0
  407. package/dist/providers/googlePlay/parseGooglePlayListings.js +47 -0
  408. package/dist/providers/googlePlay/parseGooglePlayListings.js.map +1 -0
  409. package/dist/providers/googlePlay/readGooglePlayAssetSets.d.ts +11 -0
  410. package/dist/providers/googlePlay/readGooglePlayAssetSets.d.ts.map +1 -0
  411. package/dist/providers/googlePlay/readGooglePlayAssetSets.js +32 -0
  412. package/dist/providers/googlePlay/readGooglePlayAssetSets.js.map +1 -0
  413. package/dist/providers/googlePlay/readGooglePlayImages.d.ts +10 -0
  414. package/dist/providers/googlePlay/readGooglePlayImages.d.ts.map +1 -0
  415. package/dist/providers/googlePlay/readGooglePlayImages.js +31 -0
  416. package/dist/providers/googlePlay/readGooglePlayImages.js.map +1 -0
  417. package/dist/providers/googlePlay/replaceGooglePlayImages.d.ts +12 -0
  418. package/dist/providers/googlePlay/replaceGooglePlayImages.d.ts.map +1 -0
  419. package/dist/providers/googlePlay/replaceGooglePlayImages.js +35 -0
  420. package/dist/providers/googlePlay/replaceGooglePlayImages.js.map +1 -0
  421. package/dist/providers/googlePlay/writeGooglePlayListing.d.ts +12 -0
  422. package/dist/providers/googlePlay/writeGooglePlayListing.d.ts.map +1 -0
  423. package/dist/providers/googlePlay/writeGooglePlayListing.js +21 -0
  424. package/dist/providers/googlePlay/writeGooglePlayListing.js.map +1 -0
  425. package/dist/targets/ios/createIosDeploymentRevision.d.ts +3 -0
  426. package/dist/targets/ios/createIosDeploymentRevision.d.ts.map +1 -0
  427. package/dist/targets/ios/createIosDeploymentRevision.js +10 -0
  428. package/dist/targets/ios/createIosDeploymentRevision.js.map +1 -0
  429. package/dist/targets/ios/createIosTargetPlanContributor.d.ts +3 -0
  430. package/dist/targets/ios/createIosTargetPlanContributor.d.ts.map +1 -0
  431. package/dist/targets/ios/createIosTargetPlanContributor.js +26 -0
  432. package/dist/targets/ios/createIosTargetPlanContributor.js.map +1 -0
  433. package/dist/targets/ios/isIosDeploymentIntentValid.d.ts +3 -0
  434. package/dist/targets/ios/isIosDeploymentIntentValid.d.ts.map +1 -0
  435. package/dist/targets/ios/isIosDeploymentIntentValid.js +4 -0
  436. package/dist/targets/ios/isIosDeploymentIntentValid.js.map +1 -0
  437. package/dist/targets/ios/normalizeIosProviders.d.ts +16 -0
  438. package/dist/targets/ios/normalizeIosProviders.d.ts.map +1 -0
  439. package/dist/targets/ios/normalizeIosProviders.js +16 -0
  440. package/dist/targets/ios/normalizeIosProviders.js.map +1 -0
  441. package/package.json +1 -1
@@ -0,0 +1,56 @@
1
+ export function parseEasIosConfig(value, expectedBundleIdentifier) {
2
+ if (!isRecord(value) || !isRecord(value.buildProfile) || !isRecord(value.appConfig)) {
3
+ return failure('EAS_IOS_CONFIG_INVALID');
4
+ }
5
+ const iosConfig = value.appConfig.ios;
6
+ if (!isRecord(iosConfig) || !isNonEmptyString(iosConfig.bundleIdentifier)) {
7
+ return failure('EAS_IOS_BUNDLE_IDENTIFIER_MISSING');
8
+ }
9
+ if (iosConfig.bundleIdentifier !== expectedBundleIdentifier) {
10
+ return failure('IOS_BUNDLE_IDENTIFIER_MISMATCH', 'EAS iOS bundle identifier does not match deployment config.');
11
+ }
12
+ if (!isStoreProfile(value.buildProfile)) {
13
+ return failure('EAS_IOS_PROFILE_NOT_STORE_READY', 'EAS iOS build profile is not store-ready.');
14
+ }
15
+ const environment = normalizeEnvironment(value.buildProfile.env);
16
+ if (environment === null)
17
+ return failure('EAS_IOS_CONFIG_INVALID');
18
+ const config = {
19
+ bundleIdentifier: iosConfig.bundleIdentifier,
20
+ profileEnvironment: environment,
21
+ };
22
+ return { status: 'completed', config };
23
+ }
24
+ function isStoreProfile(profile) {
25
+ if (profile.developmentClient === true || profile.distribution === 'internal')
26
+ return false;
27
+ if (profile.withoutCredentials === true)
28
+ return false;
29
+ if (profile.ios === undefined)
30
+ return true;
31
+ if (!isRecord(profile.ios))
32
+ return false;
33
+ if (profile.ios.simulator === true || profile.ios.withoutCredentials === true)
34
+ return false;
35
+ return profile.ios.distribution !== 'internal';
36
+ }
37
+ function normalizeEnvironment(value) {
38
+ if (value === undefined)
39
+ return {};
40
+ if (!isRecord(value))
41
+ return null;
42
+ const entries = Object.entries(value);
43
+ if (entries.some(([, item]) => typeof item !== 'string'))
44
+ return null;
45
+ return Object.fromEntries(entries);
46
+ }
47
+ function failure(code, message = 'EAS iOS configuration is invalid.') {
48
+ return { status: 'failed', failure: { code, message, target: 'ios', provider: 'eas' } };
49
+ }
50
+ function isRecord(value) {
51
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
52
+ }
53
+ function isNonEmptyString(value) {
54
+ return typeof value === 'string' && value.trim().length > 0;
55
+ }
56
+ //# sourceMappingURL=parseEasIosConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseEasIosConfig.js","sourceRoot":"","sources":["../../../../src/providers/eas/ios/parseEasIosConfig.ts"],"names":[],"mappings":"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","sourcesContent":["import type { EasIosConfigResult, EasIosConfigSnapshot } from './inspectEasIosConfig';\n\nexport function parseEasIosConfig(\n value: unknown,\n expectedBundleIdentifier: string,\n): EasIosConfigResult {\n if (!isRecord(value) || !isRecord(value.buildProfile) || !isRecord(value.appConfig)) {\n return failure('EAS_IOS_CONFIG_INVALID');\n }\n const iosConfig = value.appConfig.ios;\n if (!isRecord(iosConfig) || !isNonEmptyString(iosConfig.bundleIdentifier)) {\n return failure('EAS_IOS_BUNDLE_IDENTIFIER_MISSING');\n }\n if (iosConfig.bundleIdentifier !== expectedBundleIdentifier) {\n return failure(\n 'IOS_BUNDLE_IDENTIFIER_MISMATCH',\n 'EAS iOS bundle identifier does not match deployment config.',\n );\n }\n if (!isStoreProfile(value.buildProfile)) {\n return failure('EAS_IOS_PROFILE_NOT_STORE_READY', 'EAS iOS build profile is not store-ready.');\n }\n const environment = normalizeEnvironment(value.buildProfile.env);\n if (environment === null) return failure('EAS_IOS_CONFIG_INVALID');\n const config: EasIosConfigSnapshot = {\n bundleIdentifier: iosConfig.bundleIdentifier,\n profileEnvironment: environment,\n };\n return { status: 'completed', config };\n}\n\nfunction isStoreProfile(profile: Record<string, unknown>): boolean {\n if (profile.developmentClient === true || profile.distribution === 'internal') return false;\n if (profile.withoutCredentials === true) return false;\n if (profile.ios === undefined) return true;\n if (!isRecord(profile.ios)) return false;\n if (profile.ios.simulator === true || profile.ios.withoutCredentials === true) return false;\n return profile.ios.distribution !== 'internal';\n}\n\nfunction normalizeEnvironment(value: unknown): Readonly<Record<string, string>> | null {\n if (value === undefined) return {};\n if (!isRecord(value)) return null;\n const entries = Object.entries(value);\n if (entries.some(([, item]) => typeof item !== 'string')) return null;\n return Object.fromEntries(entries) as Readonly<Record<string, string>>;\n}\n\nfunction failure(code: string, message = 'EAS iOS configuration is invalid.'): EasIosConfigResult {\n return { status: 'failed', failure: { code, message, target: 'ios', provider: 'eas' } };\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nfunction isNonEmptyString(value: unknown): value is string {\n return typeof value === 'string' && value.trim().length > 0;\n}\n"]}
@@ -0,0 +1,9 @@
1
+ import type { GooglePlayTransport } from './GooglePlayTransport';
2
+ type GooglePlayBlockingStatus = 401 | 403 | null;
3
+ export interface GooglePlayRequestTracker {
4
+ readonly request: GooglePlayTransport;
5
+ readonly blockingStatus: () => GooglePlayBlockingStatus;
6
+ }
7
+ export declare function trackGooglePlayRequests(transport: GooglePlayTransport): GooglePlayRequestTracker;
8
+ export {};
9
+ //# sourceMappingURL=GooglePlayRequestTracker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GooglePlayRequestTracker.d.ts","sourceRoot":"","sources":["../../../src/providers/googlePlay/GooglePlayRequestTracker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAqB,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEpF,KAAK,wBAAwB,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC;AAEjD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,cAAc,EAAE,MAAM,wBAAwB,CAAC;CACzD;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,mBAAmB,GAAG,wBAAwB,CAUhG"}
@@ -0,0 +1,13 @@
1
+ export function trackGooglePlayRequests(transport) {
2
+ let blockingStatus = null;
3
+ return {
4
+ request: async (request) => {
5
+ const response = await transport(request);
6
+ if (response.status === 401 || response.status === 403)
7
+ blockingStatus = response.status;
8
+ return response;
9
+ },
10
+ blockingStatus: () => blockingStatus,
11
+ };
12
+ }
13
+ //# sourceMappingURL=GooglePlayRequestTracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GooglePlayRequestTracker.js","sourceRoot":"","sources":["../../../src/providers/googlePlay/GooglePlayRequestTracker.ts"],"names":[],"mappings":"AASA,MAAM,UAAU,uBAAuB,CAAC,SAA8B;IACpE,IAAI,cAAc,GAA6B,IAAI,CAAC;IACpD,OAAO;QACL,OAAO,EAAE,KAAK,EAAE,OAA0B,EAAE,EAAE;YAC5C,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;YAC1C,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;gBAAE,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YACzF,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,cAAc,EAAE,GAAG,EAAE,CAAC,cAAc;KACrC,CAAC;AACJ,CAAC","sourcesContent":["import type { GooglePlayRequest, GooglePlayTransport } from './GooglePlayTransport';\n\ntype GooglePlayBlockingStatus = 401 | 403 | null;\n\nexport interface GooglePlayRequestTracker {\n readonly request: GooglePlayTransport;\n readonly blockingStatus: () => GooglePlayBlockingStatus;\n}\n\nexport function trackGooglePlayRequests(transport: GooglePlayTransport): GooglePlayRequestTracker {\n let blockingStatus: GooglePlayBlockingStatus = null;\n return {\n request: async (request: GooglePlayRequest) => {\n const response = await transport(request);\n if (response.status === 401 || response.status === 403) blockingStatus = response.status;\n return response;\n },\n blockingStatus: () => blockingStatus,\n };\n}\n"]}
@@ -0,0 +1,14 @@
1
+ import type { DeploymentFailure } from '../../domain/DeploymentFailure';
2
+ import type { DeploymentRequiredAction } from '../../domain/DeploymentRequiredAction';
3
+ import type { StoreListingTargetState } from '../../domain/storeListing/StoreListingTargetState';
4
+ export type GooglePlayStoreListingInspectionResult = {
5
+ readonly status: 'completed';
6
+ readonly state: StoreListingTargetState;
7
+ } | {
8
+ readonly status: 'action-required';
9
+ readonly action: DeploymentRequiredAction;
10
+ } | {
11
+ readonly status: 'failed';
12
+ readonly failure: DeploymentFailure;
13
+ };
14
+ //# sourceMappingURL=GooglePlayStoreListingResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GooglePlayStoreListingResult.d.ts","sourceRoot":"","sources":["../../../src/providers/googlePlay/GooglePlayStoreListingResult.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mDAAmD,CAAC;AAEjG,MAAM,MAAM,sCAAsC,GAC9C;IAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAA;CAAE,GACzE;IAAE,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAA;CAAE,GACjF;IAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAA;CAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=GooglePlayStoreListingResult.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GooglePlayStoreListingResult.js","sourceRoot":"","sources":["../../../src/providers/googlePlay/GooglePlayStoreListingResult.ts"],"names":[],"mappings":"","sourcesContent":["import type { DeploymentFailure } from '../../domain/DeploymentFailure';\nimport type { DeploymentRequiredAction } from '../../domain/DeploymentRequiredAction';\nimport type { StoreListingTargetState } from '../../domain/storeListing/StoreListingTargetState';\n\nexport type GooglePlayStoreListingInspectionResult =\n | { readonly status: 'completed'; readonly state: StoreListingTargetState }\n | { readonly status: 'action-required'; readonly action: DeploymentRequiredAction }\n | { readonly status: 'failed'; readonly failure: DeploymentFailure };\n"]}
@@ -1,5 +1,5 @@
1
1
  export interface GooglePlayRequest {
2
- readonly method: 'GET' | 'POST' | 'PUT';
2
+ readonly method: 'DELETE' | 'GET' | 'PATCH' | 'POST' | 'PUT';
3
3
  readonly url: string;
4
4
  readonly token: string;
5
5
  readonly contentType?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"GooglePlayTransport.d.ts","sourceRoot":"","sources":["../../../src/providers/googlePlay/GooglePlayTransport.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,CAAC;IACxC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAE9F,eAAO,MAAM,eAAe,EAAE,mBAS7B,CAAC"}
1
+ {"version":3,"file":"GooglePlayTransport.d.ts","sourceRoot":"","sources":["../../../src/providers/googlePlay/GooglePlayTransport.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;IAC7D,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAE9F,eAAO,MAAM,eAAe,EAAE,mBAS7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"GooglePlayTransport.js","sourceRoot":"","sources":["../../../src/providers/googlePlay/GooglePlayTransport.ts"],"names":[],"mappings":"AAeA,MAAM,CAAC,MAAM,eAAe,GAAwB,KAAK,EAAE,OAAO,EAAE,EAAE;IACpE,MAAM,OAAO,GAA2B,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;IACrF,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;QAAE,OAAO,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IACrF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACxC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO;QACP,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;KAC9D,CAAC,CAAC;IACH,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;AAClE,CAAC,CAAC","sourcesContent":["export interface GooglePlayRequest {\n readonly method: 'GET' | 'POST' | 'PUT';\n readonly url: string;\n readonly token: string;\n readonly contentType?: string;\n readonly body?: string | Blob;\n}\n\ninterface GooglePlayResponse {\n readonly status: number;\n readonly body: string;\n}\n\nexport type GooglePlayTransport = (request: GooglePlayRequest) => Promise<GooglePlayResponse>;\n\nexport const fetchGooglePlay: GooglePlayTransport = async (request) => {\n const headers: Record<string, string> = { Authorization: `Bearer ${request.token}` };\n if (request.contentType !== undefined) headers['Content-Type'] = request.contentType;\n const response = await fetch(request.url, {\n method: request.method,\n headers,\n ...(request.body === undefined ? {} : { body: request.body }),\n });\n return { status: response.status, body: await response.text() };\n};\n"]}
1
+ {"version":3,"file":"GooglePlayTransport.js","sourceRoot":"","sources":["../../../src/providers/googlePlay/GooglePlayTransport.ts"],"names":[],"mappings":"AAeA,MAAM,CAAC,MAAM,eAAe,GAAwB,KAAK,EAAE,OAAO,EAAE,EAAE;IACpE,MAAM,OAAO,GAA2B,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;IACrF,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;QAAE,OAAO,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IACrF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACxC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO;QACP,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;KAC9D,CAAC,CAAC;IACH,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;AAClE,CAAC,CAAC","sourcesContent":["export interface GooglePlayRequest {\n readonly method: 'DELETE' | 'GET' | 'PATCH' | 'POST' | 'PUT';\n readonly url: string;\n readonly token: string;\n readonly contentType?: string;\n readonly body?: string | Blob;\n}\n\ninterface GooglePlayResponse {\n readonly status: number;\n readonly body: string;\n}\n\nexport type GooglePlayTransport = (request: GooglePlayRequest) => Promise<GooglePlayResponse>;\n\nexport const fetchGooglePlay: GooglePlayTransport = async (request) => {\n const headers: Record<string, string> = { Authorization: `Bearer ${request.token}` };\n if (request.contentType !== undefined) headers['Content-Type'] = request.contentType;\n const response = await fetch(request.url, {\n method: request.method,\n headers,\n ...(request.body === undefined ? {} : { body: request.body }),\n });\n return { status: response.status, body: await response.text() };\n};\n"]}
@@ -0,0 +1,4 @@
1
+ import type { StoreListingDesiredState } from '../../domain/storeListing/StoreListingDesiredState';
2
+ import type { StoreListingDiagnostic } from '../../domain/storeListing/StoreListingDiagnostic';
3
+ export declare function createGooglePlayListingDiagnostics(desired: StoreListingDesiredState): readonly StoreListingDiagnostic[];
4
+ //# sourceMappingURL=createGooglePlayListingDiagnostics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createGooglePlayListingDiagnostics.d.ts","sourceRoot":"","sources":["../../../src/providers/googlePlay/createGooglePlayListingDiagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oDAAoD,CAAC;AACnG,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kDAAkD,CAAC;AAkB/F,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,wBAAwB,GAChC,SAAS,sBAAsB,EAAE,CAKnC"}
@@ -0,0 +1,52 @@
1
+ import { storeListingLocaleFieldValue } from '../../domain/storeListing/storeListingLocaleFieldValue';
2
+ import { GOOGLE_PLAY_STORE_LISTING_FIELDS } from './googlePlayStoreListingFields';
3
+ import { mapGooglePlayImageType } from './mapGooglePlayImageType';
4
+ const ALL_FIELDS = [
5
+ 'name',
6
+ 'summary',
7
+ 'description',
8
+ 'keywords',
9
+ 'promotionalText',
10
+ 'supportUrl',
11
+ 'marketingUrl',
12
+ 'privacyPolicyUrl',
13
+ 'promoVideoUrl',
14
+ ];
15
+ export function createGooglePlayListingDiagnostics(desired) {
16
+ return [
17
+ ...desired.locales.flatMap(localeDiagnostics),
18
+ ...desired.assetSets.flatMap(assetSetDiagnostics),
19
+ ];
20
+ }
21
+ function localeDiagnostics(locale) {
22
+ const supported = new Set(GOOGLE_PLAY_STORE_LISTING_FIELDS);
23
+ return ALL_FIELDS.flatMap((field) => {
24
+ if (supported.has(field) || storeListingLocaleFieldValue(locale, field) === undefined)
25
+ return [];
26
+ return [
27
+ {
28
+ severity: 'warning',
29
+ code: 'GOOGLE_PLAY_LISTING_FIELD_UNSUPPORTED',
30
+ message: `Google Play does not synchronize ${field}.`,
31
+ target: 'android',
32
+ locale: locale.locale,
33
+ field,
34
+ },
35
+ ];
36
+ });
37
+ }
38
+ function assetSetDiagnostics(set) {
39
+ if (set.target !== 'android' || mapGooglePlayImageType(set.variant) !== null)
40
+ return [];
41
+ return [
42
+ {
43
+ severity: 'error',
44
+ code: 'GOOGLE_PLAY_IMAGE_VARIANT_UNSUPPORTED',
45
+ message: `Google Play image variant ${set.variant} is unsupported.`,
46
+ target: 'android',
47
+ locale: set.locale,
48
+ variant: set.variant,
49
+ },
50
+ ];
51
+ }
52
+ //# sourceMappingURL=createGooglePlayListingDiagnostics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createGooglePlayListingDiagnostics.js","sourceRoot":"","sources":["../../../src/providers/googlePlay/createGooglePlayListingDiagnostics.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,wDAAwD,CAAC;AACtG,OAAO,EAAE,gCAAgC,EAAE,MAAM,gCAAgC,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,MAAM,UAAU,GAAiC;IAC/C,MAAM;IACN,SAAS;IACT,aAAa;IACb,UAAU;IACV,iBAAiB;IACjB,YAAY;IACZ,cAAc;IACd,kBAAkB;IAClB,eAAe;CAChB,CAAC;AAEF,MAAM,UAAU,kCAAkC,CAChD,OAAiC;IAEjC,OAAO;QACL,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAC7C,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,mBAAmB,CAAC;KAClD,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAmD;IAEnD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAoB,gCAAgC,CAAC,CAAC;IAC/E,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAClC,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,4BAA4B,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,SAAS;YACnF,OAAO,EAAE,CAAC;QACZ,OAAO;YACL;gBACE,QAAQ,EAAE,SAAS;gBACnB,IAAI,EAAE,uCAAuC;gBAC7C,OAAO,EAAE,oCAAoC,KAAK,GAAG;gBACrD,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,KAAK;aACN;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAC1B,GAAkD;IAElD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC;IACxF,OAAO;QACL;YACE,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,uCAAuC;YAC7C,OAAO,EAAE,6BAA6B,GAAG,CAAC,OAAO,kBAAkB;YACnE,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB;KACF,CAAC;AACJ,CAAC","sourcesContent":["import type { StoreListingDesiredState } from '../../domain/storeListing/StoreListingDesiredState';\nimport type { StoreListingDiagnostic } from '../../domain/storeListing/StoreListingDiagnostic';\nimport type { StoreListingField } from '../../domain/storeListing/StoreListingField';\nimport { storeListingLocaleFieldValue } from '../../domain/storeListing/storeListingLocaleFieldValue';\nimport { GOOGLE_PLAY_STORE_LISTING_FIELDS } from './googlePlayStoreListingFields';\nimport { mapGooglePlayImageType } from './mapGooglePlayImageType';\n\nconst ALL_FIELDS: readonly StoreListingField[] = [\n 'name',\n 'summary',\n 'description',\n 'keywords',\n 'promotionalText',\n 'supportUrl',\n 'marketingUrl',\n 'privacyPolicyUrl',\n 'promoVideoUrl',\n];\n\nexport function createGooglePlayListingDiagnostics(\n desired: StoreListingDesiredState,\n): readonly StoreListingDiagnostic[] {\n return [\n ...desired.locales.flatMap(localeDiagnostics),\n ...desired.assetSets.flatMap(assetSetDiagnostics),\n ];\n}\n\nfunction localeDiagnostics(\n locale: StoreListingDesiredState['locales'][number],\n): StoreListingDiagnostic[] {\n const supported = new Set<StoreListingField>(GOOGLE_PLAY_STORE_LISTING_FIELDS);\n return ALL_FIELDS.flatMap((field) => {\n if (supported.has(field) || storeListingLocaleFieldValue(locale, field) === undefined)\n return [];\n return [\n {\n severity: 'warning',\n code: 'GOOGLE_PLAY_LISTING_FIELD_UNSUPPORTED',\n message: `Google Play does not synchronize ${field}.`,\n target: 'android',\n locale: locale.locale,\n field,\n },\n ];\n });\n}\n\nfunction assetSetDiagnostics(\n set: StoreListingDesiredState['assetSets'][number],\n): StoreListingDiagnostic[] {\n if (set.target !== 'android' || mapGooglePlayImageType(set.variant) !== null) return [];\n return [\n {\n severity: 'error',\n code: 'GOOGLE_PLAY_IMAGE_VARIANT_UNSUPPORTED',\n message: `Google Play image variant ${set.variant} is unsupported.`,\n target: 'android',\n locale: set.locale,\n variant: set.variant,\n },\n ];\n}\n"]}
@@ -0,0 +1,5 @@
1
+ export declare function googlePlayListingsUrl(packageName: string, editId: string): string;
2
+ export declare function googlePlayListingUrl(packageName: string, editId: string, locale: string): string;
3
+ export declare function googlePlayImagesUrl(packageName: string, editId: string, locale: string, imageType: string): string;
4
+ export declare function googlePlayImageUploadUrl(packageName: string, editId: string, locale: string, imageType: string): string;
5
+ //# sourceMappingURL=googlePlayListingUrls.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"googlePlayListingUrls.d.ts","sourceRoot":"","sources":["../../../src/providers/googlePlay/googlePlayListingUrls.ts"],"names":[],"mappings":"AAGA,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEjF;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEhG;AAED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,MAAM,CAER;AAED,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,MAAM,CAER"}
@@ -0,0 +1,21 @@
1
+ const API = 'https://androidpublisher.googleapis.com/androidpublisher/v3';
2
+ const UPLOAD = 'https://androidpublisher.googleapis.com/upload/androidpublisher/v3';
3
+ export function googlePlayListingsUrl(packageName, editId) {
4
+ return `${base(API, packageName, editId)}/listings`;
5
+ }
6
+ export function googlePlayListingUrl(packageName, editId, locale) {
7
+ return `${googlePlayListingsUrl(packageName, editId)}/${segment(locale)}`;
8
+ }
9
+ export function googlePlayImagesUrl(packageName, editId, locale, imageType) {
10
+ return `${googlePlayListingUrl(packageName, editId, locale)}/${segment(imageType)}`;
11
+ }
12
+ export function googlePlayImageUploadUrl(packageName, editId, locale, imageType) {
13
+ return `${base(UPLOAD, packageName, editId)}/listings/${segment(locale)}/${segment(imageType)}`;
14
+ }
15
+ function base(host, packageName, editId) {
16
+ return `${host}/applications/${segment(packageName)}/edits/${segment(editId)}`;
17
+ }
18
+ function segment(value) {
19
+ return encodeURIComponent(value);
20
+ }
21
+ //# sourceMappingURL=googlePlayListingUrls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"googlePlayListingUrls.js","sourceRoot":"","sources":["../../../src/providers/googlePlay/googlePlayListingUrls.ts"],"names":[],"mappings":"AAAA,MAAM,GAAG,GAAG,6DAA6D,CAAC;AAC1E,MAAM,MAAM,GAAG,oEAAoE,CAAC;AAEpF,MAAM,UAAU,qBAAqB,CAAC,WAAmB,EAAE,MAAc;IACvE,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,WAAmB,EAAE,MAAc,EAAE,MAAc;IACtF,OAAO,GAAG,qBAAqB,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,WAAmB,EACnB,MAAc,EACd,MAAc,EACd,SAAiB;IAEjB,OAAO,GAAG,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;AACtF,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,WAAmB,EACnB,MAAc,EACd,MAAc,EACd,SAAiB;IAEjB,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,aAAa,OAAO,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;AAClG,CAAC;AAED,SAAS,IAAI,CAAC,IAAY,EAAE,WAAmB,EAAE,MAAc;IAC7D,OAAO,GAAG,IAAI,iBAAiB,OAAO,CAAC,WAAW,CAAC,UAAU,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;AACjF,CAAC;AAED,SAAS,OAAO,CAAC,KAAa;IAC5B,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC","sourcesContent":["const API = 'https://androidpublisher.googleapis.com/androidpublisher/v3';\nconst UPLOAD = 'https://androidpublisher.googleapis.com/upload/androidpublisher/v3';\n\nexport function googlePlayListingsUrl(packageName: string, editId: string): string {\n return `${base(API, packageName, editId)}/listings`;\n}\n\nexport function googlePlayListingUrl(packageName: string, editId: string, locale: string): string {\n return `${googlePlayListingsUrl(packageName, editId)}/${segment(locale)}`;\n}\n\nexport function googlePlayImagesUrl(\n packageName: string,\n editId: string,\n locale: string,\n imageType: string,\n): string {\n return `${googlePlayListingUrl(packageName, editId, locale)}/${segment(imageType)}`;\n}\n\nexport function googlePlayImageUploadUrl(\n packageName: string,\n editId: string,\n locale: string,\n imageType: string,\n): string {\n return `${base(UPLOAD, packageName, editId)}/listings/${segment(locale)}/${segment(imageType)}`;\n}\n\nfunction base(host: string, packageName: string, editId: string): string {\n return `${host}/applications/${segment(packageName)}/edits/${segment(editId)}`;\n}\n\nfunction segment(value: string): string {\n return encodeURIComponent(value);\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export declare const GOOGLE_PLAY_STORE_LISTING_FIELDS: readonly ["name", "summary", "description", "promoVideoUrl"];
2
+ //# sourceMappingURL=googlePlayStoreListingFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"googlePlayStoreListingFields.d.ts","sourceRoot":"","sources":["../../../src/providers/googlePlay/googlePlayStoreListingFields.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gCAAgC,8DAKI,CAAC"}
@@ -0,0 +1,7 @@
1
+ export const GOOGLE_PLAY_STORE_LISTING_FIELDS = [
2
+ 'name',
3
+ 'summary',
4
+ 'description',
5
+ 'promoVideoUrl',
6
+ ];
7
+ //# sourceMappingURL=googlePlayStoreListingFields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"googlePlayStoreListingFields.js","sourceRoot":"","sources":["../../../src/providers/googlePlay/googlePlayStoreListingFields.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,MAAM;IACN,SAAS;IACT,aAAa;IACb,eAAe;CACgC,CAAC","sourcesContent":["import type { StoreListingField } from '../../domain/storeListing/StoreListingField';\n\nexport const GOOGLE_PLAY_STORE_LISTING_FIELDS = [\n 'name',\n 'summary',\n 'description',\n 'promoVideoUrl',\n] as const satisfies readonly StoreListingField[];\n"]}
@@ -0,0 +1,15 @@
1
+ import type { DeploymentCredentialReference } from '../../domain/DeploymentCredentialReference';
2
+ import type { DeploymentSecretResolver } from '../../domain/DeploymentSecretResolver';
3
+ import type { StoreListingDesiredState } from '../../domain/storeListing/StoreListingDesiredState';
4
+ import type { GooglePlayStoreListingInspectionResult } from './GooglePlayStoreListingResult';
5
+ import type { GooglePlayTokenFactory } from './GooglePlayTokenFactory';
6
+ import type { GooglePlayTransport } from './GooglePlayTransport';
7
+ export declare function inspectGooglePlayStoreListing(options: {
8
+ readonly packageName: string;
9
+ readonly desired: StoreListingDesiredState;
10
+ readonly credentials: readonly DeploymentCredentialReference[];
11
+ readonly resolveSecret: DeploymentSecretResolver;
12
+ readonly createToken: GooglePlayTokenFactory;
13
+ readonly request: GooglePlayTransport;
14
+ }): Promise<GooglePlayStoreListingInspectionResult>;
15
+ //# sourceMappingURL=inspectGooglePlayStoreListing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspectGooglePlayStoreListing.d.ts","sourceRoot":"","sources":["../../../src/providers/googlePlay/inspectGooglePlayStoreListing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAChG,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oDAAoD,CAAC;AAKnG,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,gCAAgC,CAAC;AAC7F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAMjE,wBAAsB,6BAA6B,CAAC,OAAO,EAAE;IAC3D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,wBAAwB,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE,SAAS,6BAA6B,EAAE,CAAC;IAC/D,QAAQ,CAAC,aAAa,EAAE,wBAAwB,CAAC;IACjD,QAAQ,CAAC,WAAW,EAAE,sBAAsB,CAAC;IAC7C,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;CACvC,GAAG,OAAO,CAAC,sCAAsC,CAAC,CAWlD"}
@@ -0,0 +1,105 @@
1
+ import { createGooglePlayListingDiagnostics } from './createGooglePlayListingDiagnostics';
2
+ import { googlePlayListingsUrl } from './googlePlayListingUrls';
3
+ import { trackGooglePlayRequests } from './GooglePlayRequestTracker';
4
+ import { GOOGLE_PLAY_STORE_LISTING_FIELDS } from './googlePlayStoreListingFields';
5
+ import { insertGooglePlayEdit } from './insertGooglePlayEdit';
6
+ import { parseGooglePlayListings } from './parseGooglePlayListings';
7
+ import { readGooglePlayAssetSets } from './readGooglePlayAssetSets';
8
+ import { resolveGooglePlayAccessToken } from './resolveGooglePlayAccessToken';
9
+ export async function inspectGooglePlayStoreListing(options) {
10
+ const access = await resolveGooglePlayAccessToken(options);
11
+ if (!access.ok)
12
+ return { status: 'action-required', action: access.action };
13
+ const tracker = trackGooglePlayRequests(options.request);
14
+ const editId = await insertGooglePlayEdit({
15
+ ...options,
16
+ token: access.token,
17
+ request: tracker.request,
18
+ });
19
+ if (editId === null)
20
+ return providerFailure(tracker.blockingStatus());
21
+ return inspectEdit(options, editId, access.token, tracker);
22
+ }
23
+ async function inspectEdit(options, editId, token, tracker) {
24
+ const response = await tracker.request({
25
+ method: 'GET',
26
+ url: googlePlayListingsUrl(options.packageName, editId),
27
+ token,
28
+ });
29
+ if (response.status < 200 || response.status >= 300) {
30
+ return providerFailure(tracker.blockingStatus());
31
+ }
32
+ const locales = parseListings(response.body, options.desired);
33
+ if (locales === null)
34
+ return failed();
35
+ const assetSets = await readGooglePlayAssetSets({
36
+ ...options,
37
+ editId,
38
+ token,
39
+ request: tracker.request,
40
+ });
41
+ if (assetSets === null)
42
+ return providerFailure(tracker.blockingStatus());
43
+ return {
44
+ status: 'completed',
45
+ state: {
46
+ target: 'android',
47
+ locales,
48
+ assetSets,
49
+ supportedFields: GOOGLE_PLAY_STORE_LISTING_FIELDS,
50
+ diagnostics: createGooglePlayListingDiagnostics(options.desired),
51
+ },
52
+ };
53
+ }
54
+ function parseListings(body, desired) {
55
+ try {
56
+ const value = JSON.parse(body);
57
+ return parseGooglePlayListings(value, new Set(desired.locales.map((item) => item.locale)));
58
+ }
59
+ catch {
60
+ return null;
61
+ }
62
+ }
63
+ function providerFailure(status) {
64
+ if (status === 401)
65
+ return authenticationRequired();
66
+ if (status === 403)
67
+ return permissionRequired();
68
+ return failed();
69
+ }
70
+ function authenticationRequired() {
71
+ return {
72
+ status: 'action-required',
73
+ action: {
74
+ type: 'authentication',
75
+ provider: 'google-play',
76
+ target: 'android',
77
+ code: 'GOOGLE_PLAY_AUTHENTICATION_REQUIRED',
78
+ message: 'Google Play authentication is required for store listing synchronization.',
79
+ },
80
+ };
81
+ }
82
+ function permissionRequired() {
83
+ return {
84
+ status: 'action-required',
85
+ action: {
86
+ type: 'manual-action',
87
+ provider: 'google-play',
88
+ target: 'android',
89
+ code: 'GOOGLE_PLAY_LISTING_PERMISSION_REQUIRED',
90
+ message: 'The Google Play service account needs store listing permissions.',
91
+ },
92
+ };
93
+ }
94
+ function failed() {
95
+ return {
96
+ status: 'failed',
97
+ failure: {
98
+ code: 'GOOGLE_PLAY_LISTING_INSPECTION_FAILED',
99
+ message: 'Google Play store listing state could not be inspected.',
100
+ target: 'android',
101
+ provider: 'google-play',
102
+ },
103
+ };
104
+ }
105
+ //# sourceMappingURL=inspectGooglePlayStoreListing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspectGooglePlayStoreListing.js","sourceRoot":"","sources":["../../../src/providers/googlePlay/inspectGooglePlayStoreListing.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,gCAAgC,EAAE,MAAM,gCAAgC,CAAC;AAIlF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAE9E,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,OAOnD;IACC,MAAM,MAAM,GAAG,MAAM,4BAA4B,CAAC,OAAO,CAAC,CAAC;IAC3D,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;IAC5E,MAAM,OAAO,GAAG,uBAAuB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC;QACxC,GAAG,OAAO;QACV,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAC;IACH,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,eAAe,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACtE,OAAO,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,OAA4D,EAC5D,MAAc,EACd,KAAa,EACb,OAAmD;IAEnD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;QACrC,MAAM,EAAE,KAAK;QACb,GAAG,EAAE,qBAAqB,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC;QACvD,KAAK;KACN,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;QACpD,OAAO,eAAe,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,MAAM,EAAE,CAAC;IACtC,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAAC;QAC9C,GAAG,OAAO;QACV,MAAM;QACN,KAAK;QACL,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAC;IACH,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,eAAe,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACzE,OAAO;QACL,MAAM,EAAE,WAAW;QACnB,KAAK,EAAE;YACL,MAAM,EAAE,SAAS;YACjB,OAAO;YACP,SAAS;YACT,eAAe,EAAE,gCAAgC;YACjD,WAAW,EAAE,kCAAkC,CAAC,OAAO,CAAC,OAAO,CAAC;SACjE;KACF,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,OAAiC;IACpE,IAAI,CAAC;QACH,MAAM,KAAK,GAAY,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxC,OAAO,uBAAuB,CAAC,KAAK,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC7F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,MAAwB;IAC/C,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,sBAAsB,EAAE,CAAC;IACpD,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,kBAAkB,EAAE,CAAC;IAChD,OAAO,MAAM,EAAE,CAAC;AAClB,CAAC;AAED,SAAS,sBAAsB;IAC7B,OAAO;QACL,MAAM,EAAE,iBAAiB;QACzB,MAAM,EAAE;YACN,IAAI,EAAE,gBAAgB;YACtB,QAAQ,EAAE,aAAa;YACvB,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,qCAAqC;YAC3C,OAAO,EAAE,2EAA2E;SACrF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB;IACzB,OAAO;QACL,MAAM,EAAE,iBAAiB;QACzB,MAAM,EAAE;YACN,IAAI,EAAE,eAAe;YACrB,QAAQ,EAAE,aAAa;YACvB,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,yCAAyC;YAC/C,OAAO,EAAE,kEAAkE;SAC5E;KACF,CAAC;AACJ,CAAC;AAED,SAAS,MAAM;IACb,OAAO;QACL,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE;YACP,IAAI,EAAE,uCAAuC;YAC7C,OAAO,EAAE,yDAAyD;YAClE,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,aAAa;SACxB;KACF,CAAC;AACJ,CAAC","sourcesContent":["import type { DeploymentCredentialReference } from '../../domain/DeploymentCredentialReference';\nimport type { DeploymentSecretResolver } from '../../domain/DeploymentSecretResolver';\nimport type { StoreListingDesiredState } from '../../domain/storeListing/StoreListingDesiredState';\nimport { createGooglePlayListingDiagnostics } from './createGooglePlayListingDiagnostics';\nimport { googlePlayListingsUrl } from './googlePlayListingUrls';\nimport { trackGooglePlayRequests } from './GooglePlayRequestTracker';\nimport { GOOGLE_PLAY_STORE_LISTING_FIELDS } from './googlePlayStoreListingFields';\nimport type { GooglePlayStoreListingInspectionResult } from './GooglePlayStoreListingResult';\nimport type { GooglePlayTokenFactory } from './GooglePlayTokenFactory';\nimport type { GooglePlayTransport } from './GooglePlayTransport';\nimport { insertGooglePlayEdit } from './insertGooglePlayEdit';\nimport { parseGooglePlayListings } from './parseGooglePlayListings';\nimport { readGooglePlayAssetSets } from './readGooglePlayAssetSets';\nimport { resolveGooglePlayAccessToken } from './resolveGooglePlayAccessToken';\n\nexport async function inspectGooglePlayStoreListing(options: {\n readonly packageName: string;\n readonly desired: StoreListingDesiredState;\n readonly credentials: readonly DeploymentCredentialReference[];\n readonly resolveSecret: DeploymentSecretResolver;\n readonly createToken: GooglePlayTokenFactory;\n readonly request: GooglePlayTransport;\n}): Promise<GooglePlayStoreListingInspectionResult> {\n const access = await resolveGooglePlayAccessToken(options);\n if (!access.ok) return { status: 'action-required', action: access.action };\n const tracker = trackGooglePlayRequests(options.request);\n const editId = await insertGooglePlayEdit({\n ...options,\n token: access.token,\n request: tracker.request,\n });\n if (editId === null) return providerFailure(tracker.blockingStatus());\n return inspectEdit(options, editId, access.token, tracker);\n}\n\nasync function inspectEdit(\n options: Parameters<typeof inspectGooglePlayStoreListing>[0],\n editId: string,\n token: string,\n tracker: ReturnType<typeof trackGooglePlayRequests>,\n): Promise<GooglePlayStoreListingInspectionResult> {\n const response = await tracker.request({\n method: 'GET',\n url: googlePlayListingsUrl(options.packageName, editId),\n token,\n });\n if (response.status < 200 || response.status >= 300) {\n return providerFailure(tracker.blockingStatus());\n }\n const locales = parseListings(response.body, options.desired);\n if (locales === null) return failed();\n const assetSets = await readGooglePlayAssetSets({\n ...options,\n editId,\n token,\n request: tracker.request,\n });\n if (assetSets === null) return providerFailure(tracker.blockingStatus());\n return {\n status: 'completed',\n state: {\n target: 'android',\n locales,\n assetSets,\n supportedFields: GOOGLE_PLAY_STORE_LISTING_FIELDS,\n diagnostics: createGooglePlayListingDiagnostics(options.desired),\n },\n };\n}\n\nfunction parseListings(body: string, desired: StoreListingDesiredState) {\n try {\n const value: unknown = JSON.parse(body);\n return parseGooglePlayListings(value, new Set(desired.locales.map((item) => item.locale)));\n } catch {\n return null;\n }\n}\n\nfunction providerFailure(status: 401 | 403 | null): GooglePlayStoreListingInspectionResult {\n if (status === 401) return authenticationRequired();\n if (status === 403) return permissionRequired();\n return failed();\n}\n\nfunction authenticationRequired(): GooglePlayStoreListingInspectionResult {\n return {\n status: 'action-required',\n action: {\n type: 'authentication',\n provider: 'google-play',\n target: 'android',\n code: 'GOOGLE_PLAY_AUTHENTICATION_REQUIRED',\n message: 'Google Play authentication is required for store listing synchronization.',\n },\n };\n}\n\nfunction permissionRequired(): GooglePlayStoreListingInspectionResult {\n return {\n status: 'action-required',\n action: {\n type: 'manual-action',\n provider: 'google-play',\n target: 'android',\n code: 'GOOGLE_PLAY_LISTING_PERMISSION_REQUIRED',\n message: 'The Google Play service account needs store listing permissions.',\n },\n };\n}\n\nfunction failed(): GooglePlayStoreListingInspectionResult {\n return {\n status: 'failed',\n failure: {\n code: 'GOOGLE_PLAY_LISTING_INSPECTION_FAILED',\n message: 'Google Play store listing state could not be inspected.',\n target: 'android',\n provider: 'google-play',\n },\n };\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export { readGooglePlayImages as listGooglePlayImageHashes } from './readGooglePlayImages';
2
+ //# sourceMappingURL=listGooglePlayImageHashes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listGooglePlayImageHashes.d.ts","sourceRoot":"","sources":["../../../src/providers/googlePlay/listGooglePlayImageHashes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,IAAI,yBAAyB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { readGooglePlayImages as listGooglePlayImageHashes } from './readGooglePlayImages';
2
+ //# sourceMappingURL=listGooglePlayImageHashes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listGooglePlayImageHashes.js","sourceRoot":"","sources":["../../../src/providers/googlePlay/listGooglePlayImageHashes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,IAAI,yBAAyB,EAAE,MAAM,wBAAwB,CAAC","sourcesContent":["export { readGooglePlayImages as listGooglePlayImageHashes } from './readGooglePlayImages';\n"]}
@@ -0,0 +1,2 @@
1
+ export declare function mapGooglePlayImageType(variant: string): string | null;
2
+ //# sourceMappingURL=mapGooglePlayImageType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mapGooglePlayImageType.d.ts","sourceRoot":"","sources":["../../../src/providers/googlePlay/mapGooglePlayImageType.ts"],"names":[],"mappings":"AAAA,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAmBrE"}
@@ -0,0 +1,21 @@
1
+ export function mapGooglePlayImageType(variant) {
2
+ switch (variant) {
3
+ case 'icon':
4
+ return 'icon';
5
+ case 'feature':
6
+ return 'featureGraphic';
7
+ case 'phone':
8
+ return 'phoneScreenshots';
9
+ case 'seven-inch':
10
+ return 'sevenInchScreenshots';
11
+ case 'ten-inch':
12
+ return 'tenInchScreenshots';
13
+ case 'tv':
14
+ return 'tvScreenshots';
15
+ case 'wear':
16
+ return 'wearScreenshots';
17
+ default:
18
+ return null;
19
+ }
20
+ }
21
+ //# sourceMappingURL=mapGooglePlayImageType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mapGooglePlayImageType.js","sourceRoot":"","sources":["../../../src/providers/googlePlay/mapGooglePlayImageType.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,sBAAsB,CAAC,OAAe;IACpD,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,SAAS;YACZ,OAAO,gBAAgB,CAAC;QAC1B,KAAK,OAAO;YACV,OAAO,kBAAkB,CAAC;QAC5B,KAAK,YAAY;YACf,OAAO,sBAAsB,CAAC;QAChC,KAAK,UAAU;YACb,OAAO,oBAAoB,CAAC;QAC9B,KAAK,IAAI;YACP,OAAO,eAAe,CAAC;QACzB,KAAK,MAAM;YACT,OAAO,iBAAiB,CAAC;QAC3B;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC","sourcesContent":["export function mapGooglePlayImageType(variant: string): string | null {\n switch (variant) {\n case 'icon':\n return 'icon';\n case 'feature':\n return 'featureGraphic';\n case 'phone':\n return 'phoneScreenshots';\n case 'seven-inch':\n return 'sevenInchScreenshots';\n case 'ten-inch':\n return 'tenInchScreenshots';\n case 'tv':\n return 'tvScreenshots';\n case 'wear':\n return 'wearScreenshots';\n default:\n return null;\n }\n}\n"]}
@@ -0,0 +1,3 @@
1
+ import type { StoreListingLocale } from '../../domain/storeListing/StoreListingLocale';
2
+ export declare function parseGooglePlayListings(value: unknown, desiredLocales: ReadonlySet<string>): readonly StoreListingLocale[] | null;
3
+ //# sourceMappingURL=parseGooglePlayListings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseGooglePlayListings.d.ts","sourceRoot":"","sources":["../../../src/providers/googlePlay/parseGooglePlayListings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAEvF,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,EACd,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,GAClC,SAAS,kBAAkB,EAAE,GAAG,IAAI,CAStC"}
@@ -0,0 +1,47 @@
1
+ import { normalizeStoreListingLocale } from '../../domain/storeListing/normalizeStoreListingLocale';
2
+ export function parseGooglePlayListings(value, desiredLocales) {
3
+ if (!isRecord(value) || !Array.isArray(value.listings))
4
+ return null;
5
+ const result = [];
6
+ for (const entry of value.listings) {
7
+ const parsed = parseListing(entry);
8
+ if (parsed === null)
9
+ return null;
10
+ if (desiredLocales.has(parsed.locale))
11
+ result.push(parsed);
12
+ }
13
+ return result.sort((a, b) => a.locale.localeCompare(b.locale));
14
+ }
15
+ function parseListing(value) {
16
+ if (!isRecord(value) || !isNonEmptyString(value.language) || !isNonEmptyString(value.title)) {
17
+ return null;
18
+ }
19
+ const locale = parseLocale(value.language);
20
+ if (locale === null)
21
+ return null;
22
+ const summary = typeof value.shortDescription === 'string' ? value.shortDescription : undefined;
23
+ const description = typeof value.fullDescription === 'string' ? value.fullDescription : undefined;
24
+ const promoVideoUrl = typeof value.video === 'string' ? value.video : undefined;
25
+ return {
26
+ locale,
27
+ name: value.title,
28
+ ...(summary === undefined ? {} : { summary }),
29
+ ...(description === undefined ? {} : { description }),
30
+ ...(promoVideoUrl === undefined ? {} : { promoVideoUrl }),
31
+ };
32
+ }
33
+ function parseLocale(value) {
34
+ try {
35
+ return normalizeStoreListingLocale(value);
36
+ }
37
+ catch {
38
+ return null;
39
+ }
40
+ }
41
+ function isRecord(value) {
42
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
43
+ }
44
+ function isNonEmptyString(value) {
45
+ return typeof value === 'string' && value.trim().length > 0;
46
+ }
47
+ //# sourceMappingURL=parseGooglePlayListings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseGooglePlayListings.js","sourceRoot":"","sources":["../../../src/providers/googlePlay/parseGooglePlayListings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,uDAAuD,CAAC;AAGpG,MAAM,UAAU,uBAAuB,CACrC,KAAc,EACd,cAAmC;IAEnC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IACpE,MAAM,MAAM,GAAyB,EAAE,CAAC;IACxC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,QAAqB,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACjC,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC3C,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,OAAO,GAAG,OAAO,KAAK,CAAC,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;IAChG,MAAM,WAAW,GAAG,OAAO,KAAK,CAAC,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;IAClG,MAAM,aAAa,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAChF,OAAO;QACL,MAAM;QACN,IAAI,EAAE,KAAK,CAAC,KAAK;QACjB,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;QAC7C,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;QACrD,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC;KAC1D,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,IAAI,CAAC;QACH,OAAO,2BAA2B,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAC9D,CAAC","sourcesContent":["import { normalizeStoreListingLocale } from '../../domain/storeListing/normalizeStoreListingLocale';\nimport type { StoreListingLocale } from '../../domain/storeListing/StoreListingLocale';\n\nexport function parseGooglePlayListings(\n value: unknown,\n desiredLocales: ReadonlySet<string>,\n): readonly StoreListingLocale[] | null {\n if (!isRecord(value) || !Array.isArray(value.listings)) return null;\n const result: StoreListingLocale[] = [];\n for (const entry of value.listings as unknown[]) {\n const parsed = parseListing(entry);\n if (parsed === null) return null;\n if (desiredLocales.has(parsed.locale)) result.push(parsed);\n }\n return result.sort((a, b) => a.locale.localeCompare(b.locale));\n}\n\nfunction parseListing(value: unknown): StoreListingLocale | null {\n if (!isRecord(value) || !isNonEmptyString(value.language) || !isNonEmptyString(value.title)) {\n return null;\n }\n const locale = parseLocale(value.language);\n if (locale === null) return null;\n const summary = typeof value.shortDescription === 'string' ? value.shortDescription : undefined;\n const description = typeof value.fullDescription === 'string' ? value.fullDescription : undefined;\n const promoVideoUrl = typeof value.video === 'string' ? value.video : undefined;\n return {\n locale,\n name: value.title,\n ...(summary === undefined ? {} : { summary }),\n ...(description === undefined ? {} : { description }),\n ...(promoVideoUrl === undefined ? {} : { promoVideoUrl }),\n };\n}\n\nfunction parseLocale(value: string): string | null {\n try {\n return normalizeStoreListingLocale(value);\n } catch {\n return null;\n }\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nfunction isNonEmptyString(value: unknown): value is string {\n return typeof value === 'string' && value.trim().length > 0;\n}\n"]}
@@ -0,0 +1,11 @@
1
+ import type { StoreListingDesiredState } from '../../domain/storeListing/StoreListingDesiredState';
2
+ import type { StoreListingRemoteAssetSet } from '../../domain/storeListing/StoreListingRemoteAssetSet';
3
+ import type { GooglePlayTransport } from './GooglePlayTransport';
4
+ export declare function readGooglePlayAssetSets(options: {
5
+ readonly packageName: string;
6
+ readonly editId: string;
7
+ readonly desired: StoreListingDesiredState;
8
+ readonly token: string;
9
+ readonly request: GooglePlayTransport;
10
+ }): Promise<readonly StoreListingRemoteAssetSet[] | null>;
11
+ //# sourceMappingURL=readGooglePlayAssetSets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readGooglePlayAssetSets.d.ts","sourceRoot":"","sources":["../../../src/providers/googlePlay/readGooglePlayAssetSets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oDAAoD,CAAC;AACnG,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AACvG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAIjE,wBAAsB,uBAAuB,CAAC,OAAO,EAAE;IACrD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,wBAAwB,CAAC;IAC3C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;CACvC,GAAG,OAAO,CAAC,SAAS,0BAA0B,EAAE,GAAG,IAAI,CAAC,CAoBxD"}
@@ -0,0 +1,32 @@
1
+ import { listGooglePlayImageHashes } from './listGooglePlayImageHashes';
2
+ import { mapGooglePlayImageType } from './mapGooglePlayImageType';
3
+ export async function readGooglePlayAssetSets(options) {
4
+ const sets = [];
5
+ for (const group of desiredAssetGroups(options.desired)) {
6
+ const imageType = mapGooglePlayImageType(group.variant);
7
+ if (imageType === null)
8
+ continue;
9
+ const hashes = await listGooglePlayImageHashes({
10
+ ...options,
11
+ locale: group.locale,
12
+ imageType,
13
+ });
14
+ if (hashes === null)
15
+ return null;
16
+ sets.push({
17
+ target: 'android',
18
+ locale: group.locale,
19
+ variant: group.variant,
20
+ checksum: 'sha256',
21
+ hashes,
22
+ });
23
+ }
24
+ return sets;
25
+ }
26
+ function desiredAssetGroups(desired) {
27
+ return desired.assetSets
28
+ .filter((set) => set.target === 'android')
29
+ .map((set) => ({ locale: set.locale, variant: set.variant }))
30
+ .sort((a, b) => `${a.locale}:${a.variant}`.localeCompare(`${b.locale}:${b.variant}`));
31
+ }
32
+ //# sourceMappingURL=readGooglePlayAssetSets.js.map