@qawolf/ci-sdk 0.13.0 → 0.15.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 (244) hide show
  1. package/.eslintrc.json +27 -0
  2. package/README.md +41 -1
  3. package/dist/cjs/index.d.ts +4 -0
  4. package/dist/cjs/index.d.ts.map +1 -0
  5. package/dist/cjs/index.js +4 -16
  6. package/dist/cjs/index.js.map +1 -0
  7. package/dist/cjs/lib/api/ci-greenlight.d.ts +114 -0
  8. package/dist/cjs/lib/api/ci-greenlight.d.ts.map +1 -0
  9. package/dist/cjs/lib/api/ci-greenlight.js +2 -0
  10. package/dist/cjs/lib/api/ci-greenlight.js.map +1 -0
  11. package/dist/cjs/lib/api/deploy.d.ts +72 -0
  12. package/dist/cjs/lib/api/deploy.d.ts.map +1 -0
  13. package/dist/cjs/lib/api/deploy.js +5 -4
  14. package/dist/cjs/lib/api/deploy.js.map +1 -0
  15. package/dist/cjs/lib/api/index.d.ts +3 -0
  16. package/dist/cjs/lib/api/index.d.ts.map +1 -0
  17. package/dist/cjs/lib/api/index.js +4 -16
  18. package/dist/cjs/lib/api/index.js.map +1 -0
  19. package/dist/cjs/lib/api-types.d.ts +5 -0
  20. package/dist/cjs/lib/api-types.d.ts.map +1 -0
  21. package/dist/cjs/lib/api-types.js +1 -0
  22. package/dist/cjs/lib/api-types.js.map +1 -0
  23. package/dist/cjs/lib/sdk/dependencies.d.ts +11 -0
  24. package/dist/cjs/lib/sdk/dependencies.d.ts.map +1 -0
  25. package/dist/cjs/lib/sdk/dependencies.js +1 -0
  26. package/dist/cjs/lib/sdk/dependencies.js.map +1 -0
  27. package/dist/cjs/lib/sdk/domain/attempt-deploy.d.ts +36 -0
  28. package/dist/cjs/lib/sdk/domain/attempt-deploy.d.ts.map +1 -0
  29. package/dist/cjs/lib/sdk/domain/attempt-deploy.js +19 -7
  30. package/dist/cjs/lib/sdk/domain/attempt-deploy.js.map +1 -0
  31. package/dist/cjs/lib/sdk/domain/poll-ci-greenlight.d.ts +78 -0
  32. package/dist/cjs/lib/sdk/domain/poll-ci-greenlight.d.ts.map +1 -0
  33. package/dist/cjs/lib/sdk/domain/poll-ci-greenlight.js +11 -10
  34. package/dist/cjs/lib/sdk/domain/poll-ci-greenlight.js.map +1 -0
  35. package/dist/cjs/lib/sdk/domain/previewTesting/constants.d.ts +5 -0
  36. package/dist/cjs/lib/sdk/domain/previewTesting/constants.d.ts.map +1 -0
  37. package/dist/cjs/lib/sdk/domain/previewTesting/constants.js +8 -0
  38. package/dist/cjs/lib/sdk/domain/previewTesting/constants.js.map +1 -0
  39. package/dist/cjs/lib/sdk/domain/previewTesting/createEnvironmentAction.d.ts +19 -0
  40. package/dist/cjs/lib/sdk/domain/previewTesting/createEnvironmentAction.d.ts.map +1 -0
  41. package/dist/cjs/lib/sdk/domain/previewTesting/createEnvironmentAction.js +63 -0
  42. package/dist/cjs/lib/sdk/domain/previewTesting/createEnvironmentAction.js.map +1 -0
  43. package/dist/cjs/lib/sdk/domain/previewTesting/createEnvironmentVariables.d.ts +9 -0
  44. package/dist/cjs/lib/sdk/domain/previewTesting/createEnvironmentVariables.d.ts.map +1 -0
  45. package/dist/cjs/lib/sdk/domain/previewTesting/createEnvironmentVariables.js +33 -0
  46. package/dist/cjs/lib/sdk/domain/previewTesting/createEnvironmentVariables.js.map +1 -0
  47. package/dist/cjs/lib/sdk/domain/previewTesting/deleteEnvironment.d.ts +6 -0
  48. package/dist/cjs/lib/sdk/domain/previewTesting/deleteEnvironment.d.ts.map +1 -0
  49. package/dist/cjs/lib/sdk/domain/previewTesting/deleteEnvironment.js +28 -0
  50. package/dist/cjs/lib/sdk/domain/previewTesting/deleteEnvironment.js.map +1 -0
  51. package/dist/cjs/lib/sdk/domain/previewTesting/deleteEnvironmentAction.d.ts +6 -0
  52. package/dist/cjs/lib/sdk/domain/previewTesting/deleteEnvironmentAction.d.ts.map +1 -0
  53. package/dist/cjs/lib/sdk/domain/previewTesting/deleteEnvironmentAction.js +13 -0
  54. package/dist/cjs/lib/sdk/domain/previewTesting/deleteEnvironmentAction.js.map +1 -0
  55. package/dist/cjs/lib/sdk/domain/previewTesting/findOrCreateEnvironment.d.ts +29 -0
  56. package/dist/cjs/lib/sdk/domain/previewTesting/findOrCreateEnvironment.d.ts.map +1 -0
  57. package/dist/cjs/lib/sdk/domain/previewTesting/findOrCreateEnvironment.js +153 -0
  58. package/dist/cjs/lib/sdk/domain/previewTesting/findOrCreateEnvironment.js.map +1 -0
  59. package/dist/cjs/lib/sdk/domain/previewTesting/findOrCreateTrigger.d.ts +18 -0
  60. package/dist/cjs/lib/sdk/domain/previewTesting/findOrCreateTrigger.d.ts.map +1 -0
  61. package/dist/cjs/lib/sdk/domain/previewTesting/findOrCreateTrigger.js +99 -0
  62. package/dist/cjs/lib/sdk/domain/previewTesting/findOrCreateTrigger.js.map +1 -0
  63. package/dist/cjs/lib/sdk/domain/previewTesting/findRepositoryIdByName.d.ts +6 -0
  64. package/dist/cjs/lib/sdk/domain/previewTesting/findRepositoryIdByName.d.ts.map +1 -0
  65. package/dist/cjs/lib/sdk/domain/previewTesting/findRepositoryIdByName.js +38 -0
  66. package/dist/cjs/lib/sdk/domain/previewTesting/findRepositoryIdByName.js.map +1 -0
  67. package/dist/cjs/lib/sdk/domain/previewTesting/getEnvironmentIdForBranch.d.ts +4 -0
  68. package/dist/cjs/lib/sdk/domain/previewTesting/getEnvironmentIdForBranch.d.ts.map +1 -0
  69. package/dist/cjs/lib/sdk/domain/previewTesting/getEnvironmentIdForBranch.js +39 -0
  70. package/dist/cjs/lib/sdk/domain/previewTesting/getEnvironmentIdForBranch.js.map +1 -0
  71. package/dist/cjs/lib/sdk/domain/previewTesting/getEnvironmentVariablesFromEnvironment.d.ts +6 -0
  72. package/dist/cjs/lib/sdk/domain/previewTesting/getEnvironmentVariablesFromEnvironment.d.ts.map +1 -0
  73. package/dist/cjs/lib/sdk/domain/previewTesting/getEnvironmentVariablesFromEnvironment.js +35 -0
  74. package/dist/cjs/lib/sdk/domain/previewTesting/getEnvironmentVariablesFromEnvironment.js.map +1 -0
  75. package/dist/cjs/lib/sdk/domain/previewTesting/getTagsFromEnvironment.d.ts +9 -0
  76. package/dist/cjs/lib/sdk/domain/previewTesting/getTagsFromEnvironment.d.ts.map +1 -0
  77. package/dist/cjs/lib/sdk/domain/previewTesting/getTagsFromEnvironment.js +41 -0
  78. package/dist/cjs/lib/sdk/domain/previewTesting/getTagsFromEnvironment.js.map +1 -0
  79. package/dist/cjs/lib/sdk/domain/previewTesting/index.d.ts +23 -0
  80. package/dist/cjs/lib/sdk/domain/previewTesting/index.d.ts.map +1 -0
  81. package/dist/cjs/lib/sdk/domain/previewTesting/index.js +32 -0
  82. package/dist/cjs/lib/sdk/domain/previewTesting/index.js.map +1 -0
  83. package/dist/cjs/lib/sdk/index.d.ts +15 -0
  84. package/dist/cjs/lib/sdk/index.d.ts.map +1 -0
  85. package/dist/cjs/lib/sdk/index.js +6 -2
  86. package/dist/cjs/lib/sdk/index.js.map +1 -0
  87. package/dist/cjs/lib/sdk/log/default.d.ts +3 -0
  88. package/dist/cjs/lib/sdk/log/default.d.ts.map +1 -0
  89. package/dist/cjs/lib/sdk/log/default.js +4 -3
  90. package/dist/cjs/lib/sdk/log/default.js.map +1 -0
  91. package/dist/cjs/lib/utils.d.ts +7 -0
  92. package/dist/cjs/lib/utils.d.ts.map +1 -0
  93. package/dist/cjs/lib/utils.js +1 -0
  94. package/dist/cjs/lib/utils.js.map +1 -0
  95. package/dist/cjs/tests/test-lib.d.ts +17 -0
  96. package/dist/cjs/tests/test-lib.d.ts.map +1 -0
  97. package/dist/cjs/tests/test-lib.js +48 -0
  98. package/dist/cjs/tests/test-lib.js.map +1 -0
  99. package/dist/esm/index.d.ts +4 -0
  100. package/dist/esm/index.d.ts.map +1 -0
  101. package/dist/esm/index.js +1 -0
  102. package/dist/esm/index.js.map +1 -0
  103. package/dist/esm/lib/api/ci-greenlight.d.ts +114 -0
  104. package/dist/esm/lib/api/ci-greenlight.d.ts.map +1 -0
  105. package/dist/esm/lib/api/ci-greenlight.js +2 -0
  106. package/dist/esm/lib/api/ci-greenlight.js.map +1 -0
  107. package/dist/esm/lib/api/deploy.d.ts +72 -0
  108. package/dist/esm/lib/api/deploy.d.ts.map +1 -0
  109. package/dist/esm/lib/api/deploy.js +5 -4
  110. package/dist/esm/lib/api/deploy.js.map +1 -0
  111. package/dist/esm/lib/api/index.d.ts +3 -0
  112. package/dist/esm/lib/api/index.d.ts.map +1 -0
  113. package/dist/esm/lib/api/index.js +1 -0
  114. package/dist/esm/lib/api/index.js.map +1 -0
  115. package/dist/esm/lib/api-types.d.ts +5 -0
  116. package/dist/esm/lib/api-types.d.ts.map +1 -0
  117. package/dist/esm/lib/api-types.js +1 -0
  118. package/dist/esm/lib/api-types.js.map +1 -0
  119. package/dist/esm/lib/sdk/dependencies.d.ts +11 -0
  120. package/dist/esm/lib/sdk/dependencies.d.ts.map +1 -0
  121. package/dist/esm/lib/sdk/dependencies.js +1 -0
  122. package/dist/esm/lib/sdk/dependencies.js.map +1 -0
  123. package/dist/esm/lib/sdk/domain/attempt-deploy.d.ts +36 -0
  124. package/dist/esm/lib/sdk/domain/attempt-deploy.d.ts.map +1 -0
  125. package/dist/esm/lib/sdk/domain/attempt-deploy.js +19 -7
  126. package/dist/esm/lib/sdk/domain/attempt-deploy.js.map +1 -0
  127. package/dist/esm/lib/sdk/domain/poll-ci-greenlight.d.ts +78 -0
  128. package/dist/esm/lib/sdk/domain/poll-ci-greenlight.d.ts.map +1 -0
  129. package/dist/esm/lib/sdk/domain/poll-ci-greenlight.js +11 -10
  130. package/dist/esm/lib/sdk/domain/poll-ci-greenlight.js.map +1 -0
  131. package/dist/esm/lib/sdk/domain/previewTesting/constants.d.ts +5 -0
  132. package/dist/esm/lib/sdk/domain/previewTesting/constants.d.ts.map +1 -0
  133. package/dist/esm/lib/sdk/domain/previewTesting/constants.js +5 -0
  134. package/dist/esm/lib/sdk/domain/previewTesting/constants.js.map +1 -0
  135. package/dist/esm/lib/sdk/domain/previewTesting/createEnvironmentAction.d.ts +19 -0
  136. package/dist/esm/lib/sdk/domain/previewTesting/createEnvironmentAction.d.ts.map +1 -0
  137. package/dist/esm/lib/sdk/domain/previewTesting/createEnvironmentAction.js +59 -0
  138. package/dist/esm/lib/sdk/domain/previewTesting/createEnvironmentAction.js.map +1 -0
  139. package/dist/esm/lib/sdk/domain/previewTesting/createEnvironmentVariables.d.ts +9 -0
  140. package/dist/esm/lib/sdk/domain/previewTesting/createEnvironmentVariables.d.ts.map +1 -0
  141. package/dist/esm/lib/sdk/domain/previewTesting/createEnvironmentVariables.js +29 -0
  142. package/dist/esm/lib/sdk/domain/previewTesting/createEnvironmentVariables.js.map +1 -0
  143. package/dist/esm/lib/sdk/domain/previewTesting/deleteEnvironment.d.ts +6 -0
  144. package/dist/esm/lib/sdk/domain/previewTesting/deleteEnvironment.d.ts.map +1 -0
  145. package/dist/esm/lib/sdk/domain/previewTesting/deleteEnvironment.js +24 -0
  146. package/dist/esm/lib/sdk/domain/previewTesting/deleteEnvironment.js.map +1 -0
  147. package/dist/esm/lib/sdk/domain/previewTesting/deleteEnvironmentAction.d.ts +6 -0
  148. package/dist/esm/lib/sdk/domain/previewTesting/deleteEnvironmentAction.d.ts.map +1 -0
  149. package/dist/esm/lib/sdk/domain/previewTesting/deleteEnvironmentAction.js +9 -0
  150. package/dist/esm/lib/sdk/domain/previewTesting/deleteEnvironmentAction.js.map +1 -0
  151. package/dist/esm/lib/sdk/domain/previewTesting/findOrCreateEnvironment.d.ts +29 -0
  152. package/dist/esm/lib/sdk/domain/previewTesting/findOrCreateEnvironment.d.ts.map +1 -0
  153. package/dist/esm/lib/sdk/domain/previewTesting/findOrCreateEnvironment.js +149 -0
  154. package/dist/esm/lib/sdk/domain/previewTesting/findOrCreateEnvironment.js.map +1 -0
  155. package/dist/esm/lib/sdk/domain/previewTesting/findOrCreateTrigger.d.ts +18 -0
  156. package/dist/esm/lib/sdk/domain/previewTesting/findOrCreateTrigger.d.ts.map +1 -0
  157. package/dist/esm/lib/sdk/domain/previewTesting/findOrCreateTrigger.js +95 -0
  158. package/dist/esm/lib/sdk/domain/previewTesting/findOrCreateTrigger.js.map +1 -0
  159. package/dist/esm/lib/sdk/domain/previewTesting/findRepositoryIdByName.d.ts +6 -0
  160. package/dist/esm/lib/sdk/domain/previewTesting/findRepositoryIdByName.d.ts.map +1 -0
  161. package/dist/esm/lib/sdk/domain/previewTesting/findRepositoryIdByName.js +34 -0
  162. package/dist/esm/lib/sdk/domain/previewTesting/findRepositoryIdByName.js.map +1 -0
  163. package/dist/esm/lib/sdk/domain/previewTesting/getEnvironmentIdForBranch.d.ts +4 -0
  164. package/dist/esm/lib/sdk/domain/previewTesting/getEnvironmentIdForBranch.d.ts.map +1 -0
  165. package/dist/esm/lib/sdk/domain/previewTesting/getEnvironmentIdForBranch.js +35 -0
  166. package/dist/esm/lib/sdk/domain/previewTesting/getEnvironmentIdForBranch.js.map +1 -0
  167. package/dist/esm/lib/sdk/domain/previewTesting/getEnvironmentVariablesFromEnvironment.d.ts +6 -0
  168. package/dist/esm/lib/sdk/domain/previewTesting/getEnvironmentVariablesFromEnvironment.d.ts.map +1 -0
  169. package/dist/esm/lib/sdk/domain/previewTesting/getEnvironmentVariablesFromEnvironment.js +31 -0
  170. package/dist/esm/lib/sdk/domain/previewTesting/getEnvironmentVariablesFromEnvironment.js.map +1 -0
  171. package/dist/esm/lib/sdk/domain/previewTesting/getTagsFromEnvironment.d.ts +9 -0
  172. package/dist/esm/lib/sdk/domain/previewTesting/getTagsFromEnvironment.d.ts.map +1 -0
  173. package/dist/esm/lib/sdk/domain/previewTesting/getTagsFromEnvironment.js +37 -0
  174. package/dist/esm/lib/sdk/domain/previewTesting/getTagsFromEnvironment.js.map +1 -0
  175. package/dist/esm/lib/sdk/domain/previewTesting/index.d.ts +23 -0
  176. package/dist/esm/lib/sdk/domain/previewTesting/index.d.ts.map +1 -0
  177. package/dist/esm/lib/sdk/domain/previewTesting/index.js +27 -0
  178. package/dist/esm/lib/sdk/domain/previewTesting/index.js.map +1 -0
  179. package/dist/esm/lib/sdk/index.d.ts +15 -0
  180. package/dist/esm/lib/sdk/index.d.ts.map +1 -0
  181. package/dist/esm/lib/sdk/index.js +6 -2
  182. package/dist/esm/lib/sdk/index.js.map +1 -0
  183. package/dist/esm/lib/sdk/log/default.d.ts +3 -0
  184. package/dist/esm/lib/sdk/log/default.d.ts.map +1 -0
  185. package/dist/esm/lib/sdk/log/default.js +4 -3
  186. package/dist/esm/lib/sdk/log/default.js.map +1 -0
  187. package/dist/esm/lib/utils.d.ts +7 -0
  188. package/dist/esm/lib/utils.d.ts.map +1 -0
  189. package/dist/esm/lib/utils.js +1 -0
  190. package/dist/esm/lib/utils.js.map +1 -0
  191. package/dist/esm/tests/test-lib.d.ts +17 -0
  192. package/dist/esm/tests/test-lib.d.ts.map +1 -0
  193. package/dist/esm/tests/test-lib.js +42 -0
  194. package/dist/esm/tests/test-lib.js.map +1 -0
  195. package/dist/types/index.d.ts +1 -0
  196. package/dist/types/index.d.ts.map +1 -0
  197. package/dist/types/lib/api/ci-greenlight.d.ts +11 -10
  198. package/dist/types/lib/api/ci-greenlight.d.ts.map +1 -0
  199. package/dist/types/lib/api/deploy.d.ts +26 -25
  200. package/dist/types/lib/api/deploy.d.ts.map +1 -0
  201. package/dist/types/lib/api/index.d.ts +1 -0
  202. package/dist/types/lib/api/index.d.ts.map +1 -0
  203. package/dist/types/lib/api-types.d.ts +1 -0
  204. package/dist/types/lib/api-types.d.ts.map +1 -0
  205. package/dist/types/lib/sdk/dependencies.d.ts +3 -2
  206. package/dist/types/lib/sdk/dependencies.d.ts.map +1 -0
  207. package/dist/types/lib/sdk/domain/attempt-deploy.d.ts +18 -3
  208. package/dist/types/lib/sdk/domain/attempt-deploy.d.ts.map +1 -0
  209. package/dist/types/lib/sdk/domain/poll-ci-greenlight.d.ts +24 -23
  210. package/dist/types/lib/sdk/domain/poll-ci-greenlight.d.ts.map +1 -0
  211. package/dist/types/lib/sdk/domain/previewTesting/constants.d.ts +5 -0
  212. package/dist/types/lib/sdk/domain/previewTesting/constants.d.ts.map +1 -0
  213. package/dist/types/lib/sdk/domain/previewTesting/createEnvironmentAction.d.ts +19 -0
  214. package/dist/types/lib/sdk/domain/previewTesting/createEnvironmentAction.d.ts.map +1 -0
  215. package/dist/types/lib/sdk/domain/previewTesting/createEnvironmentVariables.d.ts +9 -0
  216. package/dist/types/lib/sdk/domain/previewTesting/createEnvironmentVariables.d.ts.map +1 -0
  217. package/dist/types/lib/sdk/domain/previewTesting/deleteEnvironment.d.ts +6 -0
  218. package/dist/types/lib/sdk/domain/previewTesting/deleteEnvironment.d.ts.map +1 -0
  219. package/dist/types/lib/sdk/domain/previewTesting/deleteEnvironmentAction.d.ts +6 -0
  220. package/dist/types/lib/sdk/domain/previewTesting/deleteEnvironmentAction.d.ts.map +1 -0
  221. package/dist/types/lib/sdk/domain/previewTesting/findOrCreateEnvironment.d.ts +29 -0
  222. package/dist/types/lib/sdk/domain/previewTesting/findOrCreateEnvironment.d.ts.map +1 -0
  223. package/dist/types/lib/sdk/domain/previewTesting/findOrCreateTrigger.d.ts +18 -0
  224. package/dist/types/lib/sdk/domain/previewTesting/findOrCreateTrigger.d.ts.map +1 -0
  225. package/dist/types/lib/sdk/domain/previewTesting/findRepositoryIdByName.d.ts +6 -0
  226. package/dist/types/lib/sdk/domain/previewTesting/findRepositoryIdByName.d.ts.map +1 -0
  227. package/dist/types/lib/sdk/domain/previewTesting/getEnvironmentIdForBranch.d.ts +4 -0
  228. package/dist/types/lib/sdk/domain/previewTesting/getEnvironmentIdForBranch.d.ts.map +1 -0
  229. package/dist/types/lib/sdk/domain/previewTesting/getEnvironmentVariablesFromEnvironment.d.ts +6 -0
  230. package/dist/types/lib/sdk/domain/previewTesting/getEnvironmentVariablesFromEnvironment.d.ts.map +1 -0
  231. package/dist/types/lib/sdk/domain/previewTesting/getTagsFromEnvironment.d.ts +9 -0
  232. package/dist/types/lib/sdk/domain/previewTesting/getTagsFromEnvironment.d.ts.map +1 -0
  233. package/dist/types/lib/sdk/domain/previewTesting/index.d.ts +23 -0
  234. package/dist/types/lib/sdk/domain/previewTesting/index.d.ts.map +1 -0
  235. package/dist/types/lib/sdk/index.d.ts +8 -1
  236. package/dist/types/lib/sdk/index.d.ts.map +1 -0
  237. package/dist/types/lib/sdk/log/default.d.ts +2 -1
  238. package/dist/types/lib/sdk/log/default.d.ts.map +1 -0
  239. package/dist/types/lib/utils.d.ts +1 -0
  240. package/dist/types/lib/utils.d.ts.map +1 -0
  241. package/dist/types/tests/test-lib.d.ts +17 -0
  242. package/dist/types/tests/test-lib.d.ts.map +1 -0
  243. package/package.json +4 -2
  244. package/project.json +6 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getEnvironmentVariablesFromEnvironment.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/sdk/domain/previewTesting/getEnvironmentVariablesFromEnvironment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAY1D,wBAAsB,sCAAsC,CAC1D,IAAI,EAAE,eAAe,EACrB,SAAS,EAAE,SAAS,EACpB,EACE,aAAa,GACd,EAAE;IACD,aAAa,EAAE,MAAM,CAAC;CACvB,oBAmCF"}
