@invarn/cibuild 2.9.6 → 2.9.8

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 (559) hide show
  1. package/dist/chunk-35SI42CD.mjs +1 -0
  2. package/dist/chunk-IC45KVLJ.mjs +1 -0
  3. package/dist/chunk-XDY4V23V.mjs +1 -0
  4. package/dist/cli.cjs +14 -14
  5. package/dist/commands.mjs +1 -0
  6. package/dist/lib.mjs +3934 -0
  7. package/package.json +6 -10
  8. package/dist/src/cli.d.ts +0 -3
  9. package/dist/src/cli.d.ts.map +0 -1
  10. package/dist/src/cli.js +0 -399
  11. package/dist/src/commands/a-credential-target-follows-the-flavor-source-set.test.d.ts +0 -38
  12. package/dist/src/commands/a-credential-target-follows-the-flavor-source-set.test.d.ts.map +0 -1
  13. package/dist/src/commands/a-credential-target-follows-the-flavor-source-set.test.js +0 -222
  14. package/dist/src/commands/a-credential-two-workflows-cannot-share-is-declared-per-workflow.test.d.ts +0 -41
  15. package/dist/src/commands/a-credential-two-workflows-cannot-share-is-declared-per-workflow.test.d.ts.map +0 -1
  16. package/dist/src/commands/a-credential-two-workflows-cannot-share-is-declared-per-workflow.test.js +0 -324
  17. package/dist/src/commands/a-properties-stand-in-declares-the-keys-the-build-reads.test.d.ts +0 -2
  18. package/dist/src/commands/a-properties-stand-in-declares-the-keys-the-build-reads.test.d.ts.map +0 -1
  19. package/dist/src/commands/a-properties-stand-in-declares-the-keys-the-build-reads.test.js +0 -382
  20. package/dist/src/commands/an-already-stored-value-does-not-answer-the-target-question.test.d.ts +0 -29
  21. package/dist/src/commands/an-already-stored-value-does-not-answer-the-target-question.test.d.ts.map +0 -1
  22. package/dist/src/commands/an-already-stored-value-does-not-answer-the-target-question.test.js +0 -160
  23. package/dist/src/commands/android-gms-guard.test.d.ts +0 -9
  24. package/dist/src/commands/android-gms-guard.test.d.ts.map +0 -1
  25. package/dist/src/commands/android-gms-guard.test.js +0 -78
  26. package/dist/src/commands/android-java-version.test.d.ts +0 -12
  27. package/dist/src/commands/android-java-version.test.d.ts.map +0 -1
  28. package/dist/src/commands/android-java-version.test.js +0 -209
  29. package/dist/src/commands/android-scanner-java.test.d.ts +0 -2
  30. package/dist/src/commands/android-scanner-java.test.d.ts.map +0 -1
  31. package/dist/src/commands/android-scanner-java.test.js +0 -130
  32. package/dist/src/commands/android-scanner.d.ts +0 -250
  33. package/dist/src/commands/android-scanner.d.ts.map +0 -1
  34. package/dist/src/commands/android-scanner.js +0 -1639
  35. package/dist/src/commands/build.d.ts +0 -215
  36. package/dist/src/commands/build.d.ts.map +0 -1
  37. package/dist/src/commands/build.js +0 -1433
  38. package/dist/src/commands/build.test.d.ts +0 -13
  39. package/dist/src/commands/build.test.d.ts.map +0 -1
  40. package/dist/src/commands/build.test.js +0 -121
  41. package/dist/src/commands/detect-platform.d.ts +0 -13
  42. package/dist/src/commands/detect-platform.d.ts.map +0 -1
  43. package/dist/src/commands/detect-platform.js +0 -51
  44. package/dist/src/commands/detect-project.d.ts +0 -7
  45. package/dist/src/commands/detect-project.d.ts.map +0 -1
  46. package/dist/src/commands/detect-project.js +0 -12
  47. package/dist/src/commands/each-flavor-is-asked-for-its-own-properties-file.test.d.ts +0 -26
  48. package/dist/src/commands/each-flavor-is-asked-for-its-own-properties-file.test.d.ts.map +0 -1
  49. package/dist/src/commands/each-flavor-is-asked-for-its-own-properties-file.test.js +0 -196
  50. package/dist/src/commands/edit.d.ts +0 -12
  51. package/dist/src/commands/edit.d.ts.map +0 -1
  52. package/dist/src/commands/edit.js +0 -652
  53. package/dist/src/commands/edit.test.d.ts +0 -6
  54. package/dist/src/commands/edit.test.d.ts.map +0 -1
  55. package/dist/src/commands/edit.test.js +0 -45
  56. package/dist/src/commands/fidelity-trim.d.ts +0 -13
  57. package/dist/src/commands/fidelity-trim.d.ts.map +0 -1
  58. package/dist/src/commands/fidelity-trim.js +0 -21
  59. package/dist/src/commands/fidelity-trim.test.d.ts +0 -8
  60. package/dist/src/commands/fidelity-trim.test.d.ts.map +0 -1
  61. package/dist/src/commands/fidelity-trim.test.js +0 -79
  62. package/dist/src/commands/file-secret-collector.d.ts +0 -50
  63. package/dist/src/commands/file-secret-collector.d.ts.map +0 -1
  64. package/dist/src/commands/file-secret-collector.js +0 -217
  65. package/dist/src/commands/flavors-a-convention-plugin-creates-are-still-found.test.d.ts +0 -38
  66. package/dist/src/commands/flavors-a-convention-plugin-creates-are-still-found.test.d.ts.map +0 -1
  67. package/dist/src/commands/flavors-a-convention-plugin-creates-are-still-found.test.js +0 -300
  68. package/dist/src/commands/github-workflow.d.ts +0 -5
  69. package/dist/src/commands/github-workflow.d.ts.map +0 -1
  70. package/dist/src/commands/github-workflow.js +0 -45
  71. package/dist/src/commands/index.d.ts +0 -33
  72. package/dist/src/commands/index.d.ts.map +0 -1
  73. package/dist/src/commands/index.js +0 -33
  74. package/dist/src/commands/init.d.ts +0 -20
  75. package/dist/src/commands/init.d.ts.map +0 -1
  76. package/dist/src/commands/init.js +0 -264
  77. package/dist/src/commands/ios-scanner.d.ts +0 -104
  78. package/dist/src/commands/ios-scanner.d.ts.map +0 -1
  79. package/dist/src/commands/ios-scanner.js +0 -492
  80. package/dist/src/commands/ios-scheme-ranking.test.d.ts +0 -2
  81. package/dist/src/commands/ios-scheme-ranking.test.d.ts.map +0 -1
  82. package/dist/src/commands/ios-scheme-ranking.test.js +0 -264
  83. package/dist/src/commands/local-properties-reaches-every-workflow.test.d.ts +0 -30
  84. package/dist/src/commands/local-properties-reaches-every-workflow.test.d.ts.map +0 -1
  85. package/dist/src/commands/local-properties-reaches-every-workflow.test.js +0 -146
  86. package/dist/src/commands/reset.d.ts +0 -7
  87. package/dist/src/commands/reset.d.ts.map +0 -1
  88. package/dist/src/commands/reset.js +0 -81
  89. package/dist/src/commands/run.d.ts +0 -22
  90. package/dist/src/commands/run.d.ts.map +0 -1
  91. package/dist/src/commands/run.js +0 -141
  92. package/dist/src/commands/secrets-sync-workflow.d.ts +0 -15
  93. package/dist/src/commands/secrets-sync-workflow.d.ts.map +0 -1
  94. package/dist/src/commands/secrets-sync-workflow.js +0 -255
  95. package/dist/src/commands/secrets-upload.d.ts +0 -21
  96. package/dist/src/commands/secrets-upload.d.ts.map +0 -1
  97. package/dist/src/commands/secrets-upload.js +0 -177
  98. package/dist/src/commands/secrets-upload.test.d.ts +0 -5
  99. package/dist/src/commands/secrets-upload.test.d.ts.map +0 -1
  100. package/dist/src/commands/secrets-upload.test.js +0 -60
  101. package/dist/src/commands/validate.d.ts +0 -10
  102. package/dist/src/commands/validate.d.ts.map +0 -1
  103. package/dist/src/commands/validate.js +0 -46
  104. package/dist/src/config.d.ts +0 -3
  105. package/dist/src/config.d.ts.map +0 -1
  106. package/dist/src/config.js +0 -47
  107. package/dist/src/envman/cli.d.ts +0 -21
  108. package/dist/src/envman/cli.d.ts.map +0 -1
  109. package/dist/src/envman/cli.js +0 -240
  110. package/dist/src/envman/envman.d.ts +0 -83
  111. package/dist/src/envman/envman.d.ts.map +0 -1
  112. package/dist/src/envman/envman.js +0 -361
  113. package/dist/src/envman/envman.test.d.ts +0 -5
  114. package/dist/src/envman/envman.test.d.ts.map +0 -1
  115. package/dist/src/envman/envman.test.js +0 -236
  116. package/dist/src/envman/envstore-round-trip.test.d.ts +0 -27
  117. package/dist/src/envman/envstore-round-trip.test.d.ts.map +0 -1
  118. package/dist/src/envman/envstore-round-trip.test.js +0 -130
  119. package/dist/src/envman/index.d.ts +0 -23
  120. package/dist/src/envman/index.d.ts.map +0 -1
  121. package/dist/src/envman/index.js +0 -23
  122. package/dist/src/envman/shim.d.ts +0 -16
  123. package/dist/src/envman/shim.d.ts.map +0 -1
  124. package/dist/src/envman/shim.js +0 -66
  125. package/dist/src/envman/types.d.ts +0 -55
  126. package/dist/src/envman/types.d.ts.map +0 -1
  127. package/dist/src/envman/types.js +0 -12
  128. package/dist/src/lib.d.ts +0 -33
  129. package/dist/src/lib.d.ts.map +0 -1
  130. package/dist/src/lib.js +0 -37
  131. package/dist/src/pipeline.d.ts +0 -3
  132. package/dist/src/pipeline.d.ts.map +0 -1
  133. package/dist/src/pipeline.js +0 -57
  134. package/dist/src/runner-node-step.test.d.ts +0 -12
  135. package/dist/src/runner-node-step.test.d.ts.map +0 -1
  136. package/dist/src/runner-node-step.test.js +0 -61
  137. package/dist/src/runner.d.ts +0 -31
  138. package/dist/src/runner.d.ts.map +0 -1
  139. package/dist/src/runner.js +0 -240
  140. package/dist/src/shared/detect-project.d.ts +0 -57
  141. package/dist/src/shared/detect-project.d.ts.map +0 -1
  142. package/dist/src/shared/detect-project.js +0 -219
  143. package/dist/src/shared/detect-project.test.d.ts +0 -2
  144. package/dist/src/shared/detect-project.test.d.ts.map +0 -1
  145. package/dist/src/shared/detect-project.test.js +0 -161
  146. package/dist/src/shared/git.d.ts +0 -25
  147. package/dist/src/shared/git.d.ts.map +0 -1
  148. package/dist/src/shared/git.js +0 -53
  149. package/dist/src/shared/git.test.d.ts +0 -9
  150. package/dist/src/shared/git.test.d.ts.map +0 -1
  151. package/dist/src/shared/git.test.js +0 -66
  152. package/dist/src/shared/gitignore.d.ts +0 -6
  153. package/dist/src/shared/gitignore.d.ts.map +0 -1
  154. package/dist/src/shared/gitignore.js +0 -26
  155. package/dist/src/shared/gradle-settings.d.ts +0 -49
  156. package/dist/src/shared/gradle-settings.d.ts.map +0 -1
  157. package/dist/src/shared/gradle-settings.js +0 -138
  158. package/dist/src/shared/gradle-settings.test.d.ts +0 -2
  159. package/dist/src/shared/gradle-settings.test.d.ts.map +0 -1
  160. package/dist/src/shared/gradle-settings.test.js +0 -65
  161. package/dist/src/shared/prompts.d.ts +0 -30
  162. package/dist/src/shared/prompts.d.ts.map +0 -1
  163. package/dist/src/shared/prompts.js +0 -121
  164. package/dist/src/shared/xcode-container.test.d.ts +0 -2
  165. package/dist/src/shared/xcode-container.test.d.ts.map +0 -1
  166. package/dist/src/shared/xcode-container.test.js +0 -123
  167. package/dist/src/step-marker.d.ts +0 -12
  168. package/dist/src/step-marker.d.ts.map +0 -1
  169. package/dist/src/step-marker.js +0 -29
  170. package/dist/src/step-marker.test.d.ts +0 -11
  171. package/dist/src/step-marker.test.d.ts.map +0 -1
  172. package/dist/src/step-marker.test.js +0 -45
  173. package/dist/src/types.d.ts +0 -58
  174. package/dist/src/types.d.ts.map +0 -1
  175. package/dist/src/types.js +0 -2
  176. package/dist/src/yaml/a-cache-path-must-not-swallow-a-credential.test.d.ts +0 -28
  177. package/dist/src/yaml/a-cache-path-must-not-swallow-a-credential.test.d.ts.map +0 -1
  178. package/dist/src/yaml/a-cache-path-must-not-swallow-a-credential.test.js +0 -223
  179. package/dist/src/yaml/a-declared-secret-reaches-the-file-step.test.d.ts +0 -20
  180. package/dist/src/yaml/a-declared-secret-reaches-the-file-step.test.d.ts.map +0 -1
  181. package/dist/src/yaml/a-declared-secret-reaches-the-file-step.test.js +0 -201
  182. package/dist/src/yaml/a-declared-slot-may-name-the-workflow-it-belongs-to.test.d.ts +0 -37
  183. package/dist/src/yaml/a-declared-slot-may-name-the-workflow-it-belongs-to.test.d.ts.map +0 -1
  184. package/dist/src/yaml/a-declared-slot-may-name-the-workflow-it-belongs-to.test.js +0 -255
  185. package/dist/src/yaml/a-missing-credential-is-loud.test.d.ts +0 -32
  186. package/dist/src/yaml/a-missing-credential-is-loud.test.d.ts.map +0 -1
  187. package/dist/src/yaml/a-missing-credential-is-loud.test.js +0 -301
  188. package/dist/src/yaml/a-runtime-requirement-names-a-real-provider.test.d.ts +0 -18
  189. package/dist/src/yaml/a-runtime-requirement-names-a-real-provider.test.d.ts.map +0 -1
  190. package/dist/src/yaml/a-runtime-requirement-names-a-real-provider.test.js +0 -66
  191. package/dist/src/yaml/a-scoped-slot-must-name-a-workflow-the-pipeline-has.test.d.ts +0 -34
  192. package/dist/src/yaml/a-scoped-slot-must-name-a-workflow-the-pipeline-has.test.d.ts.map +0 -1
  193. package/dist/src/yaml/a-scoped-slot-must-name-a-workflow-the-pipeline-has.test.js +0 -218
  194. package/dist/src/yaml/a-value-this-instance-stored-is-a-value-it-has.test.d.ts +0 -27
  195. package/dist/src/yaml/a-value-this-instance-stored-is-a-value-it-has.test.d.ts.map +0 -1
  196. package/dist/src/yaml/a-value-this-instance-stored-is-a-value-it-has.test.js +0 -126
  197. package/dist/src/yaml/bitrise-compat.d.ts +0 -65
  198. package/dist/src/yaml/bitrise-compat.d.ts.map +0 -1
  199. package/dist/src/yaml/bitrise-compat.js +0 -206
  200. package/dist/src/yaml/bitrise-compat.test.d.ts +0 -5
  201. package/dist/src/yaml/bitrise-compat.test.d.ts.map +0 -1
  202. package/dist/src/yaml/bitrise-compat.test.js +0 -347
  203. package/dist/src/yaml/cache-key-missing-file.test.d.ts +0 -12
  204. package/dist/src/yaml/cache-key-missing-file.test.d.ts.map +0 -1
  205. package/dist/src/yaml/cache-key-missing-file.test.js +0 -116
  206. package/dist/src/yaml/converter.d.ts +0 -103
  207. package/dist/src/yaml/converter.d.ts.map +0 -1
  208. package/dist/src/yaml/converter.js +0 -420
  209. package/dist/src/yaml/converter.test.d.ts +0 -5
  210. package/dist/src/yaml/converter.test.d.ts.map +0 -1
  211. package/dist/src/yaml/converter.test.js +0 -548
  212. package/dist/src/yaml/e2e.test.d.ts +0 -6
  213. package/dist/src/yaml/e2e.test.d.ts.map +0 -1
  214. package/dist/src/yaml/e2e.test.js +0 -446
  215. package/dist/src/yaml/env-resolver.d.ts +0 -218
  216. package/dist/src/yaml/env-resolver.d.ts.map +0 -1
  217. package/dist/src/yaml/env-resolver.js +0 -591
  218. package/dist/src/yaml/env-resolver.test.d.ts +0 -5
  219. package/dist/src/yaml/env-resolver.test.d.ts.map +0 -1
  220. package/dist/src/yaml/env-resolver.test.js +0 -502
  221. package/dist/src/yaml/every-build-log-witnesses-the-commit-on-disk.test.d.ts +0 -16
  222. package/dist/src/yaml/every-build-log-witnesses-the-commit-on-disk.test.d.ts.map +0 -1
  223. package/dist/src/yaml/every-build-log-witnesses-the-commit-on-disk.test.js +0 -126
  224. package/dist/src/yaml/fidelity-input-digest.d.ts +0 -37
  225. package/dist/src/yaml/fidelity-input-digest.d.ts.map +0 -1
  226. package/dist/src/yaml/fidelity-input-digest.js +0 -208
  227. package/dist/src/yaml/fidelity-input-digest.test.d.ts +0 -2
  228. package/dist/src/yaml/fidelity-input-digest.test.d.ts.map +0 -1
  229. package/dist/src/yaml/fidelity-input-digest.test.js +0 -167
  230. package/dist/src/yaml/fidelity-manifest.d.ts +0 -126
  231. package/dist/src/yaml/fidelity-manifest.d.ts.map +0 -1
  232. package/dist/src/yaml/fidelity-manifest.js +0 -134
  233. package/dist/src/yaml/fidelity-manifest.test.d.ts +0 -12
  234. package/dist/src/yaml/fidelity-manifest.test.d.ts.map +0 -1
  235. package/dist/src/yaml/fidelity-manifest.test.js +0 -251
  236. package/dist/src/yaml/interactive-prompts.d.ts +0 -71
  237. package/dist/src/yaml/interactive-prompts.d.ts.map +0 -1
  238. package/dist/src/yaml/interactive-prompts.js +0 -260
  239. package/dist/src/yaml/meta-helpers.d.ts +0 -28
  240. package/dist/src/yaml/meta-helpers.d.ts.map +0 -1
  241. package/dist/src/yaml/meta-helpers.js +0 -46
  242. package/dist/src/yaml/missing-env-handler.d.ts +0 -45
  243. package/dist/src/yaml/missing-env-handler.d.ts.map +0 -1
  244. package/dist/src/yaml/missing-env-handler.js +0 -64
  245. package/dist/src/yaml/parser.d.ts +0 -33
  246. package/dist/src/yaml/parser.d.ts.map +0 -1
  247. package/dist/src/yaml/parser.js +0 -148
  248. package/dist/src/yaml/parser.test.d.ts +0 -5
  249. package/dist/src/yaml/parser.test.d.ts.map +0 -1
  250. package/dist/src/yaml/parser.test.js +0 -83
  251. package/dist/src/yaml/pipeline-with-secrets.d.ts +0 -25
  252. package/dist/src/yaml/pipeline-with-secrets.d.ts.map +0 -1
  253. package/dist/src/yaml/pipeline-with-secrets.js +0 -76
  254. package/dist/src/yaml/platform-detector.d.ts +0 -83
  255. package/dist/src/yaml/platform-detector.d.ts.map +0 -1
  256. package/dist/src/yaml/platform-detector.js +0 -189
  257. package/dist/src/yaml/platform-detector.test.d.ts +0 -5
  258. package/dist/src/yaml/platform-detector.test.d.ts.map +0 -1
  259. package/dist/src/yaml/platform-detector.test.js +0 -525
  260. package/dist/src/yaml/preflight-validation.d.ts +0 -29
  261. package/dist/src/yaml/preflight-validation.d.ts.map +0 -1
  262. package/dist/src/yaml/preflight-validation.js +0 -21
  263. package/dist/src/yaml/secrets-manager.d.ts +0 -87
  264. package/dist/src/yaml/secrets-manager.d.ts.map +0 -1
  265. package/dist/src/yaml/secrets-manager.js +0 -230
  266. package/dist/src/yaml/shell-assignments.d.ts +0 -40
  267. package/dist/src/yaml/shell-assignments.d.ts.map +0 -1
  268. package/dist/src/yaml/shell-assignments.js +0 -77
  269. package/dist/src/yaml/step-validator-check-failure.test.d.ts +0 -24
  270. package/dist/src/yaml/step-validator-check-failure.test.d.ts.map +0 -1
  271. package/dist/src/yaml/step-validator-check-failure.test.js +0 -130
  272. package/dist/src/yaml/step-validator-self-assigned.test.d.ts +0 -23
  273. package/dist/src/yaml/step-validator-self-assigned.test.d.ts.map +0 -1
  274. package/dist/src/yaml/step-validator-self-assigned.test.js +0 -191
  275. package/dist/src/yaml/step-validator.d.ts +0 -67
  276. package/dist/src/yaml/step-validator.d.ts.map +0 -1
  277. package/dist/src/yaml/step-validator.js +0 -466
  278. package/dist/src/yaml/step-validator.test.d.ts +0 -18
  279. package/dist/src/yaml/step-validator.test.d.ts.map +0 -1
  280. package/dist/src/yaml/step-validator.test.js +0 -140
  281. package/dist/src/yaml/steps/a-missing-pinned-jdk-yields-for-every-gradle-run.test.d.ts +0 -2
  282. package/dist/src/yaml/steps/a-missing-pinned-jdk-yields-for-every-gradle-run.test.d.ts.map +0 -1
  283. package/dist/src/yaml/steps/a-missing-pinned-jdk-yields-for-every-gradle-run.test.js +0 -96
  284. package/dist/src/yaml/steps/android-sign.d.ts +0 -35
  285. package/dist/src/yaml/steps/android-sign.d.ts.map +0 -1
  286. package/dist/src/yaml/steps/android-sign.js +0 -147
  287. package/dist/src/yaml/steps/android-variant-resolution.test.d.ts +0 -2
  288. package/dist/src/yaml/steps/android-variant-resolution.test.d.ts.map +0 -1
  289. package/dist/src/yaml/steps/android-variant-resolution.test.js +0 -260
  290. package/dist/src/yaml/steps/android-version.d.ts +0 -26
  291. package/dist/src/yaml/steps/android-version.d.ts.map +0 -1
  292. package/dist/src/yaml/steps/android-version.js +0 -128
  293. package/dist/src/yaml/steps/android-version.test.d.ts +0 -5
  294. package/dist/src/yaml/steps/android-version.test.d.ts.map +0 -1
  295. package/dist/src/yaml/steps/android-version.test.js +0 -196
  296. package/dist/src/yaml/steps/android.d.ts +0 -156
  297. package/dist/src/yaml/steps/android.d.ts.map +0 -1
  298. package/dist/src/yaml/steps/android.js +0 -1100
  299. package/dist/src/yaml/steps/app-store-deploy.d.ts +0 -48
  300. package/dist/src/yaml/steps/app-store-deploy.d.ts.map +0 -1
  301. package/dist/src/yaml/steps/app-store-deploy.js +0 -167
  302. package/dist/src/yaml/steps/base.d.ts +0 -263
  303. package/dist/src/yaml/steps/base.d.ts.map +0 -1
  304. package/dist/src/yaml/steps/base.js +0 -380
  305. package/dist/src/yaml/steps/bitrise-android-tools.d.ts +0 -26
  306. package/dist/src/yaml/steps/bitrise-android-tools.d.ts.map +0 -1
  307. package/dist/src/yaml/steps/bitrise-android-tools.js +0 -200
  308. package/dist/src/yaml/steps/bitrise-android-tools.test.d.ts +0 -5
  309. package/dist/src/yaml/steps/bitrise-android-tools.test.d.ts.map +0 -1
  310. package/dist/src/yaml/steps/bitrise-android-tools.test.js +0 -280
  311. package/dist/src/yaml/steps/bitrise-apk-info.d.ts +0 -22
  312. package/dist/src/yaml/steps/bitrise-apk-info.d.ts.map +0 -1
  313. package/dist/src/yaml/steps/bitrise-apk-info.js +0 -144
  314. package/dist/src/yaml/steps/bitrise-apk-info.test.d.ts +0 -5
  315. package/dist/src/yaml/steps/bitrise-apk-info.test.d.ts.map +0 -1
  316. package/dist/src/yaml/steps/bitrise-apk-info.test.js +0 -331
  317. package/dist/src/yaml/steps/bitrise-slack.d.ts +0 -49
  318. package/dist/src/yaml/steps/bitrise-slack.d.ts.map +0 -1
  319. package/dist/src/yaml/steps/bitrise-slack.js +0 -280
  320. package/dist/src/yaml/steps/bitrise-slack.test.d.ts +0 -5
  321. package/dist/src/yaml/steps/bitrise-slack.test.d.ts.map +0 -1
  322. package/dist/src/yaml/steps/bitrise-slack.test.js +0 -484
  323. package/dist/src/yaml/steps/bitrise-ssh.d.ts +0 -27
  324. package/dist/src/yaml/steps/bitrise-ssh.d.ts.map +0 -1
  325. package/dist/src/yaml/steps/bitrise-ssh.js +0 -134
  326. package/dist/src/yaml/steps/bitrise-ssh.test.d.ts +0 -5
  327. package/dist/src/yaml/steps/bitrise-ssh.test.d.ts.map +0 -1
  328. package/dist/src/yaml/steps/bitrise-ssh.test.js +0 -205
  329. package/dist/src/yaml/steps/cache-pull-daemon.test.d.ts +0 -27
  330. package/dist/src/yaml/steps/cache-pull-daemon.test.d.ts.map +0 -1
  331. package/dist/src/yaml/steps/cache-pull-daemon.test.js +0 -212
  332. package/dist/src/yaml/steps/cache-pull-restore-roots.test.d.ts +0 -42
  333. package/dist/src/yaml/steps/cache-pull-restore-roots.test.d.ts.map +0 -1
  334. package/dist/src/yaml/steps/cache-pull-restore-roots.test.js +0 -209
  335. package/dist/src/yaml/steps/cache-push-daemon.test.d.ts +0 -27
  336. package/dist/src/yaml/steps/cache-push-daemon.test.d.ts.map +0 -1
  337. package/dist/src/yaml/steps/cache-push-daemon.test.js +0 -171
  338. package/dist/src/yaml/steps/cache.d.ts +0 -59
  339. package/dist/src/yaml/steps/cache.d.ts.map +0 -1
  340. package/dist/src/yaml/steps/cache.js +0 -1027
  341. package/dist/src/yaml/steps/capture-injection.d.ts +0 -30
  342. package/dist/src/yaml/steps/capture-injection.d.ts.map +0 -1
  343. package/dist/src/yaml/steps/capture-injection.js +0 -88
  344. package/dist/src/yaml/steps/capture-injection.test.d.ts +0 -2
  345. package/dist/src/yaml/steps/capture-injection.test.d.ts.map +0 -1
  346. package/dist/src/yaml/steps/capture-injection.test.js +0 -163
  347. package/dist/src/yaml/steps/cocoapods-deployment-floor.d.ts +0 -42
  348. package/dist/src/yaml/steps/cocoapods-deployment-floor.d.ts.map +0 -1
  349. package/dist/src/yaml/steps/cocoapods-deployment-floor.js +0 -140
  350. package/dist/src/yaml/steps/cocoapods-deployment-floor.test.d.ts +0 -11
  351. package/dist/src/yaml/steps/cocoapods-deployment-floor.test.d.ts.map +0 -1
  352. package/dist/src/yaml/steps/cocoapods-deployment-floor.test.js +0 -176
  353. package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.d.ts +0 -22
  354. package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.d.ts.map +0 -1
  355. package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.js +0 -97
  356. package/dist/src/yaml/steps/cocoapods-locked-bundler.test.d.ts +0 -17
  357. package/dist/src/yaml/steps/cocoapods-locked-bundler.test.d.ts.map +0 -1
  358. package/dist/src/yaml/steps/cocoapods-locked-bundler.test.js +0 -282
  359. package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.d.ts +0 -17
  360. package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.d.ts.map +0 -1
  361. package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.js +0 -132
  362. package/dist/src/yaml/steps/envstore-loader.test.d.ts +0 -15
  363. package/dist/src/yaml/steps/envstore-loader.test.d.ts.map +0 -1
  364. package/dist/src/yaml/steps/envstore-loader.test.js +0 -143
  365. package/dist/src/yaml/steps/fastlane.d.ts +0 -27
  366. package/dist/src/yaml/steps/fastlane.d.ts.map +0 -1
  367. package/dist/src/yaml/steps/fastlane.js +0 -79
  368. package/dist/src/yaml/steps/fidelity-aspect-guard.d.ts +0 -53
  369. package/dist/src/yaml/steps/fidelity-aspect-guard.d.ts.map +0 -1
  370. package/dist/src/yaml/steps/fidelity-aspect-guard.js +0 -72
  371. package/dist/src/yaml/steps/fidelity-aspect-guard.test.d.ts +0 -11
  372. package/dist/src/yaml/steps/fidelity-aspect-guard.test.d.ts.map +0 -1
  373. package/dist/src/yaml/steps/fidelity-aspect-guard.test.js +0 -50
  374. package/dist/src/yaml/steps/fidelity-reference-provenance.d.ts +0 -87
  375. package/dist/src/yaml/steps/fidelity-reference-provenance.d.ts.map +0 -1
  376. package/dist/src/yaml/steps/fidelity-reference-provenance.js +0 -111
  377. package/dist/src/yaml/steps/fidelity-reference-provenance.test.d.ts +0 -22
  378. package/dist/src/yaml/steps/fidelity-reference-provenance.test.d.ts.map +0 -1
  379. package/dist/src/yaml/steps/fidelity-reference-provenance.test.js +0 -118
  380. package/dist/src/yaml/steps/file.d.ts +0 -52
  381. package/dist/src/yaml/steps/file.d.ts.map +0 -1
  382. package/dist/src/yaml/steps/file.js +0 -108
  383. package/dist/src/yaml/steps/flutter.d.ts +0 -63
  384. package/dist/src/yaml/steps/flutter.d.ts.map +0 -1
  385. package/dist/src/yaml/steps/flutter.js +0 -215
  386. package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.d.ts +0 -16
  387. package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.d.ts.map +0 -1
  388. package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.js +0 -127
  389. package/dist/src/yaml/steps/git-clone.d.ts +0 -32
  390. package/dist/src/yaml/steps/git-clone.d.ts.map +0 -1
  391. package/dist/src/yaml/steps/git-clone.js +0 -171
  392. package/dist/src/yaml/steps/git-fetch-retry-exec.test.d.ts +0 -10
  393. package/dist/src/yaml/steps/git-fetch-retry-exec.test.d.ts.map +0 -1
  394. package/dist/src/yaml/steps/git-fetch-retry-exec.test.js +0 -162
  395. package/dist/src/yaml/steps/git-fetch-retry.d.ts +0 -62
  396. package/dist/src/yaml/steps/git-fetch-retry.d.ts.map +0 -1
  397. package/dist/src/yaml/steps/git-fetch-retry.js +0 -155
  398. package/dist/src/yaml/steps/git-fetch-retry.test.d.ts +0 -5
  399. package/dist/src/yaml/steps/git-fetch-retry.test.d.ts.map +0 -1
  400. package/dist/src/yaml/steps/git-fetch-retry.test.js +0 -86
  401. package/dist/src/yaml/steps/google-play-deploy.d.ts +0 -37
  402. package/dist/src/yaml/steps/google-play-deploy.d.ts.map +0 -1
  403. package/dist/src/yaml/steps/google-play-deploy.js +0 -193
  404. package/dist/src/yaml/steps/google-play-deploy.test.d.ts +0 -5
  405. package/dist/src/yaml/steps/google-play-deploy.test.d.ts.map +0 -1
  406. package/dist/src/yaml/steps/google-play-deploy.test.js +0 -310
  407. package/dist/src/yaml/steps/gradle-memory.d.ts +0 -91
  408. package/dist/src/yaml/steps/gradle-memory.d.ts.map +0 -1
  409. package/dist/src/yaml/steps/gradle-memory.js +0 -495
  410. package/dist/src/yaml/steps/gradle-memory.test.d.ts +0 -2
  411. package/dist/src/yaml/steps/gradle-memory.test.d.ts.map +0 -1
  412. package/dist/src/yaml/steps/gradle-memory.test.js +0 -344
  413. package/dist/src/yaml/steps/gradle-sdk-cmake.d.ts +0 -28
  414. package/dist/src/yaml/steps/gradle-sdk-cmake.d.ts.map +0 -1
  415. package/dist/src/yaml/steps/gradle-sdk-cmake.js +0 -107
  416. package/dist/src/yaml/steps/gradle-sdk-cmake.test.d.ts +0 -2
  417. package/dist/src/yaml/steps/gradle-sdk-cmake.test.d.ts.map +0 -1
  418. package/dist/src/yaml/steps/gradle-sdk-cmake.test.js +0 -183
  419. package/dist/src/yaml/steps/index.d.ts +0 -10
  420. package/dist/src/yaml/steps/index.d.ts.map +0 -1
  421. package/dist/src/yaml/steps/index.js +0 -1461
  422. package/dist/src/yaml/steps/ios-deps.d.ts +0 -78
  423. package/dist/src/yaml/steps/ios-deps.d.ts.map +0 -1
  424. package/dist/src/yaml/steps/ios-deps.js +0 -279
  425. package/dist/src/yaml/steps/ios-deps.test.d.ts +0 -5
  426. package/dist/src/yaml/steps/ios-deps.test.d.ts.map +0 -1
  427. package/dist/src/yaml/steps/ios-deps.test.js +0 -90
  428. package/dist/src/yaml/steps/ios-signing.d.ts +0 -31
  429. package/dist/src/yaml/steps/ios-signing.d.ts.map +0 -1
  430. package/dist/src/yaml/steps/ios-signing.js +0 -144
  431. package/dist/src/yaml/steps/ios-version.d.ts +0 -47
  432. package/dist/src/yaml/steps/ios-version.d.ts.map +0 -1
  433. package/dist/src/yaml/steps/ios-version.js +0 -151
  434. package/dist/src/yaml/steps/java-home-version-spec.test.d.ts +0 -10
  435. package/dist/src/yaml/steps/java-home-version-spec.test.d.ts.map +0 -1
  436. package/dist/src/yaml/steps/java-home-version-spec.test.js +0 -58
  437. package/dist/src/yaml/steps/kotlin-metadata-compiles-on-a-daemon.test.d.ts +0 -2
  438. package/dist/src/yaml/steps/kotlin-metadata-compiles-on-a-daemon.test.d.ts.map +0 -1
  439. package/dist/src/yaml/steps/kotlin-metadata-compiles-on-a-daemon.test.js +0 -139
  440. package/dist/src/yaml/steps/linting.d.ts +0 -47
  441. package/dist/src/yaml/steps/linting.d.ts.map +0 -1
  442. package/dist/src/yaml/steps/linting.js +0 -148
  443. package/dist/src/yaml/steps/phase2.test.d.ts +0 -6
  444. package/dist/src/yaml/steps/phase2.test.d.ts.map +0 -1
  445. package/dist/src/yaml/steps/phase2.test.js +0 -197
  446. package/dist/src/yaml/steps/phase3.test.d.ts +0 -5
  447. package/dist/src/yaml/steps/phase3.test.d.ts.map +0 -1
  448. package/dist/src/yaml/steps/phase3.test.js +0 -144
  449. package/dist/src/yaml/steps/phase4.test.d.ts +0 -5
  450. package/dist/src/yaml/steps/phase4.test.d.ts.map +0 -1
  451. package/dist/src/yaml/steps/phase4.test.js +0 -166
  452. package/dist/src/yaml/steps/phase5.test.d.ts +0 -6
  453. package/dist/src/yaml/steps/phase5.test.d.ts.map +0 -1
  454. package/dist/src/yaml/steps/phase5.test.js +0 -263
  455. package/dist/src/yaml/steps/registry.d.ts +0 -88
  456. package/dist/src/yaml/steps/registry.d.ts.map +0 -1
  457. package/dist/src/yaml/steps/registry.js +0 -125
  458. package/dist/src/yaml/steps/registry.test.d.ts +0 -5
  459. package/dist/src/yaml/steps/registry.test.d.ts.map +0 -1
  460. package/dist/src/yaml/steps/registry.test.js +0 -235
  461. package/dist/src/yaml/steps/release.d.ts +0 -50
  462. package/dist/src/yaml/steps/release.d.ts.map +0 -1
  463. package/dist/src/yaml/steps/release.js +0 -154
  464. package/dist/src/yaml/steps/render-post-processor.d.ts +0 -100
  465. package/dist/src/yaml/steps/render-post-processor.d.ts.map +0 -1
  466. package/dist/src/yaml/steps/render-post-processor.js +0 -270
  467. package/dist/src/yaml/steps/render-post-processor.test.d.ts +0 -13
  468. package/dist/src/yaml/steps/render-post-processor.test.d.ts.map +0 -1
  469. package/dist/src/yaml/steps/render-post-processor.test.js +0 -220
  470. package/dist/src/yaml/steps/script.d.ts +0 -23
  471. package/dist/src/yaml/steps/script.d.ts.map +0 -1
  472. package/dist/src/yaml/steps/script.js +0 -63
  473. package/dist/src/yaml/steps/spec-validation.test.d.ts +0 -6
  474. package/dist/src/yaml/steps/spec-validation.test.d.ts.map +0 -1
  475. package/dist/src/yaml/steps/spec-validation.test.js +0 -130
  476. package/dist/src/yaml/steps/steps.test.d.ts +0 -6
  477. package/dist/src/yaml/steps/steps.test.d.ts.map +0 -1
  478. package/dist/src/yaml/steps/steps.test.js +0 -881
  479. package/dist/src/yaml/steps/structural-facts.d.ts +0 -992
  480. package/dist/src/yaml/steps/structural-facts.d.ts.map +0 -1
  481. package/dist/src/yaml/steps/structural-facts.js +0 -3276
  482. package/dist/src/yaml/steps/structural-facts.test.d.ts +0 -12
  483. package/dist/src/yaml/steps/structural-facts.test.d.ts.map +0 -1
  484. package/dist/src/yaml/steps/structural-facts.test.js +0 -3039
  485. package/dist/src/yaml/steps/test-config.d.ts +0 -5
  486. package/dist/src/yaml/steps/test-config.d.ts.map +0 -1
  487. package/dist/src/yaml/steps/test-config.js +0 -25
  488. package/dist/src/yaml/steps/trim-align-corpus.test.d.ts +0 -28
  489. package/dist/src/yaml/steps/trim-align-corpus.test.d.ts.map +0 -1
  490. package/dist/src/yaml/steps/trim-align-corpus.test.js +0 -383
  491. package/dist/src/yaml/steps/trim-align.d.ts +0 -87
  492. package/dist/src/yaml/steps/trim-align.d.ts.map +0 -1
  493. package/dist/src/yaml/steps/trim-align.js +0 -367
  494. package/dist/src/yaml/steps/trim-align.test.d.ts +0 -11
  495. package/dist/src/yaml/steps/trim-align.test.d.ts.map +0 -1
  496. package/dist/src/yaml/steps/trim-align.test.js +0 -261
  497. package/dist/src/yaml/steps/ui-fidelity-preview-android.d.ts +0 -66
  498. package/dist/src/yaml/steps/ui-fidelity-preview-android.d.ts.map +0 -1
  499. package/dist/src/yaml/steps/ui-fidelity-preview-android.js +0 -251
  500. package/dist/src/yaml/steps/ui-fidelity-preview-android.test.d.ts +0 -13
  501. package/dist/src/yaml/steps/ui-fidelity-preview-android.test.d.ts.map +0 -1
  502. package/dist/src/yaml/steps/ui-fidelity-preview-android.test.js +0 -302
  503. package/dist/src/yaml/steps/ui-fidelity-preview.d.ts +0 -134
  504. package/dist/src/yaml/steps/ui-fidelity-preview.d.ts.map +0 -1
  505. package/dist/src/yaml/steps/ui-fidelity-preview.js +0 -173
  506. package/dist/src/yaml/steps/ui-fidelity-preview.test.d.ts +0 -11
  507. package/dist/src/yaml/steps/ui-fidelity-preview.test.d.ts.map +0 -1
  508. package/dist/src/yaml/steps/ui-fidelity-preview.test.js +0 -210
  509. package/dist/src/yaml/steps/ui-fidelity-render-android.d.ts +0 -155
  510. package/dist/src/yaml/steps/ui-fidelity-render-android.d.ts.map +0 -1
  511. package/dist/src/yaml/steps/ui-fidelity-render-android.js +0 -1389
  512. package/dist/src/yaml/steps/ui-fidelity-render-android.test.d.ts +0 -2
  513. package/dist/src/yaml/steps/ui-fidelity-render-android.test.d.ts.map +0 -1
  514. package/dist/src/yaml/steps/ui-fidelity-render-android.test.js +0 -1106
  515. package/dist/src/yaml/steps/ui-fidelity-render.d.ts +0 -230
  516. package/dist/src/yaml/steps/ui-fidelity-render.d.ts.map +0 -1
  517. package/dist/src/yaml/steps/ui-fidelity-render.js +0 -1597
  518. package/dist/src/yaml/steps/ui-fidelity-render.test.d.ts +0 -18
  519. package/dist/src/yaml/steps/ui-fidelity-render.test.d.ts.map +0 -1
  520. package/dist/src/yaml/steps/ui-fidelity-render.test.js +0 -1871
  521. package/dist/src/yaml/steps/xcode-app-product.d.ts +0 -90
  522. package/dist/src/yaml/steps/xcode-app-product.d.ts.map +0 -1
  523. package/dist/src/yaml/steps/xcode-app-product.js +0 -247
  524. package/dist/src/yaml/steps/xcode-app-product.test.d.ts +0 -2
  525. package/dist/src/yaml/steps/xcode-app-product.test.d.ts.map +0 -1
  526. package/dist/src/yaml/steps/xcode-app-product.test.js +0 -202
  527. package/dist/src/yaml/steps/xcode-derived-data.test.d.ts +0 -30
  528. package/dist/src/yaml/steps/xcode-derived-data.test.d.ts.map +0 -1
  529. package/dist/src/yaml/steps/xcode-derived-data.test.js +0 -279
  530. package/dist/src/yaml/steps/xcode-destination.d.ts +0 -47
  531. package/dist/src/yaml/steps/xcode-destination.d.ts.map +0 -1
  532. package/dist/src/yaml/steps/xcode-destination.js +0 -202
  533. package/dist/src/yaml/steps/xcode-destination.test.d.ts +0 -9
  534. package/dist/src/yaml/steps/xcode-destination.test.d.ts.map +0 -1
  535. package/dist/src/yaml/steps/xcode-destination.test.js +0 -227
  536. package/dist/src/yaml/steps/xcode-new.test.d.ts +0 -5
  537. package/dist/src/yaml/steps/xcode-new.test.d.ts.map +0 -1
  538. package/dist/src/yaml/steps/xcode-new.test.js +0 -211
  539. package/dist/src/yaml/steps/xcode-resolve-retry.test.d.ts +0 -9
  540. package/dist/src/yaml/steps/xcode-resolve-retry.test.d.ts.map +0 -1
  541. package/dist/src/yaml/steps/xcode-resolve-retry.test.js +0 -146
  542. package/dist/src/yaml/steps/xcode-simulator-archs.d.ts +0 -53
  543. package/dist/src/yaml/steps/xcode-simulator-archs.d.ts.map +0 -1
  544. package/dist/src/yaml/steps/xcode-simulator-archs.js +0 -98
  545. package/dist/src/yaml/steps/xcode-simulator-archs.test.d.ts +0 -21
  546. package/dist/src/yaml/steps/xcode-simulator-archs.test.d.ts.map +0 -1
  547. package/dist/src/yaml/steps/xcode-simulator-archs.test.js +0 -155
  548. package/dist/src/yaml/steps/xcode.d.ts +0 -230
  549. package/dist/src/yaml/steps/xcode.d.ts.map +0 -1
  550. package/dist/src/yaml/steps/xcode.js +0 -1350
  551. package/dist/src/yaml/types.d.ts +0 -76
  552. package/dist/src/yaml/types.d.ts.map +0 -1
  553. package/dist/src/yaml/types.js +0 -5
  554. package/dist/src/yaml/validation-types.d.ts +0 -102
  555. package/dist/src/yaml/validation-types.d.ts.map +0 -1
  556. package/dist/src/yaml/validation-types.js +0 -8
  557. package/dist/src/yaml/yaml-updater.d.ts +0 -24
  558. package/dist/src/yaml/yaml-updater.d.ts.map +0 -1
  559. package/dist/src/yaml/yaml-updater.js +0 -128
