@algorandfoundation/algokit-utils 5.3.3-beta.2 → 5.4.0-beta.1

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 (528) hide show
  1. package/account/account.d.ts +81 -0
  2. package/account/account.d.ts.map +1 -0
  3. package/account/account.js +120 -0
  4. package/account/account.js.map +1 -0
  5. package/account/account.mjs +112 -0
  6. package/account/account.mjs.map +1 -0
  7. package/account/get-account-config-from-environment.d.ts +13 -0
  8. package/account/get-account-config-from-environment.d.ts.map +1 -0
  9. package/account/get-account-config-from-environment.js +25 -0
  10. package/account/get-account-config-from-environment.js.map +1 -0
  11. package/account/get-account-config-from-environment.mjs +23 -0
  12. package/account/get-account-config-from-environment.mjs.map +1 -0
  13. package/account/get-account.d.ts +66 -0
  14. package/account/get-account.d.ts.map +1 -0
  15. package/account/get-account.js +83 -0
  16. package/account/get-account.js.map +1 -0
  17. package/account/get-account.mjs +81 -0
  18. package/account/get-account.mjs.map +1 -0
  19. package/account/get-dispenser-account.d.ts +13 -0
  20. package/account/get-dispenser-account.d.ts.map +1 -0
  21. package/account/get-dispenser-account.js +23 -0
  22. package/account/get-dispenser-account.js.map +1 -0
  23. package/account/get-dispenser-account.mjs +21 -0
  24. package/account/get-dispenser-account.mjs.map +1 -0
  25. package/account/index.d.ts +6 -0
  26. package/account/index.d.ts.map +1 -0
  27. package/account/mnemonic-account.d.ts +11 -0
  28. package/account/mnemonic-account.d.ts.map +1 -0
  29. package/account/mnemonic-account.js +18 -0
  30. package/account/mnemonic-account.js.map +1 -0
  31. package/account/mnemonic-account.mjs +16 -0
  32. package/account/mnemonic-account.mjs.map +1 -0
  33. package/amount.d.ts.map +1 -0
  34. package/amount.js +34 -0
  35. package/amount.js.map +1 -0
  36. package/{esm/amount.js → amount.mjs} +8 -5
  37. package/amount.mjs.map +1 -0
  38. package/app-client.d.ts.map +1 -0
  39. package/{cjs/app-client.js → app-client.js} +11 -10
  40. package/app-client.js.map +1 -0
  41. package/{esm/app-client.js → app-client.mjs} +8 -5
  42. package/app-client.mjs.map +1 -0
  43. package/app-deploy.d.ts.map +1 -0
  44. package/{cjs/app-deploy.js → app-deploy.js} +67 -69
  45. package/app-deploy.js.map +1 -0
  46. package/{esm/app-deploy.js → app-deploy.mjs} +17 -14
  47. package/app-deploy.mjs.map +1 -0
  48. package/{cjs/app.d.ts → app.d.ts} +1 -1
  49. package/app.d.ts.map +1 -0
  50. package/{cjs/app.js → app.js} +102 -104
  51. package/app.js.map +1 -0
  52. package/{esm/app.js → app.mjs} +27 -24
  53. package/app.mjs.map +1 -0
  54. package/asset.d.ts.map +1 -0
  55. package/{cjs/asset.js → asset.js} +41 -42
  56. package/asset.js.map +1 -0
  57. package/{esm/asset.js → asset.mjs} +10 -6
  58. package/asset.mjs.map +1 -0
  59. package/config.d.ts +4 -0
  60. package/config.d.ts.map +1 -0
  61. package/config.js +9 -0
  62. package/config.js.map +1 -0
  63. package/config.mjs +7 -0
  64. package/config.mjs.map +1 -0
  65. package/debugging/debugging.d.ts +10 -0
  66. package/debugging/debugging.d.ts.map +1 -0
  67. package/debugging/debugging.js +139 -0
  68. package/debugging/debugging.js.map +1 -0
  69. package/debugging/debugging.mjs +118 -0
  70. package/debugging/debugging.mjs.map +1 -0
  71. package/debugging/index.d.ts +3 -0
  72. package/debugging/index.d.ts.map +1 -0
  73. package/{cjs/debugging.d.ts → debugging/simulate-and-persist-response.d.ts} +3 -12
  74. package/debugging/simulate-and-persist-response.d.ts.map +1 -0
  75. package/debugging/simulate-and-persist-response.js +108 -0
  76. package/debugging/simulate-and-persist-response.js.map +1 -0
  77. package/debugging/simulate-and-persist-response.mjs +89 -0
  78. package/debugging/simulate-and-persist-response.mjs.map +1 -0
  79. package/dispenser-client.d.ts.map +1 -0
  80. package/{cjs/dispenser-client.js → dispenser-client.js} +7 -6
  81. package/dispenser-client.js.map +1 -0
  82. package/{esm/dispenser-client.js → dispenser-client.mjs} +6 -3
  83. package/dispenser-client.mjs.map +1 -0
  84. package/{cjs/index.d.ts → index.d.ts} +1 -3
  85. package/index.d.ts.map +1 -0
  86. package/index.js +125 -0
  87. package/index.js.map +1 -0
  88. package/index.mjs +25 -0
  89. package/index.mjs.map +1 -0
  90. package/indexer-lookup.d.ts.map +1 -0
  91. package/{cjs/indexer-lookup.js → indexer-lookup.js} +8 -8
  92. package/indexer-lookup.js.map +1 -0
  93. package/{esm/indexer-lookup.js → indexer-lookup.mjs} +8 -6
  94. package/indexer-lookup.mjs.map +1 -0
  95. package/localnet/get-kmd-wallet-account.d.ts +26 -0
  96. package/localnet/get-kmd-wallet-account.d.ts.map +1 -0
  97. package/localnet/get-kmd-wallet-account.js +55 -0
  98. package/localnet/get-kmd-wallet-account.js.map +1 -0
  99. package/localnet/get-kmd-wallet-account.mjs +53 -0
  100. package/localnet/get-kmd-wallet-account.mjs.map +1 -0
  101. package/localnet/get-localnet-dispenser-account.d.ts +12 -0
  102. package/localnet/get-localnet-dispenser-account.d.ts.map +1 -0
  103. package/localnet/get-localnet-dispenser-account.js +21 -0
  104. package/localnet/get-localnet-dispenser-account.js.map +1 -0
  105. package/localnet/get-localnet-dispenser-account.mjs +19 -0
  106. package/localnet/get-localnet-dispenser-account.mjs.map +1 -0
  107. package/localnet/get-or-create-kmd-wallet-account.d.ts +27 -0
  108. package/localnet/get-or-create-kmd-wallet-account.d.ts.map +1 -0
  109. package/localnet/get-or-create-kmd-wallet-account.js +52 -0
  110. package/localnet/get-or-create-kmd-wallet-account.js.map +1 -0
  111. package/localnet/get-or-create-kmd-wallet-account.mjs +50 -0
  112. package/localnet/get-or-create-kmd-wallet-account.mjs.map +1 -0
  113. package/localnet/index.d.ts +5 -0
  114. package/localnet/index.d.ts.map +1 -0
  115. package/localnet/is-localnet.d.ts +5 -0
  116. package/localnet/is-localnet.d.ts.map +1 -0
  117. package/localnet/is-localnet.js +10 -0
  118. package/localnet/is-localnet.js.map +1 -0
  119. package/localnet/is-localnet.mjs +8 -0
  120. package/localnet/is-localnet.mjs.map +1 -0
  121. package/{cjs/network-client.d.ts → network-client.d.ts} +0 -1
  122. package/network-client.d.ts.map +1 -0
  123. package/{cjs/network-client.js → network-client.js} +21 -25
  124. package/network-client.js.map +1 -0
  125. package/{esm/network-client.js → network-client.mjs} +15 -13
  126. package/network-client.mjs.map +1 -0
  127. package/package.json +15 -36
  128. package/testing/_asset.d.ts.map +1 -0
  129. package/testing/account.d.ts.map +1 -0
  130. package/testing/account.js +29 -0
  131. package/testing/account.js.map +1 -0
  132. package/{esm/testing/account.js → testing/account.mjs} +8 -5
  133. package/testing/account.mjs.map +1 -0
  134. package/testing/fixtures/algokit-log-capture-fixture.d.ts.map +1 -0
  135. package/{cjs/testing → testing}/fixtures/algokit-log-capture-fixture.js +11 -10
  136. package/testing/fixtures/algokit-log-capture-fixture.js.map +1 -0
  137. package/{esm/testing/fixtures/algokit-log-capture-fixture.js → testing/fixtures/algokit-log-capture-fixture.mjs} +7 -4
  138. package/testing/fixtures/algokit-log-capture-fixture.mjs.map +1 -0
  139. package/testing/fixtures/algorand-fixture.d.ts.map +1 -0
  140. package/testing/fixtures/algorand-fixture.js +64 -0
  141. package/testing/fixtures/algorand-fixture.js.map +1 -0
  142. package/{esm/testing/fixtures/algorand-fixture.js → testing/fixtures/algorand-fixture.mjs} +12 -4
  143. package/testing/fixtures/algorand-fixture.mjs.map +1 -0
  144. package/testing/fixtures/index.d.ts.map +1 -0
  145. package/testing/index.d.ts.map +1 -0
  146. package/testing/index.js +18 -0
  147. package/testing/index.js.map +1 -0
  148. package/testing/index.mjs +7 -0
  149. package/testing/index.mjs.map +1 -0
  150. package/testing/indexer.d.ts.map +1 -0
  151. package/{cjs/testing → testing}/indexer.js +4 -4
  152. package/testing/indexer.js.map +1 -0
  153. package/{esm/testing/indexer.js → testing/indexer.mjs} +4 -2
  154. package/testing/indexer.mjs.map +1 -0
  155. package/testing/test-logger.d.ts.map +1 -0
  156. package/{cjs/testing → testing}/test-logger.js +7 -8
  157. package/testing/test-logger.js.map +1 -0
  158. package/{esm/testing/test-logger.js → testing/test-logger.mjs} +6 -5
  159. package/testing/test-logger.mjs.map +1 -0
  160. package/testing/transaction-logger.d.ts.map +1 -0
  161. package/{cjs/testing → testing}/transaction-logger.js +14 -15
  162. package/testing/transaction-logger.js.map +1 -0
  163. package/{esm/testing/transaction-logger.js → testing/transaction-logger.mjs} +9 -5
  164. package/testing/transaction-logger.mjs.map +1 -0
  165. package/transaction/index.d.ts +3 -0
  166. package/transaction/index.d.ts.map +1 -0
  167. package/transaction/perform-atomic-transaction-composer-simulate.d.ts +11 -0
  168. package/transaction/perform-atomic-transaction-composer-simulate.d.ts.map +1 -0
  169. package/transaction/perform-atomic-transaction-composer-simulate.js +35 -0
  170. package/transaction/perform-atomic-transaction-composer-simulate.js.map +1 -0
  171. package/transaction/perform-atomic-transaction-composer-simulate.mjs +33 -0
  172. package/transaction/perform-atomic-transaction-composer-simulate.mjs.map +1 -0
  173. package/{cjs → transaction}/transaction.d.ts +2 -9
  174. package/transaction/transaction.d.ts.map +1 -0
  175. package/{cjs → transaction}/transaction.js +88 -113
  176. package/transaction/transaction.js.map +1 -0
  177. package/{esm/transaction.js → transaction/transaction.mjs} +27 -50
  178. package/transaction/transaction.mjs.map +1 -0
  179. package/transfer/index.d.ts +3 -0
  180. package/transfer/index.d.ts.map +1 -0
  181. package/transfer/transfer-algos.d.ts +17 -0
  182. package/transfer/transfer-algos.d.ts.map +1 -0
  183. package/transfer/transfer-algos.js +40 -0
  184. package/transfer/transfer-algos.js.map +1 -0
  185. package/transfer/transfer-algos.mjs +38 -0
  186. package/transfer/transfer-algos.mjs.map +1 -0
  187. package/{cjs → transfer}/transfer.d.ts +2 -14
  188. package/transfer/transfer.d.ts.map +1 -0
  189. package/transfer/transfer.js +147 -0
  190. package/transfer/transfer.js.map +1 -0
  191. package/{esm/transfer.js → transfer/transfer.mjs} +15 -40
  192. package/transfer/transfer.mjs.map +1 -0
  193. package/types/account.d.ts +63 -161
  194. package/types/account.d.ts.map +1 -1
  195. package/{cjs/types → types}/account.js +14 -22
  196. package/types/account.js.map +1 -0
  197. package/{esm/types/account.js → types/account.mjs} +7 -11
  198. package/types/account.mjs.map +1 -0
  199. package/types/algo-http-client-with-retry.d.ts.map +1 -0
  200. package/{cjs/types → types}/algo-http-client-with-retry.js +25 -24
  201. package/types/algo-http-client-with-retry.js.map +1 -0
  202. package/{esm/types/algo-http-client-with-retry.js → types/algo-http-client-with-retry.mjs} +23 -20
  203. package/types/algo-http-client-with-retry.mjs.map +1 -0
  204. package/types/amount.d.ts +22 -18
  205. package/types/amount.d.ts.map +1 -1
  206. package/{cjs/types → types}/amount.js +8 -11
  207. package/types/amount.js.map +1 -0
  208. package/{esm/types/amount.js → types/amount.mjs} +5 -3
  209. package/types/amount.mjs.map +1 -0
  210. package/types/app-client.d.ts +413 -69
  211. package/types/app-client.d.ts.map +1 -1
  212. package/{cjs/types → types}/app-client.js +58 -73
  213. package/types/app-client.js.map +1 -0
  214. package/{esm/types/app-client.js → types/app-client.mjs} +14 -24
  215. package/types/app-client.mjs.map +1 -0
  216. package/types/app-spec.d.ts.map +1 -0
  217. package/types/app.d.ts +300 -146
  218. package/types/app.d.ts.map +1 -1
  219. package/{cjs/types → types}/app.js +16 -14
  220. package/types/app.js.map +1 -0
  221. package/{esm/types/app.js → types/app.mjs} +9 -9
  222. package/types/app.mjs.map +1 -0
  223. package/types/asset.d.ts +40 -47
  224. package/types/asset.d.ts.map +1 -1
  225. package/types/config.d.ts.map +1 -0
  226. package/{cjs/types → types}/config.js +30 -41
  227. package/types/config.js.map +1 -0
  228. package/{esm/types/config.js → types/config.mjs} +8 -11
  229. package/types/config.mjs.map +1 -0
  230. package/types/debugging.d.ts +105 -22
  231. package/types/debugging.d.ts.map +1 -1
  232. package/{cjs/types → types}/debugging.js +6 -13
  233. package/types/debugging.js.map +1 -0
  234. package/{esm/types/debugging.js → types/debugging.mjs} +6 -11
  235. package/types/debugging.mjs.map +1 -0
  236. package/types/dispenser-client.d.ts +71 -13
  237. package/types/dispenser-client.d.ts.map +1 -1
  238. package/{cjs/types → types}/dispenser-client.js +4 -6
  239. package/types/dispenser-client.js.map +1 -0
  240. package/{esm/types/dispenser-client.js → types/dispenser-client.mjs} +4 -4
  241. package/types/dispenser-client.mjs.map +1 -0
  242. package/types/indexer.d.ts.map +1 -0
  243. package/types/logging.d.ts.map +1 -0
  244. package/{cjs/types → types}/logging.js +8 -6
  245. package/types/logging.js.map +1 -0
  246. package/{esm/types/logging.js → types/logging.mjs} +5 -3
  247. package/types/logging.mjs.map +1 -0
  248. package/types/logic-error.d.ts.map +1 -0
  249. package/{cjs/types → types}/logic-error.js +6 -9
  250. package/types/logic-error.js.map +1 -0
  251. package/{esm/types/logic-error.js → types/logic-error.mjs} +6 -7
  252. package/types/logic-error.mjs.map +1 -0
  253. package/types/network-client.d.ts +19 -99
  254. package/types/network-client.d.ts.map +1 -1
  255. package/types/testing.d.ts.map +1 -0
  256. package/types/transaction.d.ts +112 -175
  257. package/types/transaction.d.ts.map +1 -1
  258. package/types/transfer.d.ts +74 -56
  259. package/types/transfer.d.ts.map +1 -1
  260. package/types/urlTokenBaseHTTPClient.d.ts.map +1 -0
  261. package/{cjs/types → types}/urlTokenBaseHTTPClient.js +7 -10
  262. package/types/urlTokenBaseHTTPClient.js.map +1 -0
  263. package/{esm/types/urlTokenBaseHTTPClient.js → types/urlTokenBaseHTTPClient.mjs} +5 -6
  264. package/types/urlTokenBaseHTTPClient.mjs.map +1 -0
  265. package/util.d.ts.map +1 -0
  266. package/{cjs/util.js → util.js} +7 -7
  267. package/util.js.map +1 -0
  268. package/{esm/util.js → util.mjs} +7 -5
  269. package/util.mjs.map +1 -0
  270. package/cjs/account.d.ts +0 -168
  271. package/cjs/account.d.ts.map +0 -1
  272. package/cjs/account.js +0 -238
  273. package/cjs/account.js.map +0 -1
  274. package/cjs/amount.d.ts.map +0 -1
  275. package/cjs/amount.js +0 -36
  276. package/cjs/amount.js.map +0 -1
  277. package/cjs/app-client.d.ts.map +0 -1
  278. package/cjs/app-client.js.map +0 -1
  279. package/cjs/app-deploy.d.ts.map +0 -1
  280. package/cjs/app-deploy.js.map +0 -1
  281. package/cjs/app.d.ts.map +0 -1
  282. package/cjs/app.js.map +0 -1
  283. package/cjs/asset.d.ts.map +0 -1
  284. package/cjs/asset.js.map +0 -1
  285. package/cjs/debugging.d.ts.map +0 -1
  286. package/cjs/debugging.js +0 -225
  287. package/cjs/debugging.js.map +0 -1
  288. package/cjs/dispenser-client.d.ts.map +0 -1
  289. package/cjs/dispenser-client.js.map +0 -1
  290. package/cjs/index.d.ts.map +0 -1
  291. package/cjs/index.js +0 -34
  292. package/cjs/index.js.map +0 -1
  293. package/cjs/indexer-lookup.d.ts.map +0 -1
  294. package/cjs/indexer-lookup.js.map +0 -1
  295. package/cjs/localnet.d.ts +0 -57
  296. package/cjs/localnet.d.ts.map +0 -1
  297. package/cjs/localnet.js +0 -121
  298. package/cjs/localnet.js.map +0 -1
  299. package/cjs/network-client.d.ts.map +0 -1
  300. package/cjs/network-client.js.map +0 -1
  301. package/cjs/testing/_asset.d.ts.map +0 -1
  302. package/cjs/testing/_asset.js +0 -36
  303. package/cjs/testing/_asset.js.map +0 -1
  304. package/cjs/testing/account.d.ts.map +0 -1
  305. package/cjs/testing/account.js +0 -31
  306. package/cjs/testing/account.js.map +0 -1
  307. package/cjs/testing/fixtures/algokit-log-capture-fixture.d.ts.map +0 -1
  308. package/cjs/testing/fixtures/algokit-log-capture-fixture.js.map +0 -1
  309. package/cjs/testing/fixtures/algorand-fixture.d.ts.map +0 -1
  310. package/cjs/testing/fixtures/algorand-fixture.js +0 -58
  311. package/cjs/testing/fixtures/algorand-fixture.js.map +0 -1
  312. package/cjs/testing/fixtures/index.d.ts.map +0 -1
  313. package/cjs/testing/fixtures/index.js +0 -19
  314. package/cjs/testing/fixtures/index.js.map +0 -1
  315. package/cjs/testing/index.d.ts.map +0 -1
  316. package/cjs/testing/index.js +0 -22
  317. package/cjs/testing/index.js.map +0 -1
  318. package/cjs/testing/indexer.d.ts.map +0 -1
  319. package/cjs/testing/indexer.js.map +0 -1
  320. package/cjs/testing/test-logger.d.ts.map +0 -1
  321. package/cjs/testing/test-logger.js.map +0 -1
  322. package/cjs/testing/transaction-logger.d.ts.map +0 -1
  323. package/cjs/testing/transaction-logger.js.map +0 -1
  324. package/cjs/transaction.d.ts.map +0 -1
  325. package/cjs/transaction.js.map +0 -1
  326. package/cjs/transfer.d.ts.map +0 -1
  327. package/cjs/transfer.js +0 -178
  328. package/cjs/transfer.js.map +0 -1
  329. package/cjs/types/account.d.ts +0 -70
  330. package/cjs/types/account.d.ts.map +0 -1
  331. package/cjs/types/account.js.map +0 -1
  332. package/cjs/types/algo-http-client-with-retry.d.ts.map +0 -1
  333. package/cjs/types/algo-http-client-with-retry.js.map +0 -1
  334. package/cjs/types/amount.d.ts +0 -24
  335. package/cjs/types/amount.d.ts.map +0 -1
  336. package/cjs/types/amount.js.map +0 -1
  337. package/cjs/types/app-client.d.ts +0 -416
  338. package/cjs/types/app-client.d.ts.map +0 -1
  339. package/cjs/types/app-client.js.map +0 -1
  340. package/cjs/types/app-spec.d.ts.map +0 -1
  341. package/cjs/types/app-spec.js +0 -3
  342. package/cjs/types/app-spec.js.map +0 -1
  343. package/cjs/types/app.d.ts +0 -323
  344. package/cjs/types/app.d.ts.map +0 -1
  345. package/cjs/types/app.js.map +0 -1
  346. package/cjs/types/asset.d.ts +0 -42
  347. package/cjs/types/asset.d.ts.map +0 -1
  348. package/cjs/types/asset.js +0 -3
  349. package/cjs/types/asset.js.map +0 -1
  350. package/cjs/types/config.d.ts.map +0 -1
  351. package/cjs/types/config.js.map +0 -1
  352. package/cjs/types/debugging.d.ts +0 -112
  353. package/cjs/types/debugging.d.ts.map +0 -1
  354. package/cjs/types/debugging.js.map +0 -1
  355. package/cjs/types/dispenser-client.d.ts +0 -77
  356. package/cjs/types/dispenser-client.d.ts.map +0 -1
  357. package/cjs/types/dispenser-client.js.map +0 -1
  358. package/cjs/types/indexer.d.ts.map +0 -1
  359. package/cjs/types/indexer.js +0 -34
  360. package/cjs/types/indexer.js.map +0 -1
  361. package/cjs/types/logging.d.ts.map +0 -1
  362. package/cjs/types/logging.js.map +0 -1
  363. package/cjs/types/logic-error.d.ts.map +0 -1
  364. package/cjs/types/logic-error.js.map +0 -1
  365. package/cjs/types/network-client.d.ts +0 -20
  366. package/cjs/types/network-client.d.ts.map +0 -1
  367. package/cjs/types/network-client.js +0 -3
  368. package/cjs/types/network-client.js.map +0 -1
  369. package/cjs/types/testing.d.ts.map +0 -1
  370. package/cjs/types/testing.js +0 -3
  371. package/cjs/types/testing.js.map +0 -1
  372. package/cjs/types/transaction.d.ts +0 -118
  373. package/cjs/types/transaction.d.ts.map +0 -1
  374. package/cjs/types/transaction.js +0 -3
  375. package/cjs/types/transaction.js.map +0 -1
  376. package/cjs/types/transfer.d.ts +0 -76
  377. package/cjs/types/transfer.d.ts.map +0 -1
  378. package/cjs/types/transfer.js +0 -3
  379. package/cjs/types/transfer.js.map +0 -1
  380. package/cjs/types/urlTokenBaseHTTPClient.d.ts.map +0 -1
  381. package/cjs/types/urlTokenBaseHTTPClient.js.map +0 -1
  382. package/cjs/util.d.ts.map +0 -1
  383. package/cjs/util.js.map +0 -1
  384. package/esm/account.js +0 -221
  385. package/esm/account.js.map +0 -1
  386. package/esm/amount.js.map +0 -1
  387. package/esm/app-client.js.map +0 -1
  388. package/esm/app-deploy.js.map +0 -1
  389. package/esm/app.js.map +0 -1
  390. package/esm/asset.js.map +0 -1
  391. package/esm/debugging.js +0 -197
  392. package/esm/debugging.js.map +0 -1
  393. package/esm/dispenser-client.js.map +0 -1
  394. package/esm/index.js +0 -17
  395. package/esm/index.js.map +0 -1
  396. package/esm/indexer-lookup.js.map +0 -1
  397. package/esm/localnet.js +0 -111
  398. package/esm/localnet.js.map +0 -1
  399. package/esm/network-client.js.map +0 -1
  400. package/esm/package.json +0 -3
  401. package/esm/testing/_asset.js +0 -29
  402. package/esm/testing/_asset.js.map +0 -1
  403. package/esm/testing/account.js.map +0 -1
  404. package/esm/testing/fixtures/algokit-log-capture-fixture.js.map +0 -1
  405. package/esm/testing/fixtures/algorand-fixture.js.map +0 -1
  406. package/esm/testing/fixtures/index.js +0 -3
  407. package/esm/testing/fixtures/index.js.map +0 -1
  408. package/esm/testing/index.js +0 -6
  409. package/esm/testing/index.js.map +0 -1
  410. package/esm/testing/indexer.js.map +0 -1
  411. package/esm/testing/test-logger.js.map +0 -1
  412. package/esm/testing/transaction-logger.js.map +0 -1
  413. package/esm/transaction.js.map +0 -1
  414. package/esm/transfer.js.map +0 -1
  415. package/esm/types/account.js.map +0 -1
  416. package/esm/types/algo-http-client-with-retry.js.map +0 -1
  417. package/esm/types/amount.js.map +0 -1
  418. package/esm/types/app-client.js.map +0 -1
  419. package/esm/types/app-spec.js +0 -2
  420. package/esm/types/app-spec.js.map +0 -1
  421. package/esm/types/app.js.map +0 -1
  422. package/esm/types/asset.js +0 -2
  423. package/esm/types/asset.js.map +0 -1
  424. package/esm/types/config.js.map +0 -1
  425. package/esm/types/debugging.js.map +0 -1
  426. package/esm/types/dispenser-client.js.map +0 -1
  427. package/esm/types/indexer.js +0 -31
  428. package/esm/types/indexer.js.map +0 -1
  429. package/esm/types/logging.js.map +0 -1
  430. package/esm/types/logic-error.js.map +0 -1
  431. package/esm/types/network-client.js +0 -2
  432. package/esm/types/network-client.js.map +0 -1
  433. package/esm/types/testing.js +0 -2
  434. package/esm/types/testing.js.map +0 -1
  435. package/esm/types/transaction.js +0 -2
  436. package/esm/types/transaction.js.map +0 -1
  437. package/esm/types/transfer.js +0 -2
  438. package/esm/types/transfer.js.map +0 -1
  439. package/esm/types/urlTokenBaseHTTPClient.js.map +0 -1
  440. package/esm/util.js.map +0 -1
  441. package/types/app-deploy.d.ts +0 -104
  442. package/types/app-deploy.d.ts.map +0 -1
  443. package/types/index.d.ts +0 -17
  444. package/types/index.d.ts.map +0 -1
  445. package/types/indexer-lookup.d.ts +0 -39
  446. package/types/indexer-lookup.d.ts.map +0 -1
  447. package/types/localnet.d.ts +0 -57
  448. package/types/localnet.d.ts.map +0 -1
  449. package/types/testing/_asset.d.ts +0 -5
  450. package/types/testing/_asset.d.ts.map +0 -1
  451. package/types/testing/account.d.ts +0 -17
  452. package/types/testing/account.d.ts.map +0 -1
  453. package/types/testing/fixtures/algokit-log-capture-fixture.d.ts +0 -20
  454. package/types/testing/fixtures/algokit-log-capture-fixture.d.ts.map +0 -1
  455. package/types/testing/fixtures/algorand-fixture.d.ts +0 -50
  456. package/types/testing/fixtures/algorand-fixture.d.ts.map +0 -1
  457. package/types/testing/fixtures/index.d.ts +0 -3
  458. package/types/testing/fixtures/index.d.ts.map +0 -1
  459. package/types/testing/index.d.ts +0 -6
  460. package/types/testing/index.d.ts.map +0 -1
  461. package/types/testing/indexer.d.ts +0 -13
  462. package/types/testing/indexer.d.ts.map +0 -1
  463. package/types/testing/test-logger.d.ts +0 -41
  464. package/types/testing/test-logger.d.ts.map +0 -1
  465. package/types/testing/transaction-logger.d.ts +0 -31
  466. package/types/testing/transaction-logger.d.ts.map +0 -1
  467. package/types/types/account.d.ts +0 -70
  468. package/types/types/account.d.ts.map +0 -1
  469. package/types/types/algo-http-client-with-retry.d.ts +0 -14
  470. package/types/types/algo-http-client-with-retry.d.ts.map +0 -1
  471. package/types/types/amount.d.ts +0 -24
  472. package/types/types/amount.d.ts.map +0 -1
  473. package/types/types/app-client.d.ts +0 -416
  474. package/types/types/app-client.d.ts.map +0 -1
  475. package/types/types/app-spec.d.ts +0 -156
  476. package/types/types/app-spec.d.ts.map +0 -1
  477. package/types/types/app.d.ts +0 -323
  478. package/types/types/app.d.ts.map +0 -1
  479. package/types/types/asset.d.ts +0 -42
  480. package/types/types/asset.d.ts.map +0 -1
  481. package/types/types/config.d.ts +0 -49
  482. package/types/types/config.d.ts.map +0 -1
  483. package/types/types/debugging.d.ts +0 -112
  484. package/types/types/debugging.d.ts.map +0 -1
  485. package/types/types/dispenser-client.d.ts +0 -77
  486. package/types/types/dispenser-client.d.ts.map +0 -1
  487. package/types/types/indexer.d.ts +0 -625
  488. package/types/types/indexer.d.ts.map +0 -1
  489. package/types/types/logging.d.ts +0 -13
  490. package/types/types/logging.d.ts.map +0 -1
  491. package/types/types/logic-error.d.ts +0 -37
  492. package/types/types/logic-error.d.ts.map +0 -1
  493. package/types/types/network-client.d.ts +0 -20
  494. package/types/types/network-client.d.ts.map +0 -1
  495. package/types/types/testing.d.ts +0 -95
  496. package/types/types/testing.d.ts.map +0 -1
  497. package/types/types/transaction.d.ts +0 -118
  498. package/types/types/transaction.d.ts.map +0 -1
  499. package/types/types/transfer.d.ts +0 -76
  500. package/types/types/transfer.d.ts.map +0 -1
  501. package/types/types/urlTokenBaseHTTPClient.d.ts +0 -41
  502. package/types/types/urlTokenBaseHTTPClient.d.ts.map +0 -1
  503. package/types/util.d.ts +0 -24
  504. package/types/util.d.ts.map +0 -1
  505. /package/{cjs/amount.d.ts → amount.d.ts} +0 -0
  506. /package/{cjs/app-client.d.ts → app-client.d.ts} +0 -0
  507. /package/{cjs/app-deploy.d.ts → app-deploy.d.ts} +0 -0
  508. /package/{cjs/asset.d.ts → asset.d.ts} +0 -0
  509. /package/{cjs/dispenser-client.d.ts → dispenser-client.d.ts} +0 -0
  510. /package/{cjs/indexer-lookup.d.ts → indexer-lookup.d.ts} +0 -0
  511. /package/{cjs/testing → testing}/_asset.d.ts +0 -0
  512. /package/{cjs/testing → testing}/account.d.ts +0 -0
  513. /package/{cjs/testing → testing}/fixtures/algokit-log-capture-fixture.d.ts +0 -0
  514. /package/{cjs/testing → testing}/fixtures/algorand-fixture.d.ts +0 -0
  515. /package/{cjs/testing → testing}/fixtures/index.d.ts +0 -0
  516. /package/{cjs/testing → testing}/index.d.ts +0 -0
  517. /package/{cjs/testing → testing}/indexer.d.ts +0 -0
  518. /package/{cjs/testing → testing}/test-logger.d.ts +0 -0
  519. /package/{cjs/testing → testing}/transaction-logger.d.ts +0 -0
  520. /package/{cjs/types → types}/algo-http-client-with-retry.d.ts +0 -0
  521. /package/{cjs/types → types}/app-spec.d.ts +0 -0
  522. /package/{cjs/types → types}/config.d.ts +0 -0
  523. /package/{cjs/types → types}/indexer.d.ts +0 -0
  524. /package/{cjs/types → types}/logging.d.ts +0 -0
  525. /package/{cjs/types → types}/logic-error.d.ts +0 -0
  526. /package/{cjs/types → types}/testing.d.ts +0 -0
  527. /package/{cjs/types → types}/urlTokenBaseHTTPClient.d.ts +0 -0
  528. /package/{cjs/util.d.ts → util.d.ts} +0 -0