@@ -0,0 +1,31 @@
1
+ import { qawolfGraphQLEndpoint } from "./constants";
2
+ export async function getEnvironmentVariablesFromEnvironment(deps, apiConfig, { environmentId, }) {
3
+ const retrievalResponse = await deps.fetch(qawolfGraphQLEndpoint, {
4
+ body: JSON.stringify({
5
+ query: `
6
+ query EnvironmentVariables($where: EnvironmentWhereUniqueInput!) {
7
+ environment(where: $where)
8
+ id
9
+ variablesJSON
10
+ }
11
+ }
12
+ `,
13
+ variables: {
14
+ where: {
15
+ id: environmentId,
16
+ },
17
+ },
18
+ }),
19
+ headers: {
20
+ Authorization: `Bearer ${apiConfig.apiKey}`,
21
+ "Content-Type": "application/json",
22
+ },
23
+ method: "post",
24
+ });
25
+ const retrievalResponseJson = (await retrievalResponse.json());
26
+ if (!retrievalResponseJson.data.environment) {
27
+ throw Error(`Environment not found with ID: ${environmentId}. Please check the environment ID is correct.`);
28
+ }
29
+ return JSON.parse(retrievalResponseJson.data.environment.variablesJSON);
30
+ }
31
+ //# sourceMappingURL=getEnvironmentVariablesFromEnvironment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getEnvironmentVariablesFromEnvironment.js","sourceRoot":"","sources":["../../../../../../src/lib/sdk/domain/previewTesting/getEnvironmentVariablesFromEnvironment.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAWpD,MAAM,CAAC,KAAK,UAAU,sCAAsC,CAC1D,IAAqB,EACrB,SAAoB,EACpB,EACE,aAAa,GAGd;IAED,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE;QAChE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,KAAK,EAAE;;;;;;;OAON;YACD,SAAS,EAAE;gBACT,KAAK,EAAE;oBACL,EAAE,EAAE,aAAa;iBAClB;aACF;SACF,CAAC;QACF,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,SAAS,CAAC,MAAM,EAAE;YAC3C,cAAc,EAAE,kBAAkB;SACnC;QACD,MAAM,EAAE,MAAM;KACf,CAAC,CAAC;IAEH,MAAM,qBAAqB,GACzB,CAAC,MAAM,iBAAiB,CAAC,IAAI,EAAE,CAA0C,CAAC;IAE5E,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,KAAK,CACT,kCAAkC,aAAa,+CAA+C,CAC/F,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;AAC1E,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { type ApiConfig } from "../../../api-types";
2
+ import { type SdkDependencies } from "../../dependencies";
3
+ export declare function getTagsFromGenericTriggerInEnvironment(deps: SdkDependencies, apiConfig: ApiConfig, { environmentId, }: {
4
+ environmentId: string;
5
+ }): Promise<{
6
+ id: string;
7
+ name: string;
8
+ }[] | undefined>;
9
+ //# sourceMappingURL=getTagsFromEnvironment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTagsFromEnvironment.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/sdk/domain/previewTesting/getTagsFromEnvironment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAkB1D,wBAAsB,sCAAsC,CAC1D,IAAI,EAAE,eAAe,EACrB,SAAS,EAAE,SAAS,EACpB,EACE,aAAa,GACd,EAAE;IACD,aAAa,EAAE,MAAM,CAAC;CACvB,GACA,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,SAAS,CAAC,CA0CrD"}
@@ -0,0 +1,37 @@
1
+ import { qawolfGraphQLEndpoint } from "./constants";
2
+ export async function getTagsFromGenericTriggerInEnvironment(deps, apiConfig, { environmentId, }) {
3
+ const retrievalResponse = await deps.fetch(qawolfGraphQLEndpoint, {
4
+ body: JSON.stringify({
5
+ query: `
6
+ query GenericTriggerTagsFromEnvironment($where: EnvironmentWhereUniqueInput!) {
7
+ environment(where: $where) {
8
+ id
9
+ triggers(where: {deleted_at: {equals: null}, deployment_provider: {equals: "generic"}}) {
10
+ id
11
+ tags {
12
+ id
13
+ name
14
+ }
15
+ }
16
+ }
17
+ }
18
+ `,
19
+ variables: {
20
+ where: {
21
+ id: environmentId,
22
+ },
23
+ },
24
+ }),
25
+ headers: {
26
+ Authorization: `Bearer ${apiConfig.apiKey}`,
27
+ "Content-Type": "application/json",
28
+ },
29
+ method: "post",
30
+ });
31
+ const retrievalResponseJson = (await retrievalResponse.json());
32
+ if (!retrievalResponseJson.data.environment) {
33
+ throw Error(`Environment not found with ID: ${environmentId}. Please check the environment ID is correct.`);
34
+ }
35
+ return retrievalResponseJson.data.environment.triggers[0]?.tags?.map((tag) => tag);
36
+ }
37
+ //# sourceMappingURL=getTagsFromEnvironment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTagsFromEnvironment.js","sourceRoot":"","sources":["../../../../../../src/lib/sdk/domain/previewTesting/getTagsFromEnvironment.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAiBpD,MAAM,CAAC,KAAK,UAAU,sCAAsC,CAC1D,IAAqB,EACrB,SAAoB,EACpB,EACE,aAAa,GAGd;IAED,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE;QAChE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,KAAK,EAAE;;;;;;;;;;;;;OAaN;YACD,SAAS,EAAE;gBACT,KAAK,EAAE;oBACL,EAAE,EAAE,aAAa;iBAClB;aACF;SACF,CAAC;QACF,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,SAAS,CAAC,MAAM,EAAE;YAC3C,cAAc,EAAE,kBAAkB;SACnC;QACD,MAAM,EAAE,MAAM;KACf,CAAC,CAAC;IAEH,MAAM,qBAAqB,GACzB,CAAC,MAAM,iBAAiB,CAAC,IAAI,EAAE,CAA8C,CAAC;IAEhF,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,KAAK,CACT,kCAAkC,aAAa,+CAA+C,CAC/F,CAAC;IACJ,CAAC;IAED,OAAO,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAClE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CACb,CAAC;AACJ,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { type ApiConfig } from "../../../api-types.js";
2
+ import { type SdkDependencies } from "../../dependencies.js";
3
+ export interface TestPreviewParams {
4
+ baseEnvironmentId: string | undefined;
5
+ branch: string;
6
+ commitUrl: string;
7
+ deploymentUrl: string | undefined;
8
+ pr: {
9
+ number: number;
10
+ title: string;
11
+ } | undefined;
12
+ qaWolfTeamId: string;
13
+ repoFullName: string;
14
+ sha: string;
15
+ variables: {
16
+ [key: string]: string;
17
+ };
18
+ }
19
+ export declare function testPreview(deps: SdkDependencies, apiConfig: ApiConfig, config: TestPreviewParams): Promise<import("../attempt-deploy.js").NotifyDeployStatus>;
20
+ export declare function removeEnvironment(deps: SdkDependencies, apiConfig: ApiConfig, config: {
21
+ branch: string;
22
+ }): Promise<void>;
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/sdk/domain/previewTesting/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAM7D,MAAM,WAAW,iBAAiB;IAChC,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,EAAE,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CACtC;AAED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,eAAe,EACrB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,iBAAiB,8DAoB1B;AAED,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,eAAe,EACrB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,iBAG3B"}
@@ -0,0 +1,27 @@
1
+ import { attemptNotifyDeploy } from "../attempt-deploy.js";
2
+ import { previewDeploymentType } from "./constants.js";
3
+ import { createEnvironmentAction as createEnvironment } from "./createEnvironmentAction.js";
4
+ import { deleteEnvironmentAction } from "./deleteEnvironmentAction.js";
5
+ export async function testPreview(deps, apiConfig, config) {
6
+ await createEnvironment(deps, apiConfig, {
7
+ baseEnvironmentId: config.baseEnvironmentId,
8
+ branch: config.branch,
9
+ deploymentUrl: config.deploymentUrl,
10
+ headRepoFullName: config.repoFullName,
11
+ pr: config.pr,
12
+ qaWolfTeamId: config.qaWolfTeamId,
13
+ variables: config.variables,
14
+ });
15
+ return attemptNotifyDeploy(deps, apiConfig, {
16
+ branch: config.branch,
17
+ commitUrl: config.commitUrl,
18
+ deploymentType: previewDeploymentType,
19
+ deploymentUrl: config.deploymentUrl,
20
+ sha: config.sha,
21
+ variables: config.variables,
22
+ });
23
+ }
24
+ export async function removeEnvironment(deps, apiConfig, config) {
25
+ await deleteEnvironmentAction(deps, apiConfig, config);
26
+ }
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/lib/sdk/domain/previewTesting/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,uBAAuB,IAAI,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAC5F,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAcvE,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAqB,EACrB,SAAoB,EACpB,MAAyB;IAEzB,MAAM,iBAAiB,CAAC,IAAI,EAAE,SAAS,EAAE;QACvC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;QAC3C,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,gBAAgB,EAAE,MAAM,CAAC,YAAY;QACrC,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC;IAEH,OAAO,mBAAmB,CAAC,IAAI,EAAE,SAAS,EAAE;QAC1C,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,cAAc,EAAE,qBAAqB;QACrC,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAqB,EACrB,SAAoB,EACpB,MAA0B;IAE1B,MAAM,uBAAuB,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AACzD,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { type SdkDependencies } from "./dependencies.js";
2
+ export declare function makeQaWolfSdk({ apiKey, serviceBase, }: {
3
+ apiKey: string;
4
+ serviceBase?: string;
5
+ }, { log, fetch, }?: Partial<SdkDependencies>): {
6
+ attemptNotifyDeploy: (config: Partial<import("../api/deploy.js").DeployConfig>) => Promise<import("./domain/attempt-deploy.js").NotifyDeployStatus>;
7
+ experimental_removeEnvironment: (config: {
8
+ branch: string;
9
+ }) => Promise<void>;
10
+ experimental_testPreview: (config: import("./domain/previewTesting/index.js").TestPreviewParams) => Promise<import("./domain/attempt-deploy.js").NotifyDeployStatus>;
11
+ pollCiGreenlightStatus: (args_0: import("./domain/poll-ci-greenlight.js").PollCiGreenlightParams) => Promise<import("./domain/poll-ci-greenlight.js").PollCiGreenlightStatus>;
12
+ };
13
+ export type * from "./domain/poll-ci-greenlight.js";
14
+ export type * from "./domain/attempt-deploy.js";
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/sdk/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AASzD,wBAAgB,aAAa,CAC3B,EACE,MAAM,EACN,WAAuC,GACxC,EAAE;IACD,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,EACD,EACE,GAAsB,EACtB,KAAwB,GACzB,GAAE,OAAO,CAAC,eAAe,CAAM;;;;;;;EAcjC;AAED,mBAAmB,gCAAgC,CAAC;AACpD,mBAAmB,4BAA4B,CAAC"}
@@ -1,11 +1,15 @@
1
1
  import { attemptNotifyDeploy } from "./domain/attempt-deploy.js";
