@0xsequence/catapult 1.1.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 (393) hide show
  1. package/.eslintrc.json +29 -0
  2. package/.github/workflows/ci.yml +181 -0
  3. package/CONCEPT.md +24 -0
  4. package/README.md +772 -0
  5. package/contracts/checked-call.huff +65 -0
  6. package/dist/cli.d.ts +3 -0
  7. package/dist/cli.d.ts.map +1 -0
  8. package/dist/cli.js +16 -0
  9. package/dist/cli.js.map +1 -0
  10. package/dist/commands/common.d.ts +11 -0
  11. package/dist/commands/common.d.ts.map +1 -0
  12. package/dist/commands/common.js +73 -0
  13. package/dist/commands/common.js.map +1 -0
  14. package/dist/commands/dry.d.ts +3 -0
  15. package/dist/commands/dry.d.ts.map +1 -0
  16. package/dist/commands/dry.js +171 -0
  17. package/dist/commands/dry.js.map +1 -0
  18. package/dist/commands/etherscan.d.ts +3 -0
  19. package/dist/commands/etherscan.d.ts.map +1 -0
  20. package/dist/commands/etherscan.js +323 -0
  21. package/dist/commands/etherscan.js.map +1 -0
  22. package/dist/commands/index.d.ts +6 -0
  23. package/dist/commands/index.d.ts.map +1 -0
  24. package/dist/commands/index.js +22 -0
  25. package/dist/commands/index.js.map +1 -0
  26. package/dist/commands/list.d.ts +3 -0
  27. package/dist/commands/list.d.ts.map +1 -0
  28. package/dist/commands/list.js +259 -0
  29. package/dist/commands/list.js.map +1 -0
  30. package/dist/commands/run.d.ts +3 -0
  31. package/dist/commands/run.d.ts.map +1 -0
  32. package/dist/commands/run.js +96 -0
  33. package/dist/commands/run.js.map +1 -0
  34. package/dist/commands/utils.d.ts +3 -0
  35. package/dist/commands/utils.d.ts.map +1 -0
  36. package/dist/commands/utils.js +46 -0
  37. package/dist/commands/utils.js.map +1 -0
  38. package/dist/index.d.ts +4 -0
  39. package/dist/index.d.ts.map +1 -0
  40. package/dist/index.js +58 -0
  41. package/dist/index.js.map +1 -0
  42. package/dist/lib/__tests__/deployer-events.spec.d.ts +2 -0
  43. package/dist/lib/__tests__/deployer-events.spec.d.ts.map +1 -0
  44. package/dist/lib/__tests__/deployer-events.spec.js +260 -0
  45. package/dist/lib/__tests__/deployer-events.spec.js.map +1 -0
  46. package/dist/lib/__tests__/deployer.spec.d.ts +2 -0
  47. package/dist/lib/__tests__/deployer.spec.d.ts.map +1 -0
  48. package/dist/lib/__tests__/deployer.spec.js +884 -0
  49. package/dist/lib/__tests__/deployer.spec.js.map +1 -0
  50. package/dist/lib/__tests__/network-utils.spec.d.ts +2 -0
  51. package/dist/lib/__tests__/network-utils.spec.d.ts.map +1 -0
  52. package/dist/lib/__tests__/network-utils.spec.js +140 -0
  53. package/dist/lib/__tests__/network-utils.spec.js.map +1 -0
  54. package/dist/lib/contracts/__tests__/repository.spec.d.ts +2 -0
  55. package/dist/lib/contracts/__tests__/repository.spec.d.ts.map +1 -0
  56. package/dist/lib/contracts/__tests__/repository.spec.js +321 -0
  57. package/dist/lib/contracts/__tests__/repository.spec.js.map +1 -0
  58. package/dist/lib/contracts/repository.d.ts +27 -0
  59. package/dist/lib/contracts/repository.d.ts.map +1 -0
  60. package/dist/lib/contracts/repository.js +241 -0
  61. package/dist/lib/contracts/repository.js.map +1 -0
  62. package/dist/lib/core/__tests__/engine.spec.d.ts +2 -0
  63. package/dist/lib/core/__tests__/engine.spec.d.ts.map +1 -0
  64. package/dist/lib/core/__tests__/engine.spec.js +1212 -0
  65. package/dist/lib/core/__tests__/engine.spec.js.map +1 -0
  66. package/dist/lib/core/__tests__/graph.spec.d.ts +2 -0
  67. package/dist/lib/core/__tests__/graph.spec.d.ts.map +1 -0
  68. package/dist/lib/core/__tests__/graph.spec.js +116 -0
  69. package/dist/lib/core/__tests__/graph.spec.js.map +1 -0
  70. package/dist/lib/core/__tests__/json-integration.spec.d.ts +2 -0
  71. package/dist/lib/core/__tests__/json-integration.spec.d.ts.map +1 -0
  72. package/dist/lib/core/__tests__/json-integration.spec.js +300 -0
  73. package/dist/lib/core/__tests__/json-integration.spec.js.map +1 -0
  74. package/dist/lib/core/__tests__/loader.spec.d.ts +2 -0
  75. package/dist/lib/core/__tests__/loader.spec.d.ts.map +1 -0
  76. package/dist/lib/core/__tests__/loader.spec.js +288 -0
  77. package/dist/lib/core/__tests__/loader.spec.js.map +1 -0
  78. package/dist/lib/core/__tests__/multi-platform-verification.spec.d.ts +2 -0
  79. package/dist/lib/core/__tests__/multi-platform-verification.spec.d.ts.map +1 -0
  80. package/dist/lib/core/__tests__/multi-platform-verification.spec.js +342 -0
  81. package/dist/lib/core/__tests__/multi-platform-verification.spec.js.map +1 -0
  82. package/dist/lib/core/__tests__/resolver.spec.d.ts +2 -0
  83. package/dist/lib/core/__tests__/resolver.spec.d.ts.map +1 -0
  84. package/dist/lib/core/__tests__/resolver.spec.js +1367 -0
  85. package/dist/lib/core/__tests__/resolver.spec.js.map +1 -0
  86. package/dist/lib/core/__tests__/static-action.spec.d.ts +2 -0
  87. package/dist/lib/core/__tests__/static-action.spec.d.ts.map +1 -0
  88. package/dist/lib/core/__tests__/static-action.spec.js +136 -0
  89. package/dist/lib/core/__tests__/static-action.spec.js.map +1 -0
  90. package/dist/lib/core/context.d.ts +29 -0
  91. package/dist/lib/core/context.d.ts.map +1 -0
  92. package/dist/lib/core/context.js +88 -0
  93. package/dist/lib/core/context.js.map +1 -0
  94. package/dist/lib/core/engine.d.ts +25 -0
  95. package/dist/lib/core/engine.d.ts.map +1 -0
  96. package/dist/lib/core/engine.js +1191 -0
  97. package/dist/lib/core/engine.js.map +1 -0
  98. package/dist/lib/core/graph.d.ts +18 -0
  99. package/dist/lib/core/graph.d.ts.map +1 -0
  100. package/dist/lib/core/graph.js +158 -0
  101. package/dist/lib/core/graph.js.map +1 -0
  102. package/dist/lib/core/loader.d.ts +25 -0
  103. package/dist/lib/core/loader.d.ts.map +1 -0
  104. package/dist/lib/core/loader.js +248 -0
  105. package/dist/lib/core/loader.js.map +1 -0
  106. package/dist/lib/core/resolver.d.ts +20 -0
  107. package/dist/lib/core/resolver.d.ts.map +1 -0
  108. package/dist/lib/core/resolver.js +307 -0
  109. package/dist/lib/core/resolver.js.map +1 -0
  110. package/dist/lib/deployer.d.ts +39 -0
  111. package/dist/lib/deployer.d.ts.map +1 -0
  112. package/dist/lib/deployer.js +533 -0
  113. package/dist/lib/deployer.js.map +1 -0
  114. package/dist/lib/events/__tests__/event-system.spec.d.ts +2 -0
  115. package/dist/lib/events/__tests__/event-system.spec.d.ts.map +1 -0
  116. package/dist/lib/events/__tests__/event-system.spec.js +256 -0
  117. package/dist/lib/events/__tests__/event-system.spec.js.map +1 -0
  118. package/dist/lib/events/cli-adapter.d.ts +13 -0
  119. package/dist/lib/events/cli-adapter.d.ts.map +1 -0
  120. package/dist/lib/events/cli-adapter.js +244 -0
  121. package/dist/lib/events/cli-adapter.js.map +1 -0
  122. package/dist/lib/events/emitter.d.ts +11 -0
  123. package/dist/lib/events/emitter.d.ts.map +1 -0
  124. package/dist/lib/events/emitter.js +29 -0
  125. package/dist/lib/events/emitter.js.map +1 -0
  126. package/dist/lib/events/index.d.ts +4 -0
  127. package/dist/lib/events/index.d.ts.map +1 -0
  128. package/dist/lib/events/index.js +20 -0
  129. package/dist/lib/events/index.js.map +1 -0
  130. package/dist/lib/events/types.d.ts +368 -0
  131. package/dist/lib/events/types.d.ts.map +1 -0
  132. package/dist/lib/events/types.js +3 -0
  133. package/dist/lib/events/types.js.map +1 -0
  134. package/dist/lib/index.d.ts +5 -0
  135. package/dist/lib/index.d.ts.map +1 -0
  136. package/dist/lib/index.js +44 -0
  137. package/dist/lib/index.js.map +1 -0
  138. package/dist/lib/network-loader.d.ts +3 -0
  139. package/dist/lib/network-loader.d.ts.map +1 -0
  140. package/dist/lib/network-loader.js +80 -0
  141. package/dist/lib/network-loader.js.map +1 -0
  142. package/dist/lib/network-match.d.ts +3 -0
  143. package/dist/lib/network-match.d.ts.map +1 -0
  144. package/dist/lib/network-match.js +62 -0
  145. package/dist/lib/network-match.js.map +1 -0
  146. package/dist/lib/network-utils.d.ts +4 -0
  147. package/dist/lib/network-utils.d.ts.map +1 -0
  148. package/dist/lib/network-utils.js +39 -0
  149. package/dist/lib/network-utils.js.map +1 -0
  150. package/dist/lib/parsers/__tests__/buildinfo.spec.d.ts +2 -0
  151. package/dist/lib/parsers/__tests__/buildinfo.spec.d.ts.map +1 -0
  152. package/dist/lib/parsers/__tests__/buildinfo.spec.js +132 -0
  153. package/dist/lib/parsers/__tests__/buildinfo.spec.js.map +1 -0
  154. package/dist/lib/parsers/__tests__/job.spec.d.ts +2 -0
  155. package/dist/lib/parsers/__tests__/job.spec.d.ts.map +1 -0
  156. package/dist/lib/parsers/__tests__/job.spec.js +318 -0
  157. package/dist/lib/parsers/__tests__/job.spec.js.map +1 -0
  158. package/dist/lib/parsers/__tests__/template.spec.d.ts +2 -0
  159. package/dist/lib/parsers/__tests__/template.spec.d.ts.map +1 -0
  160. package/dist/lib/parsers/__tests__/template.spec.js +126 -0
  161. package/dist/lib/parsers/__tests__/template.spec.js.map +1 -0
  162. package/dist/lib/parsers/artifact/__tests__/artifact.spec.d.ts +2 -0
  163. package/dist/lib/parsers/artifact/__tests__/artifact.spec.d.ts.map +1 -0
  164. package/dist/lib/parsers/artifact/__tests__/artifact.spec.js +128 -0
  165. package/dist/lib/parsers/artifact/__tests__/artifact.spec.js.map +1 -0
  166. package/dist/lib/parsers/artifact/foundry-1.2.d.ts +3 -0
  167. package/dist/lib/parsers/artifact/foundry-1.2.d.ts.map +1 -0
  168. package/dist/lib/parsers/artifact/foundry-1.2.js +82 -0
  169. package/dist/lib/parsers/artifact/foundry-1.2.js.map +1 -0
  170. package/dist/lib/parsers/artifact/index.d.ts +3 -0
  171. package/dist/lib/parsers/artifact/index.d.ts.map +1 -0
  172. package/dist/lib/parsers/artifact/index.js +17 -0
  173. package/dist/lib/parsers/artifact/index.js.map +1 -0
  174. package/dist/lib/parsers/artifact/types.d.ts +3 -0
  175. package/dist/lib/parsers/artifact/types.d.ts.map +1 -0
  176. package/dist/lib/parsers/artifact/types.js +3 -0
  177. package/dist/lib/parsers/artifact/types.js.map +1 -0
  178. package/dist/lib/parsers/buildinfo.d.ts +5 -0
  179. package/dist/lib/parsers/buildinfo.d.ts.map +1 -0
  180. package/dist/lib/parsers/buildinfo.js +85 -0
  181. package/dist/lib/parsers/buildinfo.js.map +1 -0
  182. package/dist/lib/parsers/constants.d.ts +4 -0
  183. package/dist/lib/parsers/constants.d.ts.map +1 -0
  184. package/dist/lib/parsers/constants.js +45 -0
  185. package/dist/lib/parsers/constants.js.map +1 -0
  186. package/dist/lib/parsers/index.d.ts +5 -0
  187. package/dist/lib/parsers/index.d.ts.map +1 -0
  188. package/dist/lib/parsers/index.js +21 -0
  189. package/dist/lib/parsers/index.js.map +1 -0
  190. package/dist/lib/parsers/job.d.ts +3 -0
  191. package/dist/lib/parsers/job.d.ts.map +1 -0
  192. package/dist/lib/parsers/job.js +74 -0
  193. package/dist/lib/parsers/job.js.map +1 -0
  194. package/dist/lib/parsers/template.d.ts +3 -0
  195. package/dist/lib/parsers/template.d.ts.map +1 -0
  196. package/dist/lib/parsers/template.js +91 -0
  197. package/dist/lib/parsers/template.js.map +1 -0
  198. package/dist/lib/std/templates/assured-deployment.yaml +45 -0
  199. package/dist/lib/std/templates/erc-2470.yaml +67 -0
  200. package/dist/lib/std/templates/min-balance.yaml +32 -0
  201. package/dist/lib/std/templates/nano-universal-deployer.yaml +59 -0
  202. package/dist/lib/std/templates/raw-erc-2470.yaml +59 -0
  203. package/dist/lib/std/templates/raw-nano-universal-deployer.yaml +51 -0
  204. package/dist/lib/std/templates/raw-sequence-universal-deployer-2.yaml +48 -0
  205. package/dist/lib/std/templates/sequence-universal-deployer-2.yaml +57 -0
  206. package/dist/lib/types/__tests__/json-request-action.spec.d.ts +2 -0
  207. package/dist/lib/types/__tests__/json-request-action.spec.d.ts.map +1 -0
  208. package/dist/lib/types/__tests__/json-request-action.spec.js +219 -0
  209. package/dist/lib/types/__tests__/json-request-action.spec.js.map +1 -0
  210. package/dist/lib/types/__tests__/read-json-value.spec.d.ts +2 -0
  211. package/dist/lib/types/__tests__/read-json-value.spec.d.ts.map +1 -0
  212. package/dist/lib/types/__tests__/read-json-value.spec.js +233 -0
  213. package/dist/lib/types/__tests__/read-json-value.spec.js.map +1 -0
  214. package/dist/lib/types/actions.d.ts +74 -0
  215. package/dist/lib/types/actions.d.ts.map +1 -0
  216. package/dist/lib/types/actions.js +18 -0
  217. package/dist/lib/types/actions.js.map +1 -0
  218. package/dist/lib/types/artifacts.d.ts +15 -0
  219. package/dist/lib/types/artifacts.d.ts.map +1 -0
  220. package/dist/lib/types/artifacts.js +3 -0
  221. package/dist/lib/types/artifacts.js.map +1 -0
  222. package/dist/lib/types/buildinfo.d.ts +112 -0
  223. package/dist/lib/types/buildinfo.d.ts.map +1 -0
  224. package/dist/lib/types/buildinfo.js +3 -0
  225. package/dist/lib/types/buildinfo.js.map +1 -0
  226. package/dist/lib/types/conditions.d.ts +17 -0
  227. package/dist/lib/types/conditions.d.ts.map +1 -0
  228. package/dist/lib/types/conditions.js +21 -0
  229. package/dist/lib/types/conditions.js.map +1 -0
  230. package/dist/lib/types/contracts.d.ts +14 -0
  231. package/dist/lib/types/contracts.d.ts.map +1 -0
  232. package/dist/lib/types/contracts.js +3 -0
  233. package/dist/lib/types/contracts.js.map +1 -0
  234. package/dist/lib/types/definitions.d.ts +51 -0
  235. package/dist/lib/types/definitions.d.ts.map +1 -0
  236. package/dist/lib/types/definitions.js +3 -0
  237. package/dist/lib/types/definitions.js.map +1 -0
  238. package/dist/lib/types/index.d.ts +9 -0
  239. package/dist/lib/types/index.d.ts.map +1 -0
  240. package/dist/lib/types/index.js +25 -0
  241. package/dist/lib/types/index.js.map +1 -0
  242. package/dist/lib/types/network.d.ts +9 -0
  243. package/dist/lib/types/network.d.ts.map +1 -0
  244. package/dist/lib/types/network.js +3 -0
  245. package/dist/lib/types/network.js.map +1 -0
  246. package/dist/lib/types/project.d.ts +5 -0
  247. package/dist/lib/types/project.d.ts.map +1 -0
  248. package/dist/lib/types/project.js +3 -0
  249. package/dist/lib/types/project.js.map +1 -0
  250. package/dist/lib/types/task.d.ts +9 -0
  251. package/dist/lib/types/task.d.ts.map +1 -0
  252. package/dist/lib/types/task.js +3 -0
  253. package/dist/lib/types/task.js.map +1 -0
  254. package/dist/lib/types/values.d.ts +78 -0
  255. package/dist/lib/types/values.d.ts.map +1 -0
  256. package/dist/lib/types/values.js +3 -0
  257. package/dist/lib/types/values.js.map +1 -0
  258. package/dist/lib/utils/validation.d.ts +5 -0
  259. package/dist/lib/utils/validation.d.ts.map +1 -0
  260. package/dist/lib/utils/validation.js +77 -0
  261. package/dist/lib/utils/validation.js.map +1 -0
  262. package/dist/lib/validation/contract-references.d.ts +12 -0
  263. package/dist/lib/validation/contract-references.d.ts.map +1 -0
  264. package/dist/lib/validation/contract-references.js +112 -0
  265. package/dist/lib/validation/contract-references.js.map +1 -0
  266. package/dist/lib/validation/index.d.ts +1 -0
  267. package/dist/lib/validation/index.d.ts.map +1 -0
  268. package/dist/lib/validation/index.js +2 -0
  269. package/dist/lib/validation/index.js.map +1 -0
  270. package/dist/lib/verification/__tests__/etherscan.spec.d.ts +2 -0
  271. package/dist/lib/verification/__tests__/etherscan.spec.d.ts.map +1 -0
  272. package/dist/lib/verification/__tests__/etherscan.spec.js +565 -0
  273. package/dist/lib/verification/__tests__/etherscan.spec.js.map +1 -0
  274. package/dist/lib/verification/__tests__/sourcify.spec.d.ts +2 -0
  275. package/dist/lib/verification/__tests__/sourcify.spec.d.ts.map +1 -0
  276. package/dist/lib/verification/__tests__/sourcify.spec.js +212 -0
  277. package/dist/lib/verification/__tests__/sourcify.spec.js.map +1 -0
  278. package/dist/lib/verification/etherscan.d.ts +56 -0
  279. package/dist/lib/verification/etherscan.d.ts.map +1 -0
  280. package/dist/lib/verification/etherscan.js +340 -0
  281. package/dist/lib/verification/etherscan.js.map +1 -0
  282. package/dist/lib/verification/sourcify.d.ts +12 -0
  283. package/dist/lib/verification/sourcify.d.ts.map +1 -0
  284. package/dist/lib/verification/sourcify.js +227 -0
  285. package/dist/lib/verification/sourcify.js.map +1 -0
  286. package/eslint.config.js +48 -0
  287. package/examples/jobs/guards-v1.yaml +17 -0
  288. package/examples/jobs/sequence-seq-0001-patch.yaml +59 -0
  289. package/examples/jobs/sequence-v1.yaml +59 -0
  290. package/examples/templates/sequence-factory-v1.yaml +56 -0
  291. package/jest.config.js +25 -0
  292. package/package.json +68 -0
  293. package/src/cli.ts +17 -0
  294. package/src/commands/common.ts +61 -0
  295. package/src/commands/dry.ts +208 -0
  296. package/src/commands/etherscan.ts +360 -0
  297. package/src/commands/index.ts +5 -0
  298. package/src/commands/list.ts +249 -0
  299. package/src/commands/run.ts +136 -0
  300. package/src/commands/utils.ts +52 -0
  301. package/src/index.ts +67 -0
  302. package/src/lib/__tests__/deployer-events.spec.ts +338 -0
  303. package/src/lib/__tests__/deployer.spec.ts +1204 -0
  304. package/src/lib/__tests__/network-utils.spec.ts +181 -0
  305. package/src/lib/artifacts/__tests__/fixtures/contract1.json +19 -0
  306. package/src/lib/artifacts/__tests__/fixtures/contract2.json +19 -0
  307. package/src/lib/artifacts/__tests__/fixtures/duplicate-name.json +19 -0
  308. package/src/lib/artifacts/__tests__/fixtures/nested/nested-contract.json +18 -0
  309. package/src/lib/artifacts/__tests__/fixtures/not-an-artifact.json +8 -0
  310. package/src/lib/artifacts/__tests__/fixtures/readme.txt +2 -0
  311. package/src/lib/contracts/__tests__/repository.spec.ts +344 -0
  312. package/src/lib/contracts/repository.ts +313 -0
  313. package/src/lib/core/__tests__/engine.spec.ts +1514 -0
  314. package/src/lib/core/__tests__/graph.spec.ts +125 -0
  315. package/src/lib/core/__tests__/json-integration.spec.ts +360 -0
  316. package/src/lib/core/__tests__/loader.spec.ts +334 -0
  317. package/src/lib/core/__tests__/multi-platform-verification.spec.ts +406 -0
  318. package/src/lib/core/__tests__/resolver.spec.ts +1693 -0
  319. package/src/lib/core/__tests__/static-action.spec.ts +172 -0
  320. package/src/lib/core/context.ts +127 -0
  321. package/src/lib/core/engine.ts +1531 -0
  322. package/src/lib/core/graph.ts +252 -0
  323. package/src/lib/core/loader.ts +263 -0
  324. package/src/lib/core/resolver.ts +498 -0
  325. package/src/lib/deployer.ts +768 -0
  326. package/src/lib/events/__tests__/event-system.spec.ts +343 -0
  327. package/src/lib/events/cli-adapter.ts +325 -0
  328. package/src/lib/events/emitter.ts +62 -0
  329. package/src/lib/events/index.ts +3 -0
  330. package/src/lib/events/types.ts +469 -0
  331. package/src/lib/index.ts +14 -0
  332. package/src/lib/network-loader.ts +59 -0
  333. package/src/lib/network-utils.ts +64 -0
  334. package/src/lib/parsers/__tests__/buildinfo.spec.ts +122 -0
  335. package/src/lib/parsers/__tests__/fixtures/buildinfo/invalid-bytecode-buildinfo.json +62 -0
  336. package/src/lib/parsers/__tests__/fixtures/buildinfo/invalid-json.txt +2 -0
  337. package/src/lib/parsers/__tests__/fixtures/buildinfo/multi-contract-buildinfo.json +89 -0
  338. package/src/lib/parsers/__tests__/fixtures/buildinfo/no-contracts-buildinfo.json +17 -0
  339. package/src/lib/parsers/__tests__/fixtures/buildinfo/simple-buildinfo.json +63 -0
  340. package/src/lib/parsers/__tests__/fixtures/buildinfo/wrong-format.json +4 -0
  341. package/src/lib/parsers/__tests__/job.spec.ts +335 -0
  342. package/src/lib/parsers/__tests__/template.spec.ts +111 -0
  343. package/src/lib/parsers/artifact/__tests__/artifact.spec.ts +117 -0
  344. package/src/lib/parsers/artifact/__tests__/fixtures/empty-bytecode.json +5 -0
  345. package/src/lib/parsers/artifact/__tests__/fixtures/hardhat-artifact.json +67 -0
  346. package/src/lib/parsers/artifact/__tests__/fixtures/invalid-bytecode.json +5 -0
  347. package/src/lib/parsers/artifact/__tests__/fixtures/invalid-json.txt +11 -0
  348. package/src/lib/parsers/artifact/__tests__/fixtures/minimal-artifact.json +5 -0
  349. package/src/lib/parsers/artifact/__tests__/fixtures/missing-abi.json +4 -0
  350. package/src/lib/parsers/artifact/__tests__/fixtures/missing-bytecode.json +11 -0
  351. package/src/lib/parsers/artifact/__tests__/fixtures/missing-contract-name.json +11 -0
  352. package/src/lib/parsers/artifact/__tests__/fixtures/simple-artifact.json +40 -0
  353. package/src/lib/parsers/artifact/__tests__/fixtures/wrong-types.json +7 -0
  354. package/src/lib/parsers/artifact/foundry-1.2.ts +72 -0
  355. package/src/lib/parsers/artifact/index.ts +27 -0
  356. package/src/lib/parsers/artifact/types.ts +9 -0
  357. package/src/lib/parsers/buildinfo.ts +127 -0
  358. package/src/lib/parsers/constants.ts +56 -0
  359. package/src/lib/parsers/index.ts +5 -0
  360. package/src/lib/parsers/job.ts +101 -0
  361. package/src/lib/parsers/template.ts +131 -0
  362. package/src/lib/std/templates/assured-deployment.yaml +45 -0
  363. package/src/lib/std/templates/erc-2470.yaml +67 -0
  364. package/src/lib/std/templates/min-balance.yaml +32 -0
  365. package/src/lib/std/templates/nano-universal-deployer.yaml +59 -0
  366. package/src/lib/std/templates/raw-erc-2470.yaml +59 -0
  367. package/src/lib/std/templates/raw-nano-universal-deployer.yaml +51 -0
  368. package/src/lib/std/templates/raw-sequence-universal-deployer-2.yaml +48 -0
  369. package/src/lib/std/templates/sequence-universal-deployer-2.yaml +57 -0
  370. package/src/lib/types/__tests__/json-request-action.spec.ts +243 -0
  371. package/src/lib/types/__tests__/read-json-value.spec.ts +264 -0
  372. package/src/lib/types/actions.ts +127 -0
  373. package/src/lib/types/artifacts.ts +21 -0
  374. package/src/lib/types/buildinfo.ts +116 -0
  375. package/src/lib/types/conditions.ts +50 -0
  376. package/src/lib/types/contracts.ts +23 -0
  377. package/src/lib/types/definitions.ts +68 -0
  378. package/src/lib/types/index.ts +8 -0
  379. package/src/lib/types/network.ts +22 -0
  380. package/src/lib/types/project.ts +9 -0
  381. package/src/lib/types/task.ts +9 -0
  382. package/src/lib/types/values.ts +116 -0
  383. package/src/lib/utils/validation.ts +116 -0
  384. package/src/lib/validation/contract-references.ts +210 -0
  385. package/src/lib/validation/index.ts +1 -0
  386. package/src/lib/verification/__tests__/etherscan.spec.ts +710 -0
  387. package/src/lib/verification/__tests__/sourcify.spec.ts +288 -0
  388. package/src/lib/verification/etherscan.ts +546 -0
  389. package/src/lib/verification/sourcify.ts +248 -0
  390. package/test_validation/artifacts/TestContract.json +9 -0
  391. package/test_validation/jobs/test-missing.yaml +16 -0
  392. package/test_validation/networks.yaml +3 -0
  393. package/tsconfig.json +36 -0