@@ -1,19 +1,17 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getAtomicTransactionComposerTransactions = exports.getTransactionParams = exports.controlFees = exports.capTransactionFee = exports.waitForConfirmation = exports.sendGroupOfTransactions = exports.performAtomicTransactionComposerSimulate = exports.performAtomicTransactionComposerDryrun = exports.sendAtomicTransactionComposer = exports.populateAppCallResources = exports.sendTransaction = exports.signTransaction = exports.getSenderTransactionSigner = exports.getTransactionWithSigner = exports.getSenderAddress = exports.encodeLease = exports.encodeTransactionNote = exports.MAX_APP_CALL_ACCOUNT_REFERENCES = exports.MAX_APP_CALL_FOREIGN_REFERENCES = exports.MAX_TRANSACTION_GROUP_SIZE = void 0;
7
- const algosdk_1 = __importDefault(require("algosdk"));
8
- const buffer_1 = require("buffer");
9
- const _1 = require("./");
10
- const debugging_1 = require("./debugging");
11
- const util_1 = require("./util");
12
- var AtomicTransactionComposer = algosdk_1.default.AtomicTransactionComposer;
13
- var modelsv2 = algosdk_1.default.modelsv2;
14
- exports.MAX_TRANSACTION_GROUP_SIZE = 16;
15
- exports.MAX_APP_CALL_FOREIGN_REFERENCES = 8;
16
- exports.MAX_APP_CALL_ACCOUNT_REFERENCES = 4;
1
+ 'use strict';
2
+
3
+ var algosdk = require('algosdk');
4
+ var buffer = require('buffer');
5
+ var config = require('../config.js');
6
+ var simulateAndPersistResponse = require('../debugging/simulate-and-persist-response.js');
7
+ var util = require('../util.js');
8
+ var performAtomicTransactionComposerSimulate = require('./perform-atomic-transaction-composer-simulate.js');
9
+
10
+ var AtomicTransactionComposer = algosdk.AtomicTransactionComposer;
11
+ var modelsv2 = algosdk.modelsv2;
12
+ const MAX_TRANSACTION_GROUP_SIZE = 16;
13
+ const MAX_APP_CALL_FOREIGN_REFERENCES = 8;
14
+ const MAX_APP_CALL_ACCOUNT_REFERENCES = 4;
17
15
  /** Encodes a transaction note into a byte array ready to be included in an Algorand transaction.
18
16
  *
19
17
  * @param note The transaction note
@@ -44,7 +42,6 @@ function encodeTransactionNote(note) {
44
42
  return encoder.encode(n);
45
43
  }
46
44
  }
47
- exports.encodeTransactionNote = encodeTransactionNote;
48
45
  /** Encodes a transaction lease into a 32-byte array ready to be included in an Algorand transaction.
49
46
  *
50
47
  * @param lease The transaction lease as a string or binary array or null/undefined if there is no lease
@@ -80,7 +77,6 @@ function encodeLease(lease) {
80
77
  throw new Error(`Unknown lease type received of ${typeof lease}`);
81
78
  }
82
79
  }
83
- exports.encodeLease = encodeLease;
84
80
  /**
85
81
  * Returns the public address of the given transaction sender.
86
82
  * @param sender A transaction sender
@@ -89,7 +85,6 @@ exports.encodeLease = encodeLease;
89
85
  const getSenderAddress = function (sender) {
90
86
  return typeof sender === 'string' ? sender : 'addr' in sender ? sender.addr : sender.address();
91
87
  };
92
- exports.getSenderAddress = getSenderAddress;
93
88
  const memoize = (fn) => {
94
89
  const cache = new Map();
95
90
  const cached = function (val) {
@@ -116,31 +111,30 @@ const getTransactionWithSigner = async (transaction, defaultSender) => {
116
111
  return transaction instanceof Promise
117
112
  ? {
118
113
  txn: (await transaction).transaction,
119
- signer: (0, exports.getSenderTransactionSigner)(defaultSender),
114
+ signer: getSenderTransactionSigner(defaultSender),
120
115
  }
121
116
  : 'transaction' in transaction
122
117
  ? {
123
118
  txn: transaction.transaction,
124
- signer: (0, exports.getSenderTransactionSigner)(transaction.signer),
119
+ signer: getSenderTransactionSigner(transaction.signer),
125
120
  }
126
121
  : {
127
122
  txn: transaction,
128
- signer: (0, exports.getSenderTransactionSigner)(defaultSender),
123
+ signer: getSenderTransactionSigner(defaultSender),
129
124
  };
130
125
  };
131
- exports.getTransactionWithSigner = getTransactionWithSigner;
132
126
  /**
133
127
  * Returns a `TransactionSigner` for the given transaction sender.
134
128
  * This function has memoization, so will return the same transaction signer for a given sender.
135
129
  * @param sender A transaction sender
136
130
  * @returns A transaction signer
137
131
  */