2
- import { defaultLogDriver } from "./log/default.js";
3
2
  import { pollCiGreenlightStatus } from "./domain/poll-ci-greenlight.js";
3
+ import { removeEnvironment, testPreview, } from "./domain/previewTesting/index.js";
4
+ import { defaultLogDriver } from "./log/default.js";
4
5
  export function makeQaWolfSdk({ apiKey, serviceBase = "https://app.qawolf.com/", }, { log = defaultLogDriver, fetch = globalThis.fetch, } = {}) {
5
- const deps = { log, fetch };
6
+ const deps = { fetch, log };
6
7
  const apiConfig = { apiKey, serviceBase };
7
8
  return {
8
9
  attemptNotifyDeploy: attemptNotifyDeploy.bind(null, deps, apiConfig),
10
+ experimental_removeEnvironment: removeEnvironment.bind(null, deps, apiConfig),
11
+ experimental_testPreview: testPreview.bind(null, deps, apiConfig),
9
12
  pollCiGreenlightStatus: pollCiGreenlightStatus.bind(null, deps, apiConfig),
10
13
  };
11
14
  }
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/sdk/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EACL,iBAAiB,EACjB,WAAW,GACZ,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,UAAU,aAAa,CAC3B,EACE,MAAM,EACN,WAAW,GAAG,yBAAyB,GAIxC,EACD,EACE,GAAG,GAAG,gBAAgB,EACtB,KAAK,GAAG,UAAU,CAAC,KAAK,MACI,EAAE;IAEhC,MAAM,IAAI,GAAoB,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IAC7C,MAAM,SAAS,GAAc,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IACrD,OAAO;QACL,mBAAmB,EAAE,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC;QACpE,8BAA8B,EAAE,iBAAiB,CAAC,IAAI,CACpD,IAAI,EACJ,IAAI,EACJ,SAAS,CACV;QACD,wBAAwB,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC;QACjE,sBAAsB,EAAE,sBAAsB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC;KAC3E,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type LogDriver } from "../dependencies.js";
2
+ export declare const defaultLogDriver: LogDriver;
3
+ //# sourceMappingURL=default.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../../src/lib/sdk/log/default.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,eAAO,MAAM,gBAAgB,EAAE,SAU9B,CAAC"}
@@ -1,11 +1,12 @@
1
1
  export const defaultLogDriver = {
2
+ error(message, error) {
3
+ console.error(message, error);
4
+ },
2
5
  info(message) {
3
6
  console.log(message);
4
7
  },
5
8
  warn(message) {
6
9
  console.warn(message);
7
10
  },
8
- error(message, error) {
9
- console.error(message, error);
10
- },
11
11
  };