@@ -0,0 +1,219 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ describe('JsonRequestAction', () => {
4
+ describe('type definition', () => {
5
+ it('should have correct type structure for basic GET request', () => {
6
+ const action = {
7
+ type: 'json-request',
8
+ arguments: {
9
+ url: 'https://api.example.com/data'
10
+ }
11
+ };
12
+ expect(action.type).toBe('json-request');
13
+ expect(action.arguments.url).toBe('https://api.example.com/data');
14
+ });
15
+ it('should support optional method parameter', () => {
16
+ const action = {
17
+ type: 'json-request',
18
+ arguments: {
19
+ url: 'https://api.example.com/data',
20
+ method: 'POST'
21
+ }
22
+ };
23
+ expect(action.arguments.method).toBe('POST');
24
+ });
25
+ it('should support optional headers parameter', () => {
26
+ const action = {
27
+ type: 'json-request',
28
+ arguments: {
29
+ url: 'https://api.example.com/data',
30
+ headers: {
31
+ 'Content-Type': 'application/json',
32
+ 'Authorization': 'Bearer token123'
33
+ }
34
+ }
35
+ };
36
+ expect(action.arguments.headers).toEqual({
37
+ 'Content-Type': 'application/json',
38
+ 'Authorization': 'Bearer token123'
39
+ });
40
+ });
41
+ it('should support optional body parameter', () => {
42
+ const requestBody = {
43
+ name: 'John Doe',
44
+ email: 'john@example.com'
45
+ };
46
+ const action = {
47
+ type: 'json-request',
48
+ arguments: {
49
+ url: 'https://api.example.com/users',
50
+ method: 'POST',
51
+ body: requestBody
52
+ }
53
+ };
54
+ expect(action.arguments.body).toEqual(requestBody);
55
+ });
56
+ it('should support template variables in url', () => {
57
+ const action = {
58
+ type: 'json-request',
59
+ arguments: {
60
+ url: '{{apiBaseUrl}}/users/{{userId}}'
61
+ }
62
+ };
63
+ expect(action.arguments.url).toBe('{{apiBaseUrl}}/users/{{userId}}');
64
+ });
65
+ it('should support template variables in method', () => {
66
+ const action = {
67
+ type: 'json-request',
68
+ arguments: {
69
+ url: 'https://api.example.com/data',
70
+ method: '{{httpMethod}}'
71
+ }
72
+ };
73
+ expect(action.arguments.method).toBe('{{httpMethod}}');
74
+ });
75
+ it('should support template variables in headers', () => {
76
+ const action = {
77
+ type: 'json-request',
78
+ arguments: {
79
+ url: 'https://api.example.com/data',
80
+ headers: {
81
+ 'Authorization': '{{authToken}}',
82
+ 'X-API-Key': '{{apiKey}}'
83
+ }
84
+ }
85
+ };
86
+ expect(action.arguments.headers).toEqual({
87
+ 'Authorization': '{{authToken}}',
88
+ 'X-API-Key': '{{apiKey}}'
89
+ });
90
+ });
91
+ it('should support template variables in body', () => {
92
+ const action = {
93
+ type: 'json-request',
94
+ arguments: {
95
+ url: 'https://api.example.com/users',
96
+ method: 'POST',
97
+ body: {
98
+ name: '{{userName}}',
99
+ email: '{{userEmail}}',
100
+ data: '{{userData}}'
101
+ }
102
+ }
103
+ };
104
+ expect(action.arguments.body).toEqual({
105
+ name: '{{userName}}',
106
+ email: '{{userEmail}}',
107
+ data: '{{userData}}'
108
+ });
109
+ });
110
+ it('should support complex nested body structures', () => {
111
+ const action = {
112
+ type: 'json-request',
113
+ arguments: {
114
+ url: 'https://api.example.com/transactions',
115
+ method: 'POST',
116
+ body: {
117
+ transaction: {
118
+ to: '{{recipientAddress}}',
119
+ value: '{{amount}}',
120
+ data: '{{calldata}}'
121
+ },
122
+ metadata: {
123
+ timestamp: '{{currentTime}}',
124
+ source: 'live-contracts'
125
+ }
126
+ }
127
+ }
128
+ };
129
+ expect(action.arguments.body).toEqual({
130
+ transaction: {
131
+ to: '{{recipientAddress}}',
132
+ value: '{{amount}}',
133
+ data: '{{calldata}}'
134
+ },
135
+ metadata: {
136
+ timestamp: '{{currentTime}}',
137
+ source: 'live-contracts'
138
+ }
139
+ });
140
+ });
141
+ it('should support all HTTP methods', () => {
142
+ const methods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'HEAD', 'OPTIONS'];
143
+ methods.forEach(method => {
144
+ const action = {
145
+ type: 'json-request',
146
+ arguments: {
147
+ url: 'https://api.example.com/data',
148
+ method: method
149
+ }
150
+ };
151
+ expect(action.arguments.method).toBe(method);
152
+ });
153
+ });
154
+ it('should work with minimal configuration (only url)', () => {
155
+ const action = {
156
+ type: 'json-request',
157
+ arguments: {
158
+ url: 'https://api.example.com/status'
159
+ }
160
+ };
161
+ expect(action.type).toBe('json-request');
162
+ expect(action.arguments.url).toBe('https://api.example.com/status');
163
+ expect(action.arguments.method).toBeUndefined();
164
+ expect(action.arguments.headers).toBeUndefined();
165
+ expect(action.arguments.body).toBeUndefined();
166
+ });
167
+ it('should work with full configuration', () => {
168
+ const action = {
169
+ type: 'json-request',
170
+ arguments: {
171
+ url: 'https://api.example.com/users',
172
+ method: 'POST',
173
+ headers: {
174
+ 'Content-Type': 'application/json',
175
+ 'Authorization': 'Bearer token123',
176
+ 'X-Custom-Header': 'custom-value'
177
+ },
178
+ body: {
179
+ user: {
180
+ name: 'Alice',
181
+ email: 'alice@example.com',
182
+ preferences: {
183
+ theme: 'dark',
184
+ notifications: true
185
+ }
186
+ },
187
+ metadata: {
188
+ source: 'api',
189
+ version: '1.0'
190
+ }
191
+ }
192
+ }
193
+ };
194
+ expect(action.type).toBe('json-request');
195
+ expect(action.arguments.url).toBe('https://api.example.com/users');
196
+ expect(action.arguments.method).toBe('POST');
197
+ expect(action.arguments.headers).toEqual({
198
+ 'Content-Type': 'application/json',
199
+ 'Authorization': 'Bearer token123',
200
+ 'X-Custom-Header': 'custom-value'
201
+ });
202
+ expect(action.arguments.body).toEqual({
203
+ user: {
204
+ name: 'Alice',
205
+ email: 'alice@example.com',
206
+ preferences: {
207
+ theme: 'dark',
208
+ notifications: true
209
+ }
210
+ },
211
+ metadata: {
212
+ source: 'api',
213
+ version: '1.0'
214
+ }
215
+ });
216
+ });
217
+ });
218
+ });
219
+ //# sourceMappingURL=json-request-action.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-request-action.spec.js","sourceRoot":"","sources":["../../../../src/lib/types/__tests__/json-request-action.spec.ts"],"names":[],"mappings":";;AAEA,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;YAClE,MAAM,MAAM,GAAsB;gBAChC,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE;oBACT,GAAG,EAAE,8BAA8B;iBACpC;aACF,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;YACxC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAA;QACnE,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,MAAM,MAAM,GAAsB;gBAChC,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE;oBACT,GAAG,EAAE,8BAA8B;oBACnC,MAAM,EAAE,MAAM;iBACf;aACF,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACnD,MAAM,MAAM,GAAsB;gBAChC,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE;oBACT,GAAG,EAAE,8BAA8B;oBACnC,OAAO,EAAE;wBACP,cAAc,EAAE,kBAAkB;wBAClC,eAAe,EAAE,iBAAiB;qBACnC;iBACF;aACF,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;gBACvC,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,iBAAiB;aACnC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAChD,MAAM,WAAW,GAAG;gBAClB,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,kBAAkB;aAC1B,CAAA;YAED,MAAM,MAAM,GAAsB;gBAChC,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE;oBACT,GAAG,EAAE,+BAA+B;oBACpC,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE,WAAW;iBAClB;aACF,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QACpD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,MAAM,MAAM,GAAsB;gBAChC,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE;oBACT,GAAG,EAAE,iCAAiC;iBACvC;aACF,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAA;QACtE,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACrD,MAAM,MAAM,GAAsB;gBAChC,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE;oBACT,GAAG,EAAE,8BAA8B;oBACnC,MAAM,EAAE,gBAAgB;iBACzB;aACF,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QACxD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,MAAM,MAAM,GAAsB;gBAChC,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE;oBACT,GAAG,EAAE,8BAA8B;oBACnC,OAAO,EAAE;wBACP,eAAe,EAAE,eAAe;wBAChC,WAAW,EAAE,YAAY;qBAC1B;iBACF;aACF,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;gBACvC,eAAe,EAAE,eAAe;gBAChC,WAAW,EAAE,YAAY;aAC1B,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACnD,MAAM,MAAM,GAAsB;gBAChC,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE;oBACT,GAAG,EAAE,+BAA+B;oBACpC,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE;wBACJ,IAAI,EAAE,cAAc;wBACpB,KAAK,EAAE,eAAe;wBACtB,IAAI,EAAE,cAAc;qBACrB;iBACF;aACF,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;gBACpC,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,eAAe;gBACtB,IAAI,EAAE,cAAc;aACrB,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,MAAM,MAAM,GAAsB;gBAChC,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE;oBACT,GAAG,EAAE,sCAAsC;oBAC3C,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE;wBACJ,WAAW,EAAE;4BACX,EAAE,EAAE,sBAAsB;4BAC1B,KAAK,EAAE,YAAY;4BACnB,IAAI,EAAE,cAAc;yBACrB;wBACD,QAAQ,EAAE;4BACR,SAAS,EAAE,iBAAiB;4BAC5B,MAAM,EAAE,gBAAgB;yBACzB;qBACF;iBACF;aACF,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;gBACpC,WAAW,EAAE;oBACX,EAAE,EAAE,sBAAsB;oBAC1B,KAAK,EAAE,YAAY;oBACnB,IAAI,EAAE,cAAc;iBACrB;gBACD,QAAQ,EAAE;oBACR,SAAS,EAAE,iBAAiB;oBAC5B,MAAM,EAAE,gBAAgB;iBACzB;aACF,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;YACzC,MAAM,OAAO,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;YAE5E,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBACvB,MAAM,MAAM,GAAsB;oBAChC,IAAI,EAAE,cAAc;oBACpB,SAAS,EAAE;wBACT,GAAG,EAAE,8BAA8B;wBACnC,MAAM,EAAE,MAAM;qBACf;iBACF,CAAA;gBAED,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAC9C,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC3D,MAAM,MAAM,GAAsB;gBAChC,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE;oBACT,GAAG,EAAE,gCAAgC;iBACtC;aACF,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;YACxC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAA;YACnE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAA;YAC/C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,CAAA;YAChD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;QAC/C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC7C,MAAM,MAAM,GAAsB;gBAChC,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE;oBACT,GAAG,EAAE,+BAA+B;oBACpC,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,cAAc,EAAE,kBAAkB;wBAClC,eAAe,EAAE,iBAAiB;wBAClC,iBAAiB,EAAE,cAAc;qBAClC;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE;4BACJ,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,mBAAmB;4BAC1B,WAAW,EAAE;gCACX,KAAK,EAAE,MAAM;gCACb,aAAa,EAAE,IAAI;6BACpB;yBACF;wBACD,QAAQ,EAAE;4BACR,MAAM,EAAE,KAAK;4BACb,OAAO,EAAE,KAAK;yBACf;qBACF;iBACF;aACF,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;YACxC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAA;YAClE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAC5C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;gBACvC,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,iBAAiB;gBAClC,iBAAiB,EAAE,cAAc;aAClC,CAAC,CAAA;YACF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;gBACpC,IAAI,EAAE;oBACJ,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,mBAAmB;oBAC1B,WAAW,EAAE;wBACX,KAAK,EAAE,MAAM;wBACb,aAAa,EAAE,IAAI;qBACpB;iBACF;gBACD,QAAQ,EAAE;oBACR,MAAM,EAAE,KAAK;oBACb,OAAO,EAAE,KAAK;iBACf;aACF,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=read-json-value.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read-json-value.spec.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/__tests__/read-json-value.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,233 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ describe('ReadJsonValue', () => {
4
+ describe('type definition', () => {
5
+ it('should have correct type structure for basic path', () => {
6
+ const value = {
7
+ type: 'read-json',
8
+ arguments: {
9
+ json: { name: 'John', age: 30 },
10
+ path: 'name'
11
+ }
12
+ };
13
+ expect(value.type).toBe('read-json');
14
+ expect(value.arguments.json).toEqual({ name: 'John', age: 30 });
15
+ expect(value.arguments.path).toBe('name');
16
+ });
17
+ it('should support nested path access', () => {
18
+ const value = {
19
+ type: 'read-json',
20
+ arguments: {
21
+ json: {
22
+ txs: {
23
+ to: '0x596aF90CecdBF9A768886E771178fd5561dD27Ab',
24
+ data: '0x1234'
25
+ }
26
+ },
27
+ path: 'txs.data'
28
+ }
29
+ };
30
+ expect(value.arguments.path).toBe('txs.data');
31
+ });
32
+ it('should support deeply nested path access', () => {
33
+ const value = {
34
+ type: 'read-json',
35
+ arguments: {
36
+ json: {
37
+ user: {
38
+ profile: {
39
+ personal: {
40
+ name: 'Alice'
41
+ }
42
+ }
43
+ }
44
+ },
45
+ path: 'user.profile.personal.name'
46
+ }
47
+ };
48
+ expect(value.arguments.path).toBe('user.profile.personal.name');
49
+ });
50
+ it('should support array index access', () => {
51
+ const value = {
52
+ type: 'read-json',
53
+ arguments: {
54
+ json: {
55
+ transactions: [
56
+ { hash: '0xabc123' },
57
+ { hash: '0xdef456' }
58
+ ]
59
+ },
60
+ path: 'transactions.0.hash'
61
+ }
62
+ };
63
+ expect(value.arguments.path).toBe('transactions.0.hash');
64
+ });
65
+ it('should support template variables in json', () => {
66
+ const value = {
67
+ type: 'read-json',
68
+ arguments: {
69
+ json: '{{apiResponse}}',
70
+ path: 'result.data'
71
+ }
72
+ };
73
+ expect(value.arguments.json).toBe('{{apiResponse}}');
74
+ });
75
+ it('should support template variables in path', () => {
76
+ const value = {
77
+ type: 'read-json',
78
+ arguments: {
79
+ json: { data: { field1: 'value1', field2: 'value2' } },
80
+ path: '{{fieldPath}}'
81
+ }
82
+ };
83
+ expect(value.arguments.path).toBe('{{fieldPath}}');
84
+ });
85
+ it('should support both json and path as template variables', () => {
86
+ const value = {
87
+ type: 'read-json',
88
+ arguments: {
89
+ json: '{{responseData}}',
90
+ path: '{{extractionPath}}'
91
+ }
92
+ };
93
+ expect(value.arguments.json).toBe('{{responseData}}');
94
+ expect(value.arguments.path).toBe('{{extractionPath}}');
95
+ });
96
+ it('should work with complex JSON structures', () => {
97
+ const complexJson = {
98
+ blockchain: {
99
+ ethereum: {
100
+ mainnet: {
101
+ contracts: {
102
+ erc20: [
103
+ {
104
+ address: '0xA0b86a33E6441e6e80D0c4C6C7527d72e1d7e4e1',
105
+ symbol: 'USDC',
106
+ decimals: 6
107
+ },
108
+ {
109
+ address: '0x6B175474E89094C44Da98b954EedeAC495271d0F',
110
+ symbol: 'DAI',
111
+ decimals: 18
112
+ }
113
+ ]
114
+ }
115
+ }
116
+ }
117
+ }
118
+ };
119
+ const value = {
120
+ type: 'read-json',
121
+ arguments: {
122
+ json: complexJson,
123
+ path: 'blockchain.ethereum.mainnet.contracts.erc20.1.symbol'
124
+ }
125
+ };
126
+ expect(value.arguments.json).toEqual(complexJson);
127
+ expect(value.arguments.path).toBe('blockchain.ethereum.mainnet.contracts.erc20.1.symbol');
128
+ });
129
+ it('should work with the example from the task description', () => {
130
+ const exampleJson = {
131
+ txs: {
132
+ to: '0x596aF90CecdBF9A768886E771178fd5561dD27Ab',
133
+ data: '0x1234'
134
+ }
135
+ };
136
+ const value = {
137
+ type: 'read-json',
138
+ arguments: {
139
+ json: exampleJson,
140
+ path: 'txs.data'
141
+ }
142
+ };
143
+ expect(value.arguments.json).toEqual(exampleJson);
144
+ expect(value.arguments.path).toBe('txs.data');
145
+ });
146
+ it('should support root level access', () => {
147
+ const value = {
148
+ type: 'read-json',
149
+ arguments: {
150
+ json: 'simple string value',
151
+ path: ''
152
+ }
153
+ };
154
+ expect(value.arguments.json).toBe('simple string value');
155
+ expect(value.arguments.path).toBe('');
156
+ });
157
+ it('should support accessing array elements directly', () => {
158
+ const value = {
159
+ type: 'read-json',
160
+ arguments: {
161
+ json: ['first', 'second', 'third'],
162
+ path: '1'
163
+ }
164
+ };
165
+ expect(value.arguments.json).toEqual(['first', 'second', 'third']);
166
+ expect(value.arguments.path).toBe('1');
167
+ });
168
+ it('should support mixed object and array access', () => {
169
+ const value = {
170
+ type: 'read-json',
171
+ arguments: {
172
+ json: {
173
+ results: [
174
+ { id: 1, data: { value: 'first' } },
175
+ { id: 2, data: { value: 'second' } }
176
+ ]
177
+ },
178
+ path: 'results.0.data.value'
179
+ }
180
+ };
181
+ expect(value.arguments.path).toBe('results.0.data.value');
182
+ });
183
+ it('should support boolean and number values in JSON', () => {
184
+ const value = {
185
+ type: 'read-json',
186
+ arguments: {
187
+ json: {
188
+ config: {
189
+ enabled: true,
190
+ maxRetries: 5,
191
+ timeout: 30.5
192
+ }
193
+ },
194
+ path: 'config.enabled'
195
+ }
196
+ };
197
+ expect(value.arguments.json).toEqual({
198
+ config: {
199
+ enabled: true,
200
+ maxRetries: 5,
201
+ timeout: 30.5
202
+ }
203
+ });
204
+ });
205
+ it('should support null values in JSON', () => {
206
+ const value = {
207
+ type: 'read-json',
208
+ arguments: {
209
+ json: {
210
+ user: {
211
+ name: 'John',
212
+ avatar: null
213
+ }
214
+ },
215
+ path: 'user.avatar'
216
+ }
217
+ };
218
+ expect(value.arguments.json.user.avatar).toBeNull();
219
+ });
220
+ it('should work with response from json-request action', () => {
221
+ const value = {
222
+ type: 'read-json',
223
+ arguments: {
224
+ json: '{{apiCall.response}}',
225
+ path: 'data.transactions.0.hash'
226
+ }
227
+ };
228
+ expect(value.arguments.json).toBe('{{apiCall.response}}');
229
+ expect(value.arguments.path).toBe('data.transactions.0.hash');
230
+ });
231
+ });
232
+ });
233
+ //# sourceMappingURL=read-json-value.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read-json-value.spec.js","sourceRoot":"","sources":["../../../../src/lib/types/__tests__/read-json-value.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ import { AddressValue, BytesValue, Uint256Value, Value } from './values';
2
+ import { Contract } from './contracts';
3
+ import { Condition } from './conditions';
4
+ export interface SendTransactionAction {
5
+ type: 'send-transaction';
6
+ arguments: {
7
+ to: AddressValue;
8
+ value?: Uint256Value;
9
+ data?: BytesValue;
10
+ gasMultiplier?: number;
11
+ };
12
+ }
13
+ export interface SendSignedTransactionAction {
14
+ type: 'send-signed-transaction';
15
+ arguments: {
16
+ transaction: BytesValue;
17
+ };
18
+ }
19
+ export interface VerifyContractAction {
20
+ type: 'verify-contract';
21
+ arguments: {
22
+ address: AddressValue;
23
+ contract: Value<Contract>;
24
+ constructorArguments?: BytesValue;
25
+ platform?: Value<string | string[]>;
26
+ };
27
+ }
28
+ export interface StaticAction {
29
+ type: 'static';
30
+ arguments: {
31
+ value: Value<any>;
32
+ };
33
+ }
34
+ export interface CreateContractAction {
35
+ type: 'create-contract';
36
+ arguments: {
37
+ data: BytesValue;
38
+ value?: Uint256Value;
39
+ gasMultiplier?: number;
40
+ };
41
+ }
42
+ export interface TestNicksMethodAction {
43
+ type: 'test-nicks-method';
44
+ arguments: {
45
+ bytecode?: BytesValue;
46
+ gasPrice?: Uint256Value;
47
+ gasLimit?: Uint256Value;
48
+ fundingAmount?: Uint256Value;
49
+ };
50
+ }
51
+ export interface JsonRequestAction {
52
+ type: 'json-request';
53
+ arguments: {
54
+ url: Value<string>;
55
+ method?: Value<string>;
56
+ headers?: Value<Record<string, string>>;
57
+ body?: Value<any>;
58
+ };
59
+ }
60
+ export type PrimitiveAction = SendTransactionAction | SendSignedTransactionAction | VerifyContractAction | StaticAction | CreateContractAction | TestNicksMethodAction | JsonRequestAction;
61
+ declare const primitiveActionTypes: readonly ["send-transaction", "send-signed-transaction", "verify-contract", "static", "create-contract", "test-nicks-method", "json-request"];
62
+ export declare const PRIMITIVE_ACTION_TYPES: Set<string>;
63
+ export declare function isPrimitiveActionType(type: string): type is (typeof primitiveActionTypes)[number];
64
+ export interface TemplateCallAction {
65
+ type: string;
66
+ arguments: Record<string, Value<any>>;
67
+ }
68
+ export type Action = (PrimitiveAction | TemplateCallAction) & {
69
+ name?: string;
70
+ skip_condition?: Condition[];
71
+ depends_on?: string[];
72
+ };
73
+ export {};
74
+ //# sourceMappingURL=actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../src/lib/types/actions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PRIMITIVE_ACTION_TYPES = void 0;
4
+ exports.isPrimitiveActionType = isPrimitiveActionType;
5
+ const primitiveActionTypes = [
6
+ 'send-transaction',
7
+ 'send-signed-transaction',
8
+ 'verify-contract',
9
+ 'static',
10
+ 'create-contract',
11
+ 'test-nicks-method',
12
+ 'json-request',
13
+ ];
14
+ exports.PRIMITIVE_ACTION_TYPES = new Set(primitiveActionTypes);
15
+ function isPrimitiveActionType(type) {
16
+ return exports.PRIMITIVE_ACTION_TYPES.has(type);
17
+ }
18
+ //# sourceMappingURL=actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/lib/types/actions.ts"],"names":[],"mappings":";;;AA8FA,sDAEC;AAvBD,MAAM,oBAAoB,GAAG;IAC3B,kBAAkB;IAClB,yBAAyB;IACzB,iBAAiB;IACjB,QAAQ;IACR,iBAAiB;IACjB,mBAAmB;IACnB,cAAc;CACN,CAAC;AAME,QAAA,sBAAsB,GAAG,IAAI,GAAG,CAAS,oBAAoB,CAAC,CAAC;AAO5E,SAAgB,qBAAqB,CAAC,IAAY;IAChD,OAAO,8BAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC1C,CAAC"}
@@ -0,0 +1,15 @@
1
+ export interface CompilerInfo {
2
+ version: string;
3
+ }
4
+ export interface Artifact {
5
+ contractName: string;
6
+ abi: any[];
7
+ bytecode: string;
8
+ deployedBytecode?: string;
9
+ sourceName?: string;
10
+ source?: string;
11
+ compiler?: CompilerInfo;
12
+ _path: string;
13
+ _hash: string;
14
+ }
15
+ //# sourceMappingURL=artifacts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifacts.d.ts","sourceRoot":"","sources":["../../../src/lib/types/artifacts.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAA;CAEhB;AAED,MAAM,WAAW,QAAQ;IAEvB,YAAY,EAAE,MAAM,CAAA;IACpB,GAAG,EAAE,GAAG,EAAE,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAGhB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,YAAY,CAAA;IAGvB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=artifacts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../src/lib/types/artifacts.ts"],"names":[],"mappings":""}