138
- exports.getSenderTransactionSigner = memoize(function (sender) {
132
+ const getSenderTransactionSigner = memoize(function (sender) {
139
133
  return 'signer' in sender
140
134
  ? sender.signer
141
135
  : 'lsig' in sender
142
- ? algosdk_1.default.makeLogicSigAccountTransactionSigner(sender)
143
- : algosdk_1.default.makeBasicAccountTransactionSigner(sender);
136
+ ? algosdk.makeLogicSigAccountTransactionSigner(sender)
137
+ : algosdk.makeBasicAccountTransactionSigner(sender);
144
138
  });
145
139
  /**
146
140
  * Signs a single transaction by the given signer.
@@ -152,12 +146,11 @@ const signTransaction = async (transaction, signer) => {
152
146
  return 'sk' in signer
153
147
  ? transaction.signTxn(signer.sk)
154
148
  : 'lsig' in signer
155
- ? algosdk_1.default.signLogicSigTransactionObject(transaction, signer).blob
149
+ ? algosdk.signLogicSigTransactionObject(transaction, signer).blob
156
150
  : 'sign' in signer
157
151
  ? signer.sign(transaction)
158
152
  : (await signer.signer([transaction], [0]))[0];
159
153
  };
160
- exports.signTransaction = signTransaction;
161
154
  /** Prepares a transaction for sending and then (if instructed) signs and sends the given transaction to the chain.
162
155
  *
163
156
  * @param send The details for the transaction to prepare/send, including:
@@ -173,7 +166,7 @@ const sendTransaction = async function (send, algod) {
173
166
  const { skipSending, skipWaiting, fee, maxFee, suppressLog, maxRoundsToWaitForConfirmation, atc } = sendParams ?? {};
174
167
  controlFees(transaction, { fee, maxFee });
175
168
  if (atc) {
176
- atc.addTransaction({ txn: transaction, signer: (0, exports.getSenderTransactionSigner)(from) });
169
+ atc.addTransaction({ txn: transaction, signer: getSenderTransactionSigner(from) });
177
170
  return { transaction };
178
171
  }
179
172
  if (skipSending) {
@@ -183,22 +176,21 @@ const sendTransaction = async function (send, algod) {
183
176
  // Populate resources if the transaction is an appcall and populateAppCallResources wasn't explicitly set to false
184
177
  // NOTE: Temporary false by default until this algod bug is fixed: https://github.com/algorand/go-algorand/issues/5914
185
178
  // if (txnToSend.type === algosdk.TransactionType.appl && sendParams?.populateAppCallResources !== false) {
186
- if (txnToSend.type === algosdk_1.default.TransactionType.appl && sendParams?.populateAppCallResources === true) {
179
+ if (txnToSend.type === algosdk.TransactionType.appl && sendParams?.populateAppCallResources === true) {
187
180
  const newAtc = new AtomicTransactionComposer();
188
- newAtc.addTransaction({ txn: txnToSend, signer: (0, exports.getSenderTransactionSigner)(from) });
181
+ newAtc.addTransaction({ txn: txnToSend, signer: getSenderTransactionSigner(from) });
189
182
  const packed = await populateAppCallResources(newAtc, algod);
190
183
  txnToSend = packed.buildGroup()[0].txn;
191
184
  }
192
- const signedTransaction = await (0, exports.signTransaction)(txnToSend, from);
185
+ const signedTransaction = await signTransaction(txnToSend, from);
193
186
  await algod.sendRawTransaction(signedTransaction).do();
194
- _1.Config.getLogger(suppressLog).info(`Sent transaction ID ${txnToSend.txID()} ${txnToSend.type} from ${(0, exports.getSenderAddress)(from)}`);
187
+ config.Config.getLogger(suppressLog).info(`Sent transaction ID ${txnToSend.txID()} ${txnToSend.type} from ${getSenderAddress(from)}`);
195
188
  let confirmation = undefined;
196
189
  if (!skipWaiting) {
197
- confirmation = await (0, exports.waitForConfirmation)(txnToSend.txID(), maxRoundsToWaitForConfirmation ?? 5, algod);
190
+ confirmation = await waitForConfirmation(txnToSend.txID(), maxRoundsToWaitForConfirmation ?? 5, algod);
198
191
  }
199
192
  return { transaction: txnToSend, confirmation };
200
193
  };
201
- exports.sendTransaction = sendTransaction;
202
194
  /**
203
195
  * Get all of the unamed resources used by the group in the given ATC
204
196
  *
@@ -207,14 +199,14 @@ exports.sendTransaction = sendTransaction;
207
199
  * @returns The unnamed resources accessed by the group and by each transaction in the group
208
200
  */
209
201
  async function getUnnamedAppCallResourcesAccessed(atc, algod) {
210
- const simReq = new algosdk_1.default.modelsv2.SimulateRequest({
202
+ const simReq = new algosdk.modelsv2.SimulateRequest({
211
203
  txnGroups: [],
212
204
  allowUnnamedResources: true,
213
205
  allowEmptySignatures: true,
214
206
  });
215
207
  const emptySignerAtc = atc.clone();
216
208
  emptySignerAtc['transactions'].forEach((t) => {
217
- t.signer = algosdk_1.default.makeEmptyTransactionSigner();
209
+ t.signer = algosdk.makeEmptyTransactionSigner();
218
210
  });
219
211
  const result = await emptySignerAtc.simulate(algod, simReq);
220
212
  const groupResponse = result.simulateResponse.txnGroups[0];
@@ -259,7 +251,7 @@ async function populateAppCallResources(atc, algod) {
259
251
  throw Error('Unexpected asset holding at the transaction level');
260
252
  // Do accounts first because the account limit is 4
261
253
  r.accounts?.forEach((a) => {
262
- group[i].txn.appAccounts?.push(algosdk_1.default.decodeAddress(a));
254
+ group[i].txn.appAccounts?.push(algosdk.decodeAddress(a));
263
255
  });
264
256
  r.apps?.forEach((a) => {
265
257
  group[i].txn.appForeignApps?.push(Number(a));
@@ -268,29 +260,29 @@ async function populateAppCallResources(atc, algod) {
268
260
  group[i].txn.appForeignAssets?.push(Number(a));
269
261
  });
270
262
  const accounts = group[i].txn.appAccounts?.length || 0;
271
- if (accounts > exports.MAX_APP_CALL_ACCOUNT_REFERENCES)
272
- throw Error(`Account reference limit of ${exports.MAX_APP_CALL_ACCOUNT_REFERENCES} exceeded in transaction ${i}`);
263
+ if (accounts > MAX_APP_CALL_ACCOUNT_REFERENCES)
264
+ throw Error(`Account reference limit of ${MAX_APP_CALL_ACCOUNT_REFERENCES} exceeded in transaction ${i}`);
273
265
  const assets = group[i].txn.appForeignAssets?.length || 0;
274
266
  const apps = group[i].txn.appForeignApps?.length || 0;
275
267
  const boxes = group[i].txn.boxes?.length || 0;
276
- if (accounts + assets + apps + boxes > exports.MAX_APP_CALL_FOREIGN_REFERENCES) {
277
- throw Error(`Resource reference limit of ${exports.MAX_APP_CALL_FOREIGN_REFERENCES} exceeded in transaction ${i}`);
268
+ if (accounts + assets + apps + boxes > MAX_APP_CALL_FOREIGN_REFERENCES) {
269
+ throw Error(`Resource reference limit of ${MAX_APP_CALL_FOREIGN_REFERENCES} exceeded in transaction ${i}`);
278
270
  }
279
271
  });
280
272
  const findTxnBelowRefLimit = (txns, type = 'other') => {
281
273
  const txnIndex = txns.findIndex((t) => {
282
- if (t.txn.type !== algosdk_1.default.TransactionType.appl)
274
+ if (t.txn.type !== algosdk.TransactionType.appl)
283
275
  return false;
284
276
  const accounts = t.txn.appAccounts?.length || 0;
285
277
  if (type === 'account')
286
- return accounts < exports.MAX_APP_CALL_ACCOUNT_REFERENCES;
278
+ return accounts < MAX_APP_CALL_ACCOUNT_REFERENCES;
287
279
  const assets = t.txn.appForeignAssets?.length || 0;
288
280
  const apps = t.txn.appForeignApps?.length || 0;
289
281
  const boxes = t.txn.boxes?.length || 0;
290
282
  if (type === 'assetHolding' || type === 'appLocal') {
291
- return accounts + assets + apps + boxes < exports.MAX_APP_CALL_FOREIGN_REFERENCES - 1 && accounts < exports.MAX_APP_CALL_ACCOUNT_REFERENCES;
283
+ return accounts + assets + apps + boxes < MAX_APP_CALL_FOREIGN_REFERENCES - 1 && accounts < MAX_APP_CALL_ACCOUNT_REFERENCES;
292
284
  }
293
- return accounts + assets + apps + boxes < exports.MAX_APP_CALL_FOREIGN_REFERENCES;
285
+ return accounts + assets + apps + boxes < MAX_APP_CALL_FOREIGN_REFERENCES;
294
286
  });
295
287
  if (txnIndex === -1) {
296
288
  throw Error('No more transactions below reference limit. Add another app call to the group.');
@@ -304,17 +296,17 @@ async function populateAppCallResources(atc, algod) {
304
296
  g.appLocals?.forEach((a) => {
305
297
  const txnIndex = findTxnBelowRefLimit(group, 'appLocal');
306
298
  group[txnIndex].txn.appForeignApps?.push(Number(a.app));
307
- group[txnIndex].txn.appAccounts?.push(algosdk_1.default.decodeAddress(a.account));
299
+ group[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(a.account));
308
300
  });
309
301
  g.assetHoldings?.forEach((a) => {
310
302
  const txnIndex = findTxnBelowRefLimit(group, 'assetHolding');
311
303
  group[txnIndex].txn.appForeignAssets?.push(Number(a.asset));
312
- group[txnIndex].txn.appAccounts?.push(algosdk_1.default.decodeAddress(a.account));
304
+ group[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(a.account));
313
305
  });
314
306
  // Do accounts next because the account limit is 4
315
307
  g.accounts?.forEach((a) => {
316
308
  const txnIndex = findTxnBelowRefLimit(group, 'account');
317
- group[txnIndex].txn.appAccounts?.push(algosdk_1.default.decodeAddress(a));
309
+ group[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(a));
318
310
  });
319
311
  g.boxes?.forEach((b) => {
320
312
  const txnIndex = findTxnBelowRefLimit(group);
@@ -335,7 +327,7 @@ async function populateAppCallResources(atc, algod) {
335
327
  }
336
328
  }
337
329
  }
338
- const newAtc = new algosdk_1.default.AtomicTransactionComposer();
330
+ const newAtc = new algosdk.AtomicTransactionComposer();
339
331
  group.forEach((t) => {
340
332
  // eslint-disable-next-line no-param-reassign
341
333
  t.txn.group = undefined;
@@ -344,7 +336,6 @@ async function populateAppCallResources(atc, algod) {
344
336
  newAtc['methodCalls'] = atc['methodCalls'];
345
337
  return newAtc;
346
338
  }
347
- exports.populateAppCallResources = populateAppCallResources;
348
339
  /**
349
340
  * Signs and sends transactions that have been collected by an `AtomicTransactionComposer`.
350
341
  * @param atcSend The parameters controlling the send, including:
@@ -375,27 +366,27 @@ const sendAtomicTransactionComposer = async function (atcSend, algod) {
375
366
  });
376
367
  let groupId = undefined;
377
368
  if (transactionsToSend.length > 1) {
378
- groupId = transactionsToSend[0].group ? buffer_1.Buffer.from(transactionsToSend[0].group).toString('base64') : '';
379
- _1.Config.getLogger(sendParams?.suppressLog).info(`Sending group of ${transactionsToSend.length} transactions (${groupId})`, {
369
+ groupId = transactionsToSend[0].group ? buffer.Buffer.from(transactionsToSend[0].group).toString('base64') : '';
370
+ config.Config.getLogger(sendParams?.suppressLog).info(`Sending group of ${transactionsToSend.length} transactions (${groupId})`, {
380
371
  transactionsToSend,
381
372
  });
382
- _1.Config.getLogger(sendParams?.suppressLog).debug(`Transaction IDs (${groupId})`, transactionsToSend.map((t) => t.txID()));
373
+ config.Config.getLogger(sendParams?.suppressLog).debug(`Transaction IDs (${groupId})`, transactionsToSend.map((t) => t.txID()));
383
374
  }
384
- if (_1.Config.debug && _1.Config.projectRoot && _1.Config.traceAll) {
375
+ if (config.Config.debug && config.Config.projectRoot && config.Config.traceAll) {
385
376
  // Dump the traces to a file for use with AlgoKit AVM debugger
386
- await (0, debugging_1.simulateAndPersistResponse)({
377
+ await simulateAndPersistResponse.simulateAndPersistResponse({
387
378
  atc,
388
- projectRoot: _1.Config.projectRoot,
379
+ projectRoot: config.Config.projectRoot,
389
380
  algod,
390
- bufferSizeMb: _1.Config.traceBufferSizeMb,
381
+ bufferSizeMb: config.Config.traceBufferSizeMb,
391
382
  });
392
383
  }
393
384
  const result = await atc.execute(algod, sendParams?.maxRoundsToWaitForConfirmation ?? 5);
394
385
  if (transactionsToSend.length > 1) {
395
- _1.Config.getLogger(sendParams?.suppressLog).info(`Group transaction (${groupId}) sent with ${transactionsToSend.length} transactions`);
386
+ config.Config.getLogger(sendParams?.suppressLog).info(`Group transaction (${groupId}) sent with ${transactionsToSend.length} transactions`);
396
387
  }
397
388
  else {
398
- _1.Config.getLogger(sendParams?.suppressLog).info(`Sent transaction ID ${transactionsToSend[0].txID()} ${transactionsToSend[0].type} from ${algosdk_1.default.encodeAddress(transactionsToSend[0].from.publicKey)}`);
389
+ config.Config.getLogger(sendParams?.suppressLog).info(`Sent transaction ID ${transactionsToSend[0].txID()} ${transactionsToSend[0].type} from ${algosdk.encodeAddress(transactionsToSend[0].from.publicKey)}`);
399
390
  }
400
391
  let confirmations = undefined;
401
392
  if (!sendParams?.skipWaiting) {
@@ -415,24 +406,24 @@ const sendAtomicTransactionComposer = async function (atcSend, algod) {
415
406
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
416
407
  }
417
408
  catch (e) {
418
- _1.Config.logger.info('Received error executing Atomic Transaction Composer, for more information enable the debug flag');
419
- if (_1.Config.debug && typeof e === 'object') {
409
+ config.Config.logger.info('Received error executing Atomic Transaction Composer, for more information enable the debug flag');
410
+ if (config.Config.debug && typeof e === 'object') {
420
411
  e.traces = [];
421
- _1.Config.logger.debug('Received error executing Atomic Transaction Composer and debug flag enabled; attempting simulation to get more information');
412
+ config.Config.logger.debug('Received error executing Atomic Transaction Composer and debug flag enabled; attempting simulation to get more information');
422
413
  let simulate = undefined;
423
- if (_1.Config.debug && _1.Config.projectRoot && !_1.Config.traceAll) {
414
+ if (config.Config.debug && config.Config.projectRoot && !config.Config.traceAll) {
424
415
  // Dump the traces to a file for use with AlgoKit AVM debugger
425
416
  // Checks for false on traceAll because it should have been already
426
417
  // executed above
427
- simulate = await (0, debugging_1.simulateAndPersistResponse)({
418
+ simulate = await simulateAndPersistResponse.simulateAndPersistResponse({
428
419
  atc,
429
- projectRoot: _1.Config.projectRoot,
420
+ projectRoot: config.Config.projectRoot,
430
421
  algod,
431
- bufferSizeMb: _1.Config.traceBufferSizeMb,
422
+ bufferSizeMb: config.Config.traceBufferSizeMb,
432
423
  });
433
424
  }
434
425
  else {
435
- simulate = await performAtomicTransactionComposerSimulate(atc, algod);
426
+ simulate = await performAtomicTransactionComposerSimulate.performAtomicTransactionComposerSimulate(atc, algod);
436
427
  }
437
428
  if (simulate && simulate.txnGroups[0].failedAt) {
438
429
  for (const txn of simulate.txnGroups[0].txnResults) {
@@ -449,7 +440,6 @@ const sendAtomicTransactionComposer = async function (atcSend, algod) {
449
440
  throw e;
450
441
  }
451
442
  };
452
- exports.sendAtomicTransactionComposer = sendAtomicTransactionComposer;
453
443
  /**
454
444
  * Performs a dry run of the transactions loaded into the given AtomicTransactionComposer`
455
445
  * @param atc The AtomicTransactionComposer` with transaction(s) loaded
@@ -459,40 +449,11 @@ exports.sendAtomicTransactionComposer = sendAtomicTransactionComposer;
459
449
  async function performAtomicTransactionComposerDryrun(atc, algod) {
460
450
  const signedTransactions = await atc.gatherSignatures();
461
451
  const txns = signedTransactions.map((t) => {
462
- return algosdk_1.default.decodeSignedTransaction(t);
452
+ return algosdk.decodeSignedTransaction(t);
463
453
  });
464
- const dryrun = await algosdk_1.default.createDryrun({ client: algod, txns });
465
- return new algosdk_1.default.DryrunResult(await algod.dryrun(dryrun).do());
454
+ const dryrun = await algosdk.createDryrun({ client: algod, txns });
455
+ return new algosdk.DryrunResult(await algod.dryrun(dryrun).do());
466
456
  }
467
- exports.performAtomicTransactionComposerDryrun = performAtomicTransactionComposerDryrun;
468
- /**
469
- * Performs a simulation of the transactions loaded into the given AtomicTransactionComposer.
470
- * @param atc The AtomicTransactionComposer with transaction(s) loaded.
471
- * @param algod An Algod client to perform the simulation.
472
- * @returns The simulation result, which includes various details about how the transactions would be processed.
473
- */
474
- async function performAtomicTransactionComposerSimulate(atc, algod) {
475
- const unsignedTransactionsSigners = atc.buildGroup();
476
- const decodedSignedTransactions = unsignedTransactionsSigners.map((ts) => algosdk_1.default.encodeUnsignedSimulateTransaction(ts.txn));
477
- const simulateRequest = new modelsv2.SimulateRequest({
478
- allowEmptySignatures: true,
479
- allowMoreLogging: true,
480
- execTraceConfig: new modelsv2.SimulateTraceConfig({
481
- enable: true,
482
- scratchChange: true,
483
- stackChange: true,
484
- stateChange: true,
485
- }),
486
- txnGroups: [
487
- new modelsv2.SimulateRequestTransactionGroup({
488
- txns: decodedSignedTransactions.map((txn) => algosdk_1.default.decodeObj(txn)),
489
- }),
490
- ],
491
- });
492
- const simulateResult = await algod.simulateTransactions(simulateRequest).do();
493
- return simulateResult;
494
- }
495
- exports.performAtomicTransactionComposerSimulate = performAtomicTransactionComposerSimulate;
496
457
  /**
497
458
  * Signs and sends a group of [up to 16](https://developer.algorand.org/docs/get-details/atomic_transfers/#create-transactions) transactions to the chain
498
459
  *
@@ -504,12 +465,12 @@ exports.performAtomicTransactionComposerSimulate = performAtomicTransactionCompo
504
465
  */
505
466
  const sendGroupOfTransactions = async function (groupSend, algod) {
506
467
  const { transactions, signer, sendParams } = groupSend;
507
- const defaultTransactionSigner = signer ? (0, exports.getSenderTransactionSigner)(signer) : undefined;
468
+ const defaultTransactionSigner = signer ? getSenderTransactionSigner(signer) : undefined;
508
469
  const transactionsWithSigner = await Promise.all(transactions.map(async (t) => {
509
470
  if ('signer' in t)
510
471
  return {
511
472
  txn: t.transaction,
512
- signer: (0, exports.getSenderTransactionSigner)(t.signer),
473
+ signer: getSenderTransactionSigner(t.signer),
513
474
  sender: t.signer,
514
475
  };
515
476
  const txn = 'then' in t ? (await t).transaction : t;
@@ -525,9 +486,8 @@ const sendGroupOfTransactions = async function (groupSend, algod) {
525
486
  }));
526
487
  const atc = new AtomicTransactionComposer();
527
488
  transactionsWithSigner.forEach((txn) => atc.addTransaction(txn));
528
- return (await (0, exports.sendAtomicTransactionComposer)({ atc, sendParams }, algod));
489
+ return (await sendAtomicTransactionComposer({ atc, sendParams }, algod));
529
490
  };
530
- exports.sendGroupOfTransactions = sendGroupOfTransactions;
531
491
  /**
532
492
  * Wait until the transaction is confirmed or rejected, or until `timeout`
533
493
  * number of rounds have passed.
@@ -575,12 +535,11 @@ const waitForConfirmation = async function (transactionId, maxRoundsToWait, algo
575
535
  continue;
576
536
  }
577
537
  }
578
- await algod.statusAfterBlock((0, util_1.toNumber)(currentRound)).do();
538
+ await algod.statusAfterBlock(util.toNumber(currentRound)).do();
579
539
  currentRound++;
580
540
  }
581
541
  throw new Error(`Transaction ${transactionId} not confirmed after ${maxRoundsToWait} rounds`);
582
542
  };
583
- exports.waitForConfirmation = waitForConfirmation;
584
543
  /**
585
544
  * Limit the acceptable fee to a defined amount of µALGOs.
586
545
  * This also sets the transaction to be flatFee to ensure the transaction only succeeds at
@@ -596,14 +555,13 @@ function capTransactionFee(transaction, maxAcceptableFee) {
596
555
  if (transaction.fee > maxAcceptableFee.microAlgos) {
597
556
  throw new Error(`Cancelled transaction due to high network congestion fees. Algorand suggested fees would cause this transaction to cost ${transaction.fee} µALGOs. Cap for this transaction is ${maxAcceptableFee.microAlgos} µALGOs.`);
598
557
  }
599
- else if (transaction.fee > algosdk_1.default.ALGORAND_MIN_TX_FEE) {
600
- _1.Config.logger.warn(`Algorand network congestion fees are in effect. This transaction will incur a fee of ${transaction.fee} µALGOs.`);
558
+ else if (transaction.fee > algosdk.ALGORAND_MIN_TX_FEE) {
559
+ config.Config.logger.warn(`Algorand network congestion fees are in effect. This transaction will incur a fee of ${transaction.fee} µALGOs.`);
601
560
  }
602
561
  // Now set the flat on the transaction. Otherwise the network may increase the fee above our cap and perform the transaction.
603
562
  transaction.flatFee = true;
604
563
  }
605
564
  }
606
- exports.capTransactionFee = capTransactionFee;
607
565
  /**
608
566
  * Allows for control of fees on a `Transaction` or `SuggestedParams` object
609
567
  * @param transaction The transaction or suggested params
@@ -620,7 +578,6 @@ function controlFees(transaction, feeControl) {
620
578
  }
621
579
  return transaction;
622
580
  }
623
- exports.controlFees = controlFees;
624
581
  /**
625
582
  * Returns suggested transaction parameters from algod unless some are already provided.
626
583
  * @param params Optionally provide parameters to use
@@ -630,7 +587,6 @@ exports.controlFees = controlFees;
630
587
  async function getTransactionParams(params, algod) {
631
588
  return params ? { ...params } : await algod.getTransactionParams().do();
632
589
  }
633
- exports.getTransactionParams = getTransactionParams;
634
590
  /**
635
591
  * Returns the array of transactions currently present in the given `AtomicTransactionComposer`
636
592
  * @param atc The atomic transaction composer
@@ -644,5 +600,24 @@ function getAtomicTransactionComposerTransactions(atc) {
644
600
  return [];
645
601
  }
646
602
  }
603
+
604
+ exports.MAX_APP_CALL_ACCOUNT_REFERENCES = MAX_APP_CALL_ACCOUNT_REFERENCES;
605
+ exports.MAX_APP_CALL_FOREIGN_REFERENCES = MAX_APP_CALL_FOREIGN_REFERENCES;
606
+ exports.MAX_TRANSACTION_GROUP_SIZE = MAX_TRANSACTION_GROUP_SIZE;
607
+ exports.capTransactionFee = capTransactionFee;
608
+ exports.controlFees = controlFees;
609
+ exports.encodeLease = encodeLease;
610
+ exports.encodeTransactionNote = encodeTransactionNote;
647
611
  exports.getAtomicTransactionComposerTransactions = getAtomicTransactionComposerTransactions;
648
- //# sourceMappingURL=transaction.js.map
612
+ exports.getSenderAddress = getSenderAddress;
613
+ exports.getSenderTransactionSigner = getSenderTransactionSigner;
614
+ exports.getTransactionParams = getTransactionParams;
615
+ exports.getTransactionWithSigner = getTransactionWithSigner;
616
+ exports.performAtomicTransactionComposerDryrun = performAtomicTransactionComposerDryrun;
617
+ exports.populateAppCallResources = populateAppCallResources;
618
+ exports.sendAtomicTransactionComposer = sendAtomicTransactionComposer;
619
+ exports.sendGroupOfTransactions = sendGroupOfTransactions;
620
+ exports.sendTransaction = sendTransaction;
621
+ exports.signTransaction = signTransaction;
622
+ exports.waitForConfirmation = waitForConfirmation;
623
+ //# sourceMappingURL=transaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.js","sources":["../../src/transaction/transaction.ts"],"sourcesContent":[null],"names":["Config","Buffer","simulateAndPersistResponse","performAtomicTransactionComposerSimulate","toNumber"],"mappings":"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"}