12
+ //# sourceMappingURL=default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.js","sourceRoot":"","sources":["../../../../../src/lib/sdk/log/default.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gBAAgB,GAAc;IACzC,KAAK,CAAC,OAAO,EAAE,KAAK;QAClB,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,CAAC,OAAO;QACV,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,CAAC,OAAO;QACV,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;CACF,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare function sleep(ms: number): Promise<unknown>;
2
+ export declare function pluralize(count: number): "" | "s";
3
+ /**
4
+ * Statically verify that provided value is assignable to a desired type
5
+ */
6
+ export declare function assertType<Type>(_value: Type): void;
7
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,wBAAsB,KAAK,CAAC,EAAE,EAAE,MAAM,oBAErC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,YAEtC;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,QAE5C"}
@@ -10,3 +10,4 @@ export function pluralize(count) {
10
10
  export function assertType(_value) {
11
11
  // noop
12
12
  }
13
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,EAAU;IACpC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAa;IACrC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAO,MAAY;IAC3C,OAAO;AACT,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { type CiGreenlightStatusBase } from "../lib/api/ci-greenlight.js";
2
+ export declare function makeQaWolfSdkForTest({ apiKey }: {
3
+ apiKey: string;
4
+ }): {
5
+ fetch: import("jest-mock").Mock<() => Promise<Response>>;
6
+ sdk: {
7
+ attemptNotifyDeploy: (config: Partial<import("../index.js").DeployConfig>) => Promise<import("../lib/sdk/index.js").NotifyDeployStatus>;
8
+ experimental_removeEnvironment: (config: {
9
+ branch: string;
10
+ }) => Promise<void>;
11
+ experimental_testPreview: (config: import("../lib/sdk/domain/previewTesting/index.js").TestPreviewParams) => Promise<import("../lib/sdk/index.js").NotifyDeployStatus>;
12
+ pollCiGreenlightStatus: (args_0: import("../lib/sdk/index.js").PollCiGreenlightParams) => Promise<import("../lib/sdk/index.js").PollCiGreenlightStatus>;
13
+ };
14
+ };
15
+ export declare function buildResponse<ResponseJSON>(response: ResponseJSON, status?: number): Response;
16
+ export declare function buildCiGreenlightStatusBase(): CiGreenlightStatusBase;
17
+ //# sourceMappingURL=test-lib.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-lib.d.ts","sourceRoot":"","sources":["../../../src/tests/test-lib.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAK1E,wBAAgB,oBAAoB,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;EAqBlE;AAED,wBAAgB,aAAa,CAAC,YAAY,EACxC,QAAQ,EAAE,YAAY,EACtB,MAAM,SAAM,GACX,QAAQ,CAOV;AAED,wBAAgB,2BAA2B,IAAI,sBAAsB,CAWpE"}
@@ -0,0 +1,42 @@
1
+ import { jest } from "@jest/globals";
2
+ import { makeQaWolfSdk } from "../lib/sdk/index.js";
3
+ const localDummyServiceBase = "http://localhost:80/";
4
+ export function makeQaWolfSdkForTest({ apiKey }) {
5
+ // Can be used for mocking fetch
6
+ const fetch = jest.fn(() => Promise.resolve(buildResponse({})));
7
+ return {
8
+ fetch,
9
+ sdk: makeQaWolfSdk({
10
+ apiKey,
11
+ serviceBase: localDummyServiceBase,
12
+ }, {
13
+ fetch,
14
+ log: {
15
+ error: console.log.bind(console),
16
+ info: console.log.bind(console),
17
+ warn: console.log.bind(console),
18
+ },
19
+ }),
20
+ };
21
+ }
22
+ export function buildResponse(response, status = 200) {
23
+ return new Response(JSON.stringify(response), {
24
+ headers: {
25
+ "Content-type": "application/json",
26
+ },
27
+ status,
28
+ });
29
+ }
30
+ export function buildCiGreenlightStatusBase() {
31
+ return {
32
+ relevantRunId: "foo",
33
+ relevantRunUrl: "http://foo",
34
+ relevantRunWithBugsUrl: "http://foo",
35
+ rootRunId: "foo",
36
+ rootRunUrl: "http://foo",
37
+ workflowsDisabledAfterRunCount: 0,
38
+ workflowsInRunCount: 10,
39
+ workflowsUnderInvestigationCount: 0,
40
+ };
41
+ }
42
+ //# sourceMappingURL=test-lib.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-lib.js","sourceRoot":"","sources":["../../../src/tests/test-lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAGrC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,qBAAqB,GAAG,sBAAsB,CAAC;AAErD,MAAM,UAAU,oBAAoB,CAAC,EAAE,MAAM,EAAsB;IACjE,gCAAgC;IAChC,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAEhE,OAAO;QACL,KAAK;QACL,GAAG,EAAE,aAAa,CAChB;YACE,MAAM;YACN,WAAW,EAAE,qBAAqB;SACnC,EACD;YACE,KAAK;YACL,GAAG,EAAE;gBACH,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;gBAChC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;gBAC/B,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;aAChC;SACF,CACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,QAAsB,EACtB,MAAM,GAAG,GAAG;IAEZ,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;QAC5C,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;QACD,MAAM;KACP,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2BAA2B;IACzC,OAAO;QACL,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,YAAY;QAC5B,sBAAsB,EAAE,YAAY;QACpC,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,YAAY;QACxB,8BAA8B,EAAE,CAAC;QACjC,mBAAmB,EAAE,EAAE;QACvB,gCAAgC,EAAE,CAAC;KACpC,CAAC;AACJ,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from "./lib/sdk/index.js";
2
2
  export * from "./lib/sdk/dependencies.js";
3
3
  export type { CiGreenlightStatus, CiGreenlightStatusBase, DeployConfig, DeployStatus, } from "./lib/api/index.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,YAAY,EACZ,YAAY,GACb,MAAM,oBAAoB,CAAC"}