@@ -1,235 +0,0 @@
1
- /**
2
- * Unit tests for step registry
3
- */
4
- import { describe, test, expect, beforeEach } from '@jest/globals';
5
- import { testConfig } from './test-config.js';
6
- import { registerStep, getStepExecutor, hasStep, getAvailableSteps, getStepMetadata, clearRegistry, UnrecognizedStepError, } from './registry.js';
7
- import { BaseStepExecutor } from './base.js';
8
- // Mock step executor for testing
9
- class MockStepExecutor extends BaseStepExecutor {
10
- async execute(inputs, env) {
11
- return this.createScriptStep('echo "mock step"', 'mock-step');
12
- }
13
- }
14
- describe('Step Registry', () => {
15
- beforeEach(() => {
16
- // Clear registry before each test to ensure clean state
17
- clearRegistry();
18
- });
19
- describe('registerStep', () => {
20
- test('should register a step successfully', () => {
21
- const executor = new MockStepExecutor();
22
- registerStep('test-step', executor);
23
- expect(hasStep('test-step')).toBe(true);
24
- });
25
- test('should register a step with metadata', () => {
26
- const executor = new MockStepExecutor();
27
- const metadata = {
28
- name: 'test-step',
29
- description: 'A test step',
30
- inputs: {
31
- test_input: {
32
- description: 'Test input',
33
- required: true,
34
- },
35
- },
36
- };
37
- registerStep('test-step', executor, metadata);
38
- expect(hasStep('test-step')).toBe(true);
39
- expect(getStepMetadata('test-step')).toEqual(metadata);
40
- });
41
- test('should allow overwriting an existing step', () => {
42
- const executor1 = new MockStepExecutor();
43
- const executor2 = new MockStepExecutor();
44
- registerStep('test-step', executor1);
45
- registerStep('test-step', executor2);
46
- expect(hasStep('test-step')).toBe(true);
47
- expect(getStepExecutor('test-step')).toBe(executor2);
48
- });
49
- });
50
- describe('getStepExecutor', () => {
51
- test('should retrieve a registered step executor', () => {
52
- const executor = new MockStepExecutor();
53
- registerStep('test-step', executor);
54
- const retrieved = getStepExecutor('test-step');
55
- expect(retrieved).toBe(executor);
56
- });
57
- test('should throw UnrecognizedStepError for unknown step', () => {
58
- expect(() => {
59
- getStepExecutor('unknown-step');
60
- }).toThrow(UnrecognizedStepError);
61
- });
62
- test('UnrecognizedStepError should include step name', () => {
63
- try {
64
- getStepExecutor('unknown-step');
65
- expect(true).toBe(false); // Should not reach here
66
- }
67
- catch (error) {
68
- expect(error).toBeInstanceOf(UnrecognizedStepError);
69
- expect(error.stepName).toBe('unknown-step');
70
- }
71
- });
72
- test('UnrecognizedStepError should include available steps', () => {
73
- registerStep('step-a', new MockStepExecutor());
74
- registerStep('step-b', new MockStepExecutor());
75
- try {
76
- getStepExecutor('unknown-step');
77
- expect(true).toBe(false); // Should not reach here
78
- }
79
- catch (error) {
80
- expect(error).toBeInstanceOf(UnrecognizedStepError);
81
- const err = error;
82
- expect(err.availableSteps).toContain('step-a');
83
- expect(err.availableSteps).toContain('step-b');
84
- }
85
- });
86
- test('UnrecognizedStepError message should be helpful', () => {
87
- registerStep('git-clone', new MockStepExecutor());
88
- registerStep('script', new MockStepExecutor());
89
- try {
90
- getStepExecutor('git-push');
91
- expect(true).toBe(false); // Should not reach here
92
- }
93
- catch (error) {
94
- expect(error).toBeInstanceOf(UnrecognizedStepError);
95
- const message = error.message;
96
- expect(message).toContain('git-push');
97
- expect(message).toContain('Supported steps');
98
- expect(message).toContain('git-clone');
99
- expect(message).toContain('script');
100
- }
101
- });
102
- });
103
- describe('hasStep', () => {
104
- test('should return true for registered step', () => {
105
- registerStep('test-step', new MockStepExecutor());
106
- expect(hasStep('test-step')).toBe(true);
107
- });
108
- test('should return false for unregistered step', () => {
109
- expect(hasStep('unknown-step')).toBe(false);
110
- });
111
- test('should return false after clearing registry', () => {
112
- registerStep('test-step', new MockStepExecutor());
113
- clearRegistry();
114
- expect(hasStep('test-step')).toBe(false);
115
- });
116
- });
117
- describe('getAvailableSteps', () => {
118
- test('should return empty array when no steps registered', () => {
119
- expect(getAvailableSteps()).toEqual([]);
120
- });
121
- test('should return all registered step names', () => {
122
- registerStep('step-a', new MockStepExecutor());
123
- registerStep('step-b', new MockStepExecutor());
124
- registerStep('step-c', new MockStepExecutor());
125
- const steps = getAvailableSteps();
126
- expect(steps).toHaveLength(3);
127
- expect(steps).toContain('step-a');
128
- expect(steps).toContain('step-b');
129
- expect(steps).toContain('step-c');
130
- });
131
- test('should return steps in sorted order', () => {
132
- registerStep('zebra', new MockStepExecutor());
133
- registerStep('apple', new MockStepExecutor());
134
- registerStep('mango', new MockStepExecutor());
135
- const steps = getAvailableSteps();
136
- expect(steps).toEqual(['apple', 'mango', 'zebra']);
137
- });
138
- });
139
- describe('getStepMetadata', () => {
140
- test('should return metadata for registered step', () => {
141
- const metadata = {
142
- name: 'test-step',
143
- description: 'A test step',
144
- };
145
- registerStep('test-step', new MockStepExecutor(), metadata);
146
- expect(getStepMetadata('test-step')).toEqual(metadata);
147
- });
148
- test('should return undefined for step without metadata', () => {
149
- registerStep('test-step', new MockStepExecutor());
150
- expect(getStepMetadata('test-step')).toBeUndefined();
151
- });
152
- test('should return undefined for unregistered step', () => {
153
- expect(getStepMetadata('unknown-step')).toBeUndefined();
154
- });
155
- });
156
- describe('clearRegistry', () => {
157
- test('should remove all registered steps', () => {
158
- registerStep('step-a', new MockStepExecutor());
159
- registerStep('step-b', new MockStepExecutor());
160
- expect(getAvailableSteps()).toHaveLength(2);
161
- clearRegistry();
162
- expect(getAvailableSteps()).toHaveLength(0);
163
- expect(hasStep('step-a')).toBe(false);
164
- expect(hasStep('step-b')).toBe(false);
165
- });
166
- test('should allow re-registration after clear', () => {
167
- registerStep('test-step', new MockStepExecutor());
168
- clearRegistry();
169
- registerStep('test-step', new MockStepExecutor());
170
- expect(hasStep('test-step')).toBe(true);
171
- });
172
- });
173
- describe('Step execution', () => {
174
- test('should execute registered step', async () => {
175
- const executor = new MockStepExecutor();
176
- registerStep('test-step', executor);
177
- const retrieved = getStepExecutor('test-step');
178
- const result = await retrieved.execute({}, {}, testConfig);
179
- expect(result).toHaveProperty('kind', 'script');
180
- expect(result).toHaveProperty('name', 'mock-step');
181
- expect(result).toHaveProperty('script');
182
- });
183
- test('should pass inputs and env to executor', async () => {
184
- class InputCapturingExecutor extends BaseStepExecutor {
185
- capturedInputs;
186
- capturedEnv;
187
- async execute(inputs, env) {
188
- this.capturedInputs = inputs;
189
- this.capturedEnv = env;
190
- return this.createScriptStep('echo "test"', 'test');
191
- }
192
- }
193
- const executor = new InputCapturingExecutor();
194
- registerStep('test-step', executor);
195
- const inputs = { test: 'value' };
196
- const env = { VAR: 'test' };
197
- const retrieved = getStepExecutor('test-step');
198
- await retrieved.execute(inputs, env, testConfig);
199
- expect(executor.capturedInputs).toEqual(inputs);
200
- expect(executor.capturedEnv).toEqual(env);
201
- });
202
- });
203
- describe('Integration scenarios', () => {
204
- test('should handle multiple steps with same prefix', () => {
205
- registerStep('git-clone', new MockStepExecutor());
206
- registerStep('git-push', new MockStepExecutor());
207
- registerStep('git-pull', new MockStepExecutor());
208
- expect(hasStep('git-clone')).toBe(true);
209
- expect(hasStep('git-push')).toBe(true);
210
- expect(hasStep('git-pull')).toBe(true);
211
- const steps = getAvailableSteps();
212
- expect(steps).toEqual(['git-clone', 'git-pull', 'git-push']);
213
- });
214
- test('should handle case-sensitive step names', () => {
215
- registerStep('Step-A', new MockStepExecutor());
216
- registerStep('step-a', new MockStepExecutor());
217
- expect(hasStep('Step-A')).toBe(true);
218
- expect(hasStep('step-a')).toBe(true);
219
- expect(getAvailableSteps()).toHaveLength(2);
220
- });
221
- test('should provide helpful error when typo in step name', () => {
222
- registerStep('git-clone', new MockStepExecutor());
223
- try {
224
- getStepExecutor('git-clonee'); // Common typo
225
- expect(true).toBe(false);
226
- }
227
- catch (error) {
228
- const message = error.message;
229
- expect(message).toContain('git-clonee');
230
- expect(message).toContain('git-clone');
231
- }
232
- });
233
- });
234
- });
235
- //# sourceMappingURL=registry.test.js.map
@@ -1,50 +0,0 @@
1
- /**
2
- * Release steps: generate-changelog, github-release
3
- */
4
- import { BaseStepExecutor } from './base.js';
5
- import type { StepDef, CIConfig } from '../../types.js';
6
- import type { ValidationRequirement, StepOutput } from '../validation-types.js';
7
- export interface GenerateChangelogInputs {
8
- /** Path to write the changelog file */
9
- changelog_path?: string;
10
- /** Working directory containing the git repo */
11
- working_dir?: string;
12
- }
13
- /**
14
- * Generates changelog from git commit history since the last tag.
15
- */
16
- export declare class GenerateChangelogStepExecutor extends BaseStepExecutor {
17
- getValidationRequirements(_inputs: GenerateChangelogInputs, _env: Record<string, string>, _config: CIConfig): ValidationRequirement[];
18
- getOutputs(): StepOutput[];
19
- execute(inputs: GenerateChangelogInputs, _env: Record<string, string>, _config: CIConfig): Promise<StepDef>;
20
- }
21
- export interface GithubReleaseInputs {
22
- /** GitHub repository (owner/repo) */
23
- repository_url?: string;
24
- /** Release tag name */
25
- tag?: string;
26
- /** Release title */
27
- name?: string;
28
- /** Release body / notes */
29
- body?: string;
30
- /** Path to changelog file to use as body (alternative to body) */
31
- changelog_path?: string;
32
- /** Whether this is a draft release (true/false) */
33
- draft?: string;
34
- /** Whether this is a pre-release (true/false) */
35
- pre_release?: string;
36
- /** File paths to attach as release assets (newline-separated) */
37
- files_to_upload?: string;
38
- /** GitHub API token */
39
- api_token?: string;
40
- }
41
- /**
42
- * Creates a GitHub release with optional artifact attachments using the gh CLI.
43
- */
44
- export declare class GithubReleaseStepExecutor extends BaseStepExecutor {
45
- getValidationRequirements(_inputs: GithubReleaseInputs, _env: Record<string, string>, _config: CIConfig): ValidationRequirement[];
46
- getOutputs(): StepOutput[];
47
- isSkippedInLocalMode(): boolean;
48
- execute(inputs: GithubReleaseInputs, _env: Record<string, string>, _config: CIConfig): Promise<StepDef>;
49
- }
50
- //# sourceMappingURL=release.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"release.d.ts","sourceRoot":"","sources":["../../../../src/yaml/steps/release.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAMhF,MAAM,WAAW,uBAAuB;IACtC,uCAAuC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gDAAgD;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,6BAA8B,SAAQ,gBAAgB;IACjE,yBAAyB,CACvB,OAAO,EAAE,uBAAuB,EAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,OAAO,EAAE,QAAQ,GAChB,qBAAqB,EAAE;IAM1B,UAAU,IAAI,UAAU,EAAE;IAMpB,OAAO,CAAC,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;CAqDlH;AAMD,MAAM,WAAW,mBAAmB;IAClC,qCAAqC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uBAAuB;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kEAAkE;IAClE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,gBAAgB;IAC7D,yBAAyB,CACvB,OAAO,EAAE,mBAAmB,EAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,OAAO,EAAE,QAAQ,GAChB,qBAAqB,EAAE;IAM1B,UAAU,IAAI,UAAU,EAAE;IAM1B,oBAAoB,IAAI,OAAO;IAIzB,OAAO,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;CAmF9G"}
@@ -1,154 +0,0 @@
1
- /**
2
- * Release steps: generate-changelog, github-release
3
- */
4
- import { BaseStepExecutor } from './base.js';
5
- /**
6
- * Generates changelog from git commit history since the last tag.
7
- */
8
- export class GenerateChangelogStepExecutor extends BaseStepExecutor {
9
- getValidationRequirements(_inputs, _env, _config) {
10
- return [
11
- this.requireCommand('git', 'git is required for changelog generation'),
12
- ];
13
- }
14
- getOutputs() {
15
- return [
16
- { name: 'CIBUILD_CHANGELOG', type: 'environment', description: 'The generated changelog content' },
17
- ];
18
- }
19
- async execute(inputs, _env, _config) {
20
- const stepName = 'generate-changelog';
21
- const changelogPath = this.getInput(inputs, 'changelog_path', './CHANGELOG.md');
22
- const workingDir = this.getInput(inputs, 'working_dir', '.');
23
- const commands = [];
24
- commands.push('# generate-changelog — from git history');
25
- commands.push('echo "📝 Generating changelog..."');
26
- commands.push('');
27
- commands.push(`cd '${this.escapeBash(workingDir)}'`);
28
- commands.push('');
29
- // Find the latest tag
30
- commands.push('# Find the latest tag');
31
- commands.push('LATEST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "")');
32
- commands.push('');
33
- // Generate changelog
34
- commands.push('if [ -n "$LATEST_TAG" ]; then');
35
- commands.push(' echo "Generating changelog since tag: $LATEST_TAG"');
36
- commands.push(' CHANGELOG=$(git log "$LATEST_TAG"..HEAD --pretty=format:"- %s (%h)" --no-merges)');
37
- commands.push('else');
38
- commands.push(' echo "No tags found — generating changelog from all commits"');
39
- commands.push(' CHANGELOG=$(git log --pretty=format:"- %s (%h)" --no-merges)');
40
- commands.push('fi');
41
- commands.push('');
42
- // Handle empty changelog
43
- commands.push('if [ -z "$CHANGELOG" ]; then');
44
- commands.push(' CHANGELOG="No changes since last release."');
45
- commands.push('fi');
46
- commands.push('');
47
- // Write to file
48
- commands.push(`CHANGELOG_PATH='${this.escapeBash(changelogPath)}'`);
49
- commands.push('mkdir -p "$(dirname "$CHANGELOG_PATH")"');
50
- commands.push('echo "$CHANGELOG" > "$CHANGELOG_PATH"');
51
- commands.push('echo "Changelog written to: $CHANGELOG_PATH"');
52
- commands.push('echo "---"');
53
- commands.push('echo "$CHANGELOG"');
54
- commands.push('echo "---"');
55
- commands.push('');
56
- // Export
57
- commands.push('envman add --key CIBUILD_CHANGELOG --value "$CHANGELOG"');
58
- commands.push('echo "✅ Changelog generated"');
59
- const script = this.createBashScriptFromCommands(commands, stepName);
60
- return this.createScriptStep(script, stepName);
61
- }
62
- }
63
- /**
64
- * Creates a GitHub release with optional artifact attachments using the gh CLI.
65
- */
66
- export class GithubReleaseStepExecutor extends BaseStepExecutor {
67
- getValidationRequirements(_inputs, _env, _config) {
68
- return [
69
- this.requireCommand('gh', 'GitHub CLI (gh) is required for creating releases'),
70
- ];
71
- }
72
- getOutputs() {
73
- return [
74
- { name: 'CIBUILD_RELEASE_URL', type: 'environment', description: 'URL of the created GitHub release' },
75
- ];
76
- }
77
- isSkippedInLocalMode() {
78
- return true;
79
- }
80
- async execute(inputs, _env, _config) {
81
- const stepName = 'github-release';
82
- const tag = this.getRequiredInput(inputs, 'tag', stepName);
83
- const repositoryUrl = this.getInput(inputs, 'repository_url', '');
84
- const name = this.getInput(inputs, 'name', '');
85
- const body = this.getInput(inputs, 'body', '');
86
- const changelogPath = this.getInput(inputs, 'changelog_path', '');
87
- const draft = this.getInput(inputs, 'draft', 'false') === 'true';
88
- const preRelease = this.getInput(inputs, 'pre_release', 'false') === 'true';
89
- const filesToUpload = this.getInput(inputs, 'files_to_upload', '');
90
- const apiToken = this.getInput(inputs, 'api_token', '$GITHUB_TOKEN');
91
- const commands = [];
92
- commands.push('# github-release — create a GitHub release');
93
- commands.push('echo "🚀 Creating GitHub release..."');
94
- commands.push('');
95
- // Auth
96
- commands.push(`export GH_TOKEN='${this.escapeBash(apiToken)}'`);
97
- commands.push('');
98
- // Build gh release create command
99
- const flags = [];
100
- flags.push(`--title '${this.escapeBash(name || tag)}'`);
101
- if (body) {
102
- flags.push(`--notes '${this.escapeBash(body)}'`);
103
- }
104
- else if (changelogPath) {
105
- flags.push(`--notes-file '${this.escapeBash(changelogPath)}'`);
106
- }
107
- else {
108
- flags.push('--generate-notes');
109
- }
110
- if (draft) {
111
- flags.push('--draft');
112
- }
113
- if (preRelease) {
114
- flags.push('--prerelease');
115
- }
116
- // Repository flag
117
- let repoFlag = '';
118
- if (repositoryUrl) {
119
- repoFlag = ` --repo '${this.escapeBash(repositoryUrl)}'`;
120
- }
121
- // File attachments
122
- if (filesToUpload) {
123
- commands.push('# Collect files to upload');
124
- commands.push(`FILES_INPUT='${this.escapeBash(filesToUpload)}'`);
125
- commands.push('FILE_ARGS=""');
126
- commands.push('while IFS= read -r file; do');
127
- commands.push(' file=$(echo "$file" | xargs)');
128
- commands.push(' [ -z "$file" ] && continue');
129
- commands.push(' if [ -f "$file" ]; then');
130
- commands.push(' FILE_ARGS="$FILE_ARGS \\"$file\\""');
131
- commands.push(' else');
132
- commands.push(' echo "⚠️ File not found: $file"');
133
- commands.push(' fi');
134
- commands.push('done <<< "$FILES_INPUT"');
135
- commands.push('');
136
- }
137
- const flagStr = flags.join(' ');
138
- commands.push(`TAG='${this.escapeBash(tag)}'`);
139
- commands.push('');
140
- if (filesToUpload) {
141
- commands.push(`RELEASE_URL=$(eval gh release create "$TAG" ${flagStr}${repoFlag} $FILE_ARGS 2>&1)`);
142
- }
143
- else {
144
- commands.push(`RELEASE_URL=$(gh release create "$TAG" ${flagStr}${repoFlag} 2>&1)`);
145
- }
146
- commands.push('');
147
- commands.push('echo "Release URL: $RELEASE_URL"');
148
- commands.push('envman add --key CIBUILD_RELEASE_URL --value "$RELEASE_URL"');
149
- commands.push('echo "✅ GitHub release created"');
150
- const script = this.createBashScriptFromCommands(commands, stepName);
151
- return this.createScriptStep(script, stepName);
152
- }
153
- }
154
- //# sourceMappingURL=release.js.map
@@ -1,100 +0,0 @@
1
- /**
2
- * Shared render-output post-processor.
3
- *
4
- * The single source of truth for turning a freshly rendered PNG into the
5
- * artifacts the fidelity loop compares: a content-trimmed image, a
6
- * reference-sized aligned copy, and the reported dimensions (rendered px /
7
- * logical pt / reference px). It operates on PNGs regardless of how they were
8
- * produced -- a SwiftUI `ImageRenderer` render or a Compose/Roborazzi render --
9
- * so crop/align/dimension behavior cannot drift between platforms.
10
- *
11
- * The pixel work is the pure-JS trim/align helper in trim-align.ts, invoked
12
- * through the ci binary (`ci fidelity-trim`) -- the one artifact present on
13
- * every backend -- so iOS and Android run the SAME bytes on macOS and Linux
14
- * alike. It replaced an embedded CoreGraphics/ImageIO helper that ran via
15
- * `swift` in script-interpreter mode and therefore could not run on Linux
16
- * workers (fidelity-linux 06); the bounding-box, fit-pad, and TRIMDIMS
17
- * semantics are a faithful port of that helper, guarded by a pixel-identity
18
- * corpus gate (trim-align-corpus.test.ts).
19
- *
20
- * This module is consumed by `ui-fidelity-render.ts` (iOS) and
21
- * `ui-fidelity-render-android.ts`; the surrounding JS orchestration is spliced
22
- * into each platform's generated runtime script.
23
- */
24
- /**
25
- * Runtime support for trimming the rendered output (package_source variants).
26
- *
27
- * The render entry forces the view into a fixed device-sized frame, so a
28
- * component smaller than the canvas renders with transparent margins. After a
29
- * screen renders, crop the PNG in place to the bounding box of its
30
- * non-transparent pixels, so the rendered artifact is the component itself,
31
- * tight -- no canvas, no background ambiguity for the human comparing screens.
32
- *
33
- * Best-effort: a trim failure is logged (warn-and-continue) and the untrimmed
34
- * render is kept -- a cosmetic post-step never fails an otherwise good render.
35
- * This is prep, not scoring: it produces a tighter image for the human's
36
- * judgment and computes nothing about fidelity.
37
- *
38
- * NOTE: the comments inside the stage string ship inside generated runtime
39
- * scripts. Keep them free of platform-toolchain references -- there is a unit
40
- * gate asserting the stage never mentions the old interpreter.
41
- */
42
- export declare const RENDER_SCRIPT_TRIM_STAGE: string;
43
- /** A rendered/reference/source dimension pair in pixels, as TRIMDIMS reports. */
44
- export type TrimDimsPair = [number, number];
45
- /** Parsed TRIMDIMS line: rendered (trimmed) / reference / pre-trim source px,
46
- * plus the crop origin within the source — null when the helper predates it
47
- * (unknown, never assumed zero). */
48
- export interface TrimDims {
49
- rendered: TrimDimsPair;
50
- reference: TrimDimsPair;
51
- source: TrimDimsPair;
52
- offset: TrimDimsPair | null;
53
- }
54
- /** How the stage will spawn the fidelity-trim helper. */
55
- export interface TrimHelperInvocation {
56
- cmd: string;
57
- args: string[];
58
- }
59
- /**
60
- * The platform-neutral helpers embedded in the trim-stage script.
61
- * `parseTrimDims` reads the helper's TRIMDIMS stdout line; `roundTwo` is the
62
- * logical-pt rounding primitive; `trimHelperInvocation` resolves how the
63
- * generated script reaches `ci fidelity-trim` at run time, and
64
- * `runTrimHelper` spawns it.
65
- */
66
- export interface PostProcessorInternals {
67
- parseTrimDims(stdout: string): TrimDims | null;
68
- roundTwo(value: number): number;
69
- trimHelperInvocation(args: string[]): TrimHelperInvocation;
70
- runTrimHelper(args: string[]): {
71
- status: number | null;
72
- stdout: string;
73
- stderr: string;
74
- };
75
- }
76
- /**
77
- * Evaluates the embedded trim-stage source and returns its pure helpers, so
78
- * unit tests exercise exactly the code that ships inside the runtime script
79
- * (mirrors getRenderScriptInternals in ui-fidelity-render.ts). `cp`, `process`,
80
- * `fs`, `os` and `path` are injectable so the invocation/spawn/copy seams are
81
- * testable; at runtime the stage is spliced into the generated script where
82
- * those names are `require`d globals. Uninjected deps only matter for branches
83
- * that dereference them (the pkg copy path), so existing callers can omit them.
84
- */
85
- export declare function getPostProcessorInternals(overrides?: {
86
- cp?: unknown;
87
- processRef?: unknown;
88
- fs?: unknown;
89
- os?: unknown;
90
- path?: unknown;
91
- }): PostProcessorInternals;
92
- /**
93
- * Resolves the on-disk JS entrypoint of this cibuild installation's CLI
94
- * (dist/cli.cjs), for callers that spawn a generated render script directly
95
- * (the preview harnesses) and must hand it a working CIBUILD_CLI_JS. Returns
96
- * null when no built CLI exists nearby (e.g. running from src under jest) --
97
- * the script then falls back to `ci` on PATH.
98
- */
99
- export declare function resolveCliJsPath(): string | null;
100
- //# sourceMappingURL=render-post-processor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"render-post-processor.d.ts","sourceRoot":"","sources":["../../../../src/yaml/steps/render-post-processor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAMH;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,wBAAwB,EAAE,MAkLtC,CAAC;AAEF,iFAAiF;AACjF,MAAM,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE5C;;qCAEqC;AACrC,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,YAAY,CAAC;IACvB,SAAS,EAAE,YAAY,CAAC;IACxB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;CAC7B;AAED,yDAAyD;AACzD,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC;IAC/C,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,oBAAoB,CAAC;IAC3D,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;QAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1F;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,CAAC,EAAE;IACpD,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,GAAG,sBAAsB,CAkBzB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAqBhD"}