@@ -1,5 +1,5 @@
1
- import { ApiConfig } from "../api-types.js";
2
- import { SdkDependencies } from "../sdk/dependencies.js";
1
+ import { type ApiConfig } from "../api-types.js";
2
+ import { type SdkDependencies } from "../sdk/dependencies.js";
3
3
  export type CiGreenlightBugDetails = {
4
4
  /**
5
5
  * The URL of this BR in the QAWolf application.
@@ -72,8 +72,8 @@ export type CiGreenlightStatus = CiGreenlightStatusBase & ({
72
72
  greenlight: boolean;
73
73
  nonBlockingBugsCount: number;
74
74
  nonBlockingBugUrls: string[];
75
- runStage: "completed";
76
75
  reproducedBugs: CiGreenlightBugDetails[];
76
+ runStage: "completed";
77
77
  } | {
78
78
  greenlight: false;
79
79
  runStage: "initializing" | "underReview" | "canceled";
@@ -84,30 +84,31 @@ export declare function fetchCiGreenlightStatus({ serviceBase, apiKey }: ApiConf
84
84
  readonly greenlightStatus: CiGreenlightStatus;
85
85
  readonly httpStatus: number;
86
86
  readonly ok: true;
87
- readonly canRetry?: never;
88
- readonly errorType?: never;
87
+ readonly canRetry?: undefined;
88
+ readonly errorType?: undefined;
89
89
  } | {
90
90
  readonly canRetry: true;
91
91
  readonly errorType: "not-found";
92
92
  readonly httpStatus: 404;
93
93
  readonly ok: false;
94
- readonly greenlightStatus?: never;
94
+ readonly greenlightStatus?: undefined;
95
95
  } | {
96
96
  readonly canRetry: true;
97
97
  readonly errorType: "server";
98
98
  readonly httpStatus: number;
99
99
  readonly ok: false;
100
- readonly greenlightStatus?: never;
100
+ readonly greenlightStatus?: undefined;
101
101
  } | {
102
102
  readonly canRetry: false;
103
+ readonly errorType: "client";
103
104
  readonly httpStatus: number;
104
105
  readonly ok: false;
105
- readonly greenlightStatus?: never;
106
- readonly errorType?: never;
106
+ readonly greenlightStatus?: undefined;
107
107
  } | {
108
108
  readonly canRetry: true;
109
109
  readonly errorType: "network";
110
110
  readonly httpStatus: 0;
111
111
  readonly ok: false;
112
- readonly greenlightStatus?: never;
112
+ readonly greenlightStatus?: undefined;
113
113
  }>;
114
+ //# sourceMappingURL=ci-greenlight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ci-greenlight.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/ci-greenlight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,MAAM,sBAAsB,GAAG;IACnC;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,aAAa,EACT;QACE;;;WAGG;QACH,cAAc,EAAE,MAAM,CAAC;QACvB;;WAEG;QACH,eAAe,EAAE,MAAM,CAAC;QACxB;;WAEG;QACH,QAAQ,EAAE,MAAM,CAAC;KAClB,GACD,SAAS,CAAC;IACd;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,QAAQ,EAAE,QAAQ,GAAG,eAAe,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;CAClE,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,EAAE,sBAAsB,EAAE,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,8BAA8B,EAAE,MAAM,CAAC;IACvC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gCAAgC,EAAE,MAAM,CAAC;CAC1C,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,GACrD,CACI;IACE,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,EAAE,sBAAsB,EAAE,CAAC;IACzC,QAAQ,EAAE,WAAW,CAAC;CACvB,GACD;IACE,UAAU,EAAE,KAAK,CAAC;IAClB,QAAQ,EAAE,cAAc,GAAG,aAAa,GAAG,UAAU,CAAC;CACvD,CACJ,CAAC;AAEJ,wBAAsB,uBAAuB,CAC3C,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,SAAS,EAClC,EACE,KAAK,GACN,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;CACf,EACD,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDvC"}
@@ -1,5 +1,5 @@
1
- import { ApiConfig } from "../api-types.js";
2
- import { SdkDependencies } from "../sdk/dependencies.js";
1
+ import { type ApiConfig } from "../api-types.js";
2
+ import { type SdkDependencies } from "../sdk/dependencies.js";
3
3
  /**
4
4
  * Refer to our official documentation for more information:
5
5
  * https://qawolf.notion.site/dd72e46ceb7f451dae4e9ef06f64a2cc
@@ -23,49 +23,50 @@ export type DeployStatus = {
23
23
  export declare function postDeploySuccess({ apiKey, serviceBase }: ApiConfig, { branch, commitUrl, deduplicationKey, deploymentType, deploymentUrl, hostingService, sha, variables, }: Partial<DeployConfig>, { fetch: localFetch }: SdkDependencies): Promise<{
24
24
  readonly failureReason: "no-matched-trigger";
25
25
  readonly success: false;
26
- readonly details?: never;
27
- readonly runId?: never;
28
- readonly httpStatus?: never;
26
+ readonly details?: undefined;
27
+ readonly runId?: undefined;
28
+ readonly httpStatus?: undefined;
29
29
  } | {
30
30
  readonly details: string;
31
31
  readonly failureReason: "run-could-not-be-created";
32
32
  readonly success: false;
33
- readonly runId?: never;
34
- readonly httpStatus?: never;
33
+ readonly runId?: undefined;
34
+ readonly httpStatus?: undefined;
35
35
  } | {
36
36
  readonly runId: string;
37
37
  readonly success: true;
38
- readonly failureReason?: never;
39
- readonly details?: never;
40
- readonly httpStatus?: never;
38
+ readonly failureReason?: undefined;
39
+ readonly details?: undefined;
40
+ readonly httpStatus?: undefined;
41
41
  } | {
42
- readonly failureReason: "server-error";
42
+ readonly failureReason: "5XX-server-error";
43
43
  readonly httpStatus: number;
44
44
  readonly success: false;
45
- readonly details?: never;
46
- readonly runId?: never;
45
+ readonly details?: undefined;
46
+ readonly runId?: undefined;
47
47
  } | {
48
- readonly failureReason: "unauthorized";
48
+ readonly failureReason: "401-unauthorized";
49
49
  readonly httpStatus: 401;
50
50
  readonly success: false;
51
- readonly details?: never;
52
- readonly runId?: never;
51
+ readonly details?: undefined;
52
+ readonly runId?: undefined;
53
53
  } | {
54
- readonly failureReason: "forbidden";
54
+ readonly failureReason: "403-forbidden";
55
55
  readonly httpStatus: 403;
56
56
  readonly success: false;
57
- readonly details?: never;
58
- readonly runId?: never;
57
+ readonly details?: undefined;
58
+ readonly runId?: undefined;
59
59
  } | {
60
- readonly failureReason: "unrecoverable-error";
60
+ readonly failureReason: "4XX-client-error";
61
61
  readonly httpStatus: number;
62
62
  readonly success: false;
63
- readonly details?: never;
64
- readonly runId?: never;
63
+ readonly details?: undefined;
64
+ readonly runId?: undefined;
65
65
  } | {
66
66
  readonly failureReason: "network-error";
67
67
  readonly success: false;
68
- readonly details?: never;
69
- readonly runId?: never;
70
- readonly httpStatus?: never;
68
+ readonly details?: undefined;
69
+ readonly runId?: undefined;
70
+ readonly httpStatus?: undefined;
71
71
  }>;
72
+ //# sourceMappingURL=deploy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,cAAc,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAChD,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,KAAK,CAAC;QAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACxE,CAAC;AAEF,wBAAsB,iBAAiB,CACrC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,SAAS,EAClC,EACE,MAAM,EACN,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,cAAc,EACd,GAAG,EACH,SAAS,GACV,EAAE,OAAO,CAAC,YAAY,CAAC,EACxB,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuFvC"}
@@ -1,2 +1,3 @@
1
1
  export * from "./ci-greenlight.js";
2
2
  export * from "./deploy.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC"}
@@ -2,3 +2,4 @@ export type ApiConfig = {
2
2
  apiKey: string;
3
3
  serviceBase: string;
4
4
  };
5
+ //# sourceMappingURL=api-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-types.d.ts","sourceRoot":"","sources":["../../../src/lib/api-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC"}
@@ -1,10 +1,11 @@
1
1
  export interface LogDriver {
2
+ error(message: string, error?: unknown): void;
2
3
  info(message: string): void;
3
4
  warn(message: string): void;
4
- error(message: string, error?: unknown): void;
5
5
  }
6
6
  export type FetchDriver = typeof fetch;
7
7
  export type SdkDependencies = {
8
- log: LogDriver;
9
8
  fetch: FetchDriver;
9
+ log: LogDriver;
10
10
  };
11
+ //# sourceMappingURL=dependencies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../../../../src/lib/sdk/dependencies.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9C,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,MAAM,WAAW,GAAG,OAAO,KAAK,CAAC;AAEvC,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,WAAW,CAAC;IACnB,GAAG,EAAE,SAAS,CAAC;CAChB,CAAC"}
@@ -1,6 +1,10 @@
1
- import { DeployConfig } from "../../api/deploy.js";
2
- import { SdkDependencies } from "../dependencies.js";
3
- import { ApiConfig } from "../../api-types.js";
1
+ import { type DeployConfig } from "../../api/deploy.js";
2
+ import { type ApiConfig } from "../../api-types.js";
3
+ import { type SdkDependencies } from "../dependencies.js";
4
+ export type AttemptDeployFailedReason = "no-matched-trigger" | "run-could-not-be-created";
5
+ export type AttemptDeployHttpAbortReason = "4XX-client-error" | "401-unauthorized" | "403-forbidden" | "5XX-server-error";
6
+ export type AttemptDeployNonHttpAbortReason = "network-error";
7
+ export type AttemptDeployAbortReason = AttemptDeployHttpAbortReason | AttemptDeployNonHttpAbortReason;
4
8
  export type NotifyDeployStatus = {
5
9
  /**
6
10
  * A run was successfully created.
@@ -8,14 +12,25 @@ export type NotifyDeployStatus = {
8
12
  outcome: "success";
9
13
  runId: string;
10
14
  } | {
15
+ failReason: AttemptDeployFailedReason;
11
16
  /**
12
17
  * A run could not be created.
13
18
  */
14
19
  outcome: "failed";
15
20
  } | {
21
+ abortReason: AttemptDeployNonHttpAbortReason;
22
+ httpStatus: undefined;
16
23
  /**
17
24
  * An unrecoverable error occurred.
18
25
  */
19
26
  outcome: "aborted";
27
+ } | {
28
+ abortReason: AttemptDeployHttpAbortReason;
29
+ httpStatus: number;
30
+ /**
31
+ * An unrecoverable HTTP error occurred.
32
+ */
33
+ outcome: "aborted";
20
34
  };
21
35
  export declare function attemptNotifyDeploy(deps: SdkDependencies, apiConfig: ApiConfig, config: Partial<DeployConfig>): Promise<NotifyDeployStatus>;
36
+ //# sourceMappingURL=attempt-deploy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attempt-deploy.d.ts","sourceRoot":"","sources":["../../../../../src/lib/sdk/domain/attempt-deploy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,MAAM,MAAM,yBAAyB,GACjC,oBAAoB,GACpB,0BAA0B,CAAC;AAE/B,MAAM,MAAM,4BAA4B,GACpC,kBAAkB,GAClB,kBAAkB,GAClB,eAAe,GACf,kBAAkB,CAAC;AAEvB,MAAM,MAAM,+BAA+B,GAAG,eAAe,CAAC;AAE9D,MAAM,MAAM,wBAAwB,GAChC,4BAA4B,GAC5B,+BAA+B,CAAC;AAEpC,MAAM,MAAM,kBAAkB,GAC1B;IACE;;OAEG;IACH,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf,GACD;IACE,UAAU,EAAE,yBAAyB,CAAC;IACtC;;OAEG;IACH,OAAO,EAAE,QAAQ,CAAC;CACnB,GACD;IACE,WAAW,EAAE,+BAA+B,CAAC;IAC7C,UAAU,EAAE,SAAS,CAAC;IACtB;;OAEG;IACH,OAAO,EAAE,SAAS,CAAC;CACpB,GACD;IACE,WAAW,EAAE,4BAA4B,CAAC;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,OAAO,EAAE,SAAS,CAAC;CACpB,CAAC;AAEN,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,eAAe,EACrB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,GAC5B,OAAO,CAAC,kBAAkB,CAAC,CAsD7B"}