@algorandfoundation/algokit-utils 10.0.0-alpha.44 → 10.0.0-alpha.46

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 (1422) hide show
  1. package/_virtual/_rolldown/runtime.js +7 -13
  2. package/abi/index.js +6 -7
  3. package/abi/index.mjs +1 -2
  4. package/account-manager.js +17 -18
  5. package/account-manager.js.map +1 -1
  6. package/account-manager.mjs +4 -5
  7. package/account-manager.mjs.map +1 -1
  8. package/account.d.ts +4 -9
  9. package/account.js +2 -3
  10. package/account.js.map +1 -1
  11. package/account.mjs +1 -1
  12. package/algo25/index.js +3 -4
  13. package/algo25/index.mjs +1 -2
  14. package/algod-client/index.js +8 -9
  15. package/algod-client/index.mjs +1 -2
  16. package/algorand-client-transaction-creator.d.ts +4 -4
  17. package/algorand-client-transaction-creator.js +2 -3
  18. package/algorand-client-transaction-creator.js.map +1 -1
  19. package/algorand-client-transaction-creator.mjs +1 -1
  20. package/algorand-client-transaction-creator.mjs.map +1 -1
  21. package/algorand-client-transaction-sender.d.ts +5 -6
  22. package/algorand-client-transaction-sender.js +24 -25
  23. package/algorand-client-transaction-sender.js.map +1 -1
  24. package/algorand-client-transaction-sender.mjs +18 -19
  25. package/algorand-client-transaction-sender.mjs.map +1 -1
  26. package/algorand-client.js +12 -13
  27. package/algorand-client.js.map +1 -1
  28. package/algorand-client.mjs +1 -2
  29. package/algorand-client.mjs.map +1 -1
  30. package/amount.js +2 -3
  31. package/amount.js.map +1 -1
  32. package/amount.mjs +1 -1
  33. package/amount.mjs.map +1 -1
  34. package/app-client.d.ts +27 -49
  35. package/app-client.js +13 -14
  36. package/app-client.js.map +1 -1
  37. package/app-client.mjs +1 -2
  38. package/app-client.mjs.map +1 -1
  39. package/app-deployer.d.ts +6 -13
  40. package/app-deployer.js +19 -20
  41. package/app-deployer.js.map +1 -1
  42. package/app-deployer.mjs +11 -12
  43. package/app-deployer.mjs.map +1 -1
  44. package/app-factory.d.ts +24 -49
  45. package/app-factory.js +9 -10
  46. package/app-factory.js.map +1 -1
  47. package/app-factory.mjs +3 -4
  48. package/app-factory.mjs.map +1 -1
  49. package/app-manager.js +9 -12
  50. package/app-manager.js.map +1 -1
  51. package/app-manager.mjs +5 -8
  52. package/app-manager.mjs.map +1 -1
  53. package/app-spec.d.ts +1 -4
  54. package/app-spec.js +3 -4
  55. package/app-spec.js.map +1 -1
  56. package/app-spec.mjs +1 -2
  57. package/app-spec.mjs.map +1 -1
  58. package/app.d.ts +6 -12
  59. package/app.js +2 -3
  60. package/app.js.map +1 -1
  61. package/app.mjs +1 -1
  62. package/app.mjs.map +1 -1
  63. package/asset-manager.js +7 -8
  64. package/asset-manager.js.map +1 -1
  65. package/asset-manager.mjs +4 -5
  66. package/asset-manager.mjs.map +1 -1
  67. package/async-event-emitter.js +2 -3
  68. package/async-event-emitter.js.map +1 -1
  69. package/async-event-emitter.mjs +1 -1
  70. package/async-event-emitter.mjs.map +1 -1
  71. package/client-manager.js +10 -11
  72. package/client-manager.js.map +1 -1
  73. package/client-manager.mjs +1 -2
  74. package/client-manager.mjs.map +1 -1
  75. package/common/index.js +26 -27
  76. package/common/index.mjs +1 -2
  77. package/composer.d.ts +3 -8
  78. package/composer.js +26 -28
  79. package/composer.js.map +1 -1
  80. package/composer.mjs +5 -7
  81. package/composer.mjs.map +1 -1
  82. package/config.js +3 -5
  83. package/config.js.map +1 -1
  84. package/config.mjs +1 -2
  85. package/config.mjs.map +1 -1
  86. package/crypto/index.js +6 -7
  87. package/crypto/index.mjs +1 -2
  88. package/debugging.d.ts +4 -10
  89. package/debugging.js +2 -3
  90. package/debugging.js.map +1 -1
  91. package/debugging.mjs +1 -1
  92. package/dispenser-client.js +3 -4
  93. package/dispenser-client.js.map +1 -1
  94. package/dispenser-client.mjs +1 -2
  95. package/dispenser-client.mjs.map +1 -1
  96. package/index.js +26 -27
  97. package/index.mjs +1 -2
  98. package/indexer-client/index.js +8 -9
  99. package/indexer-client/index.mjs +1 -2
  100. package/indexer-client/indexer-lookup.js +1 -2
  101. package/indexer-client/indexer-lookup.js.map +1 -1
  102. package/indexer-client/indexer-lookup.mjs +1 -1
  103. package/indexer-client/indexer-lookup.mjs.map +1 -1
  104. package/indexer.d.ts +3 -3
  105. package/indexer.js +2 -3
  106. package/indexer.js.map +1 -1
  107. package/indexer.mjs +1 -1
  108. package/indexer.mjs.map +1 -1
  109. package/kmd-account-manager.js +9 -10
  110. package/kmd-account-manager.js.map +1 -1
  111. package/kmd-account-manager.mjs +1 -2
  112. package/kmd-account-manager.mjs.map +1 -1
  113. package/kmd-client/index.js +7 -8
  114. package/kmd-client/index.mjs +1 -2
  115. package/lifecycle-events.d.ts +1 -1
  116. package/lifecycle-events.js +2 -3
  117. package/lifecycle-events.js.map +1 -1
  118. package/lifecycle-events.mjs +1 -1
  119. package/lifecycle-events.mjs.map +1 -1
  120. package/logging.js +2 -3
  121. package/logging.js.map +1 -1
  122. package/logging.mjs +1 -1
  123. package/logic-error.js +2 -3
  124. package/logic-error.js.map +1 -1
  125. package/logic-error.mjs +1 -1
  126. package/logic-error.mjs.map +1 -1
  127. package/network-client.js +2 -3
  128. package/network-client.js.map +1 -1
  129. package/network-client.mjs +1 -1
  130. package/network-manager.js +2 -3
  131. package/network-manager.js.map +1 -1
  132. package/network-manager.mjs +1 -2
  133. package/network-manager.mjs.map +1 -1
  134. package/package.json +5 -2
  135. package/packages/abi/src/abi-method.d.ts +7 -12
  136. package/packages/abi/src/abi-method.js +3 -4
  137. package/packages/abi/src/abi-method.js.map +1 -1
  138. package/packages/abi/src/abi-method.mjs +1 -2
  139. package/packages/abi/src/abi-method.mjs.map +1 -1
  140. package/packages/abi/src/abi-type.d.ts +1 -4
  141. package/packages/abi/src/abi-type.js +22 -25
  142. package/packages/abi/src/abi-type.js.map +1 -1
  143. package/packages/abi/src/abi-type.mjs +18 -21
  144. package/packages/abi/src/abi-type.mjs.map +1 -1
  145. package/packages/abi/src/arc28-event.d.ts +4 -10
  146. package/packages/abi/src/arc56-contract.d.ts +66 -155
  147. package/packages/abi/src/arc56-contract.js +2 -3
  148. package/packages/abi/src/arc56-contract.js.map +1 -1
  149. package/packages/abi/src/arc56-contract.mjs +1 -2
  150. package/packages/abi/src/arc56-contract.mjs.map +1 -1
  151. package/packages/abi/src/bigint.js +1 -2
  152. package/packages/abi/src/bigint.js.map +1 -1
  153. package/packages/abi/src/bigint.mjs +1 -1
  154. package/packages/abi/src/utils.d.ts +0 -1
  155. package/packages/abi/src/utils.js +1 -2
  156. package/packages/abi/src/utils.js.map +1 -1
  157. package/packages/abi/src/utils.mjs +1 -1
  158. package/packages/algo25/src/english.js +2 -4
  159. package/packages/algo25/src/english.js.map +1 -1
  160. package/packages/algo25/src/english.mjs +2 -3
  161. package/packages/algo25/src/english.mjs.map +1 -1
  162. package/packages/algo25/src/index.js +3 -4
  163. package/packages/algo25/src/index.js.map +1 -1
  164. package/packages/algo25/src/index.mjs +5 -6
  165. package/packages/algo25/src/index.mjs.map +1 -1
  166. package/packages/algod_client/src/apis/api-service.js +33 -34
  167. package/packages/algod_client/src/apis/api-service.js.map +1 -1
  168. package/packages/algod_client/src/apis/api-service.mjs +1 -2
  169. package/packages/algod_client/src/apis/api-service.mjs.map +1 -1
  170. package/packages/algod_client/src/client.js +3 -4
  171. package/packages/algod_client/src/client.js.map +1 -1
  172. package/packages/algod_client/src/client.mjs +1 -2
  173. package/packages/algod_client/src/client.mjs.map +1 -1
  174. package/packages/algod_client/src/core/api-error.js +1 -2
  175. package/packages/algod_client/src/core/api-error.js.map +1 -1
  176. package/packages/algod_client/src/core/api-error.mjs +1 -1
  177. package/packages/algod_client/src/core/api-error.mjs.map +1 -1
  178. package/packages/algod_client/src/core/base-http-request.js +1 -2
  179. package/packages/algod_client/src/core/base-http-request.js.map +1 -1
  180. package/packages/algod_client/src/core/base-http-request.mjs +1 -1
  181. package/packages/algod_client/src/core/base-http-request.mjs.map +1 -1
  182. package/packages/algod_client/src/core/fetch-http-request.js +3 -4
  183. package/packages/algod_client/src/core/fetch-http-request.js.map +1 -1
  184. package/packages/algod_client/src/core/fetch-http-request.mjs +1 -2
  185. package/packages/algod_client/src/core/fetch-http-request.mjs.map +1 -1
  186. package/packages/algod_client/src/core/model-runtime.js +4 -5
  187. package/packages/algod_client/src/core/model-runtime.js.map +1 -1
  188. package/packages/algod_client/src/core/model-runtime.mjs +1 -2
  189. package/packages/algod_client/src/core/model-runtime.mjs.map +1 -1
  190. package/packages/algod_client/src/core/request.js +5 -6
  191. package/packages/algod_client/src/core/request.js.map +1 -1
  192. package/packages/algod_client/src/core/request.mjs +1 -2
  193. package/packages/algod_client/src/core/request.mjs.map +1 -1
  194. package/packages/algod_client/src/models/account-application-response.js +5 -6
  195. package/packages/algod_client/src/models/account-application-response.js.map +1 -1
  196. package/packages/algod_client/src/models/account-application-response.mjs +1 -2
  197. package/packages/algod_client/src/models/account-application-response.mjs.map +1 -1
  198. package/packages/algod_client/src/models/account-asset-response.js +5 -6
  199. package/packages/algod_client/src/models/account-asset-response.js.map +1 -1
  200. package/packages/algod_client/src/models/account-asset-response.mjs +1 -2
  201. package/packages/algod_client/src/models/account-asset-response.mjs.map +1 -1
  202. package/packages/algod_client/src/models/account-participation.js +3 -4
  203. package/packages/algod_client/src/models/account-participation.js.map +1 -1
  204. package/packages/algod_client/src/models/account-participation.mjs +1 -2
  205. package/packages/algod_client/src/models/account-participation.mjs.map +1 -1
  206. package/packages/algod_client/src/models/account-state-delta.d.ts +0 -1
  207. package/packages/algod_client/src/models/account-state-delta.js +4 -5
  208. package/packages/algod_client/src/models/account-state-delta.js.map +1 -1
  209. package/packages/algod_client/src/models/account-state-delta.mjs +1 -2
  210. package/packages/algod_client/src/models/account-state-delta.mjs.map +1 -1
  211. package/packages/algod_client/src/models/account.d.ts +0 -1
  212. package/packages/algod_client/src/models/account.js +14 -15
  213. package/packages/algod_client/src/models/account.js.map +1 -1
  214. package/packages/algod_client/src/models/account.mjs +1 -2
  215. package/packages/algod_client/src/models/account.mjs.map +1 -1
  216. package/packages/algod_client/src/models/application-initial-states.d.ts +0 -1
  217. package/packages/algod_client/src/models/application-initial-states.js +5 -6
  218. package/packages/algod_client/src/models/application-initial-states.js.map +1 -1
  219. package/packages/algod_client/src/models/application-initial-states.mjs +1 -2
  220. package/packages/algod_client/src/models/application-initial-states.mjs.map +1 -1
  221. package/packages/algod_client/src/models/application-kv-storage.d.ts +0 -1
  222. package/packages/algod_client/src/models/application-kv-storage.js +5 -6
  223. package/packages/algod_client/src/models/application-kv-storage.js.map +1 -1
  224. package/packages/algod_client/src/models/application-kv-storage.mjs +1 -2
  225. package/packages/algod_client/src/models/application-kv-storage.mjs.map +1 -1
  226. package/packages/algod_client/src/models/application-local-state.d.ts +0 -1
  227. package/packages/algod_client/src/models/application-local-state.js +6 -7
  228. package/packages/algod_client/src/models/application-local-state.js.map +1 -1
  229. package/packages/algod_client/src/models/application-local-state.mjs +1 -2
  230. package/packages/algod_client/src/models/application-local-state.mjs.map +1 -1
  231. package/packages/algod_client/src/models/application-params.d.ts +0 -1
  232. package/packages/algod_client/src/models/application-params.js +8 -9
  233. package/packages/algod_client/src/models/application-params.js.map +1 -1
  234. package/packages/algod_client/src/models/application-params.mjs +1 -2
  235. package/packages/algod_client/src/models/application-params.mjs.map +1 -1
  236. package/packages/algod_client/src/models/application-state-operation.d.ts +0 -1
  237. package/packages/algod_client/src/models/application-state-operation.js +6 -7
  238. package/packages/algod_client/src/models/application-state-operation.js.map +1 -1
  239. package/packages/algod_client/src/models/application-state-operation.mjs +1 -2
  240. package/packages/algod_client/src/models/application-state-operation.mjs.map +1 -1
  241. package/packages/algod_client/src/models/application-state-schema.js +2 -3
  242. package/packages/algod_client/src/models/application-state-schema.js.map +1 -1
  243. package/packages/algod_client/src/models/application-state-schema.mjs +1 -2
  244. package/packages/algod_client/src/models/application-state-schema.mjs.map +1 -1
  245. package/packages/algod_client/src/models/application.d.ts +0 -1
  246. package/packages/algod_client/src/models/application.js +4 -5
  247. package/packages/algod_client/src/models/application.js.map +1 -1
  248. package/packages/algod_client/src/models/application.mjs +1 -2
  249. package/packages/algod_client/src/models/application.mjs.map +1 -1
  250. package/packages/algod_client/src/models/asset-holding.js +3 -4
  251. package/packages/algod_client/src/models/asset-holding.js.map +1 -1
  252. package/packages/algod_client/src/models/asset-holding.mjs +1 -2
  253. package/packages/algod_client/src/models/asset-holding.mjs.map +1 -1
  254. package/packages/algod_client/src/models/asset-params.js +7 -8
  255. package/packages/algod_client/src/models/asset-params.js.map +1 -1
  256. package/packages/algod_client/src/models/asset-params.mjs +1 -2
  257. package/packages/algod_client/src/models/asset-params.mjs.map +1 -1
  258. package/packages/algod_client/src/models/asset.d.ts +0 -1
  259. package/packages/algod_client/src/models/asset.js +4 -5
  260. package/packages/algod_client/src/models/asset.js.map +1 -1
  261. package/packages/algod_client/src/models/asset.mjs +1 -2
  262. package/packages/algod_client/src/models/asset.mjs.map +1 -1
  263. package/packages/algod_client/src/models/avm-key-value.d.ts +0 -1
  264. package/packages/algod_client/src/models/avm-key-value.js +4 -5
  265. package/packages/algod_client/src/models/avm-key-value.js.map +1 -1
  266. package/packages/algod_client/src/models/avm-key-value.mjs +1 -2
  267. package/packages/algod_client/src/models/avm-key-value.mjs.map +1 -1
  268. package/packages/algod_client/src/models/avm-value.js +4 -6
  269. package/packages/algod_client/src/models/avm-value.js.map +1 -1
  270. package/packages/algod_client/src/models/avm-value.mjs +1 -2
  271. package/packages/algod_client/src/models/avm-value.mjs.map +1 -1
  272. package/packages/algod_client/src/models/block-hash-response.js +2 -4
  273. package/packages/algod_client/src/models/block-hash-response.js.map +1 -1
  274. package/packages/algod_client/src/models/block-hash-response.mjs +1 -2
  275. package/packages/algod_client/src/models/block-hash-response.mjs.map +1 -1
  276. package/packages/algod_client/src/models/block-response.d.ts +1 -3
  277. package/packages/algod_client/src/models/block-response.js +4 -6
  278. package/packages/algod_client/src/models/block-response.js.map +1 -1
  279. package/packages/algod_client/src/models/block-response.mjs +1 -2
  280. package/packages/algod_client/src/models/block-response.mjs.map +1 -1
  281. package/packages/algod_client/src/models/block-txids-response.js +2 -4
  282. package/packages/algod_client/src/models/block-txids-response.js.map +1 -1
  283. package/packages/algod_client/src/models/block-txids-response.mjs +1 -2
  284. package/packages/algod_client/src/models/block-txids-response.mjs.map +1 -1
  285. package/packages/algod_client/src/models/block.d.ts +41 -93
  286. package/packages/algod_client/src/models/block.js +12 -13
  287. package/packages/algod_client/src/models/block.js.map +1 -1
  288. package/packages/algod_client/src/models/block.mjs +1 -2
  289. package/packages/algod_client/src/models/block.mjs.map +1 -1
  290. package/packages/algod_client/src/models/box-descriptor.js +2 -4
  291. package/packages/algod_client/src/models/box-descriptor.js.map +1 -1
  292. package/packages/algod_client/src/models/box-descriptor.mjs +1 -2
  293. package/packages/algod_client/src/models/box-descriptor.mjs.map +1 -1
  294. package/packages/algod_client/src/models/box.js +3 -4
  295. package/packages/algod_client/src/models/box.js.map +1 -1
  296. package/packages/algod_client/src/models/box.mjs +1 -2
  297. package/packages/algod_client/src/models/box.mjs.map +1 -1
  298. package/packages/algod_client/src/models/boxes-response.js +4 -5
  299. package/packages/algod_client/src/models/boxes-response.js.map +1 -1
  300. package/packages/algod_client/src/models/boxes-response.mjs +1 -2
  301. package/packages/algod_client/src/models/boxes-response.mjs.map +1 -1
  302. package/packages/algod_client/src/models/build-version.js +3 -4
  303. package/packages/algod_client/src/models/build-version.js.map +1 -1
  304. package/packages/algod_client/src/models/build-version.mjs +1 -2
  305. package/packages/algod_client/src/models/build-version.mjs.map +1 -1
  306. package/packages/algod_client/src/models/compile-response.js +4 -5
  307. package/packages/algod_client/src/models/compile-response.js.map +1 -1
  308. package/packages/algod_client/src/models/compile-response.mjs +1 -2
  309. package/packages/algod_client/src/models/compile-response.mjs.map +1 -1
  310. package/packages/algod_client/src/models/disassemble-response.js +2 -4
  311. package/packages/algod_client/src/models/disassemble-response.js.map +1 -1
  312. package/packages/algod_client/src/models/disassemble-response.mjs +1 -2
  313. package/packages/algod_client/src/models/disassemble-response.mjs.map +1 -1
  314. package/packages/algod_client/src/models/eval-delta-key-value.d.ts +0 -1
  315. package/packages/algod_client/src/models/eval-delta-key-value.js +4 -5
  316. package/packages/algod_client/src/models/eval-delta-key-value.js.map +1 -1
  317. package/packages/algod_client/src/models/eval-delta-key-value.mjs +1 -2
  318. package/packages/algod_client/src/models/eval-delta-key-value.mjs.map +1 -1
  319. package/packages/algod_client/src/models/eval-delta.js +4 -6
  320. package/packages/algod_client/src/models/eval-delta.js.map +1 -1
  321. package/packages/algod_client/src/models/eval-delta.mjs +1 -2
  322. package/packages/algod_client/src/models/eval-delta.mjs.map +1 -1
  323. package/packages/algod_client/src/models/genesis-allocation.js +59 -62
  324. package/packages/algod_client/src/models/genesis-allocation.js.map +1 -1
  325. package/packages/algod_client/src/models/genesis-allocation.mjs +55 -58
  326. package/packages/algod_client/src/models/genesis-allocation.mjs.map +1 -1
  327. package/packages/algod_client/src/models/genesis.js +7 -8
  328. package/packages/algod_client/src/models/genesis.js.map +1 -1
  329. package/packages/algod_client/src/models/genesis.mjs +1 -2
  330. package/packages/algod_client/src/models/genesis.mjs.map +1 -1
  331. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js +2 -4
  332. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js.map +1 -1
  333. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs +1 -2
  334. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs.map +1 -1
  335. package/packages/algod_client/src/models/get-sync-round-response.js +2 -4
  336. package/packages/algod_client/src/models/get-sync-round-response.js.map +1 -1
  337. package/packages/algod_client/src/models/get-sync-round-response.mjs +1 -2
  338. package/packages/algod_client/src/models/get-sync-round-response.mjs.map +1 -1
  339. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.d.ts +0 -1
  340. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js +4 -5
  341. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js.map +1 -1
  342. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs +1 -2
  343. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs.map +1 -1
  344. package/packages/algod_client/src/models/ledger-state-delta.d.ts +3 -8
  345. package/packages/algod_client/src/models/ledger-state-delta.js +98 -101
  346. package/packages/algod_client/src/models/ledger-state-delta.js.map +1 -1
  347. package/packages/algod_client/src/models/ledger-state-delta.mjs +205 -210
  348. package/packages/algod_client/src/models/ledger-state-delta.mjs.map +1 -1
  349. package/packages/algod_client/src/models/light-block-header-proof.js +3 -4
  350. package/packages/algod_client/src/models/light-block-header-proof.js.map +1 -1
  351. package/packages/algod_client/src/models/light-block-header-proof.mjs +1 -2
  352. package/packages/algod_client/src/models/light-block-header-proof.mjs.map +1 -1
  353. package/packages/algod_client/src/models/node-status-response.js +5 -6
  354. package/packages/algod_client/src/models/node-status-response.js.map +1 -1
  355. package/packages/algod_client/src/models/node-status-response.mjs +1 -2
  356. package/packages/algod_client/src/models/node-status-response.mjs.map +1 -1
  357. package/packages/algod_client/src/models/pending-transaction-response.d.ts +0 -1
  358. package/packages/algod_client/src/models/pending-transaction-response.js +9 -10
  359. package/packages/algod_client/src/models/pending-transaction-response.js.map +1 -1
  360. package/packages/algod_client/src/models/pending-transaction-response.mjs +1 -2
  361. package/packages/algod_client/src/models/pending-transaction-response.mjs.map +1 -1
  362. package/packages/algod_client/src/models/pending-transactions-response.d.ts +0 -1
  363. package/packages/algod_client/src/models/pending-transactions-response.js +5 -6
  364. package/packages/algod_client/src/models/pending-transactions-response.js.map +1 -1
  365. package/packages/algod_client/src/models/pending-transactions-response.mjs +1 -2
  366. package/packages/algod_client/src/models/pending-transactions-response.mjs.map +1 -1
  367. package/packages/algod_client/src/models/post-transactions-response.js +2 -4
  368. package/packages/algod_client/src/models/post-transactions-response.js.map +1 -1
  369. package/packages/algod_client/src/models/post-transactions-response.mjs +1 -2
  370. package/packages/algod_client/src/models/post-transactions-response.mjs.map +1 -1
  371. package/packages/algod_client/src/models/scratch-change.d.ts +0 -1
  372. package/packages/algod_client/src/models/scratch-change.js +4 -5
  373. package/packages/algod_client/src/models/scratch-change.js.map +1 -1
  374. package/packages/algod_client/src/models/scratch-change.mjs +1 -2
  375. package/packages/algod_client/src/models/scratch-change.mjs.map +1 -1
  376. package/packages/algod_client/src/models/simulate-initial-states.d.ts +0 -1
  377. package/packages/algod_client/src/models/simulate-initial-states.js +4 -5
  378. package/packages/algod_client/src/models/simulate-initial-states.js.map +1 -1
  379. package/packages/algod_client/src/models/simulate-initial-states.mjs +1 -2
  380. package/packages/algod_client/src/models/simulate-initial-states.mjs.map +1 -1
  381. package/packages/algod_client/src/models/simulate-request-transaction-group.d.ts +0 -1
  382. package/packages/algod_client/src/models/simulate-request-transaction-group.js +4 -5
  383. package/packages/algod_client/src/models/simulate-request-transaction-group.js.map +1 -1
  384. package/packages/algod_client/src/models/simulate-request-transaction-group.mjs +1 -2
  385. package/packages/algod_client/src/models/simulate-request-transaction-group.mjs.map +1 -1
  386. package/packages/algod_client/src/models/simulate-request.d.ts +0 -1
  387. package/packages/algod_client/src/models/simulate-request.js +8 -9
  388. package/packages/algod_client/src/models/simulate-request.js.map +1 -1
  389. package/packages/algod_client/src/models/simulate-request.mjs +1 -2
  390. package/packages/algod_client/src/models/simulate-request.mjs.map +1 -1
  391. package/packages/algod_client/src/models/simulate-response.js +10 -11
  392. package/packages/algod_client/src/models/simulate-response.js.map +1 -1
  393. package/packages/algod_client/src/models/simulate-response.mjs +1 -2
  394. package/packages/algod_client/src/models/simulate-response.mjs.map +1 -1
  395. package/packages/algod_client/src/models/simulate-trace-config.js +2 -3
  396. package/packages/algod_client/src/models/simulate-trace-config.js.map +1 -1
  397. package/packages/algod_client/src/models/simulate-trace-config.mjs +1 -2
  398. package/packages/algod_client/src/models/simulate-trace-config.mjs.map +1 -1
  399. package/packages/algod_client/src/models/simulate-transaction-group-result.d.ts +0 -1
  400. package/packages/algod_client/src/models/simulate-transaction-group-result.js +7 -8
  401. package/packages/algod_client/src/models/simulate-transaction-group-result.js.map +1 -1
  402. package/packages/algod_client/src/models/simulate-transaction-group-result.mjs +1 -2
  403. package/packages/algod_client/src/models/simulate-transaction-group-result.mjs.map +1 -1
  404. package/packages/algod_client/src/models/simulate-transaction-result.d.ts +0 -1
  405. package/packages/algod_client/src/models/simulate-transaction-result.js +7 -8
  406. package/packages/algod_client/src/models/simulate-transaction-result.js.map +1 -1
  407. package/packages/algod_client/src/models/simulate-transaction-result.mjs +1 -2
  408. package/packages/algod_client/src/models/simulate-transaction-result.mjs.map +1 -1
  409. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.d.ts +0 -1
  410. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js +5 -6
  411. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js.map +1 -1
  412. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs +1 -2
  413. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs.map +1 -1
  414. package/packages/algod_client/src/models/simulation-eval-overrides.js +3 -4
  415. package/packages/algod_client/src/models/simulation-eval-overrides.js.map +1 -1
  416. package/packages/algod_client/src/models/simulation-eval-overrides.mjs +1 -2
  417. package/packages/algod_client/src/models/simulation-eval-overrides.mjs.map +1 -1
  418. package/packages/algod_client/src/models/simulation-opcode-trace-unit.d.ts +0 -1
  419. package/packages/algod_client/src/models/simulation-opcode-trace-unit.js +7 -8
  420. package/packages/algod_client/src/models/simulation-opcode-trace-unit.js.map +1 -1
  421. package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs +1 -2
  422. package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs.map +1 -1
  423. package/packages/algod_client/src/models/simulation-transaction-exec-trace.d.ts +0 -1
  424. package/packages/algod_client/src/models/simulation-transaction-exec-trace.js +7 -8
  425. package/packages/algod_client/src/models/simulation-transaction-exec-trace.js.map +1 -1
  426. package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs +1 -2
  427. package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs.map +1 -1
  428. package/packages/algod_client/src/models/source-map.js +4 -5
  429. package/packages/algod_client/src/models/source-map.js.map +1 -1
  430. package/packages/algod_client/src/models/source-map.mjs +1 -2
  431. package/packages/algod_client/src/models/source-map.mjs.map +1 -1
  432. package/packages/algod_client/src/models/state-delta.d.ts +0 -1
  433. package/packages/algod_client/src/models/state-delta.js +4 -5
  434. package/packages/algod_client/src/models/state-delta.js.map +1 -1
  435. package/packages/algod_client/src/models/state-delta.mjs +1 -2
  436. package/packages/algod_client/src/models/state-delta.mjs.map +1 -1
  437. package/packages/algod_client/src/models/state-proof-message.js +3 -4
  438. package/packages/algod_client/src/models/state-proof-message.js.map +1 -1
  439. package/packages/algod_client/src/models/state-proof-message.mjs +1 -2
  440. package/packages/algod_client/src/models/state-proof-message.mjs.map +1 -1
  441. package/packages/algod_client/src/models/state-proof.d.ts +0 -1
  442. package/packages/algod_client/src/models/state-proof.js +4 -5
  443. package/packages/algod_client/src/models/state-proof.js.map +1 -1
  444. package/packages/algod_client/src/models/state-proof.mjs +1 -2
  445. package/packages/algod_client/src/models/state-proof.mjs.map +1 -1
  446. package/packages/algod_client/src/models/supply-response.js +2 -3
  447. package/packages/algod_client/src/models/supply-response.js.map +1 -1
  448. package/packages/algod_client/src/models/supply-response.mjs +1 -2
  449. package/packages/algod_client/src/models/supply-response.mjs.map +1 -1
  450. package/packages/algod_client/src/models/teal-key-value-store.d.ts +0 -1
  451. package/packages/algod_client/src/models/teal-key-value-store.js +4 -5
  452. package/packages/algod_client/src/models/teal-key-value-store.js.map +1 -1
  453. package/packages/algod_client/src/models/teal-key-value-store.mjs +1 -2
  454. package/packages/algod_client/src/models/teal-key-value-store.mjs.map +1 -1
  455. package/packages/algod_client/src/models/teal-key-value.d.ts +0 -1
  456. package/packages/algod_client/src/models/teal-key-value.js +4 -5
  457. package/packages/algod_client/src/models/teal-key-value.js.map +1 -1
  458. package/packages/algod_client/src/models/teal-key-value.mjs +1 -2
  459. package/packages/algod_client/src/models/teal-key-value.mjs.map +1 -1
  460. package/packages/algod_client/src/models/teal-value.js +4 -6
  461. package/packages/algod_client/src/models/teal-value.js.map +1 -1
  462. package/packages/algod_client/src/models/teal-value.mjs +1 -2
  463. package/packages/algod_client/src/models/teal-value.mjs.map +1 -1
  464. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js +4 -5
  465. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js.map +1 -1
  466. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs +1 -2
  467. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs.map +1 -1
  468. package/packages/algod_client/src/models/transaction-parameters-response.js +4 -5
  469. package/packages/algod_client/src/models/transaction-parameters-response.js.map +1 -1
  470. package/packages/algod_client/src/models/transaction-parameters-response.mjs +1 -2
  471. package/packages/algod_client/src/models/transaction-parameters-response.mjs.map +1 -1
  472. package/packages/algod_client/src/models/transaction-proof.js +4 -5
  473. package/packages/algod_client/src/models/transaction-proof.js.map +1 -1
  474. package/packages/algod_client/src/models/transaction-proof.mjs +1 -2
  475. package/packages/algod_client/src/models/transaction-proof.mjs.map +1 -1
  476. package/packages/algod_client/src/models/version.d.ts +0 -1
  477. package/packages/algod_client/src/models/version.js +6 -7
  478. package/packages/algod_client/src/models/version.js.map +1 -1
  479. package/packages/algod_client/src/models/version.mjs +1 -2
  480. package/packages/algod_client/src/models/version.mjs.map +1 -1
  481. package/packages/common/src/address.js +12 -13
  482. package/packages/common/src/address.js.map +1 -1
  483. package/packages/common/src/address.mjs +10 -11
  484. package/packages/common/src/address.mjs.map +1 -1
  485. package/packages/common/src/array.js +1 -2
  486. package/packages/common/src/array.js.map +1 -1
  487. package/packages/common/src/array.mjs +1 -1
  488. package/packages/common/src/codecs/codec.d.ts +0 -1
  489. package/packages/common/src/codecs/codec.js +1 -2
  490. package/packages/common/src/codecs/codec.js.map +1 -1
  491. package/packages/common/src/codecs/codec.mjs +1 -1
  492. package/packages/common/src/codecs/codec.mjs.map +1 -1
  493. package/packages/common/src/codecs/composite/array.js +8 -9
  494. package/packages/common/src/codecs/composite/array.js.map +1 -1
  495. package/packages/common/src/codecs/composite/array.mjs +1 -2
  496. package/packages/common/src/codecs/composite/array.mjs.map +1 -1
  497. package/packages/common/src/codecs/composite/map.d.ts +0 -1
  498. package/packages/common/src/codecs/composite/map.js +2 -3
  499. package/packages/common/src/codecs/composite/map.js.map +1 -1
  500. package/packages/common/src/codecs/composite/map.mjs +1 -2
  501. package/packages/common/src/codecs/composite/map.mjs.map +1 -1
  502. package/packages/common/src/codecs/composite/record.d.ts +0 -1
  503. package/packages/common/src/codecs/composite/record.js +3 -4
  504. package/packages/common/src/codecs/composite/record.js.map +1 -1
  505. package/packages/common/src/codecs/composite/record.mjs +1 -2
  506. package/packages/common/src/codecs/composite/record.mjs.map +1 -1
  507. package/packages/common/src/codecs/models/array-model.js +2 -3
  508. package/packages/common/src/codecs/models/array-model.js.map +1 -1
  509. package/packages/common/src/codecs/models/array-model.mjs +1 -2
  510. package/packages/common/src/codecs/models/array-model.mjs.map +1 -1
  511. package/packages/common/src/codecs/models/object-model.js +4 -6
  512. package/packages/common/src/codecs/models/object-model.js.map +1 -1
  513. package/packages/common/src/codecs/models/object-model.mjs +2 -4
  514. package/packages/common/src/codecs/models/object-model.mjs.map +1 -1
  515. package/packages/common/src/codecs/models/primitive-model.js +2 -3
  516. package/packages/common/src/codecs/models/primitive-model.js.map +1 -1
  517. package/packages/common/src/codecs/models/primitive-model.mjs +1 -2
  518. package/packages/common/src/codecs/models/primitive-model.mjs.map +1 -1
  519. package/packages/common/src/codecs/primitives/address.js +7 -8
  520. package/packages/common/src/codecs/primitives/address.js.map +1 -1
  521. package/packages/common/src/codecs/primitives/address.mjs +4 -5
  522. package/packages/common/src/codecs/primitives/address.mjs.map +1 -1
  523. package/packages/common/src/codecs/primitives/bigint.js +2 -3
  524. package/packages/common/src/codecs/primitives/bigint.js.map +1 -1
  525. package/packages/common/src/codecs/primitives/bigint.mjs +1 -2
  526. package/packages/common/src/codecs/primitives/bigint.mjs.map +1 -1
  527. package/packages/common/src/codecs/primitives/boolean.js +2 -3
  528. package/packages/common/src/codecs/primitives/boolean.js.map +1 -1
  529. package/packages/common/src/codecs/primitives/boolean.mjs +1 -2
  530. package/packages/common/src/codecs/primitives/boolean.mjs.map +1 -1
  531. package/packages/common/src/codecs/primitives/bytes-base64.js +3 -4
  532. package/packages/common/src/codecs/primitives/bytes-base64.js.map +1 -1
  533. package/packages/common/src/codecs/primitives/bytes-base64.mjs +1 -2
  534. package/packages/common/src/codecs/primitives/bytes-base64.mjs.map +1 -1
  535. package/packages/common/src/codecs/primitives/bytes.js +3 -4
  536. package/packages/common/src/codecs/primitives/bytes.js.map +1 -1
  537. package/packages/common/src/codecs/primitives/bytes.mjs +1 -2
  538. package/packages/common/src/codecs/primitives/bytes.mjs.map +1 -1
  539. package/packages/common/src/codecs/primitives/fixed-bytes.js +3 -4
  540. package/packages/common/src/codecs/primitives/fixed-bytes.js.map +1 -1
  541. package/packages/common/src/codecs/primitives/fixed-bytes.mjs +1 -2
  542. package/packages/common/src/codecs/primitives/fixed-bytes.mjs.map +1 -1
  543. package/packages/common/src/codecs/primitives/number.js +2 -3
  544. package/packages/common/src/codecs/primitives/number.js.map +1 -1
  545. package/packages/common/src/codecs/primitives/number.mjs +1 -2
  546. package/packages/common/src/codecs/primitives/number.mjs.map +1 -1
  547. package/packages/common/src/codecs/primitives/string.js +3 -4
  548. package/packages/common/src/codecs/primitives/string.js.map +1 -1
  549. package/packages/common/src/codecs/primitives/string.mjs +1 -2
  550. package/packages/common/src/codecs/primitives/string.mjs.map +1 -1
  551. package/packages/common/src/codecs/primitives/unknown.d.ts +0 -1
  552. package/packages/common/src/codecs/primitives/unknown.js +10 -11
  553. package/packages/common/src/codecs/primitives/unknown.js.map +1 -1
  554. package/packages/common/src/codecs/primitives/unknown.mjs +3 -4
  555. package/packages/common/src/codecs/primitives/unknown.mjs.map +1 -1
  556. package/packages/common/src/codecs/types.d.ts +0 -1
  557. package/packages/common/src/codecs/wire.js +2 -3
  558. package/packages/common/src/codecs/wire.js.map +1 -1
  559. package/packages/common/src/codecs/wire.mjs +1 -2
  560. package/packages/common/src/codecs/wire.mjs.map +1 -1
  561. package/packages/common/src/constants.js +2 -3
  562. package/packages/common/src/constants.js.map +1 -1
  563. package/packages/common/src/constants.mjs +2 -2
  564. package/packages/common/src/constants.mjs.map +1 -1
  565. package/packages/common/src/encoding.js +2 -3
  566. package/packages/common/src/encoding.js.map +1 -1
  567. package/packages/common/src/encoding.mjs +1 -2
  568. package/packages/common/src/encoding.mjs.map +1 -1
  569. package/packages/common/src/json.js +2 -3
  570. package/packages/common/src/json.js.map +1 -1
  571. package/packages/common/src/json.mjs +1 -2
  572. package/packages/common/src/json.mjs.map +1 -1
  573. package/packages/common/src/msgpack.js +2 -3
  574. package/packages/common/src/msgpack.js.map +1 -1
  575. package/packages/common/src/msgpack.mjs +1 -2
  576. package/packages/common/src/msgpack.mjs.map +1 -1
  577. package/packages/common/src/sourcemap.js +2 -3
  578. package/packages/common/src/sourcemap.js.map +1 -1
  579. package/packages/common/src/sourcemap.mjs +1 -2
  580. package/packages/common/src/sourcemap.mjs.map +1 -1
  581. package/packages/crypto/src/ed25519.js +2 -3
  582. package/packages/crypto/src/ed25519.js.map +1 -1
  583. package/packages/crypto/src/ed25519.mjs +1 -2
  584. package/packages/crypto/src/ed25519.mjs.map +1 -1
  585. package/packages/crypto/src/hash.js +4 -5
  586. package/packages/crypto/src/hash.js.map +1 -1
  587. package/packages/crypto/src/hash.mjs +3 -4
  588. package/packages/crypto/src/hash.mjs.map +1 -1
  589. package/packages/crypto/src/hd.d.ts +3 -7
  590. package/packages/crypto/src/hd.js +2 -3
  591. package/packages/crypto/src/hd.js.map +1 -1
  592. package/packages/crypto/src/hd.mjs +1 -2
  593. package/packages/crypto/src/hd.mjs.map +1 -1
  594. package/packages/crypto/src/index.js +8 -7
  595. package/packages/crypto/src/index.js.map +1 -1
  596. package/packages/crypto/src/index.mjs +7 -6
  597. package/packages/crypto/src/index.mjs.map +1 -1
  598. package/packages/indexer_client/src/apis/api-service.js +19 -20
  599. package/packages/indexer_client/src/apis/api-service.js.map +1 -1
  600. package/packages/indexer_client/src/apis/api-service.mjs +1 -2
  601. package/packages/indexer_client/src/apis/api-service.mjs.map +1 -1
  602. package/packages/indexer_client/src/client.js +3 -4
  603. package/packages/indexer_client/src/client.js.map +1 -1
  604. package/packages/indexer_client/src/client.mjs +1 -2
  605. package/packages/indexer_client/src/client.mjs.map +1 -1
  606. package/packages/indexer_client/src/core/api-error.js +1 -2
  607. package/packages/indexer_client/src/core/api-error.js.map +1 -1
  608. package/packages/indexer_client/src/core/api-error.mjs +1 -1
  609. package/packages/indexer_client/src/core/api-error.mjs.map +1 -1
  610. package/packages/indexer_client/src/core/base-http-request.js +1 -2
  611. package/packages/indexer_client/src/core/base-http-request.js.map +1 -1
  612. package/packages/indexer_client/src/core/base-http-request.mjs +1 -1
  613. package/packages/indexer_client/src/core/base-http-request.mjs.map +1 -1
  614. package/packages/indexer_client/src/core/fetch-http-request.js +3 -4
  615. package/packages/indexer_client/src/core/fetch-http-request.js.map +1 -1
  616. package/packages/indexer_client/src/core/fetch-http-request.mjs +1 -2
  617. package/packages/indexer_client/src/core/fetch-http-request.mjs.map +1 -1
  618. package/packages/indexer_client/src/core/model-runtime.js +2 -3
  619. package/packages/indexer_client/src/core/model-runtime.js.map +1 -1
  620. package/packages/indexer_client/src/core/model-runtime.mjs +1 -2
  621. package/packages/indexer_client/src/core/model-runtime.mjs.map +1 -1
  622. package/packages/indexer_client/src/core/request.js +5 -6
  623. package/packages/indexer_client/src/core/request.js.map +1 -1
  624. package/packages/indexer_client/src/core/request.mjs +1 -2
  625. package/packages/indexer_client/src/core/request.mjs.map +1 -1
  626. package/packages/indexer_client/src/models/account-participation.js +3 -4
  627. package/packages/indexer_client/src/models/account-participation.js.map +1 -1
  628. package/packages/indexer_client/src/models/account-participation.mjs +1 -2
  629. package/packages/indexer_client/src/models/account-participation.mjs.map +1 -1
  630. package/packages/indexer_client/src/models/account-response.js +4 -5
  631. package/packages/indexer_client/src/models/account-response.js.map +1 -1
  632. package/packages/indexer_client/src/models/account-response.mjs +1 -2
  633. package/packages/indexer_client/src/models/account-response.mjs.map +1 -1
  634. package/packages/indexer_client/src/models/account-state-delta.d.ts +0 -1
  635. package/packages/indexer_client/src/models/account-state-delta.js +4 -5
  636. package/packages/indexer_client/src/models/account-state-delta.js.map +1 -1
  637. package/packages/indexer_client/src/models/account-state-delta.mjs +1 -2
  638. package/packages/indexer_client/src/models/account-state-delta.mjs.map +1 -1
  639. package/packages/indexer_client/src/models/account.d.ts +0 -1
  640. package/packages/indexer_client/src/models/account.js +14 -15
  641. package/packages/indexer_client/src/models/account.js.map +1 -1
  642. package/packages/indexer_client/src/models/account.mjs +1 -2
  643. package/packages/indexer_client/src/models/account.mjs.map +1 -1
  644. package/packages/indexer_client/src/models/accounts-response.js +6 -7
  645. package/packages/indexer_client/src/models/accounts-response.js.map +1 -1
  646. package/packages/indexer_client/src/models/accounts-response.mjs +1 -2
  647. package/packages/indexer_client/src/models/accounts-response.mjs.map +1 -1
  648. package/packages/indexer_client/src/models/application-local-state.d.ts +0 -1
  649. package/packages/indexer_client/src/models/application-local-state.js +7 -8
  650. package/packages/indexer_client/src/models/application-local-state.js.map +1 -1
  651. package/packages/indexer_client/src/models/application-local-state.mjs +1 -2
  652. package/packages/indexer_client/src/models/application-local-state.mjs.map +1 -1
  653. package/packages/indexer_client/src/models/application-local-states-response.js +6 -7
  654. package/packages/indexer_client/src/models/application-local-states-response.js.map +1 -1
  655. package/packages/indexer_client/src/models/application-local-states-response.mjs +1 -2
  656. package/packages/indexer_client/src/models/application-local-states-response.mjs.map +1 -1
  657. package/packages/indexer_client/src/models/application-log-data.js +3 -4
  658. package/packages/indexer_client/src/models/application-log-data.js.map +1 -1
  659. package/packages/indexer_client/src/models/application-log-data.mjs +1 -2
  660. package/packages/indexer_client/src/models/application-log-data.mjs.map +1 -1
  661. package/packages/indexer_client/src/models/application-logs-response.js +6 -7
  662. package/packages/indexer_client/src/models/application-logs-response.js.map +1 -1
  663. package/packages/indexer_client/src/models/application-logs-response.mjs +1 -2
  664. package/packages/indexer_client/src/models/application-logs-response.mjs.map +1 -1
  665. package/packages/indexer_client/src/models/application-params.d.ts +0 -1
  666. package/packages/indexer_client/src/models/application-params.js +8 -9
  667. package/packages/indexer_client/src/models/application-params.js.map +1 -1
  668. package/packages/indexer_client/src/models/application-params.mjs +1 -2
  669. package/packages/indexer_client/src/models/application-params.mjs.map +1 -1
  670. package/packages/indexer_client/src/models/application-response.js +4 -5
  671. package/packages/indexer_client/src/models/application-response.js.map +1 -1
  672. package/packages/indexer_client/src/models/application-response.mjs +1 -2
  673. package/packages/indexer_client/src/models/application-response.mjs.map +1 -1
  674. package/packages/indexer_client/src/models/application-state-schema.js +2 -3
  675. package/packages/indexer_client/src/models/application-state-schema.js.map +1 -1
  676. package/packages/indexer_client/src/models/application-state-schema.mjs +1 -2
  677. package/packages/indexer_client/src/models/application-state-schema.mjs.map +1 -1
  678. package/packages/indexer_client/src/models/application.d.ts +0 -1
  679. package/packages/indexer_client/src/models/application.js +5 -6
  680. package/packages/indexer_client/src/models/application.js.map +1 -1
  681. package/packages/indexer_client/src/models/application.mjs +1 -2
  682. package/packages/indexer_client/src/models/application.mjs.map +1 -1
  683. package/packages/indexer_client/src/models/applications-response.js +6 -7
  684. package/packages/indexer_client/src/models/applications-response.js.map +1 -1
  685. package/packages/indexer_client/src/models/applications-response.mjs +1 -2
  686. package/packages/indexer_client/src/models/applications-response.mjs.map +1 -1
  687. package/packages/indexer_client/src/models/asset-balances-response.js +6 -7
  688. package/packages/indexer_client/src/models/asset-balances-response.js.map +1 -1
  689. package/packages/indexer_client/src/models/asset-balances-response.mjs +1 -2
  690. package/packages/indexer_client/src/models/asset-balances-response.mjs.map +1 -1
  691. package/packages/indexer_client/src/models/asset-holding.js +3 -4
  692. package/packages/indexer_client/src/models/asset-holding.js.map +1 -1
  693. package/packages/indexer_client/src/models/asset-holding.mjs +1 -2
  694. package/packages/indexer_client/src/models/asset-holding.mjs.map +1 -1
  695. package/packages/indexer_client/src/models/asset-holdings-response.js +6 -7
  696. package/packages/indexer_client/src/models/asset-holdings-response.js.map +1 -1
  697. package/packages/indexer_client/src/models/asset-holdings-response.mjs +1 -2
  698. package/packages/indexer_client/src/models/asset-holdings-response.mjs.map +1 -1
  699. package/packages/indexer_client/src/models/asset-params.js +7 -8
  700. package/packages/indexer_client/src/models/asset-params.js.map +1 -1
  701. package/packages/indexer_client/src/models/asset-params.mjs +1 -2
  702. package/packages/indexer_client/src/models/asset-params.mjs.map +1 -1
  703. package/packages/indexer_client/src/models/asset-response.js +4 -5
  704. package/packages/indexer_client/src/models/asset-response.js.map +1 -1
  705. package/packages/indexer_client/src/models/asset-response.mjs +1 -2
  706. package/packages/indexer_client/src/models/asset-response.mjs.map +1 -1
  707. package/packages/indexer_client/src/models/asset.d.ts +0 -1
  708. package/packages/indexer_client/src/models/asset.js +5 -6
  709. package/packages/indexer_client/src/models/asset.js.map +1 -1
  710. package/packages/indexer_client/src/models/asset.mjs +1 -2
  711. package/packages/indexer_client/src/models/asset.mjs.map +1 -1
  712. package/packages/indexer_client/src/models/assets-response.js +6 -7
  713. package/packages/indexer_client/src/models/assets-response.js.map +1 -1
  714. package/packages/indexer_client/src/models/assets-response.mjs +1 -2
  715. package/packages/indexer_client/src/models/assets-response.mjs.map +1 -1
  716. package/packages/indexer_client/src/models/block-headers-response.js +6 -7
  717. package/packages/indexer_client/src/models/block-headers-response.js.map +1 -1
  718. package/packages/indexer_client/src/models/block-headers-response.mjs +1 -2
  719. package/packages/indexer_client/src/models/block-headers-response.mjs.map +1 -1
  720. package/packages/indexer_client/src/models/block-rewards.js +3 -4
  721. package/packages/indexer_client/src/models/block-rewards.js.map +1 -1
  722. package/packages/indexer_client/src/models/block-rewards.mjs +1 -2
  723. package/packages/indexer_client/src/models/block-rewards.mjs.map +1 -1
  724. package/packages/indexer_client/src/models/block-upgrade-state.js +4 -5
  725. package/packages/indexer_client/src/models/block-upgrade-state.js.map +1 -1
  726. package/packages/indexer_client/src/models/block-upgrade-state.mjs +1 -2
  727. package/packages/indexer_client/src/models/block-upgrade-state.mjs.map +1 -1
  728. package/packages/indexer_client/src/models/block-upgrade-vote.js +4 -5
  729. package/packages/indexer_client/src/models/block-upgrade-vote.js.map +1 -1
  730. package/packages/indexer_client/src/models/block-upgrade-vote.mjs +1 -2
  731. package/packages/indexer_client/src/models/block-upgrade-vote.mjs.map +1 -1
  732. package/packages/indexer_client/src/models/block.d.ts +0 -1
  733. package/packages/indexer_client/src/models/block.js +14 -15
  734. package/packages/indexer_client/src/models/block.js.map +1 -1
  735. package/packages/indexer_client/src/models/block.mjs +1 -2
  736. package/packages/indexer_client/src/models/block.mjs.map +1 -1
  737. package/packages/indexer_client/src/models/box-descriptor.js +2 -4
  738. package/packages/indexer_client/src/models/box-descriptor.js.map +1 -1
  739. package/packages/indexer_client/src/models/box-descriptor.mjs +1 -2
  740. package/packages/indexer_client/src/models/box-descriptor.mjs.map +1 -1
  741. package/packages/indexer_client/src/models/box-reference.js +3 -4
  742. package/packages/indexer_client/src/models/box-reference.js.map +1 -1
  743. package/packages/indexer_client/src/models/box-reference.mjs +1 -2
  744. package/packages/indexer_client/src/models/box-reference.mjs.map +1 -1
  745. package/packages/indexer_client/src/models/box.js +3 -4
  746. package/packages/indexer_client/src/models/box.js.map +1 -1
  747. package/packages/indexer_client/src/models/box.mjs +1 -2
  748. package/packages/indexer_client/src/models/box.mjs.map +1 -1
  749. package/packages/indexer_client/src/models/boxes-response.js +6 -7
  750. package/packages/indexer_client/src/models/boxes-response.js.map +1 -1
  751. package/packages/indexer_client/src/models/boxes-response.mjs +1 -2
  752. package/packages/indexer_client/src/models/boxes-response.mjs.map +1 -1
  753. package/packages/indexer_client/src/models/eval-delta-key-value.d.ts +0 -1
  754. package/packages/indexer_client/src/models/eval-delta-key-value.js +4 -5
  755. package/packages/indexer_client/src/models/eval-delta-key-value.js.map +1 -1
  756. package/packages/indexer_client/src/models/eval-delta-key-value.mjs +1 -2
  757. package/packages/indexer_client/src/models/eval-delta-key-value.mjs.map +1 -1
  758. package/packages/indexer_client/src/models/eval-delta.js +4 -6
  759. package/packages/indexer_client/src/models/eval-delta.js.map +1 -1
  760. package/packages/indexer_client/src/models/eval-delta.mjs +1 -2
  761. package/packages/indexer_client/src/models/eval-delta.mjs.map +1 -1
  762. package/packages/indexer_client/src/models/hash-factory.js +2 -4
  763. package/packages/indexer_client/src/models/hash-factory.js.map +1 -1
  764. package/packages/indexer_client/src/models/hash-factory.mjs +1 -2
  765. package/packages/indexer_client/src/models/hash-factory.mjs.map +1 -1
  766. package/packages/indexer_client/src/models/hb-proof-fields.js +2 -3
  767. package/packages/indexer_client/src/models/hb-proof-fields.js.map +1 -1
  768. package/packages/indexer_client/src/models/hb-proof-fields.mjs +1 -2
  769. package/packages/indexer_client/src/models/hb-proof-fields.mjs.map +1 -1
  770. package/packages/indexer_client/src/models/health-check.js +7 -8
  771. package/packages/indexer_client/src/models/health-check.js.map +1 -1
  772. package/packages/indexer_client/src/models/health-check.mjs +1 -2
  773. package/packages/indexer_client/src/models/health-check.mjs.map +1 -1
  774. package/packages/indexer_client/src/models/holding-ref.d.ts +0 -1
  775. package/packages/indexer_client/src/models/holding-ref.js +3 -4
  776. package/packages/indexer_client/src/models/holding-ref.js.map +1 -1
  777. package/packages/indexer_client/src/models/holding-ref.mjs +1 -2
  778. package/packages/indexer_client/src/models/holding-ref.mjs.map +1 -1
  779. package/packages/indexer_client/src/models/indexer-state-proof-message.js +3 -4
  780. package/packages/indexer_client/src/models/indexer-state-proof-message.js.map +1 -1
  781. package/packages/indexer_client/src/models/indexer-state-proof-message.mjs +1 -2
  782. package/packages/indexer_client/src/models/indexer-state-proof-message.mjs.map +1 -1
  783. package/packages/indexer_client/src/models/locals-ref.d.ts +0 -1
  784. package/packages/indexer_client/src/models/locals-ref.js +3 -4
  785. package/packages/indexer_client/src/models/locals-ref.js.map +1 -1
  786. package/packages/indexer_client/src/models/locals-ref.mjs +1 -2
  787. package/packages/indexer_client/src/models/locals-ref.mjs.map +1 -1
  788. package/packages/indexer_client/src/models/merkle-array-proof.js +5 -6
  789. package/packages/indexer_client/src/models/merkle-array-proof.js.map +1 -1
  790. package/packages/indexer_client/src/models/merkle-array-proof.mjs +1 -2
  791. package/packages/indexer_client/src/models/merkle-array-proof.mjs.map +1 -1
  792. package/packages/indexer_client/src/models/mini-asset-holding.js +4 -6
  793. package/packages/indexer_client/src/models/mini-asset-holding.js.map +1 -1
  794. package/packages/indexer_client/src/models/mini-asset-holding.mjs +1 -2
  795. package/packages/indexer_client/src/models/mini-asset-holding.mjs.map +1 -1
  796. package/packages/indexer_client/src/models/on-completion.js +2 -4
  797. package/packages/indexer_client/src/models/on-completion.js.map +1 -1
  798. package/packages/indexer_client/src/models/on-completion.mjs +1 -2
  799. package/packages/indexer_client/src/models/on-completion.mjs.map +1 -1
  800. package/packages/indexer_client/src/models/participation-updates.js +2 -3
  801. package/packages/indexer_client/src/models/participation-updates.js.map +1 -1
  802. package/packages/indexer_client/src/models/participation-updates.mjs +1 -2
  803. package/packages/indexer_client/src/models/participation-updates.mjs.map +1 -1
  804. package/packages/indexer_client/src/models/resource-ref.d.ts +0 -1
  805. package/packages/indexer_client/src/models/resource-ref.js +7 -8
  806. package/packages/indexer_client/src/models/resource-ref.js.map +1 -1
  807. package/packages/indexer_client/src/models/resource-ref.mjs +1 -2
  808. package/packages/indexer_client/src/models/resource-ref.mjs.map +1 -1
  809. package/packages/indexer_client/src/models/state-delta.d.ts +0 -1
  810. package/packages/indexer_client/src/models/state-delta.js +4 -5
  811. package/packages/indexer_client/src/models/state-delta.js.map +1 -1
  812. package/packages/indexer_client/src/models/state-delta.mjs +1 -2
  813. package/packages/indexer_client/src/models/state-delta.mjs.map +1 -1
  814. package/packages/indexer_client/src/models/state-proof-fields.d.ts +0 -1
  815. package/packages/indexer_client/src/models/state-proof-fields.js +8 -9
  816. package/packages/indexer_client/src/models/state-proof-fields.js.map +1 -1
  817. package/packages/indexer_client/src/models/state-proof-fields.mjs +1 -2
  818. package/packages/indexer_client/src/models/state-proof-fields.mjs.map +1 -1
  819. package/packages/indexer_client/src/models/state-proof-participant.js +4 -5
  820. package/packages/indexer_client/src/models/state-proof-participant.js.map +1 -1
  821. package/packages/indexer_client/src/models/state-proof-participant.mjs +1 -2
  822. package/packages/indexer_client/src/models/state-proof-participant.mjs.map +1 -1
  823. package/packages/indexer_client/src/models/state-proof-reveal.js +5 -6
  824. package/packages/indexer_client/src/models/state-proof-reveal.js.map +1 -1
  825. package/packages/indexer_client/src/models/state-proof-reveal.mjs +1 -2
  826. package/packages/indexer_client/src/models/state-proof-reveal.mjs.map +1 -1
  827. package/packages/indexer_client/src/models/state-proof-sig-slot.js +4 -5
  828. package/packages/indexer_client/src/models/state-proof-sig-slot.js.map +1 -1
  829. package/packages/indexer_client/src/models/state-proof-sig-slot.mjs +1 -2
  830. package/packages/indexer_client/src/models/state-proof-sig-slot.mjs.map +1 -1
  831. package/packages/indexer_client/src/models/state-proof-signature.js +5 -6
  832. package/packages/indexer_client/src/models/state-proof-signature.js.map +1 -1
  833. package/packages/indexer_client/src/models/state-proof-signature.mjs +1 -2
  834. package/packages/indexer_client/src/models/state-proof-signature.mjs.map +1 -1
  835. package/packages/indexer_client/src/models/state-proof-tracking.js +4 -5
  836. package/packages/indexer_client/src/models/state-proof-tracking.js.map +1 -1
  837. package/packages/indexer_client/src/models/state-proof-tracking.mjs +1 -2
  838. package/packages/indexer_client/src/models/state-proof-tracking.mjs.map +1 -1
  839. package/packages/indexer_client/src/models/state-proof-verifier.js +3 -5
  840. package/packages/indexer_client/src/models/state-proof-verifier.js.map +1 -1
  841. package/packages/indexer_client/src/models/state-proof-verifier.mjs +1 -2
  842. package/packages/indexer_client/src/models/state-proof-verifier.mjs.map +1 -1
  843. package/packages/indexer_client/src/models/state-schema.js +2 -3
  844. package/packages/indexer_client/src/models/state-schema.js.map +1 -1
  845. package/packages/indexer_client/src/models/state-schema.mjs +1 -2
  846. package/packages/indexer_client/src/models/state-schema.mjs.map +1 -1
  847. package/packages/indexer_client/src/models/teal-key-value-store.d.ts +0 -1
  848. package/packages/indexer_client/src/models/teal-key-value-store.js +4 -5
  849. package/packages/indexer_client/src/models/teal-key-value-store.js.map +1 -1
  850. package/packages/indexer_client/src/models/teal-key-value-store.mjs +1 -2
  851. package/packages/indexer_client/src/models/teal-key-value-store.mjs.map +1 -1
  852. package/packages/indexer_client/src/models/teal-key-value.d.ts +0 -1
  853. package/packages/indexer_client/src/models/teal-key-value.js +4 -5
  854. package/packages/indexer_client/src/models/teal-key-value.js.map +1 -1
  855. package/packages/indexer_client/src/models/teal-key-value.mjs +1 -2
  856. package/packages/indexer_client/src/models/teal-key-value.mjs.map +1 -1
  857. package/packages/indexer_client/src/models/teal-value.js +4 -6
  858. package/packages/indexer_client/src/models/teal-value.js.map +1 -1
  859. package/packages/indexer_client/src/models/teal-value.mjs +1 -2
  860. package/packages/indexer_client/src/models/teal-value.mjs.map +1 -1
  861. package/packages/indexer_client/src/models/transaction-application.d.ts +0 -1
  862. package/packages/indexer_client/src/models/transaction-application.js +11 -12
  863. package/packages/indexer_client/src/models/transaction-application.js.map +1 -1
  864. package/packages/indexer_client/src/models/transaction-application.mjs +1 -2
  865. package/packages/indexer_client/src/models/transaction-application.mjs.map +1 -1
  866. package/packages/indexer_client/src/models/transaction-asset-config.d.ts +0 -1
  867. package/packages/indexer_client/src/models/transaction-asset-config.js +4 -5
  868. package/packages/indexer_client/src/models/transaction-asset-config.js.map +1 -1
  869. package/packages/indexer_client/src/models/transaction-asset-config.mjs +1 -2
  870. package/packages/indexer_client/src/models/transaction-asset-config.mjs.map +1 -1
  871. package/packages/indexer_client/src/models/transaction-asset-freeze.js +4 -6
  872. package/packages/indexer_client/src/models/transaction-asset-freeze.js.map +1 -1
  873. package/packages/indexer_client/src/models/transaction-asset-freeze.mjs +1 -2
  874. package/packages/indexer_client/src/models/transaction-asset-freeze.mjs.map +1 -1
  875. package/packages/indexer_client/src/models/transaction-asset-transfer.js +3 -4
  876. package/packages/indexer_client/src/models/transaction-asset-transfer.js.map +1 -1
  877. package/packages/indexer_client/src/models/transaction-asset-transfer.mjs +1 -2
  878. package/packages/indexer_client/src/models/transaction-asset-transfer.mjs.map +1 -1
  879. package/packages/indexer_client/src/models/transaction-heartbeat.d.ts +0 -1
  880. package/packages/indexer_client/src/models/transaction-heartbeat.js +7 -8
  881. package/packages/indexer_client/src/models/transaction-heartbeat.js.map +1 -1
  882. package/packages/indexer_client/src/models/transaction-heartbeat.mjs +1 -2
  883. package/packages/indexer_client/src/models/transaction-heartbeat.mjs.map +1 -1
  884. package/packages/indexer_client/src/models/transaction-keyreg.js +4 -5
  885. package/packages/indexer_client/src/models/transaction-keyreg.js.map +1 -1
  886. package/packages/indexer_client/src/models/transaction-keyreg.mjs +1 -2
  887. package/packages/indexer_client/src/models/transaction-keyreg.mjs.map +1 -1
  888. package/packages/indexer_client/src/models/transaction-payment.js +3 -4
  889. package/packages/indexer_client/src/models/transaction-payment.js.map +1 -1
  890. package/packages/indexer_client/src/models/transaction-payment.mjs +1 -2
  891. package/packages/indexer_client/src/models/transaction-payment.mjs.map +1 -1
  892. package/packages/indexer_client/src/models/transaction-response.js +4 -5
  893. package/packages/indexer_client/src/models/transaction-response.js.map +1 -1
  894. package/packages/indexer_client/src/models/transaction-response.mjs +1 -2
  895. package/packages/indexer_client/src/models/transaction-response.mjs.map +1 -1
  896. package/packages/indexer_client/src/models/transaction-signature-logicsig.d.ts +0 -1
  897. package/packages/indexer_client/src/models/transaction-signature-logicsig.js +6 -7
  898. package/packages/indexer_client/src/models/transaction-signature-logicsig.js.map +1 -1
  899. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs +1 -2
  900. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs.map +1 -1
  901. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js +2 -3
  902. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js.map +1 -1
  903. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs +1 -2
  904. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs.map +1 -1
  905. package/packages/indexer_client/src/models/transaction-signature-multisig.d.ts +0 -1
  906. package/packages/indexer_client/src/models/transaction-signature-multisig.js +5 -6
  907. package/packages/indexer_client/src/models/transaction-signature-multisig.js.map +1 -1
  908. package/packages/indexer_client/src/models/transaction-signature-multisig.mjs +1 -2
  909. package/packages/indexer_client/src/models/transaction-signature-multisig.mjs.map +1 -1
  910. package/packages/indexer_client/src/models/transaction-signature.d.ts +0 -1
  911. package/packages/indexer_client/src/models/transaction-signature.js +5 -6
  912. package/packages/indexer_client/src/models/transaction-signature.js.map +1 -1
  913. package/packages/indexer_client/src/models/transaction-signature.mjs +1 -2
  914. package/packages/indexer_client/src/models/transaction-signature.mjs.map +1 -1
  915. package/packages/indexer_client/src/models/transaction-state-proof.d.ts +0 -1
  916. package/packages/indexer_client/src/models/transaction-state-proof.js +5 -6
  917. package/packages/indexer_client/src/models/transaction-state-proof.js.map +1 -1
  918. package/packages/indexer_client/src/models/transaction-state-proof.mjs +1 -2
  919. package/packages/indexer_client/src/models/transaction-state-proof.mjs.map +1 -1
  920. package/packages/indexer_client/src/models/transaction.d.ts +0 -1
  921. package/packages/indexer_client/src/models/transaction.js +21 -22
  922. package/packages/indexer_client/src/models/transaction.js.map +1 -1
  923. package/packages/indexer_client/src/models/transaction.mjs +1 -2
  924. package/packages/indexer_client/src/models/transaction.mjs.map +1 -1
  925. package/packages/indexer_client/src/models/transactions-response.js +6 -7
  926. package/packages/indexer_client/src/models/transactions-response.js.map +1 -1
  927. package/packages/indexer_client/src/models/transactions-response.mjs +1 -2
  928. package/packages/indexer_client/src/models/transactions-response.mjs.map +1 -1
  929. package/packages/kmd_client/src/apis/api-service.js +44 -46
  930. package/packages/kmd_client/src/apis/api-service.js.map +1 -1
  931. package/packages/kmd_client/src/apis/api-service.mjs +3 -5
  932. package/packages/kmd_client/src/apis/api-service.mjs.map +1 -1
  933. package/packages/kmd_client/src/client.js +3 -4
  934. package/packages/kmd_client/src/client.js.map +1 -1
  935. package/packages/kmd_client/src/client.mjs +1 -2
  936. package/packages/kmd_client/src/client.mjs.map +1 -1
  937. package/packages/kmd_client/src/core/api-error.js +1 -2
  938. package/packages/kmd_client/src/core/api-error.js.map +1 -1
  939. package/packages/kmd_client/src/core/api-error.mjs +1 -1
  940. package/packages/kmd_client/src/core/api-error.mjs.map +1 -1
  941. package/packages/kmd_client/src/core/base-http-request.js +1 -2
  942. package/packages/kmd_client/src/core/base-http-request.js.map +1 -1
  943. package/packages/kmd_client/src/core/base-http-request.mjs +1 -1
  944. package/packages/kmd_client/src/core/base-http-request.mjs.map +1 -1
  945. package/packages/kmd_client/src/core/fetch-http-request.js +3 -4
  946. package/packages/kmd_client/src/core/fetch-http-request.js.map +1 -1
  947. package/packages/kmd_client/src/core/fetch-http-request.mjs +1 -2
  948. package/packages/kmd_client/src/core/fetch-http-request.mjs.map +1 -1
  949. package/packages/kmd_client/src/core/model-runtime.js +3 -4
  950. package/packages/kmd_client/src/core/model-runtime.js.map +1 -1
  951. package/packages/kmd_client/src/core/model-runtime.mjs +1 -2
  952. package/packages/kmd_client/src/core/model-runtime.mjs.map +1 -1
  953. package/packages/kmd_client/src/core/request.js +5 -6
  954. package/packages/kmd_client/src/core/request.js.map +1 -1
  955. package/packages/kmd_client/src/core/request.mjs +1 -2
  956. package/packages/kmd_client/src/core/request.mjs.map +1 -1
  957. package/packages/kmd_client/src/models/create-wallet-request.js +3 -4
  958. package/packages/kmd_client/src/models/create-wallet-request.js.map +1 -1
  959. package/packages/kmd_client/src/models/create-wallet-request.mjs +1 -2
  960. package/packages/kmd_client/src/models/create-wallet-request.mjs.map +1 -1
  961. package/packages/kmd_client/src/models/create-wallet-response.d.ts +0 -1
  962. package/packages/kmd_client/src/models/create-wallet-response.js +3 -4
  963. package/packages/kmd_client/src/models/create-wallet-response.js.map +1 -1
  964. package/packages/kmd_client/src/models/create-wallet-response.mjs +1 -2
  965. package/packages/kmd_client/src/models/create-wallet-response.mjs.map +1 -1
  966. package/packages/kmd_client/src/models/delete-key-request.d.ts +0 -1
  967. package/packages/kmd_client/src/models/delete-key-request.js +3 -4
  968. package/packages/kmd_client/src/models/delete-key-request.js.map +1 -1
  969. package/packages/kmd_client/src/models/delete-key-request.mjs +1 -2
  970. package/packages/kmd_client/src/models/delete-key-request.mjs.map +1 -1
  971. package/packages/kmd_client/src/models/delete-multisig-request.d.ts +0 -1
  972. package/packages/kmd_client/src/models/delete-multisig-request.js +3 -4
  973. package/packages/kmd_client/src/models/delete-multisig-request.js.map +1 -1
  974. package/packages/kmd_client/src/models/delete-multisig-request.mjs +1 -2
  975. package/packages/kmd_client/src/models/delete-multisig-request.mjs.map +1 -1
  976. package/packages/kmd_client/src/models/export-key-request.d.ts +0 -1
  977. package/packages/kmd_client/src/models/export-key-request.js +3 -4
  978. package/packages/kmd_client/src/models/export-key-request.js.map +1 -1
  979. package/packages/kmd_client/src/models/export-key-request.mjs +1 -2
  980. package/packages/kmd_client/src/models/export-key-request.mjs.map +1 -1
  981. package/packages/kmd_client/src/models/export-key-response.js +2 -4
  982. package/packages/kmd_client/src/models/export-key-response.js.map +1 -1
  983. package/packages/kmd_client/src/models/export-key-response.mjs +1 -2
  984. package/packages/kmd_client/src/models/export-key-response.mjs.map +1 -1
  985. package/packages/kmd_client/src/models/export-master-key-request.js +2 -3
  986. package/packages/kmd_client/src/models/export-master-key-request.js.map +1 -1
  987. package/packages/kmd_client/src/models/export-master-key-request.mjs +1 -2
  988. package/packages/kmd_client/src/models/export-master-key-request.mjs.map +1 -1
  989. package/packages/kmd_client/src/models/export-master-key-response.js +2 -4
  990. package/packages/kmd_client/src/models/export-master-key-response.js.map +1 -1
  991. package/packages/kmd_client/src/models/export-master-key-response.mjs +1 -2
  992. package/packages/kmd_client/src/models/export-master-key-response.mjs.map +1 -1
  993. package/packages/kmd_client/src/models/export-multisig-request.d.ts +0 -1
  994. package/packages/kmd_client/src/models/export-multisig-request.js +3 -4
  995. package/packages/kmd_client/src/models/export-multisig-request.js.map +1 -1
  996. package/packages/kmd_client/src/models/export-multisig-request.mjs +1 -2
  997. package/packages/kmd_client/src/models/export-multisig-request.mjs.map +1 -1
  998. package/packages/kmd_client/src/models/export-multisig-response.js +3 -4
  999. package/packages/kmd_client/src/models/export-multisig-response.js.map +1 -1
  1000. package/packages/kmd_client/src/models/export-multisig-response.mjs +1 -2
  1001. package/packages/kmd_client/src/models/export-multisig-response.mjs.map +1 -1
  1002. package/packages/kmd_client/src/models/generate-key-request.js +2 -4
  1003. package/packages/kmd_client/src/models/generate-key-request.js.map +1 -1
  1004. package/packages/kmd_client/src/models/generate-key-request.mjs +1 -2
  1005. package/packages/kmd_client/src/models/generate-key-request.mjs.map +1 -1
  1006. package/packages/kmd_client/src/models/generate-key-response.d.ts +0 -1
  1007. package/packages/kmd_client/src/models/generate-key-response.js +2 -4
  1008. package/packages/kmd_client/src/models/generate-key-response.js.map +1 -1
  1009. package/packages/kmd_client/src/models/generate-key-response.mjs +1 -2
  1010. package/packages/kmd_client/src/models/generate-key-response.mjs.map +1 -1
  1011. package/packages/kmd_client/src/models/import-key-request.js +3 -4
  1012. package/packages/kmd_client/src/models/import-key-request.js.map +1 -1
  1013. package/packages/kmd_client/src/models/import-key-request.mjs +1 -2
  1014. package/packages/kmd_client/src/models/import-key-request.mjs.map +1 -1
  1015. package/packages/kmd_client/src/models/import-key-response.d.ts +0 -1
  1016. package/packages/kmd_client/src/models/import-key-response.js +2 -4
  1017. package/packages/kmd_client/src/models/import-key-response.js.map +1 -1
  1018. package/packages/kmd_client/src/models/import-key-response.mjs +1 -2
  1019. package/packages/kmd_client/src/models/import-key-response.mjs.map +1 -1
  1020. package/packages/kmd_client/src/models/import-multisig-request.js +4 -5
  1021. package/packages/kmd_client/src/models/import-multisig-request.js.map +1 -1
  1022. package/packages/kmd_client/src/models/import-multisig-request.mjs +1 -2
  1023. package/packages/kmd_client/src/models/import-multisig-request.mjs.map +1 -1
  1024. package/packages/kmd_client/src/models/import-multisig-response.d.ts +0 -1
  1025. package/packages/kmd_client/src/models/import-multisig-response.js +2 -4
  1026. package/packages/kmd_client/src/models/import-multisig-response.js.map +1 -1
  1027. package/packages/kmd_client/src/models/import-multisig-response.mjs +1 -2
  1028. package/packages/kmd_client/src/models/import-multisig-response.mjs.map +1 -1
  1029. package/packages/kmd_client/src/models/init-wallet-handle-token-request.js +2 -3
  1030. package/packages/kmd_client/src/models/init-wallet-handle-token-request.js.map +1 -1
  1031. package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs +1 -2
  1032. package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs.map +1 -1
  1033. package/packages/kmd_client/src/models/init-wallet-handle-token-response.js +2 -4
  1034. package/packages/kmd_client/src/models/init-wallet-handle-token-response.js.map +1 -1
  1035. package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs +1 -2
  1036. package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs.map +1 -1
  1037. package/packages/kmd_client/src/models/list-keys-request.js +2 -4
  1038. package/packages/kmd_client/src/models/list-keys-request.js.map +1 -1
  1039. package/packages/kmd_client/src/models/list-keys-request.mjs +1 -2
  1040. package/packages/kmd_client/src/models/list-keys-request.mjs.map +1 -1
  1041. package/packages/kmd_client/src/models/list-keys-response.d.ts +0 -1
  1042. package/packages/kmd_client/src/models/list-keys-response.js +2 -4
  1043. package/packages/kmd_client/src/models/list-keys-response.js.map +1 -1
  1044. package/packages/kmd_client/src/models/list-keys-response.mjs +1 -2
  1045. package/packages/kmd_client/src/models/list-keys-response.mjs.map +1 -1
  1046. package/packages/kmd_client/src/models/list-multisig-request.js +2 -4
  1047. package/packages/kmd_client/src/models/list-multisig-request.js.map +1 -1
  1048. package/packages/kmd_client/src/models/list-multisig-request.mjs +1 -2
  1049. package/packages/kmd_client/src/models/list-multisig-request.mjs.map +1 -1
  1050. package/packages/kmd_client/src/models/list-multisig-response.d.ts +0 -1
  1051. package/packages/kmd_client/src/models/list-multisig-response.js +2 -4
  1052. package/packages/kmd_client/src/models/list-multisig-response.js.map +1 -1
  1053. package/packages/kmd_client/src/models/list-multisig-response.mjs +1 -2
  1054. package/packages/kmd_client/src/models/list-multisig-response.mjs.map +1 -1
  1055. package/packages/kmd_client/src/models/list-wallets-response.d.ts +0 -1
  1056. package/packages/kmd_client/src/models/list-wallets-response.js +4 -5
  1057. package/packages/kmd_client/src/models/list-wallets-response.js.map +1 -1
  1058. package/packages/kmd_client/src/models/list-wallets-response.mjs +1 -2
  1059. package/packages/kmd_client/src/models/list-wallets-response.mjs.map +1 -1
  1060. package/packages/kmd_client/src/models/multisig-sig.d.ts +0 -1
  1061. package/packages/kmd_client/src/models/multisig-sig.js +5 -6
  1062. package/packages/kmd_client/src/models/multisig-sig.js.map +1 -1
  1063. package/packages/kmd_client/src/models/multisig-sig.mjs +1 -2
  1064. package/packages/kmd_client/src/models/multisig-sig.mjs.map +1 -1
  1065. package/packages/kmd_client/src/models/multisig-subsig.js +2 -3
  1066. package/packages/kmd_client/src/models/multisig-subsig.js.map +1 -1
  1067. package/packages/kmd_client/src/models/multisig-subsig.mjs +1 -2
  1068. package/packages/kmd_client/src/models/multisig-subsig.mjs.map +1 -1
  1069. package/packages/kmd_client/src/models/release-wallet-handle-token-request.js +2 -4
  1070. package/packages/kmd_client/src/models/release-wallet-handle-token-request.js.map +1 -1
  1071. package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs +1 -2
  1072. package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs.map +1 -1
  1073. package/packages/kmd_client/src/models/rename-wallet-request.js +2 -3
  1074. package/packages/kmd_client/src/models/rename-wallet-request.js.map +1 -1
  1075. package/packages/kmd_client/src/models/rename-wallet-request.mjs +1 -2
  1076. package/packages/kmd_client/src/models/rename-wallet-request.mjs.map +1 -1
  1077. package/packages/kmd_client/src/models/rename-wallet-response.d.ts +0 -1
  1078. package/packages/kmd_client/src/models/rename-wallet-response.js +3 -4
  1079. package/packages/kmd_client/src/models/rename-wallet-response.js.map +1 -1
  1080. package/packages/kmd_client/src/models/rename-wallet-response.mjs +1 -2
  1081. package/packages/kmd_client/src/models/rename-wallet-response.mjs.map +1 -1
  1082. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js +2 -4
  1083. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js.map +1 -1
  1084. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs +1 -2
  1085. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs.map +1 -1
  1086. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.d.ts +0 -1
  1087. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js +3 -4
  1088. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js.map +1 -1
  1089. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs +1 -2
  1090. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs.map +1 -1
  1091. package/packages/kmd_client/src/models/sign-multisig-response.js +2 -4
  1092. package/packages/kmd_client/src/models/sign-multisig-response.js.map +1 -1
  1093. package/packages/kmd_client/src/models/sign-multisig-response.mjs +1 -2
  1094. package/packages/kmd_client/src/models/sign-multisig-response.mjs.map +1 -1
  1095. package/packages/kmd_client/src/models/sign-multisig-txn-request.d.ts +0 -1
  1096. package/packages/kmd_client/src/models/sign-multisig-txn-request.js +5 -6
  1097. package/packages/kmd_client/src/models/sign-multisig-txn-request.js.map +1 -1
  1098. package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs +1 -2
  1099. package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs.map +1 -1
  1100. package/packages/kmd_client/src/models/sign-program-multisig-request.d.ts +0 -1
  1101. package/packages/kmd_client/src/models/sign-program-multisig-request.js +7 -8
  1102. package/packages/kmd_client/src/models/sign-program-multisig-request.js.map +1 -1
  1103. package/packages/kmd_client/src/models/sign-program-multisig-request.mjs +1 -2
  1104. package/packages/kmd_client/src/models/sign-program-multisig-request.mjs.map +1 -1
  1105. package/packages/kmd_client/src/models/sign-program-multisig-response.js +2 -4
  1106. package/packages/kmd_client/src/models/sign-program-multisig-response.js.map +1 -1
  1107. package/packages/kmd_client/src/models/sign-program-multisig-response.mjs +1 -2
  1108. package/packages/kmd_client/src/models/sign-program-multisig-response.mjs.map +1 -1
  1109. package/packages/kmd_client/src/models/sign-program-request.d.ts +0 -1
  1110. package/packages/kmd_client/src/models/sign-program-request.js +4 -5
  1111. package/packages/kmd_client/src/models/sign-program-request.js.map +1 -1
  1112. package/packages/kmd_client/src/models/sign-program-request.mjs +1 -2
  1113. package/packages/kmd_client/src/models/sign-program-request.mjs.map +1 -1
  1114. package/packages/kmd_client/src/models/sign-program-response.js +2 -4
  1115. package/packages/kmd_client/src/models/sign-program-response.js.map +1 -1
  1116. package/packages/kmd_client/src/models/sign-program-response.mjs +1 -2
  1117. package/packages/kmd_client/src/models/sign-program-response.mjs.map +1 -1
  1118. package/packages/kmd_client/src/models/sign-transaction-response.js +2 -4
  1119. package/packages/kmd_client/src/models/sign-transaction-response.js.map +1 -1
  1120. package/packages/kmd_client/src/models/sign-transaction-response.mjs +1 -2
  1121. package/packages/kmd_client/src/models/sign-transaction-response.mjs.map +1 -1
  1122. package/packages/kmd_client/src/models/sign-txn-request.js +3 -4
  1123. package/packages/kmd_client/src/models/sign-txn-request.js.map +1 -1
  1124. package/packages/kmd_client/src/models/sign-txn-request.mjs +1 -2
  1125. package/packages/kmd_client/src/models/sign-txn-request.mjs.map +1 -1
  1126. package/packages/kmd_client/src/models/tx-type.js +2 -4
  1127. package/packages/kmd_client/src/models/tx-type.js.map +1 -1
  1128. package/packages/kmd_client/src/models/tx-type.mjs +1 -2
  1129. package/packages/kmd_client/src/models/tx-type.mjs.map +1 -1
  1130. package/packages/kmd_client/src/models/versions-response.js +2 -4
  1131. package/packages/kmd_client/src/models/versions-response.js.map +1 -1
  1132. package/packages/kmd_client/src/models/versions-response.mjs +1 -2
  1133. package/packages/kmd_client/src/models/versions-response.mjs.map +1 -1
  1134. package/packages/kmd_client/src/models/wallet-handle.d.ts +0 -1
  1135. package/packages/kmd_client/src/models/wallet-handle.js +4 -5
  1136. package/packages/kmd_client/src/models/wallet-handle.js.map +1 -1
  1137. package/packages/kmd_client/src/models/wallet-handle.mjs +1 -2
  1138. package/packages/kmd_client/src/models/wallet-handle.mjs.map +1 -1
  1139. package/packages/kmd_client/src/models/wallet-info-request.js +2 -4
  1140. package/packages/kmd_client/src/models/wallet-info-request.js.map +1 -1
  1141. package/packages/kmd_client/src/models/wallet-info-request.mjs +1 -2
  1142. package/packages/kmd_client/src/models/wallet-info-request.mjs.map +1 -1
  1143. package/packages/kmd_client/src/models/wallet-info-response.d.ts +0 -1
  1144. package/packages/kmd_client/src/models/wallet-info-response.js +3 -4
  1145. package/packages/kmd_client/src/models/wallet-info-response.js.map +1 -1
  1146. package/packages/kmd_client/src/models/wallet-info-response.mjs +1 -2
  1147. package/packages/kmd_client/src/models/wallet-info-response.mjs.map +1 -1
  1148. package/packages/kmd_client/src/models/wallet.d.ts +0 -1
  1149. package/packages/kmd_client/src/models/wallet.js +7 -8
  1150. package/packages/kmd_client/src/models/wallet.js.map +1 -1
  1151. package/packages/kmd_client/src/models/wallet.mjs +1 -2
  1152. package/packages/kmd_client/src/models/wallet.mjs.map +1 -1
  1153. package/packages/testing/src/globalSetup.js +3 -4
  1154. package/packages/testing/src/globalSetup.js.map +1 -1
  1155. package/packages/testing/src/globalSetup.mjs +1 -2
  1156. package/packages/testing/src/globalSetup.mjs.map +1 -1
  1157. package/packages/testing/src/mockServer.js +1 -2
  1158. package/packages/testing/src/mockServer.js.map +1 -1
  1159. package/packages/testing/src/mockServer.mjs +1 -1
  1160. package/packages/transact/src/logicsig.d.ts +0 -1
  1161. package/packages/transact/src/logicsig.js +8 -9
  1162. package/packages/transact/src/logicsig.js.map +1 -1
  1163. package/packages/transact/src/logicsig.mjs +1 -2
  1164. package/packages/transact/src/logicsig.mjs.map +1 -1
  1165. package/packages/transact/src/multisig.js +9 -10
  1166. package/packages/transact/src/multisig.js.map +1 -1
  1167. package/packages/transact/src/multisig.mjs +6 -7
  1168. package/packages/transact/src/multisig.mjs.map +1 -1
  1169. package/packages/transact/src/signer.js +5 -6
  1170. package/packages/transact/src/signer.js.map +1 -1
  1171. package/packages/transact/src/signer.mjs +1 -2
  1172. package/packages/transact/src/signer.mjs.map +1 -1
  1173. package/packages/transact/src/transactions/app-call.d.ts +8 -19
  1174. package/packages/transact/src/transactions/app-call.js +22 -23
  1175. package/packages/transact/src/transactions/app-call.js.map +1 -1
  1176. package/packages/transact/src/transactions/app-call.mjs +21 -22
  1177. package/packages/transact/src/transactions/app-call.mjs.map +1 -1
  1178. package/packages/transact/src/transactions/asset-config.d.ts +0 -1
  1179. package/packages/transact/src/transactions/asset-config.js +11 -12
  1180. package/packages/transact/src/transactions/asset-config.js.map +1 -1
  1181. package/packages/transact/src/transactions/asset-config.mjs +10 -11
  1182. package/packages/transact/src/transactions/asset-config.mjs.map +1 -1
  1183. package/packages/transact/src/transactions/asset-freeze.d.ts +0 -1
  1184. package/packages/transact/src/transactions/asset-freeze.js +2 -3
  1185. package/packages/transact/src/transactions/asset-freeze.js.map +1 -1
  1186. package/packages/transact/src/transactions/asset-freeze.mjs +1 -2
  1187. package/packages/transact/src/transactions/asset-freeze.mjs.map +1 -1
  1188. package/packages/transact/src/transactions/asset-transfer.d.ts +0 -1
  1189. package/packages/transact/src/transactions/asset-transfer.js +2 -3
  1190. package/packages/transact/src/transactions/asset-transfer.js.map +1 -1
  1191. package/packages/transact/src/transactions/asset-transfer.mjs +1 -2
  1192. package/packages/transact/src/transactions/asset-transfer.mjs.map +1 -1
  1193. package/packages/transact/src/transactions/common.js +1 -2
  1194. package/packages/transact/src/transactions/common.js.map +1 -1
  1195. package/packages/transact/src/transactions/common.mjs +1 -1
  1196. package/packages/transact/src/transactions/common.mjs.map +1 -1
  1197. package/packages/transact/src/transactions/heartbeat.d.ts +8 -19
  1198. package/packages/transact/src/transactions/key-registration.js +2 -3
  1199. package/packages/transact/src/transactions/key-registration.js.map +1 -1
  1200. package/packages/transact/src/transactions/key-registration.mjs +1 -2
  1201. package/packages/transact/src/transactions/key-registration.mjs.map +1 -1
  1202. package/packages/transact/src/transactions/payment.d.ts +0 -1
  1203. package/packages/transact/src/transactions/reference-types-meta.d.ts +0 -1
  1204. package/packages/transact/src/transactions/reference-types-meta.js +4 -5
  1205. package/packages/transact/src/transactions/reference-types-meta.js.map +1 -1
  1206. package/packages/transact/src/transactions/reference-types-meta.mjs +1 -2
  1207. package/packages/transact/src/transactions/reference-types-meta.mjs.map +1 -1
  1208. package/packages/transact/src/transactions/signed-transaction-meta.d.ts +0 -1
  1209. package/packages/transact/src/transactions/signed-transaction-meta.js +8 -9
  1210. package/packages/transact/src/transactions/signed-transaction-meta.js.map +1 -1
  1211. package/packages/transact/src/transactions/signed-transaction-meta.mjs +1 -2
  1212. package/packages/transact/src/transactions/signed-transaction-meta.mjs.map +1 -1
  1213. package/packages/transact/src/transactions/signed-transaction.d.ts +0 -1
  1214. package/packages/transact/src/transactions/signed-transaction.js +5 -6
  1215. package/packages/transact/src/transactions/signed-transaction.js.map +1 -1
  1216. package/packages/transact/src/transactions/signed-transaction.mjs +1 -2
  1217. package/packages/transact/src/transactions/signed-transaction.mjs.map +1 -1
  1218. package/packages/transact/src/transactions/state-proof.d.ts +2 -5
  1219. package/packages/transact/src/transactions/transaction-meta.d.ts +0 -1
  1220. package/packages/transact/src/transactions/transaction-meta.js +15 -16
  1221. package/packages/transact/src/transactions/transaction-meta.js.map +1 -1
  1222. package/packages/transact/src/transactions/transaction-meta.mjs +1 -2
  1223. package/packages/transact/src/transactions/transaction-meta.mjs.map +1 -1
  1224. package/packages/transact/src/transactions/transaction-type.d.ts +1 -1
  1225. package/packages/transact/src/transactions/transaction-type.js +1 -2
  1226. package/packages/transact/src/transactions/transaction-type.js.map +1 -1
  1227. package/packages/transact/src/transactions/transaction-type.mjs +1 -1
  1228. package/packages/transact/src/transactions/transaction-type.mjs.map +1 -1
  1229. package/packages/transact/src/transactions/transaction.js +22 -23
  1230. package/packages/transact/src/transactions/transaction.js.map +1 -1
  1231. package/packages/transact/src/transactions/transaction.mjs +8 -9
  1232. package/packages/transact/src/transactions/transaction.mjs.map +1 -1
  1233. package/testing/account.d.ts +0 -1
  1234. package/testing/account.js +4 -5
  1235. package/testing/account.js.map +1 -1
  1236. package/testing/account.mjs +1 -2
  1237. package/testing/account.mjs.map +1 -1
  1238. package/testing/fixtures/algokit-log-capture-fixture.d.ts +0 -1
  1239. package/testing/fixtures/algokit-log-capture-fixture.js +3 -4
  1240. package/testing/fixtures/algokit-log-capture-fixture.js.map +1 -1
  1241. package/testing/fixtures/algokit-log-capture-fixture.mjs +1 -2
  1242. package/testing/fixtures/algokit-log-capture-fixture.mjs.map +1 -1
  1243. package/testing/fixtures/algorand-fixture.d.ts +0 -1
  1244. package/testing/fixtures/algorand-fixture.js +8 -9
  1245. package/testing/fixtures/algorand-fixture.js.map +1 -1
  1246. package/testing/fixtures/algorand-fixture.mjs +1 -2
  1247. package/testing/fixtures/algorand-fixture.mjs.map +1 -1
  1248. package/testing/index.js +10 -11
  1249. package/testing/index.mjs +1 -2
  1250. package/testing/indexer.js +1 -2
  1251. package/testing/indexer.js.map +1 -1
  1252. package/testing/indexer.mjs +1 -1
  1253. package/testing/test-logger.d.ts +0 -1
  1254. package/testing/test-logger.js +2 -3
  1255. package/testing/test-logger.js.map +1 -1
  1256. package/testing/test-logger.mjs +1 -2
  1257. package/testing/test-logger.mjs.map +1 -1
  1258. package/testing/transaction-logger.d.ts +0 -1
  1259. package/testing/transaction-logger.js +4 -5
  1260. package/testing/transaction-logger.js.map +1 -1
  1261. package/testing/transaction-logger.mjs +1 -2
  1262. package/testing/transaction-logger.mjs.map +1 -1
  1263. package/transact/index.js +12 -13
  1264. package/transact/index.mjs +1 -2
  1265. package/transaction/index.js +4 -5
  1266. package/transaction/index.mjs +1 -2
  1267. package/transaction/perform-transaction-composer-simulate.d.ts +0 -1
  1268. package/transaction/perform-transaction-composer-simulate.js +3 -5
  1269. package/transaction/perform-transaction-composer-simulate.js.map +1 -1
  1270. package/transaction/perform-transaction-composer-simulate.mjs +3 -4
  1271. package/transaction/perform-transaction-composer-simulate.mjs.map +1 -1
  1272. package/transaction/transaction.js +2 -3
  1273. package/transaction/transaction.js.map +1 -1
  1274. package/transaction/transaction.mjs +1 -2
  1275. package/transaction/transaction.mjs.map +1 -1
  1276. package/transactions/app-call.d.ts +15 -32
  1277. package/transactions/app-call.js +17 -18
  1278. package/transactions/app-call.js.map +1 -1
  1279. package/transactions/app-call.mjs +10 -11
  1280. package/transactions/app-call.mjs.map +1 -1
  1281. package/transactions/asset-config.d.ts +4 -10
  1282. package/transactions/asset-config.js +5 -6
  1283. package/transactions/asset-config.js.map +1 -1
  1284. package/transactions/asset-config.mjs +1 -2
  1285. package/transactions/asset-config.mjs.map +1 -1
  1286. package/transactions/asset-transfer.d.ts +4 -10
  1287. package/transactions/asset-transfer.js +5 -6
  1288. package/transactions/asset-transfer.js.map +1 -1
  1289. package/transactions/asset-transfer.mjs +1 -2
  1290. package/transactions/asset-transfer.mjs.map +1 -1
  1291. package/transactions/common.d.ts +7 -14
  1292. package/transactions/common.js +3 -4
  1293. package/transactions/common.js.map +1 -1
  1294. package/transactions/common.mjs +1 -2
  1295. package/transactions/common.mjs.map +1 -1
  1296. package/transactions/fee-coverage.js +1 -2
  1297. package/transactions/fee-coverage.js.map +1 -1
  1298. package/transactions/fee-coverage.mjs +1 -1
  1299. package/transactions/fee-coverage.mjs.map +1 -1
  1300. package/transactions/key-registration.d.ts +6 -14
  1301. package/transactions/key-registration.js +4 -5
  1302. package/transactions/key-registration.js.map +1 -1
  1303. package/transactions/key-registration.mjs +1 -2
  1304. package/transactions/key-registration.mjs.map +1 -1
  1305. package/transactions/method-call.d.ts +1 -3
  1306. package/transactions/method-call.js +11 -14
  1307. package/transactions/method-call.js.map +1 -1
  1308. package/transactions/method-call.mjs +2 -5
  1309. package/transactions/method-call.mjs.map +1 -1
  1310. package/transactions/payment.d.ts +1 -4
  1311. package/transactions/payment.js +5 -6
  1312. package/transactions/payment.js.map +1 -1
  1313. package/transactions/payment.mjs +1 -2
  1314. package/transactions/payment.mjs.map +1 -1
  1315. package/types/account-manager.js +3 -4
  1316. package/types/account-manager.js.map +1 -1
  1317. package/types/account-manager.mjs +1 -2
  1318. package/types/account-manager.mjs.map +1 -1
  1319. package/types/account.js +3 -5
  1320. package/types/account.js.map +1 -1
  1321. package/types/account.mjs +1 -2
  1322. package/types/account.mjs.map +1 -1
  1323. package/types/algorand-client-transaction-creator.js +3 -5
  1324. package/types/algorand-client-transaction-creator.js.map +1 -1
  1325. package/types/algorand-client-transaction-creator.mjs +1 -2
  1326. package/types/algorand-client-transaction-creator.mjs.map +1 -1
  1327. package/types/algorand-client-transaction-sender.js +3 -5
  1328. package/types/algorand-client-transaction-sender.js.map +1 -1
  1329. package/types/algorand-client-transaction-sender.mjs +1 -2
  1330. package/types/algorand-client-transaction-sender.mjs.map +1 -1
  1331. package/types/algorand-client.js +3 -5
  1332. package/types/algorand-client.js.map +1 -1
  1333. package/types/algorand-client.mjs +1 -2
  1334. package/types/algorand-client.mjs.map +1 -1
  1335. package/types/amount.js +3 -5
  1336. package/types/amount.js.map +1 -1
  1337. package/types/amount.mjs +1 -2
  1338. package/types/amount.mjs.map +1 -1
  1339. package/types/app-client.js +3 -5
  1340. package/types/app-client.js.map +1 -1
  1341. package/types/app-client.mjs +1 -2
  1342. package/types/app-client.mjs.map +1 -1
  1343. package/types/app-deployer.js +3 -5
  1344. package/types/app-deployer.js.map +1 -1
  1345. package/types/app-deployer.mjs +1 -2
  1346. package/types/app-deployer.mjs.map +1 -1
  1347. package/types/app-factory.js +3 -5
  1348. package/types/app-factory.js.map +1 -1
  1349. package/types/app-factory.mjs +1 -2
  1350. package/types/app-factory.mjs.map +1 -1
  1351. package/types/app-manager.js +3 -5
  1352. package/types/app-manager.js.map +1 -1
  1353. package/types/app-manager.mjs +1 -2
  1354. package/types/app-manager.mjs.map +1 -1
  1355. package/types/app-spec.js +3 -5
  1356. package/types/app-spec.js.map +1 -1
  1357. package/types/app-spec.mjs +1 -2
  1358. package/types/app-spec.mjs.map +1 -1
  1359. package/types/app.js +3 -4
  1360. package/types/app.js.map +1 -1
  1361. package/types/app.mjs +1 -2
  1362. package/types/app.mjs.map +1 -1
  1363. package/types/asset-manager.js +3 -5
  1364. package/types/asset-manager.js.map +1 -1
  1365. package/types/asset-manager.mjs +1 -2
  1366. package/types/asset-manager.mjs.map +1 -1
  1367. package/types/async-event-emitter.js +3 -5
  1368. package/types/async-event-emitter.js.map +1 -1
  1369. package/types/async-event-emitter.mjs +1 -2
  1370. package/types/async-event-emitter.mjs.map +1 -1
  1371. package/types/client-manager.js +3 -5
  1372. package/types/client-manager.js.map +1 -1
  1373. package/types/client-manager.mjs +1 -2
  1374. package/types/client-manager.mjs.map +1 -1
  1375. package/types/composer.js +3 -5
  1376. package/types/composer.js.map +1 -1
  1377. package/types/composer.mjs +1 -2
  1378. package/types/composer.mjs.map +1 -1
  1379. package/types/config.js +3 -5
  1380. package/types/config.js.map +1 -1
  1381. package/types/config.mjs +1 -2
  1382. package/types/config.mjs.map +1 -1
  1383. package/types/debugging.js +4 -5
  1384. package/types/debugging.js.map +1 -1
  1385. package/types/debugging.mjs +3 -4
  1386. package/types/debugging.mjs.map +1 -1
  1387. package/types/dispenser-client.js +3 -5
  1388. package/types/dispenser-client.js.map +1 -1
  1389. package/types/dispenser-client.mjs +1 -2
  1390. package/types/dispenser-client.mjs.map +1 -1
  1391. package/types/indexer.js +3 -4
  1392. package/types/indexer.js.map +1 -1
  1393. package/types/indexer.mjs +1 -2
  1394. package/types/indexer.mjs.map +1 -1
  1395. package/types/kmd-account-manager.js +3 -5
  1396. package/types/kmd-account-manager.js.map +1 -1
  1397. package/types/kmd-account-manager.mjs +1 -2
  1398. package/types/kmd-account-manager.mjs.map +1 -1
  1399. package/types/lifecycle-events.js +3 -5
  1400. package/types/lifecycle-events.js.map +1 -1
  1401. package/types/lifecycle-events.mjs +1 -2
  1402. package/types/lifecycle-events.mjs.map +1 -1
  1403. package/types/logging.js +3 -4
  1404. package/types/logging.js.map +1 -1
  1405. package/types/logging.mjs +1 -2
  1406. package/types/logging.mjs.map +1 -1
  1407. package/types/logic-error.js +3 -5
  1408. package/types/logic-error.js.map +1 -1
  1409. package/types/logic-error.mjs +1 -2
  1410. package/types/logic-error.mjs.map +1 -1
  1411. package/types/network-client.js +3 -5
  1412. package/types/network-client.js.map +1 -1
  1413. package/types/network-client.mjs +1 -2
  1414. package/types/network-client.mjs.map +1 -1
  1415. package/updatable-config.js +3 -4
  1416. package/updatable-config.js.map +1 -1
  1417. package/updatable-config.mjs +1 -2
  1418. package/updatable-config.mjs.map +1 -1
  1419. package/util.js +2 -3
  1420. package/util.js.map +1 -1
  1421. package/util.mjs +1 -2
  1422. package/util.mjs.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"signer.js","names":["Address","encodeTransaction","encodeSignedTransaction","concatArrays"],"sources":["../../../../packages/transact/src/signer.ts"],"sourcesContent":["import { Address, Addressable, concatArrays, Expand, ReadableAddress } from '@algorandfoundation/algokit-common'\nimport { DelegatedLsigSigner, LogicSig, ProgramDataSigner } from './logicsig'\nimport { encodeSignedTransaction, SignedTransaction, validateSignedTransaction } from './transactions/signed-transaction'\nimport { encodeTransaction, Transaction } from './transactions/transaction'\nimport type { RawEd25519Signer } from '@algorandfoundation/algokit-crypto'\nimport { MultisigAccount } from './multisig'\n\n/** Function for signing a group of transactions */\nexport type TransactionSigner = (txnGroup: Transaction[], indexesToSign: number[]) => Promise<Uint8Array[]>\n\n/** A transaction signer attached to an address */\nexport interface AddressWithTransactionSigner extends Addressable {\n signer: TransactionSigner\n}\n\n/** An address that can be used to send transactions that may or may not have a signer */\nexport type SendingAddress = ReadableAddress | AddressWithTransactionSigner\n\n/** A delegated logic signature signer attached to an address */\nexport interface AddressWithDelegatedLsigSigner extends Addressable {\n lsigSigner: DelegatedLsigSigner\n}\n\nexport interface AddressWithProgramDataSigner extends Addressable {\n programDataSigner: ProgramDataSigner\n}\n\nexport type MxBytesSigner = (bytesToSign: Uint8Array) => Promise<Uint8Array>\n\nexport interface AddressWithMxBytesSigner extends Addressable {\n mxBytesSigner: MxBytesSigner\n}\n\nexport type AddressWithSigners = Expand<\n Addressable & AddressWithTransactionSigner & AddressWithDelegatedLsigSigner & AddressWithProgramDataSigner & AddressWithMxBytesSigner\n>\n\nconst SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]) // \"MX\"\n\n/**\n * Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback\n * @param args - The arguments for generating signers\n * @param args.ed25519Pubkey - The ed25519 public key used for signing\n * @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.\n * @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key\n * @returns An object containing the sending address and various signer functions\n */\nexport function generateAddressWithSigners(args: {\n ed25519Pubkey: Uint8Array\n sendingAddress?: Address\n rawEd25519Signer: RawEd25519Signer\n}): AddressWithSigners {\n const { ed25519Pubkey, rawEd25519Signer } = args\n const authAddr = new Address(ed25519Pubkey)\n const sendingAddress = args.sendingAddress ?? authAddr\n\n const signer: TransactionSigner = async (txnGroup: Transaction[], indexesToSign: number[]) => {\n const stxns: SignedTransaction[] = []\n for (const index of indexesToSign) {\n const txn = txnGroup[index]\n const bytesToSign = encodeTransaction(txn)\n const signature = await rawEd25519Signer(bytesToSign)\n const stxn: SignedTransaction = {\n txn,\n sig: signature,\n }\n\n if (!txn.sender.equals(sendingAddress)) {\n stxn.authAddress = authAddr\n }\n\n stxns.push(stxn)\n }\n\n return stxns.map((stxn) => {\n validateSignedTransaction(stxn)\n return encodeSignedTransaction(stxn)\n })\n }\n\n const lsigSigner: DelegatedLsigSigner = async (lsig, msig) => {\n const bytesToSign = lsig.bytesToSignForDelegation(msig)\n const sig = await rawEd25519Signer(bytesToSign)\n return { sig, addr: sendingAddress }\n }\n\n const programDataSigner: ProgramDataSigner = async (data, lsig) => {\n const bytesToSign = lsig.programDataToSign(data)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const mxBytesSigner: MxBytesSigner = async (bytes: Uint8Array) => {\n const bytesToSign = concatArrays(SIGN_BYTES_PREFIX, bytes)\n return await rawEd25519Signer(bytesToSign)\n }\n\n return { addr: sendingAddress, signer, lsigSigner, programDataSigner, mxBytesSigner }\n}\n\n/**\n * Create a makeEmptyTransactionSigner that does not specify any signer or\n * signing capabilities. This should only be used to simulate transactions.\n */\nexport function makeEmptyTransactionSigner(): TransactionSigner {\n return (txnGroup: Transaction[], indexesToSign: number[]) => {\n const unsigned: Uint8Array[] = []\n\n for (const index of indexesToSign) {\n const stxn: SignedTransaction = {\n txn: txnGroup[index],\n sig: new Uint8Array(64).fill(0),\n }\n validateSignedTransaction(stxn)\n unsigned.push(encodeSignedTransaction(stxn))\n }\n\n return Promise.resolve(unsigned)\n }\n}\n\nexport const bytesForSigning = {\n transaction(txn: Transaction): Uint8Array {\n return encodeTransaction(txn)\n },\n mxBytes(bytes: Uint8Array): Uint8Array {\n return concatArrays(SIGN_BYTES_PREFIX, bytes)\n },\n lsigForDelegation(lsig: LogicSig, msig?: MultisigAccount): Uint8Array {\n return lsig.bytesToSignForDelegation(msig)\n },\n programData(lsig: LogicSig, data: Uint8Array): Uint8Array {\n return lsig.programDataToSign(data)\n },\n}\n"],"mappings":";;;;;;AAqCA,MAAM,oBAAoB,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC;;;;;;;;;AAUnD,SAAgB,2BAA2B,MAIpB;CACrB,MAAM,EAAE,eAAe,qBAAqB;CAC5C,MAAM,WAAW,IAAIA,wBAAQ,cAAc;CAC3C,MAAM,iBAAiB,KAAK,kBAAkB;CAE9C,MAAM,SAA4B,OAAO,UAAyB,kBAA4B;EAC5F,MAAM,QAA6B,EAAE;AACrC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,MAAM,SAAS;GAGrB,MAAM,OAA0B;IAC9B;IACA,KAHgB,MAAM,iBADJC,sCAAkB,IAAI,CACW;IAIpD;AAED,OAAI,CAAC,IAAI,OAAO,OAAO,eAAe,CACpC,MAAK,cAAc;AAGrB,SAAM,KAAK,KAAK;;AAGlB,SAAO,MAAM,KAAK,SAAS;AACzB,wDAA0B,KAAK;AAC/B,UAAOC,mDAAwB,KAAK;IACpC;;CAGJ,MAAM,aAAkC,OAAO,MAAM,SAAS;AAG5D,SAAO;GAAE,KADG,MAAM,iBADE,KAAK,yBAAyB,KAAK,CACR;GACjC,MAAM;GAAgB;;CAGtC,MAAM,oBAAuC,OAAO,MAAM,SAAS;AAEjE,SAAO,MAAM,iBADO,KAAK,kBAAkB,KAAK,CACN;;CAG5C,MAAM,gBAA+B,OAAO,UAAsB;AAEhE,SAAO,MAAM,iBADOC,2BAAa,mBAAmB,MAAM,CAChB;;AAG5C,QAAO;EAAE,MAAM;EAAgB;EAAQ;EAAY;EAAmB;EAAe;;;;;;AAOvF,SAAgB,6BAAgD;AAC9D,SAAQ,UAAyB,kBAA4B;EAC3D,MAAM,WAAyB,EAAE;AAEjC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,OAA0B;IAC9B,KAAK,SAAS;IACd,KAAK,IAAI,WAAW,GAAG,CAAC,KAAK,EAAE;IAChC;AACD,wDAA0B,KAAK;AAC/B,YAAS,KAAKD,mDAAwB,KAAK,CAAC;;AAG9C,SAAO,QAAQ,QAAQ,SAAS;;;AAIpC,MAAa,kBAAkB;CAC7B,YAAY,KAA8B;AACxC,SAAOD,sCAAkB,IAAI;;CAE/B,QAAQ,OAA+B;AACrC,SAAOE,2BAAa,mBAAmB,MAAM;;CAE/C,kBAAkB,MAAgB,MAAoC;AACpE,SAAO,KAAK,yBAAyB,KAAK;;CAE5C,YAAY,MAAgB,MAA8B;AACxD,SAAO,KAAK,kBAAkB,KAAK;;CAEtC"}
1
+ {"version":3,"file":"signer.js","names":["Address","encodeTransaction","encodeSignedTransaction","concatArrays"],"sources":["../../../../packages/transact/src/signer.ts"],"sourcesContent":["import { Address, Addressable, concatArrays, Expand, ReadableAddress } from '@algorandfoundation/algokit-common'\nimport { DelegatedLsigSigner, LogicSig, ProgramDataSigner } from './logicsig'\nimport { encodeSignedTransaction, SignedTransaction, validateSignedTransaction } from './transactions/signed-transaction'\nimport { encodeTransaction, Transaction } from './transactions/transaction'\nimport type { RawEd25519Signer } from '@algorandfoundation/algokit-crypto'\nimport { MultisigAccount } from './multisig'\n\n/** Function for signing a group of transactions */\nexport type TransactionSigner = (txnGroup: Transaction[], indexesToSign: number[]) => Promise<Uint8Array[]>\n\n/** A transaction signer attached to an address */\nexport interface AddressWithTransactionSigner extends Addressable {\n signer: TransactionSigner\n}\n\n/** An address that can be used to send transactions that may or may not have a signer */\nexport type SendingAddress = ReadableAddress | AddressWithTransactionSigner\n\n/** A delegated logic signature signer attached to an address */\nexport interface AddressWithDelegatedLsigSigner extends Addressable {\n lsigSigner: DelegatedLsigSigner\n}\n\nexport interface AddressWithProgramDataSigner extends Addressable {\n programDataSigner: ProgramDataSigner\n}\n\nexport type MxBytesSigner = (bytesToSign: Uint8Array) => Promise<Uint8Array>\n\nexport interface AddressWithMxBytesSigner extends Addressable {\n mxBytesSigner: MxBytesSigner\n}\n\nexport type AddressWithSigners = Expand<\n Addressable & AddressWithTransactionSigner & AddressWithDelegatedLsigSigner & AddressWithProgramDataSigner & AddressWithMxBytesSigner\n>\n\nconst SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]) // \"MX\"\n\n/**\n * Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback\n * @param args - The arguments for generating signers\n * @param args.ed25519Pubkey - The ed25519 public key used for signing\n * @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.\n * @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key\n * @returns An object containing the sending address and various signer functions\n */\nexport function generateAddressWithSigners(args: {\n ed25519Pubkey: Uint8Array\n sendingAddress?: Address\n rawEd25519Signer: RawEd25519Signer\n}): AddressWithSigners {\n const { ed25519Pubkey, rawEd25519Signer } = args\n const authAddr = new Address(ed25519Pubkey)\n const sendingAddress = args.sendingAddress ?? authAddr\n\n const signer: TransactionSigner = async (txnGroup: Transaction[], indexesToSign: number[]) => {\n const stxns: SignedTransaction[] = []\n for (const index of indexesToSign) {\n const txn = txnGroup[index]\n const bytesToSign = encodeTransaction(txn)\n const signature = await rawEd25519Signer(bytesToSign)\n const stxn: SignedTransaction = {\n txn,\n sig: signature,\n }\n\n if (!txn.sender.equals(sendingAddress)) {\n stxn.authAddress = authAddr\n }\n\n stxns.push(stxn)\n }\n\n return stxns.map((stxn) => {\n validateSignedTransaction(stxn)\n return encodeSignedTransaction(stxn)\n })\n }\n\n const lsigSigner: DelegatedLsigSigner = async (lsig, msig) => {\n const bytesToSign = lsig.bytesToSignForDelegation(msig)\n const sig = await rawEd25519Signer(bytesToSign)\n return { sig, addr: sendingAddress }\n }\n\n const programDataSigner: ProgramDataSigner = async (data, lsig) => {\n const bytesToSign = lsig.programDataToSign(data)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const mxBytesSigner: MxBytesSigner = async (bytes: Uint8Array) => {\n const bytesToSign = concatArrays(SIGN_BYTES_PREFIX, bytes)\n return await rawEd25519Signer(bytesToSign)\n }\n\n return { addr: sendingAddress, signer, lsigSigner, programDataSigner, mxBytesSigner }\n}\n\n/**\n * Create a makeEmptyTransactionSigner that does not specify any signer or\n * signing capabilities. This should only be used to simulate transactions.\n */\nexport function makeEmptyTransactionSigner(): TransactionSigner {\n return (txnGroup: Transaction[], indexesToSign: number[]) => {\n const unsigned: Uint8Array[] = []\n\n for (const index of indexesToSign) {\n const stxn: SignedTransaction = {\n txn: txnGroup[index],\n sig: new Uint8Array(64).fill(0),\n }\n validateSignedTransaction(stxn)\n unsigned.push(encodeSignedTransaction(stxn))\n }\n\n return Promise.resolve(unsigned)\n }\n}\n\nexport const bytesForSigning = {\n transaction(txn: Transaction): Uint8Array {\n return encodeTransaction(txn)\n },\n mxBytes(bytes: Uint8Array): Uint8Array {\n return concatArrays(SIGN_BYTES_PREFIX, bytes)\n },\n lsigForDelegation(lsig: LogicSig, msig?: MultisigAccount): Uint8Array {\n return lsig.bytesToSignForDelegation(msig)\n },\n programData(lsig: LogicSig, data: Uint8Array): Uint8Array {\n return lsig.programDataToSign(data)\n },\n}\n"],"mappings":";;;;;AAqCA,MAAM,oBAAoB,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC;;;;;;;;;AAUnD,SAAgB,2BAA2B,MAIpB;CACrB,MAAM,EAAE,eAAe,qBAAqB;CAC5C,MAAM,WAAW,IAAIA,gBAAAA,QAAQ,cAAc;CAC3C,MAAM,iBAAiB,KAAK,kBAAkB;CAE9C,MAAM,SAA4B,OAAO,UAAyB,kBAA4B;EAC5F,MAAM,QAA6B,EAAE;AACrC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,MAAM,SAAS;GAGrB,MAAM,OAA0B;IAC9B;IACA,KAHgB,MAAM,iBADJC,oBAAAA,kBAAkB,IAAI,CACW;IAIpD;AAED,OAAI,CAAC,IAAI,OAAO,OAAO,eAAe,CACpC,MAAK,cAAc;AAGrB,SAAM,KAAK,KAAK;;AAGlB,SAAO,MAAM,KAAK,SAAS;AACzB,8BAAA,0BAA0B,KAAK;AAC/B,UAAOC,2BAAAA,wBAAwB,KAAK;IACpC;;CAGJ,MAAM,aAAkC,OAAO,MAAM,SAAS;AAG5D,SAAO;GAAE,KADG,MAAM,iBADE,KAAK,yBAAyB,KAAK,CACR;GACjC,MAAM;GAAgB;;CAGtC,MAAM,oBAAuC,OAAO,MAAM,SAAS;AAEjE,SAAO,MAAM,iBADO,KAAK,kBAAkB,KAAK,CACN;;CAG5C,MAAM,gBAA+B,OAAO,UAAsB;AAEhE,SAAO,MAAM,iBADOC,cAAAA,aAAa,mBAAmB,MAAM,CAChB;;AAG5C,QAAO;EAAE,MAAM;EAAgB;EAAQ;EAAY;EAAmB;EAAe;;;;;;AAOvF,SAAgB,6BAAgD;AAC9D,SAAQ,UAAyB,kBAA4B;EAC3D,MAAM,WAAyB,EAAE;AAEjC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,OAA0B;IAC9B,KAAK,SAAS;IACd,KAAK,IAAI,WAAW,GAAG,CAAC,KAAK,EAAE;IAChC;AACD,8BAAA,0BAA0B,KAAK;AAC/B,YAAS,KAAKD,2BAAAA,wBAAwB,KAAK,CAAC;;AAG9C,SAAO,QAAQ,QAAQ,SAAS;;;AAIpC,MAAa,kBAAkB;CAC7B,YAAY,KAA8B;AACxC,SAAOD,oBAAAA,kBAAkB,IAAI;;CAE/B,QAAQ,OAA+B;AACrC,SAAOE,cAAAA,aAAa,mBAAmB,MAAM;;CAE/C,kBAAkB,MAAgB,MAAoC;AACpE,SAAO,KAAK,yBAAyB,KAAK;;CAE5C,YAAY,MAAgB,MAA8B;AACxD,SAAO,KAAK,kBAAkB,KAAK;;CAEtC"}
@@ -2,7 +2,6 @@ import { concatArrays } from "../../common/src/array.mjs";
2
2
  import { Address } from "../../common/src/address.mjs";
3
3
  import { encodeTransaction } from "./transactions/transaction.mjs";
4
4
  import { encodeSignedTransaction, validateSignedTransaction } from "./transactions/signed-transaction.mjs";
5
-
6
5
  //#region packages/transact/src/signer.ts
7
6
  const SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]);
8
7
  /**
@@ -85,7 +84,7 @@ const bytesForSigning = {
85
84
  return lsig.programDataToSign(data);
86
85
  }
87
86
  };
88
-
89
87
  //#endregion
90
88
  export { bytesForSigning, generateAddressWithSigners, makeEmptyTransactionSigner };
89
+
91
90
  //# sourceMappingURL=signer.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"signer.mjs","names":[],"sources":["../../../../packages/transact/src/signer.ts"],"sourcesContent":["import { Address, Addressable, concatArrays, Expand, ReadableAddress } from '@algorandfoundation/algokit-common'\nimport { DelegatedLsigSigner, LogicSig, ProgramDataSigner } from './logicsig'\nimport { encodeSignedTransaction, SignedTransaction, validateSignedTransaction } from './transactions/signed-transaction'\nimport { encodeTransaction, Transaction } from './transactions/transaction'\nimport type { RawEd25519Signer } from '@algorandfoundation/algokit-crypto'\nimport { MultisigAccount } from './multisig'\n\n/** Function for signing a group of transactions */\nexport type TransactionSigner = (txnGroup: Transaction[], indexesToSign: number[]) => Promise<Uint8Array[]>\n\n/** A transaction signer attached to an address */\nexport interface AddressWithTransactionSigner extends Addressable {\n signer: TransactionSigner\n}\n\n/** An address that can be used to send transactions that may or may not have a signer */\nexport type SendingAddress = ReadableAddress | AddressWithTransactionSigner\n\n/** A delegated logic signature signer attached to an address */\nexport interface AddressWithDelegatedLsigSigner extends Addressable {\n lsigSigner: DelegatedLsigSigner\n}\n\nexport interface AddressWithProgramDataSigner extends Addressable {\n programDataSigner: ProgramDataSigner\n}\n\nexport type MxBytesSigner = (bytesToSign: Uint8Array) => Promise<Uint8Array>\n\nexport interface AddressWithMxBytesSigner extends Addressable {\n mxBytesSigner: MxBytesSigner\n}\n\nexport type AddressWithSigners = Expand<\n Addressable & AddressWithTransactionSigner & AddressWithDelegatedLsigSigner & AddressWithProgramDataSigner & AddressWithMxBytesSigner\n>\n\nconst SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]) // \"MX\"\n\n/**\n * Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback\n * @param args - The arguments for generating signers\n * @param args.ed25519Pubkey - The ed25519 public key used for signing\n * @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.\n * @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key\n * @returns An object containing the sending address and various signer functions\n */\nexport function generateAddressWithSigners(args: {\n ed25519Pubkey: Uint8Array\n sendingAddress?: Address\n rawEd25519Signer: RawEd25519Signer\n}): AddressWithSigners {\n const { ed25519Pubkey, rawEd25519Signer } = args\n const authAddr = new Address(ed25519Pubkey)\n const sendingAddress = args.sendingAddress ?? authAddr\n\n const signer: TransactionSigner = async (txnGroup: Transaction[], indexesToSign: number[]) => {\n const stxns: SignedTransaction[] = []\n for (const index of indexesToSign) {\n const txn = txnGroup[index]\n const bytesToSign = encodeTransaction(txn)\n const signature = await rawEd25519Signer(bytesToSign)\n const stxn: SignedTransaction = {\n txn,\n sig: signature,\n }\n\n if (!txn.sender.equals(sendingAddress)) {\n stxn.authAddress = authAddr\n }\n\n stxns.push(stxn)\n }\n\n return stxns.map((stxn) => {\n validateSignedTransaction(stxn)\n return encodeSignedTransaction(stxn)\n })\n }\n\n const lsigSigner: DelegatedLsigSigner = async (lsig, msig) => {\n const bytesToSign = lsig.bytesToSignForDelegation(msig)\n const sig = await rawEd25519Signer(bytesToSign)\n return { sig, addr: sendingAddress }\n }\n\n const programDataSigner: ProgramDataSigner = async (data, lsig) => {\n const bytesToSign = lsig.programDataToSign(data)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const mxBytesSigner: MxBytesSigner = async (bytes: Uint8Array) => {\n const bytesToSign = concatArrays(SIGN_BYTES_PREFIX, bytes)\n return await rawEd25519Signer(bytesToSign)\n }\n\n return { addr: sendingAddress, signer, lsigSigner, programDataSigner, mxBytesSigner }\n}\n\n/**\n * Create a makeEmptyTransactionSigner that does not specify any signer or\n * signing capabilities. This should only be used to simulate transactions.\n */\nexport function makeEmptyTransactionSigner(): TransactionSigner {\n return (txnGroup: Transaction[], indexesToSign: number[]) => {\n const unsigned: Uint8Array[] = []\n\n for (const index of indexesToSign) {\n const stxn: SignedTransaction = {\n txn: txnGroup[index],\n sig: new Uint8Array(64).fill(0),\n }\n validateSignedTransaction(stxn)\n unsigned.push(encodeSignedTransaction(stxn))\n }\n\n return Promise.resolve(unsigned)\n }\n}\n\nexport const bytesForSigning = {\n transaction(txn: Transaction): Uint8Array {\n return encodeTransaction(txn)\n },\n mxBytes(bytes: Uint8Array): Uint8Array {\n return concatArrays(SIGN_BYTES_PREFIX, bytes)\n },\n lsigForDelegation(lsig: LogicSig, msig?: MultisigAccount): Uint8Array {\n return lsig.bytesToSignForDelegation(msig)\n },\n programData(lsig: LogicSig, data: Uint8Array): Uint8Array {\n return lsig.programDataToSign(data)\n },\n}\n"],"mappings":";;;;;;AAqCA,MAAM,oBAAoB,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC;;;;;;;;;AAUnD,SAAgB,2BAA2B,MAIpB;CACrB,MAAM,EAAE,eAAe,qBAAqB;CAC5C,MAAM,WAAW,IAAI,QAAQ,cAAc;CAC3C,MAAM,iBAAiB,KAAK,kBAAkB;CAE9C,MAAM,SAA4B,OAAO,UAAyB,kBAA4B;EAC5F,MAAM,QAA6B,EAAE;AACrC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,MAAM,SAAS;GAGrB,MAAM,OAA0B;IAC9B;IACA,KAHgB,MAAM,iBADJ,kBAAkB,IAAI,CACW;IAIpD;AAED,OAAI,CAAC,IAAI,OAAO,OAAO,eAAe,CACpC,MAAK,cAAc;AAGrB,SAAM,KAAK,KAAK;;AAGlB,SAAO,MAAM,KAAK,SAAS;AACzB,6BAA0B,KAAK;AAC/B,UAAO,wBAAwB,KAAK;IACpC;;CAGJ,MAAM,aAAkC,OAAO,MAAM,SAAS;AAG5D,SAAO;GAAE,KADG,MAAM,iBADE,KAAK,yBAAyB,KAAK,CACR;GACjC,MAAM;GAAgB;;CAGtC,MAAM,oBAAuC,OAAO,MAAM,SAAS;AAEjE,SAAO,MAAM,iBADO,KAAK,kBAAkB,KAAK,CACN;;CAG5C,MAAM,gBAA+B,OAAO,UAAsB;AAEhE,SAAO,MAAM,iBADO,aAAa,mBAAmB,MAAM,CAChB;;AAG5C,QAAO;EAAE,MAAM;EAAgB;EAAQ;EAAY;EAAmB;EAAe;;;;;;AAOvF,SAAgB,6BAAgD;AAC9D,SAAQ,UAAyB,kBAA4B;EAC3D,MAAM,WAAyB,EAAE;AAEjC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,OAA0B;IAC9B,KAAK,SAAS;IACd,KAAK,IAAI,WAAW,GAAG,CAAC,KAAK,EAAE;IAChC;AACD,6BAA0B,KAAK;AAC/B,YAAS,KAAK,wBAAwB,KAAK,CAAC;;AAG9C,SAAO,QAAQ,QAAQ,SAAS;;;AAIpC,MAAa,kBAAkB;CAC7B,YAAY,KAA8B;AACxC,SAAO,kBAAkB,IAAI;;CAE/B,QAAQ,OAA+B;AACrC,SAAO,aAAa,mBAAmB,MAAM;;CAE/C,kBAAkB,MAAgB,MAAoC;AACpE,SAAO,KAAK,yBAAyB,KAAK;;CAE5C,YAAY,MAAgB,MAA8B;AACxD,SAAO,KAAK,kBAAkB,KAAK;;CAEtC"}
1
+ {"version":3,"file":"signer.mjs","names":[],"sources":["../../../../packages/transact/src/signer.ts"],"sourcesContent":["import { Address, Addressable, concatArrays, Expand, ReadableAddress } from '@algorandfoundation/algokit-common'\nimport { DelegatedLsigSigner, LogicSig, ProgramDataSigner } from './logicsig'\nimport { encodeSignedTransaction, SignedTransaction, validateSignedTransaction } from './transactions/signed-transaction'\nimport { encodeTransaction, Transaction } from './transactions/transaction'\nimport type { RawEd25519Signer } from '@algorandfoundation/algokit-crypto'\nimport { MultisigAccount } from './multisig'\n\n/** Function for signing a group of transactions */\nexport type TransactionSigner = (txnGroup: Transaction[], indexesToSign: number[]) => Promise<Uint8Array[]>\n\n/** A transaction signer attached to an address */\nexport interface AddressWithTransactionSigner extends Addressable {\n signer: TransactionSigner\n}\n\n/** An address that can be used to send transactions that may or may not have a signer */\nexport type SendingAddress = ReadableAddress | AddressWithTransactionSigner\n\n/** A delegated logic signature signer attached to an address */\nexport interface AddressWithDelegatedLsigSigner extends Addressable {\n lsigSigner: DelegatedLsigSigner\n}\n\nexport interface AddressWithProgramDataSigner extends Addressable {\n programDataSigner: ProgramDataSigner\n}\n\nexport type MxBytesSigner = (bytesToSign: Uint8Array) => Promise<Uint8Array>\n\nexport interface AddressWithMxBytesSigner extends Addressable {\n mxBytesSigner: MxBytesSigner\n}\n\nexport type AddressWithSigners = Expand<\n Addressable & AddressWithTransactionSigner & AddressWithDelegatedLsigSigner & AddressWithProgramDataSigner & AddressWithMxBytesSigner\n>\n\nconst SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]) // \"MX\"\n\n/**\n * Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback\n * @param args - The arguments for generating signers\n * @param args.ed25519Pubkey - The ed25519 public key used for signing\n * @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.\n * @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key\n * @returns An object containing the sending address and various signer functions\n */\nexport function generateAddressWithSigners(args: {\n ed25519Pubkey: Uint8Array\n sendingAddress?: Address\n rawEd25519Signer: RawEd25519Signer\n}): AddressWithSigners {\n const { ed25519Pubkey, rawEd25519Signer } = args\n const authAddr = new Address(ed25519Pubkey)\n const sendingAddress = args.sendingAddress ?? authAddr\n\n const signer: TransactionSigner = async (txnGroup: Transaction[], indexesToSign: number[]) => {\n const stxns: SignedTransaction[] = []\n for (const index of indexesToSign) {\n const txn = txnGroup[index]\n const bytesToSign = encodeTransaction(txn)\n const signature = await rawEd25519Signer(bytesToSign)\n const stxn: SignedTransaction = {\n txn,\n sig: signature,\n }\n\n if (!txn.sender.equals(sendingAddress)) {\n stxn.authAddress = authAddr\n }\n\n stxns.push(stxn)\n }\n\n return stxns.map((stxn) => {\n validateSignedTransaction(stxn)\n return encodeSignedTransaction(stxn)\n })\n }\n\n const lsigSigner: DelegatedLsigSigner = async (lsig, msig) => {\n const bytesToSign = lsig.bytesToSignForDelegation(msig)\n const sig = await rawEd25519Signer(bytesToSign)\n return { sig, addr: sendingAddress }\n }\n\n const programDataSigner: ProgramDataSigner = async (data, lsig) => {\n const bytesToSign = lsig.programDataToSign(data)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const mxBytesSigner: MxBytesSigner = async (bytes: Uint8Array) => {\n const bytesToSign = concatArrays(SIGN_BYTES_PREFIX, bytes)\n return await rawEd25519Signer(bytesToSign)\n }\n\n return { addr: sendingAddress, signer, lsigSigner, programDataSigner, mxBytesSigner }\n}\n\n/**\n * Create a makeEmptyTransactionSigner that does not specify any signer or\n * signing capabilities. This should only be used to simulate transactions.\n */\nexport function makeEmptyTransactionSigner(): TransactionSigner {\n return (txnGroup: Transaction[], indexesToSign: number[]) => {\n const unsigned: Uint8Array[] = []\n\n for (const index of indexesToSign) {\n const stxn: SignedTransaction = {\n txn: txnGroup[index],\n sig: new Uint8Array(64).fill(0),\n }\n validateSignedTransaction(stxn)\n unsigned.push(encodeSignedTransaction(stxn))\n }\n\n return Promise.resolve(unsigned)\n }\n}\n\nexport const bytesForSigning = {\n transaction(txn: Transaction): Uint8Array {\n return encodeTransaction(txn)\n },\n mxBytes(bytes: Uint8Array): Uint8Array {\n return concatArrays(SIGN_BYTES_PREFIX, bytes)\n },\n lsigForDelegation(lsig: LogicSig, msig?: MultisigAccount): Uint8Array {\n return lsig.bytesToSignForDelegation(msig)\n },\n programData(lsig: LogicSig, data: Uint8Array): Uint8Array {\n return lsig.programDataToSign(data)\n },\n}\n"],"mappings":";;;;;AAqCA,MAAM,oBAAoB,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC;;;;;;;;;AAUnD,SAAgB,2BAA2B,MAIpB;CACrB,MAAM,EAAE,eAAe,qBAAqB;CAC5C,MAAM,WAAW,IAAI,QAAQ,cAAc;CAC3C,MAAM,iBAAiB,KAAK,kBAAkB;CAE9C,MAAM,SAA4B,OAAO,UAAyB,kBAA4B;EAC5F,MAAM,QAA6B,EAAE;AACrC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,MAAM,SAAS;GAGrB,MAAM,OAA0B;IAC9B;IACA,KAHgB,MAAM,iBADJ,kBAAkB,IAAI,CACW;IAIpD;AAED,OAAI,CAAC,IAAI,OAAO,OAAO,eAAe,CACpC,MAAK,cAAc;AAGrB,SAAM,KAAK,KAAK;;AAGlB,SAAO,MAAM,KAAK,SAAS;AACzB,6BAA0B,KAAK;AAC/B,UAAO,wBAAwB,KAAK;IACpC;;CAGJ,MAAM,aAAkC,OAAO,MAAM,SAAS;AAG5D,SAAO;GAAE,KADG,MAAM,iBADE,KAAK,yBAAyB,KAAK,CACR;GACjC,MAAM;GAAgB;;CAGtC,MAAM,oBAAuC,OAAO,MAAM,SAAS;AAEjE,SAAO,MAAM,iBADO,KAAK,kBAAkB,KAAK,CACN;;CAG5C,MAAM,gBAA+B,OAAO,UAAsB;AAEhE,SAAO,MAAM,iBADO,aAAa,mBAAmB,MAAM,CAChB;;AAG5C,QAAO;EAAE,MAAM;EAAgB;EAAQ;EAAY;EAAmB;EAAe;;;;;;AAOvF,SAAgB,6BAAgD;AAC9D,SAAQ,UAAyB,kBAA4B;EAC3D,MAAM,WAAyB,EAAE;AAEjC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,OAA0B;IAC9B,KAAK,SAAS;IACd,KAAK,IAAI,WAAW,GAAG,CAAC,KAAK,EAAE;IAChC;AACD,6BAA0B,KAAK;AAC/B,YAAS,KAAK,wBAAwB,KAAK,CAAC;;AAG9C,SAAO,QAAQ,QAAQ,SAAS;;;AAIpC,MAAa,kBAAkB;CAC7B,YAAY,KAA8B;AACxC,SAAO,kBAAkB,IAAI;;CAE/B,QAAQ,OAA+B;AACrC,SAAO,aAAa,mBAAmB,MAAM;;CAE/C,kBAAkB,MAAgB,MAAoC;AACpE,SAAO,KAAK,yBAAyB,KAAK;;CAE5C,YAAY,MAAgB,MAA8B;AACxD,SAAO,KAAK,kBAAkB,KAAK;;CAEtC"}
@@ -1,7 +1,6 @@
1
1
  import { Address } from "../../../common/src/address.js";
2
2
 
3
3
  //#region packages/transact/src/transactions/app-call.d.ts
4
-
5
4
  /**
6
5
  * Represents an app call transaction that interacts with Algorand Smart Contracts.
7
6
  *
@@ -130,7 +129,7 @@ declare enum OnApplicationComplete {
130
129
  * delete the app parameters for the app from the creator's
131
130
  * balance record.
132
131
  */
133
- DeleteApplication = 5,
132
+ DeleteApplication = 5
134
133
  }
135
134
  /**
136
135
  * Schema for app state storage.
@@ -169,34 +168,24 @@ type BoxReference = {
169
168
  * Names a single resource reference. Only one of the fields should be set.
170
169
  */
171
170
  type ResourceReference = {
172
- /** Any account addresses whose balance record is accessible by the executing ApprovalProgram or ClearStateProgram. */
173
- address?: Address;
174
- /** Application ID whose GlobalState may be read by the executing ApprovalProgram or ClearStateProgram. */
175
- appId?: bigint;
176
- /** Asset ID whose AssetParams may be read by the executing ApprovalProgram or ClearStateProgram. */
177
- assetId?: bigint;
178
- /** Defines a holding by referring to an Address and Asset it belongs to. */
179
- holding?: HoldingReference;
180
- /** Defines a local state by referring to an Address and App it belongs to. */
181
- locals?: LocalsReference;
182
- /** Defines a box by its name and the application ID it belongs to. */
171
+ /** Any account addresses whose balance record is accessible by the executing ApprovalProgram or ClearStateProgram. */address?: Address; /** Application ID whose GlobalState may be read by the executing ApprovalProgram or ClearStateProgram. */
172
+ appId?: bigint; /** Asset ID whose AssetParams may be read by the executing ApprovalProgram or ClearStateProgram. */
173
+ assetId?: bigint; /** Defines a holding by referring to an Address and Asset it belongs to. */
174
+ holding?: HoldingReference; /** Defines a local state by referring to an Address and App it belongs to. */
175
+ locals?: LocalsReference; /** Defines a box by its name and the application ID it belongs to. */
183
176
  box?: BoxReference;
184
177
  };
185
178
  /**
186
179
  * A grouping of the asset index and address of the account
187
180
  */
188
181
  type HoldingReference = {
189
- /** The asset index of the holding */
190
- assetId: bigint;
191
- /** The address of the account holding the asset */
182
+ /** The asset index of the holding */assetId: bigint; /** The address of the account holding the asset */
192
183
  address: Address;
193
184
  };
194
185
  /** A grouping of the application index and address of the account
195
186
  */
196
187
  type LocalsReference = {
197
- /** The application index of the local state */
198
- appId: bigint;
199
- /** The address of the account holding the local state */
188
+ /** The application index of the local state */appId: bigint; /** The address of the account holding the local state */
200
189
  address: Address;
201
190
  };
202
191
  //#endregion
@@ -1,6 +1,5 @@
1
- const require_constants = require('../../../common/src/constants.js');
2
- const require_common = require('./common.js');
3
-
1
+ const require_constants = require("../../../common/src/constants.js");
2
+ const require_common = require("./common.js");
4
3
  //#region packages/transact/src/transactions/app-call.ts
5
4
  /**
6
5
  * On-completion actions for application transactions.
@@ -72,12 +71,12 @@ function validateAppCreation(appCall) {
72
71
  data: FIELD_CLEAR_STATE_PROGRAM
73
72
  });
74
73
  const extraPages = appCall.extraProgramPages ?? 0;
75
- if (extraPages > require_constants.MAX_EXTRA_PROGRAM_PAGES) errors.push({
74
+ if (extraPages > 3) errors.push({
76
75
  type: require_common.TransactionValidationErrorType.FieldTooLong,
77
76
  data: {
78
77
  field: FIELD_EXTRA_PROGRAM_PAGES,
79
78
  actual: extraPages,
80
- max: require_constants.MAX_EXTRA_PROGRAM_PAGES,
79
+ max: 3,
81
80
  unit: "pages"
82
81
  }
83
82
  });
@@ -111,23 +110,23 @@ function validateAppCreation(appCall) {
111
110
  }
112
111
  });
113
112
  if (appCall.globalStateSchema) {
114
- if (appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices > require_constants.MAX_GLOBAL_STATE_KEYS) errors.push({
113
+ if (appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices > 64) errors.push({
115
114
  type: require_common.TransactionValidationErrorType.FieldTooLong,
116
115
  data: {
117
116
  field: FIELD_GLOBAL_STATE_SCHEMA,
118
117
  actual: appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices,
119
- max: require_constants.MAX_GLOBAL_STATE_KEYS,
118
+ max: 64,
120
119
  unit: "keys"
121
120
  }
122
121
  });
123
122
  }
124
123
  if (appCall.localStateSchema) {
125
- if (appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices > require_constants.MAX_LOCAL_STATE_KEYS) errors.push({
124
+ if (appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices > 16) errors.push({
126
125
  type: require_common.TransactionValidationErrorType.FieldTooLong,
127
126
  data: {
128
127
  field: FIELD_LOCAL_STATE_SCHEMA,
129
128
  actual: appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices,
130
- max: require_constants.MAX_LOCAL_STATE_KEYS,
129
+ max: 16,
131
130
  unit: "keys"
132
131
  }
133
132
  });
@@ -169,17 +168,17 @@ function validateAppOperation(appCall) {
169
168
  function validateAppCommonFields(appCall) {
170
169
  const errors = new Array();
171
170
  if (appCall.args) {
172
- if (appCall.args.length > require_constants.MAX_APP_ARGS) errors.push({
171
+ if (appCall.args.length > 16) errors.push({
173
172
  type: require_common.TransactionValidationErrorType.FieldTooLong,
174
173
  data: {
175
174
  field: FIELD_ARGS,
176
175
  actual: appCall.args.length,
177
- max: require_constants.MAX_APP_ARGS,
176
+ max: 16,
178
177
  unit: "arguments"
179
178
  }
180
179
  });
181
180
  const totalArgsSize = appCall.args.reduce((sum, arg) => sum + arg.length, 0);
182
- if (totalArgsSize > require_constants.MAX_ARGS_SIZE) errors.push({
181
+ if (totalArgsSize > 2048) errors.push({
183
182
  type: require_common.TransactionValidationErrorType.FieldTooLong,
184
183
  data: {
185
184
  field: "Args total size",
@@ -189,40 +188,40 @@ function validateAppCommonFields(appCall) {
189
188
  }
190
189
  });
191
190
  }
192
- if (appCall.accountReferences && appCall.accountReferences.length > require_constants.MAX_ACCOUNT_REFERENCES) errors.push({
191
+ if (appCall.accountReferences && appCall.accountReferences.length > 8) errors.push({
193
192
  type: require_common.TransactionValidationErrorType.FieldTooLong,
194
193
  data: {
195
194
  field: "Account references",
196
195
  actual: appCall.accountReferences.length,
197
- max: require_constants.MAX_ACCOUNT_REFERENCES,
196
+ max: 8,
198
197
  unit: "refs"
199
198
  }
200
199
  });
201
- if (appCall.appReferences && appCall.appReferences.length > require_constants.MAX_APP_REFERENCES) errors.push({
200
+ if (appCall.appReferences && appCall.appReferences.length > 8) errors.push({
202
201
  type: require_common.TransactionValidationErrorType.FieldTooLong,
203
202
  data: {
204
203
  field: "App references",
205
204
  actual: appCall.appReferences.length,
206
- max: require_constants.MAX_APP_REFERENCES,
205
+ max: 8,
207
206
  unit: "refs"
208
207
  }
209
208
  });
210
- if (appCall.assetReferences && appCall.assetReferences.length > require_constants.MAX_ASSET_REFERENCES) errors.push({
209
+ if (appCall.assetReferences && appCall.assetReferences.length > 8) errors.push({
211
210
  type: require_common.TransactionValidationErrorType.FieldTooLong,
212
211
  data: {
213
212
  field: "Asset references",
214
213
  actual: appCall.assetReferences.length,
215
- max: require_constants.MAX_ASSET_REFERENCES,
214
+ max: 8,
216
215
  unit: "refs"
217
216
  }
218
217
  });
219
218
  if (appCall.boxReferences) {
220
- if (appCall.boxReferences.length > require_constants.MAX_BOX_REFERENCES) errors.push({
219
+ if (appCall.boxReferences.length > 8) errors.push({
221
220
  type: require_common.TransactionValidationErrorType.FieldTooLong,
222
221
  data: {
223
222
  field: "Box references",
224
223
  actual: appCall.boxReferences.length,
225
- max: require_constants.MAX_BOX_REFERENCES,
224
+ max: 8,
226
225
  unit: "refs"
227
226
  }
228
227
  });
@@ -233,19 +232,19 @@ function validateAppCommonFields(appCall) {
233
232
  });
234
233
  }
235
234
  const totalReferences = (appCall.accountReferences?.length || 0) + (appCall.appReferences?.length || 0) + (appCall.assetReferences?.length || 0) + (appCall.boxReferences?.length || 0);
236
- if (totalReferences > require_constants.MAX_OVERALL_REFERENCES) errors.push({
235
+ if (totalReferences > 8) errors.push({
237
236
  type: require_common.TransactionValidationErrorType.FieldTooLong,
238
237
  data: {
239
238
  field: "Total references",
240
239
  actual: totalReferences,
241
- max: require_constants.MAX_OVERALL_REFERENCES,
240
+ max: 8,
242
241
  unit: "refs"
243
242
  }
244
243
  });
245
244
  return errors;
246
245
  }
247
-
248
246
  //#endregion
249
247
  exports.OnApplicationComplete = OnApplicationComplete;
250
248
  exports.validateAppCallTransaction = validateAppCallTransaction;
249
+
251
250
  //# sourceMappingURL=app-call.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-call.js","names":["TransactionValidationErrorType","MAX_EXTRA_PROGRAM_PAGES","PROGRAM_PAGE_SIZE","MAX_GLOBAL_STATE_KEYS","MAX_LOCAL_STATE_KEYS","MAX_APP_ARGS","MAX_ARGS_SIZE","MAX_ACCOUNT_REFERENCES","MAX_APP_REFERENCES","MAX_ASSET_REFERENCES","MAX_BOX_REFERENCES","MAX_OVERALL_REFERENCES"],"sources":["../../../../../packages/transact/src/transactions/app-call.ts"],"sourcesContent":["import {\n Address,\n MAX_ACCOUNT_REFERENCES,\n MAX_APP_ARGS,\n MAX_APP_REFERENCES,\n MAX_ARGS_SIZE,\n MAX_ASSET_REFERENCES,\n MAX_BOX_REFERENCES,\n MAX_EXTRA_PROGRAM_PAGES,\n MAX_GLOBAL_STATE_KEYS,\n MAX_LOCAL_STATE_KEYS,\n MAX_OVERALL_REFERENCES,\n PROGRAM_PAGE_SIZE,\n} from '@algorandfoundation/algokit-common'\nimport { TransactionValidationError, TransactionValidationErrorType } from './common'\n\n/**\n * Represents an app call transaction that interacts with Algorand Smart Contracts.\n *\n * App call transactions are used to create, update, delete, opt-in to,\n * close out of, or clear state from Algorand apps (smart contracts).\n */\nexport type AppCallTransactionFields = {\n /**\n * ID of the app being called.\n *\n * Set this to 0 to indicate an app creation call.\n */\n appId: bigint\n\n /**\n * Defines what additional actions occur with the transaction.\n */\n onComplete: OnApplicationComplete\n\n /**\n * Logic executed for every app call transaction, except when\n * on-completion is set to \"clear\".\n *\n * Approval programs may reject the transaction.\n * Only required for app creation and update transactions.\n */\n approvalProgram?: Uint8Array\n\n /**\n * Logic executed for app call transactions with on-completion set to \"clear\".\n *\n * Clear state programs cannot reject the transaction.\n * Only required for app creation and update transactions.\n */\n clearStateProgram?: Uint8Array\n\n /**\n * Holds the maximum number of global state values.\n *\n * Only required for app creation transactions.\n * This cannot be changed after creation.\n */\n globalStateSchema?: StateSchema\n\n /**\n * Holds the maximum number of local state values.\n *\n * Only required for app creation transactions.\n * This cannot be changed after creation.\n */\n localStateSchema?: StateSchema\n\n /**\n * Number of additional pages allocated to the app's approval\n * and clear state programs.\n *\n * Each extra program page is 2048 bytes. The sum of approval program\n * and clear state program may not exceed 2048*(1+extra_program_pages) bytes.\n * Currently, the maximum value is 3.\n * This cannot be changed after creation.\n */\n extraProgramPages?: number\n\n /**\n * Transaction specific arguments available in the app's\n * approval program and clear state program.\n */\n args?: Uint8Array[]\n\n /**\n * List of accounts in addition to the sender that may be accessed\n * from the app's approval program and clear state program.\n */\n accountReferences?: Address[]\n\n /**\n * List of apps in addition to the current app that may be called\n * from the app's approval program and clear state program.\n */\n appReferences?: bigint[]\n\n /**\n * Lists the assets whose parameters may be accessed by this app's\n * approval program and clear state program.\n *\n * The access is read-only.\n */\n assetReferences?: bigint[]\n\n /**\n * The boxes that should be made available for the runtime of the program.\n */\n boxReferences?: BoxReference[]\n\n /**\n * Resources accessed by the application\n */\n accessReferences?: ResourceReference[]\n\n /**\n * If set, the transaction will be rejected when the app's version is greater than or equal to this value. This can be used to prevent calling an app after it has been updated. Set to 0 or leave undefined to skip the version check.\n * */\n rejectVersion?: number\n}\n\n/**\n * On-completion actions for application transactions.\n *\n * These values define what additional actions occur with the transaction.\n */\nexport enum OnApplicationComplete {\n /**\n * NoOp indicates that an app transaction will simply call its\n * approval program without any additional action.\n */\n NoOp,\n /**\n * OptIn indicates that an app transaction will allocate some\n * local state for the app in the sender's account.\n */\n OptIn,\n /**\n * CloseOut indicates that an app transaction will deallocate\n * some local state for the app from the user's account.\n */\n CloseOut,\n /**\n * ClearState is similar to CloseOut, but may never fail. This\n * allows users to reclaim their minimum balance from an app\n * they no longer wish to opt in to.\n */\n ClearState,\n /**\n * UpdateApplication indicates that an app transaction will\n * update the approval program and clear state program for the app.\n */\n UpdateApplication,\n /**\n * DeleteApplication indicates that an app transaction will\n * delete the app parameters for the app from the creator's\n * balance record.\n */\n DeleteApplication,\n}\n\n/**\n * Schema for app state storage.\n *\n * Defines the maximum number of values that may be stored in app\n * key/value storage for both global and local state.\n */\nexport type StateSchema = {\n /**\n * Maximum number of integer values that may be stored.\n */\n numUints: number\n\n /**\n * Maximum number of byte slice values that may be stored.\n */\n numByteSlices: number\n}\n\n/**\n * Box reference for app call transactions.\n *\n * References a specific box that should be made available for the runtime\n * of the program.\n */\nexport type BoxReference = {\n /**\n * App ID that owns the box.\n * A value of 0 indicates the current app.\n */\n appId: bigint\n\n /**\n * Name of the box.\n */\n name: Uint8Array\n}\n\n/**\n * Names a single resource reference. Only one of the fields should be set.\n */\nexport type ResourceReference = {\n /** Any account addresses whose balance record is accessible by the executing ApprovalProgram or ClearStateProgram. */\n address?: Address\n /** Application ID whose GlobalState may be read by the executing ApprovalProgram or ClearStateProgram. */\n appId?: bigint\n /** Asset ID whose AssetParams may be read by the executing ApprovalProgram or ClearStateProgram. */\n assetId?: bigint\n /** Defines a holding by referring to an Address and Asset it belongs to. */\n holding?: HoldingReference\n /** Defines a local state by referring to an Address and App it belongs to. */\n locals?: LocalsReference\n /** Defines a box by its name and the application ID it belongs to. */\n box?: BoxReference\n}\n\n/**\n * A grouping of the asset index and address of the account\n */\nexport type HoldingReference = {\n /** The asset index of the holding */\n assetId: bigint\n\n /** The address of the account holding the asset */\n address: Address\n}\n\n/** A grouping of the application index and address of the account\n */\nexport type LocalsReference = {\n /** The application index of the local state */\n appId: bigint\n\n /** The address of the account holding the local state */\n address: Address\n}\n\nconst FIELD_ARGS = 'Args'\nconst FIELD_APPROVAL_PROGRAM = 'Approval program'\nconst FIELD_CLEAR_STATE_PROGRAM = 'Clear state program'\nconst FIELD_GLOBAL_STATE_SCHEMA = 'Global state schema'\nconst FIELD_LOCAL_STATE_SCHEMA = 'Local state schema'\nconst FIELD_EXTRA_PROGRAM_PAGES = 'Extra program pages'\n\n/**\n * Validate app call transaction fields\n */\nexport function validateAppCallTransaction(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.appId === 0n) {\n // App creation\n errors.push(...validateAppCreation(appCall))\n } else {\n // App call, update, or delete\n errors.push(...validateAppOperation(appCall))\n }\n\n // Common validations for all app operations\n errors.push(...validateAppCommonFields(appCall))\n\n return errors\n}\n\n/**\n * Validate app creation fields\n */\nfunction validateAppCreation(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (!appCall.approvalProgram || appCall.approvalProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_APPROVAL_PROGRAM })\n }\n\n if (!appCall.clearStateProgram || appCall.clearStateProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_CLEAR_STATE_PROGRAM })\n }\n\n const extraPages = appCall.extraProgramPages ?? 0\n if (extraPages > MAX_EXTRA_PROGRAM_PAGES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_EXTRA_PROGRAM_PAGES, actual: extraPages, max: MAX_EXTRA_PROGRAM_PAGES, unit: 'pages' },\n })\n }\n\n const maxProgramSize = PROGRAM_PAGE_SIZE + extraPages * PROGRAM_PAGE_SIZE\n\n if (appCall.approvalProgram && appCall.approvalProgram.length > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_APPROVAL_PROGRAM, actual: appCall.approvalProgram.length, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n if (appCall.clearStateProgram && appCall.clearStateProgram.length > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_CLEAR_STATE_PROGRAM, actual: appCall.clearStateProgram.length, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n const totalProgramSize = (appCall.approvalProgram?.length ?? 0) + (appCall.clearStateProgram?.length ?? 0)\n if (totalProgramSize > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Combined approval and clear state programs', actual: totalProgramSize, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n if (appCall.globalStateSchema) {\n const totalKeys = appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices\n if (totalKeys > MAX_GLOBAL_STATE_KEYS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_GLOBAL_STATE_SCHEMA,\n actual: appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices,\n max: MAX_GLOBAL_STATE_KEYS,\n unit: 'keys',\n },\n })\n }\n }\n\n if (appCall.localStateSchema) {\n const totalKeys = appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices\n if (totalKeys > MAX_LOCAL_STATE_KEYS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_LOCAL_STATE_SCHEMA,\n actual: appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices,\n max: MAX_LOCAL_STATE_KEYS,\n unit: 'keys',\n },\n })\n }\n }\n\n return errors\n}\n\n/**\n * Validate app operation (update, delete, call) fields\n */\nfunction validateAppOperation(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.onComplete === OnApplicationComplete.UpdateApplication) {\n if (!appCall.approvalProgram || appCall.approvalProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_APPROVAL_PROGRAM })\n }\n if (!appCall.clearStateProgram || appCall.clearStateProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_CLEAR_STATE_PROGRAM })\n }\n }\n\n // These fields are immutable and cannot be set for existing apps\n if (appCall.globalStateSchema !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_GLOBAL_STATE_SCHEMA })\n }\n if (appCall.localStateSchema !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_LOCAL_STATE_SCHEMA })\n }\n if (appCall.extraProgramPages !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_EXTRA_PROGRAM_PAGES })\n }\n\n return errors\n}\n\n/**\n * Validate common app call fields\n */\nfunction validateAppCommonFields(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.args) {\n if (appCall.args.length > MAX_APP_ARGS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_ARGS, actual: appCall.args.length, max: MAX_APP_ARGS, unit: 'arguments' },\n })\n }\n\n const totalArgsSize = appCall.args.reduce((sum, arg) => sum + arg.length, 0)\n if (totalArgsSize > MAX_ARGS_SIZE) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Args total size', actual: totalArgsSize, max: MAX_ARGS_SIZE, unit: 'bytes' },\n })\n }\n }\n\n if (appCall.accountReferences && appCall.accountReferences.length > MAX_ACCOUNT_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Account references', actual: appCall.accountReferences.length, max: MAX_ACCOUNT_REFERENCES, unit: 'refs' },\n })\n }\n\n if (appCall.appReferences && appCall.appReferences.length > MAX_APP_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'App references', actual: appCall.appReferences.length, max: MAX_APP_REFERENCES, unit: 'refs' },\n })\n }\n\n if (appCall.assetReferences && appCall.assetReferences.length > MAX_ASSET_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Asset references', actual: appCall.assetReferences.length, max: MAX_ASSET_REFERENCES, unit: 'refs' },\n })\n }\n\n // Validate box references\n if (appCall.boxReferences) {\n if (appCall.boxReferences.length > MAX_BOX_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Box references', actual: appCall.boxReferences.length, max: MAX_BOX_REFERENCES, unit: 'refs' },\n })\n }\n\n // Validate that box reference app IDs are in app references\n const appRefs = appCall.appReferences || []\n for (const boxRef of appCall.boxReferences) {\n if (boxRef.appId !== 0n && boxRef.appId !== appCall.appId && !appRefs.includes(boxRef.appId)) {\n errors.push({\n type: TransactionValidationErrorType.ArbitraryConstraint,\n data: `Box reference for app ID ${boxRef.appId} must be in app references`,\n })\n }\n }\n }\n\n // Validate overall reference count\n const totalReferences =\n (appCall.accountReferences?.length || 0) +\n (appCall.appReferences?.length || 0) +\n (appCall.assetReferences?.length || 0) +\n (appCall.boxReferences?.length || 0)\n\n if (totalReferences > MAX_OVERALL_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Total references', actual: totalReferences, max: MAX_OVERALL_REFERENCES, unit: 'refs' },\n })\n }\n\n return errors\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"app-call.js","names":["TransactionValidationErrorType","PROGRAM_PAGE_SIZE","MAX_ARGS_SIZE"],"sources":["../../../../../packages/transact/src/transactions/app-call.ts"],"sourcesContent":["import {\n Address,\n MAX_ACCOUNT_REFERENCES,\n MAX_APP_ARGS,\n MAX_APP_REFERENCES,\n MAX_ARGS_SIZE,\n MAX_ASSET_REFERENCES,\n MAX_BOX_REFERENCES,\n MAX_EXTRA_PROGRAM_PAGES,\n MAX_GLOBAL_STATE_KEYS,\n MAX_LOCAL_STATE_KEYS,\n MAX_OVERALL_REFERENCES,\n PROGRAM_PAGE_SIZE,\n} from '@algorandfoundation/algokit-common'\nimport { TransactionValidationError, TransactionValidationErrorType } from './common'\n\n/**\n * Represents an app call transaction that interacts with Algorand Smart Contracts.\n *\n * App call transactions are used to create, update, delete, opt-in to,\n * close out of, or clear state from Algorand apps (smart contracts).\n */\nexport type AppCallTransactionFields = {\n /**\n * ID of the app being called.\n *\n * Set this to 0 to indicate an app creation call.\n */\n appId: bigint\n\n /**\n * Defines what additional actions occur with the transaction.\n */\n onComplete: OnApplicationComplete\n\n /**\n * Logic executed for every app call transaction, except when\n * on-completion is set to \"clear\".\n *\n * Approval programs may reject the transaction.\n * Only required for app creation and update transactions.\n */\n approvalProgram?: Uint8Array\n\n /**\n * Logic executed for app call transactions with on-completion set to \"clear\".\n *\n * Clear state programs cannot reject the transaction.\n * Only required for app creation and update transactions.\n */\n clearStateProgram?: Uint8Array\n\n /**\n * Holds the maximum number of global state values.\n *\n * Only required for app creation transactions.\n * This cannot be changed after creation.\n */\n globalStateSchema?: StateSchema\n\n /**\n * Holds the maximum number of local state values.\n *\n * Only required for app creation transactions.\n * This cannot be changed after creation.\n */\n localStateSchema?: StateSchema\n\n /**\n * Number of additional pages allocated to the app's approval\n * and clear state programs.\n *\n * Each extra program page is 2048 bytes. The sum of approval program\n * and clear state program may not exceed 2048*(1+extra_program_pages) bytes.\n * Currently, the maximum value is 3.\n * This cannot be changed after creation.\n */\n extraProgramPages?: number\n\n /**\n * Transaction specific arguments available in the app's\n * approval program and clear state program.\n */\n args?: Uint8Array[]\n\n /**\n * List of accounts in addition to the sender that may be accessed\n * from the app's approval program and clear state program.\n */\n accountReferences?: Address[]\n\n /**\n * List of apps in addition to the current app that may be called\n * from the app's approval program and clear state program.\n */\n appReferences?: bigint[]\n\n /**\n * Lists the assets whose parameters may be accessed by this app's\n * approval program and clear state program.\n *\n * The access is read-only.\n */\n assetReferences?: bigint[]\n\n /**\n * The boxes that should be made available for the runtime of the program.\n */\n boxReferences?: BoxReference[]\n\n /**\n * Resources accessed by the application\n */\n accessReferences?: ResourceReference[]\n\n /**\n * If set, the transaction will be rejected when the app's version is greater than or equal to this value. This can be used to prevent calling an app after it has been updated. Set to 0 or leave undefined to skip the version check.\n * */\n rejectVersion?: number\n}\n\n/**\n * On-completion actions for application transactions.\n *\n * These values define what additional actions occur with the transaction.\n */\nexport enum OnApplicationComplete {\n /**\n * NoOp indicates that an app transaction will simply call its\n * approval program without any additional action.\n */\n NoOp,\n /**\n * OptIn indicates that an app transaction will allocate some\n * local state for the app in the sender's account.\n */\n OptIn,\n /**\n * CloseOut indicates that an app transaction will deallocate\n * some local state for the app from the user's account.\n */\n CloseOut,\n /**\n * ClearState is similar to CloseOut, but may never fail. This\n * allows users to reclaim their minimum balance from an app\n * they no longer wish to opt in to.\n */\n ClearState,\n /**\n * UpdateApplication indicates that an app transaction will\n * update the approval program and clear state program for the app.\n */\n UpdateApplication,\n /**\n * DeleteApplication indicates that an app transaction will\n * delete the app parameters for the app from the creator's\n * balance record.\n */\n DeleteApplication,\n}\n\n/**\n * Schema for app state storage.\n *\n * Defines the maximum number of values that may be stored in app\n * key/value storage for both global and local state.\n */\nexport type StateSchema = {\n /**\n * Maximum number of integer values that may be stored.\n */\n numUints: number\n\n /**\n * Maximum number of byte slice values that may be stored.\n */\n numByteSlices: number\n}\n\n/**\n * Box reference for app call transactions.\n *\n * References a specific box that should be made available for the runtime\n * of the program.\n */\nexport type BoxReference = {\n /**\n * App ID that owns the box.\n * A value of 0 indicates the current app.\n */\n appId: bigint\n\n /**\n * Name of the box.\n */\n name: Uint8Array\n}\n\n/**\n * Names a single resource reference. Only one of the fields should be set.\n */\nexport type ResourceReference = {\n /** Any account addresses whose balance record is accessible by the executing ApprovalProgram or ClearStateProgram. */\n address?: Address\n /** Application ID whose GlobalState may be read by the executing ApprovalProgram or ClearStateProgram. */\n appId?: bigint\n /** Asset ID whose AssetParams may be read by the executing ApprovalProgram or ClearStateProgram. */\n assetId?: bigint\n /** Defines a holding by referring to an Address and Asset it belongs to. */\n holding?: HoldingReference\n /** Defines a local state by referring to an Address and App it belongs to. */\n locals?: LocalsReference\n /** Defines a box by its name and the application ID it belongs to. */\n box?: BoxReference\n}\n\n/**\n * A grouping of the asset index and address of the account\n */\nexport type HoldingReference = {\n /** The asset index of the holding */\n assetId: bigint\n\n /** The address of the account holding the asset */\n address: Address\n}\n\n/** A grouping of the application index and address of the account\n */\nexport type LocalsReference = {\n /** The application index of the local state */\n appId: bigint\n\n /** The address of the account holding the local state */\n address: Address\n}\n\nconst FIELD_ARGS = 'Args'\nconst FIELD_APPROVAL_PROGRAM = 'Approval program'\nconst FIELD_CLEAR_STATE_PROGRAM = 'Clear state program'\nconst FIELD_GLOBAL_STATE_SCHEMA = 'Global state schema'\nconst FIELD_LOCAL_STATE_SCHEMA = 'Local state schema'\nconst FIELD_EXTRA_PROGRAM_PAGES = 'Extra program pages'\n\n/**\n * Validate app call transaction fields\n */\nexport function validateAppCallTransaction(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.appId === 0n) {\n // App creation\n errors.push(...validateAppCreation(appCall))\n } else {\n // App call, update, or delete\n errors.push(...validateAppOperation(appCall))\n }\n\n // Common validations for all app operations\n errors.push(...validateAppCommonFields(appCall))\n\n return errors\n}\n\n/**\n * Validate app creation fields\n */\nfunction validateAppCreation(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (!appCall.approvalProgram || appCall.approvalProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_APPROVAL_PROGRAM })\n }\n\n if (!appCall.clearStateProgram || appCall.clearStateProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_CLEAR_STATE_PROGRAM })\n }\n\n const extraPages = appCall.extraProgramPages ?? 0\n if (extraPages > MAX_EXTRA_PROGRAM_PAGES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_EXTRA_PROGRAM_PAGES, actual: extraPages, max: MAX_EXTRA_PROGRAM_PAGES, unit: 'pages' },\n })\n }\n\n const maxProgramSize = PROGRAM_PAGE_SIZE + extraPages * PROGRAM_PAGE_SIZE\n\n if (appCall.approvalProgram && appCall.approvalProgram.length > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_APPROVAL_PROGRAM, actual: appCall.approvalProgram.length, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n if (appCall.clearStateProgram && appCall.clearStateProgram.length > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_CLEAR_STATE_PROGRAM, actual: appCall.clearStateProgram.length, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n const totalProgramSize = (appCall.approvalProgram?.length ?? 0) + (appCall.clearStateProgram?.length ?? 0)\n if (totalProgramSize > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Combined approval and clear state programs', actual: totalProgramSize, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n if (appCall.globalStateSchema) {\n const totalKeys = appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices\n if (totalKeys > MAX_GLOBAL_STATE_KEYS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_GLOBAL_STATE_SCHEMA,\n actual: appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices,\n max: MAX_GLOBAL_STATE_KEYS,\n unit: 'keys',\n },\n })\n }\n }\n\n if (appCall.localStateSchema) {\n const totalKeys = appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices\n if (totalKeys > MAX_LOCAL_STATE_KEYS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_LOCAL_STATE_SCHEMA,\n actual: appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices,\n max: MAX_LOCAL_STATE_KEYS,\n unit: 'keys',\n },\n })\n }\n }\n\n return errors\n}\n\n/**\n * Validate app operation (update, delete, call) fields\n */\nfunction validateAppOperation(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.onComplete === OnApplicationComplete.UpdateApplication) {\n if (!appCall.approvalProgram || appCall.approvalProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_APPROVAL_PROGRAM })\n }\n if (!appCall.clearStateProgram || appCall.clearStateProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_CLEAR_STATE_PROGRAM })\n }\n }\n\n // These fields are immutable and cannot be set for existing apps\n if (appCall.globalStateSchema !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_GLOBAL_STATE_SCHEMA })\n }\n if (appCall.localStateSchema !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_LOCAL_STATE_SCHEMA })\n }\n if (appCall.extraProgramPages !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_EXTRA_PROGRAM_PAGES })\n }\n\n return errors\n}\n\n/**\n * Validate common app call fields\n */\nfunction validateAppCommonFields(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.args) {\n if (appCall.args.length > MAX_APP_ARGS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_ARGS, actual: appCall.args.length, max: MAX_APP_ARGS, unit: 'arguments' },\n })\n }\n\n const totalArgsSize = appCall.args.reduce((sum, arg) => sum + arg.length, 0)\n if (totalArgsSize > MAX_ARGS_SIZE) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Args total size', actual: totalArgsSize, max: MAX_ARGS_SIZE, unit: 'bytes' },\n })\n }\n }\n\n if (appCall.accountReferences && appCall.accountReferences.length > MAX_ACCOUNT_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Account references', actual: appCall.accountReferences.length, max: MAX_ACCOUNT_REFERENCES, unit: 'refs' },\n })\n }\n\n if (appCall.appReferences && appCall.appReferences.length > MAX_APP_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'App references', actual: appCall.appReferences.length, max: MAX_APP_REFERENCES, unit: 'refs' },\n })\n }\n\n if (appCall.assetReferences && appCall.assetReferences.length > MAX_ASSET_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Asset references', actual: appCall.assetReferences.length, max: MAX_ASSET_REFERENCES, unit: 'refs' },\n })\n }\n\n // Validate box references\n if (appCall.boxReferences) {\n if (appCall.boxReferences.length > MAX_BOX_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Box references', actual: appCall.boxReferences.length, max: MAX_BOX_REFERENCES, unit: 'refs' },\n })\n }\n\n // Validate that box reference app IDs are in app references\n const appRefs = appCall.appReferences || []\n for (const boxRef of appCall.boxReferences) {\n if (boxRef.appId !== 0n && boxRef.appId !== appCall.appId && !appRefs.includes(boxRef.appId)) {\n errors.push({\n type: TransactionValidationErrorType.ArbitraryConstraint,\n data: `Box reference for app ID ${boxRef.appId} must be in app references`,\n })\n }\n }\n }\n\n // Validate overall reference count\n const totalReferences =\n (appCall.accountReferences?.length || 0) +\n (appCall.appReferences?.length || 0) +\n (appCall.assetReferences?.length || 0) +\n (appCall.boxReferences?.length || 0)\n\n if (totalReferences > MAX_OVERALL_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Total references', actual: totalReferences, max: MAX_OVERALL_REFERENCES, unit: 'refs' },\n })\n }\n\n return errors\n}\n"],"mappings":"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"}
@@ -1,6 +1,5 @@
1
- import { MAX_ACCOUNT_REFERENCES, MAX_APP_ARGS, MAX_APP_REFERENCES, MAX_ARGS_SIZE, MAX_ASSET_REFERENCES, MAX_BOX_REFERENCES, MAX_EXTRA_PROGRAM_PAGES, MAX_GLOBAL_STATE_KEYS, MAX_LOCAL_STATE_KEYS, MAX_OVERALL_REFERENCES, PROGRAM_PAGE_SIZE } from "../../../common/src/constants.mjs";
1
+ import { MAX_ARGS_SIZE, PROGRAM_PAGE_SIZE } from "../../../common/src/constants.mjs";
2
2
  import { TransactionValidationErrorType } from "./common.mjs";
3
-
4
3
  //#region packages/transact/src/transactions/app-call.ts
5
4
  /**
6
5
  * On-completion actions for application transactions.
@@ -72,12 +71,12 @@ function validateAppCreation(appCall) {
72
71
  data: FIELD_CLEAR_STATE_PROGRAM
73
72
  });
74
73
  const extraPages = appCall.extraProgramPages ?? 0;
75
- if (extraPages > MAX_EXTRA_PROGRAM_PAGES) errors.push({
74
+ if (extraPages > 3) errors.push({
76
75
  type: TransactionValidationErrorType.FieldTooLong,
77
76
  data: {
78
77
  field: FIELD_EXTRA_PROGRAM_PAGES,
79
78
  actual: extraPages,
80
- max: MAX_EXTRA_PROGRAM_PAGES,
79
+ max: 3,
81
80
  unit: "pages"
82
81
  }
83
82
  });
@@ -111,23 +110,23 @@ function validateAppCreation(appCall) {
111
110
  }
112
111
  });
113
112
  if (appCall.globalStateSchema) {
114
- if (appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices > MAX_GLOBAL_STATE_KEYS) errors.push({
113
+ if (appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices > 64) errors.push({
115
114
  type: TransactionValidationErrorType.FieldTooLong,
116
115
  data: {
117
116
  field: FIELD_GLOBAL_STATE_SCHEMA,
118
117
  actual: appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices,
119
- max: MAX_GLOBAL_STATE_KEYS,
118
+ max: 64,
120
119
  unit: "keys"
121
120
  }
122
121
  });
123
122
  }
124
123
  if (appCall.localStateSchema) {
125
- if (appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices > MAX_LOCAL_STATE_KEYS) errors.push({
124
+ if (appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices > 16) errors.push({
126
125
  type: TransactionValidationErrorType.FieldTooLong,
127
126
  data: {
128
127
  field: FIELD_LOCAL_STATE_SCHEMA,
129
128
  actual: appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices,
130
- max: MAX_LOCAL_STATE_KEYS,
129
+ max: 16,
131
130
  unit: "keys"
132
131
  }
133
132
  });
@@ -169,17 +168,17 @@ function validateAppOperation(appCall) {
169
168
  function validateAppCommonFields(appCall) {
170
169
  const errors = new Array();
171
170
  if (appCall.args) {
172
- if (appCall.args.length > MAX_APP_ARGS) errors.push({
171
+ if (appCall.args.length > 16) errors.push({
173
172
  type: TransactionValidationErrorType.FieldTooLong,
174
173
  data: {
175
174
  field: FIELD_ARGS,
176
175
  actual: appCall.args.length,
177
- max: MAX_APP_ARGS,
176
+ max: 16,
178
177
  unit: "arguments"
179
178
  }
180
179
  });
181
180
  const totalArgsSize = appCall.args.reduce((sum, arg) => sum + arg.length, 0);
182
- if (totalArgsSize > MAX_ARGS_SIZE) errors.push({
181
+ if (totalArgsSize > 2048) errors.push({
183
182
  type: TransactionValidationErrorType.FieldTooLong,
184
183
  data: {
185
184
  field: "Args total size",
@@ -189,40 +188,40 @@ function validateAppCommonFields(appCall) {
189
188
  }
190
189
  });
191
190
  }
192
- if (appCall.accountReferences && appCall.accountReferences.length > MAX_ACCOUNT_REFERENCES) errors.push({
191
+ if (appCall.accountReferences && appCall.accountReferences.length > 8) errors.push({
193
192
  type: TransactionValidationErrorType.FieldTooLong,
194
193
  data: {
195
194
  field: "Account references",
196
195
  actual: appCall.accountReferences.length,
197
- max: MAX_ACCOUNT_REFERENCES,
196
+ max: 8,
198
197
  unit: "refs"
199
198
  }
200
199
  });
201
- if (appCall.appReferences && appCall.appReferences.length > MAX_APP_REFERENCES) errors.push({
200
+ if (appCall.appReferences && appCall.appReferences.length > 8) errors.push({
202
201
  type: TransactionValidationErrorType.FieldTooLong,
203
202
  data: {
204
203
  field: "App references",
205
204
  actual: appCall.appReferences.length,
206
- max: MAX_APP_REFERENCES,
205
+ max: 8,
207
206
  unit: "refs"
208
207
  }
209
208
  });
210
- if (appCall.assetReferences && appCall.assetReferences.length > MAX_ASSET_REFERENCES) errors.push({
209
+ if (appCall.assetReferences && appCall.assetReferences.length > 8) errors.push({
211
210
  type: TransactionValidationErrorType.FieldTooLong,
212
211
  data: {
213
212
  field: "Asset references",
214
213
  actual: appCall.assetReferences.length,
215
- max: MAX_ASSET_REFERENCES,
214
+ max: 8,
216
215
  unit: "refs"
217
216
  }
218
217
  });
219
218
  if (appCall.boxReferences) {
220
- if (appCall.boxReferences.length > MAX_BOX_REFERENCES) errors.push({
219
+ if (appCall.boxReferences.length > 8) errors.push({
221
220
  type: TransactionValidationErrorType.FieldTooLong,
222
221
  data: {
223
222
  field: "Box references",
224
223
  actual: appCall.boxReferences.length,
225
- max: MAX_BOX_REFERENCES,
224
+ max: 8,
226
225
  unit: "refs"
227
226
  }
228
227
  });
@@ -233,18 +232,18 @@ function validateAppCommonFields(appCall) {
233
232
  });
234
233
  }
235
234
  const totalReferences = (appCall.accountReferences?.length || 0) + (appCall.appReferences?.length || 0) + (appCall.assetReferences?.length || 0) + (appCall.boxReferences?.length || 0);
236
- if (totalReferences > MAX_OVERALL_REFERENCES) errors.push({
235
+ if (totalReferences > 8) errors.push({
237
236
  type: TransactionValidationErrorType.FieldTooLong,
238
237
  data: {
239
238
  field: "Total references",
240
239
  actual: totalReferences,
241
- max: MAX_OVERALL_REFERENCES,
240
+ max: 8,
242
241
  unit: "refs"
243
242
  }
244
243
  });
245
244
  return errors;
246
245
  }
247
-
248
246
  //#endregion
249
247
  export { OnApplicationComplete, validateAppCallTransaction };
248
+
250
249
  //# sourceMappingURL=app-call.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-call.mjs","names":[],"sources":["../../../../../packages/transact/src/transactions/app-call.ts"],"sourcesContent":["import {\n Address,\n MAX_ACCOUNT_REFERENCES,\n MAX_APP_ARGS,\n MAX_APP_REFERENCES,\n MAX_ARGS_SIZE,\n MAX_ASSET_REFERENCES,\n MAX_BOX_REFERENCES,\n MAX_EXTRA_PROGRAM_PAGES,\n MAX_GLOBAL_STATE_KEYS,\n MAX_LOCAL_STATE_KEYS,\n MAX_OVERALL_REFERENCES,\n PROGRAM_PAGE_SIZE,\n} from '@algorandfoundation/algokit-common'\nimport { TransactionValidationError, TransactionValidationErrorType } from './common'\n\n/**\n * Represents an app call transaction that interacts with Algorand Smart Contracts.\n *\n * App call transactions are used to create, update, delete, opt-in to,\n * close out of, or clear state from Algorand apps (smart contracts).\n */\nexport type AppCallTransactionFields = {\n /**\n * ID of the app being called.\n *\n * Set this to 0 to indicate an app creation call.\n */\n appId: bigint\n\n /**\n * Defines what additional actions occur with the transaction.\n */\n onComplete: OnApplicationComplete\n\n /**\n * Logic executed for every app call transaction, except when\n * on-completion is set to \"clear\".\n *\n * Approval programs may reject the transaction.\n * Only required for app creation and update transactions.\n */\n approvalProgram?: Uint8Array\n\n /**\n * Logic executed for app call transactions with on-completion set to \"clear\".\n *\n * Clear state programs cannot reject the transaction.\n * Only required for app creation and update transactions.\n */\n clearStateProgram?: Uint8Array\n\n /**\n * Holds the maximum number of global state values.\n *\n * Only required for app creation transactions.\n * This cannot be changed after creation.\n */\n globalStateSchema?: StateSchema\n\n /**\n * Holds the maximum number of local state values.\n *\n * Only required for app creation transactions.\n * This cannot be changed after creation.\n */\n localStateSchema?: StateSchema\n\n /**\n * Number of additional pages allocated to the app's approval\n * and clear state programs.\n *\n * Each extra program page is 2048 bytes. The sum of approval program\n * and clear state program may not exceed 2048*(1+extra_program_pages) bytes.\n * Currently, the maximum value is 3.\n * This cannot be changed after creation.\n */\n extraProgramPages?: number\n\n /**\n * Transaction specific arguments available in the app's\n * approval program and clear state program.\n */\n args?: Uint8Array[]\n\n /**\n * List of accounts in addition to the sender that may be accessed\n * from the app's approval program and clear state program.\n */\n accountReferences?: Address[]\n\n /**\n * List of apps in addition to the current app that may be called\n * from the app's approval program and clear state program.\n */\n appReferences?: bigint[]\n\n /**\n * Lists the assets whose parameters may be accessed by this app's\n * approval program and clear state program.\n *\n * The access is read-only.\n */\n assetReferences?: bigint[]\n\n /**\n * The boxes that should be made available for the runtime of the program.\n */\n boxReferences?: BoxReference[]\n\n /**\n * Resources accessed by the application\n */\n accessReferences?: ResourceReference[]\n\n /**\n * If set, the transaction will be rejected when the app's version is greater than or equal to this value. This can be used to prevent calling an app after it has been updated. Set to 0 or leave undefined to skip the version check.\n * */\n rejectVersion?: number\n}\n\n/**\n * On-completion actions for application transactions.\n *\n * These values define what additional actions occur with the transaction.\n */\nexport enum OnApplicationComplete {\n /**\n * NoOp indicates that an app transaction will simply call its\n * approval program without any additional action.\n */\n NoOp,\n /**\n * OptIn indicates that an app transaction will allocate some\n * local state for the app in the sender's account.\n */\n OptIn,\n /**\n * CloseOut indicates that an app transaction will deallocate\n * some local state for the app from the user's account.\n */\n CloseOut,\n /**\n * ClearState is similar to CloseOut, but may never fail. This\n * allows users to reclaim their minimum balance from an app\n * they no longer wish to opt in to.\n */\n ClearState,\n /**\n * UpdateApplication indicates that an app transaction will\n * update the approval program and clear state program for the app.\n */\n UpdateApplication,\n /**\n * DeleteApplication indicates that an app transaction will\n * delete the app parameters for the app from the creator's\n * balance record.\n */\n DeleteApplication,\n}\n\n/**\n * Schema for app state storage.\n *\n * Defines the maximum number of values that may be stored in app\n * key/value storage for both global and local state.\n */\nexport type StateSchema = {\n /**\n * Maximum number of integer values that may be stored.\n */\n numUints: number\n\n /**\n * Maximum number of byte slice values that may be stored.\n */\n numByteSlices: number\n}\n\n/**\n * Box reference for app call transactions.\n *\n * References a specific box that should be made available for the runtime\n * of the program.\n */\nexport type BoxReference = {\n /**\n * App ID that owns the box.\n * A value of 0 indicates the current app.\n */\n appId: bigint\n\n /**\n * Name of the box.\n */\n name: Uint8Array\n}\n\n/**\n * Names a single resource reference. Only one of the fields should be set.\n */\nexport type ResourceReference = {\n /** Any account addresses whose balance record is accessible by the executing ApprovalProgram or ClearStateProgram. */\n address?: Address\n /** Application ID whose GlobalState may be read by the executing ApprovalProgram or ClearStateProgram. */\n appId?: bigint\n /** Asset ID whose AssetParams may be read by the executing ApprovalProgram or ClearStateProgram. */\n assetId?: bigint\n /** Defines a holding by referring to an Address and Asset it belongs to. */\n holding?: HoldingReference\n /** Defines a local state by referring to an Address and App it belongs to. */\n locals?: LocalsReference\n /** Defines a box by its name and the application ID it belongs to. */\n box?: BoxReference\n}\n\n/**\n * A grouping of the asset index and address of the account\n */\nexport type HoldingReference = {\n /** The asset index of the holding */\n assetId: bigint\n\n /** The address of the account holding the asset */\n address: Address\n}\n\n/** A grouping of the application index and address of the account\n */\nexport type LocalsReference = {\n /** The application index of the local state */\n appId: bigint\n\n /** The address of the account holding the local state */\n address: Address\n}\n\nconst FIELD_ARGS = 'Args'\nconst FIELD_APPROVAL_PROGRAM = 'Approval program'\nconst FIELD_CLEAR_STATE_PROGRAM = 'Clear state program'\nconst FIELD_GLOBAL_STATE_SCHEMA = 'Global state schema'\nconst FIELD_LOCAL_STATE_SCHEMA = 'Local state schema'\nconst FIELD_EXTRA_PROGRAM_PAGES = 'Extra program pages'\n\n/**\n * Validate app call transaction fields\n */\nexport function validateAppCallTransaction(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.appId === 0n) {\n // App creation\n errors.push(...validateAppCreation(appCall))\n } else {\n // App call, update, or delete\n errors.push(...validateAppOperation(appCall))\n }\n\n // Common validations for all app operations\n errors.push(...validateAppCommonFields(appCall))\n\n return errors\n}\n\n/**\n * Validate app creation fields\n */\nfunction validateAppCreation(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (!appCall.approvalProgram || appCall.approvalProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_APPROVAL_PROGRAM })\n }\n\n if (!appCall.clearStateProgram || appCall.clearStateProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_CLEAR_STATE_PROGRAM })\n }\n\n const extraPages = appCall.extraProgramPages ?? 0\n if (extraPages > MAX_EXTRA_PROGRAM_PAGES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_EXTRA_PROGRAM_PAGES, actual: extraPages, max: MAX_EXTRA_PROGRAM_PAGES, unit: 'pages' },\n })\n }\n\n const maxProgramSize = PROGRAM_PAGE_SIZE + extraPages * PROGRAM_PAGE_SIZE\n\n if (appCall.approvalProgram && appCall.approvalProgram.length > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_APPROVAL_PROGRAM, actual: appCall.approvalProgram.length, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n if (appCall.clearStateProgram && appCall.clearStateProgram.length > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_CLEAR_STATE_PROGRAM, actual: appCall.clearStateProgram.length, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n const totalProgramSize = (appCall.approvalProgram?.length ?? 0) + (appCall.clearStateProgram?.length ?? 0)\n if (totalProgramSize > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Combined approval and clear state programs', actual: totalProgramSize, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n if (appCall.globalStateSchema) {\n const totalKeys = appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices\n if (totalKeys > MAX_GLOBAL_STATE_KEYS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_GLOBAL_STATE_SCHEMA,\n actual: appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices,\n max: MAX_GLOBAL_STATE_KEYS,\n unit: 'keys',\n },\n })\n }\n }\n\n if (appCall.localStateSchema) {\n const totalKeys = appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices\n if (totalKeys > MAX_LOCAL_STATE_KEYS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_LOCAL_STATE_SCHEMA,\n actual: appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices,\n max: MAX_LOCAL_STATE_KEYS,\n unit: 'keys',\n },\n })\n }\n }\n\n return errors\n}\n\n/**\n * Validate app operation (update, delete, call) fields\n */\nfunction validateAppOperation(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.onComplete === OnApplicationComplete.UpdateApplication) {\n if (!appCall.approvalProgram || appCall.approvalProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_APPROVAL_PROGRAM })\n }\n if (!appCall.clearStateProgram || appCall.clearStateProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_CLEAR_STATE_PROGRAM })\n }\n }\n\n // These fields are immutable and cannot be set for existing apps\n if (appCall.globalStateSchema !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_GLOBAL_STATE_SCHEMA })\n }\n if (appCall.localStateSchema !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_LOCAL_STATE_SCHEMA })\n }\n if (appCall.extraProgramPages !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_EXTRA_PROGRAM_PAGES })\n }\n\n return errors\n}\n\n/**\n * Validate common app call fields\n */\nfunction validateAppCommonFields(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.args) {\n if (appCall.args.length > MAX_APP_ARGS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_ARGS, actual: appCall.args.length, max: MAX_APP_ARGS, unit: 'arguments' },\n })\n }\n\n const totalArgsSize = appCall.args.reduce((sum, arg) => sum + arg.length, 0)\n if (totalArgsSize > MAX_ARGS_SIZE) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Args total size', actual: totalArgsSize, max: MAX_ARGS_SIZE, unit: 'bytes' },\n })\n }\n }\n\n if (appCall.accountReferences && appCall.accountReferences.length > MAX_ACCOUNT_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Account references', actual: appCall.accountReferences.length, max: MAX_ACCOUNT_REFERENCES, unit: 'refs' },\n })\n }\n\n if (appCall.appReferences && appCall.appReferences.length > MAX_APP_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'App references', actual: appCall.appReferences.length, max: MAX_APP_REFERENCES, unit: 'refs' },\n })\n }\n\n if (appCall.assetReferences && appCall.assetReferences.length > MAX_ASSET_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Asset references', actual: appCall.assetReferences.length, max: MAX_ASSET_REFERENCES, unit: 'refs' },\n })\n }\n\n // Validate box references\n if (appCall.boxReferences) {\n if (appCall.boxReferences.length > MAX_BOX_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Box references', actual: appCall.boxReferences.length, max: MAX_BOX_REFERENCES, unit: 'refs' },\n })\n }\n\n // Validate that box reference app IDs are in app references\n const appRefs = appCall.appReferences || []\n for (const boxRef of appCall.boxReferences) {\n if (boxRef.appId !== 0n && boxRef.appId !== appCall.appId && !appRefs.includes(boxRef.appId)) {\n errors.push({\n type: TransactionValidationErrorType.ArbitraryConstraint,\n data: `Box reference for app ID ${boxRef.appId} must be in app references`,\n })\n }\n }\n }\n\n // Validate overall reference count\n const totalReferences =\n (appCall.accountReferences?.length || 0) +\n (appCall.appReferences?.length || 0) +\n (appCall.assetReferences?.length || 0) +\n (appCall.boxReferences?.length || 0)\n\n if (totalReferences > MAX_OVERALL_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Total references', actual: totalReferences, max: MAX_OVERALL_REFERENCES, unit: 'refs' },\n })\n }\n\n return errors\n}\n"],"mappings":";;;;;;;;;AA8HA,IAAY,wEAAL;;;;;AAKL;;;;;AAKA;;;;;AAKA;;;;;;AAMA;;;;;AAKA;;;;;;AAMA;;;AA+EF,MAAM,aAAa;AACnB,MAAM,yBAAyB;AAC/B,MAAM,4BAA4B;AAClC,MAAM,4BAA4B;AAClC,MAAM,2BAA2B;AACjC,MAAM,4BAA4B;;;;AAKlC,SAAgB,2BAA2B,SAAiE;CAC1G,MAAM,SAAS,IAAI,OAAmC;AAEtD,KAAI,QAAQ,UAAU,GAEpB,QAAO,KAAK,GAAG,oBAAoB,QAAQ,CAAC;KAG5C,QAAO,KAAK,GAAG,qBAAqB,QAAQ,CAAC;AAI/C,QAAO,KAAK,GAAG,wBAAwB,QAAQ,CAAC;AAEhD,QAAO;;;;;AAMT,SAAS,oBAAoB,SAAiE;CAC5F,MAAM,SAAS,IAAI,OAAmC;AAEtD,KAAI,CAAC,QAAQ,mBAAmB,QAAQ,gBAAgB,WAAW,EACjE,QAAO,KAAK;EAAE,MAAM,+BAA+B;EAAe,MAAM;EAAwB,CAAC;AAGnG,KAAI,CAAC,QAAQ,qBAAqB,QAAQ,kBAAkB,WAAW,EACrE,QAAO,KAAK;EAAE,MAAM,+BAA+B;EAAe,MAAM;EAA2B,CAAC;CAGtG,MAAM,aAAa,QAAQ,qBAAqB;AAChD,KAAI,aAAa,wBACf,QAAO,KAAK;EACV,MAAM,+BAA+B;EACrC,MAAM;GAAE,OAAO;GAA2B,QAAQ;GAAY,KAAK;GAAyB,MAAM;GAAS;EAC5G,CAAC;CAGJ,MAAM,iBAAiB,oBAAoB,aAAa;AAExD,KAAI,QAAQ,mBAAmB,QAAQ,gBAAgB,SAAS,eAC9D,QAAO,KAAK;EACV,MAAM,+BAA+B;EACrC,MAAM;GAAE,OAAO;GAAwB,QAAQ,QAAQ,gBAAgB;GAAQ,KAAK;GAAgB,MAAM;GAAS;EACpH,CAAC;AAGJ,KAAI,QAAQ,qBAAqB,QAAQ,kBAAkB,SAAS,eAClE,QAAO,KAAK;EACV,MAAM,+BAA+B;EACrC,MAAM;GAAE,OAAO;GAA2B,QAAQ,QAAQ,kBAAkB;GAAQ,KAAK;GAAgB,MAAM;GAAS;EACzH,CAAC;CAGJ,MAAM,oBAAoB,QAAQ,iBAAiB,UAAU,MAAM,QAAQ,mBAAmB,UAAU;AACxG,KAAI,mBAAmB,eACrB,QAAO,KAAK;EACV,MAAM,+BAA+B;EACrC,MAAM;GAAE,OAAO;GAA8C,QAAQ;GAAkB,KAAK;GAAgB,MAAM;GAAS;EAC5H,CAAC;AAGJ,KAAI,QAAQ,mBAEV;MADkB,QAAQ,kBAAkB,WAAW,QAAQ,kBAAkB,gBACjE,sBACd,QAAO,KAAK;GACV,MAAM,+BAA+B;GACrC,MAAM;IACJ,OAAO;IACP,QAAQ,QAAQ,kBAAkB,WAAW,QAAQ,kBAAkB;IACvE,KAAK;IACL,MAAM;IACP;GACF,CAAC;;AAIN,KAAI,QAAQ,kBAEV;MADkB,QAAQ,iBAAiB,WAAW,QAAQ,iBAAiB,gBAC/D,qBACd,QAAO,KAAK;GACV,MAAM,+BAA+B;GACrC,MAAM;IACJ,OAAO;IACP,QAAQ,QAAQ,iBAAiB,WAAW,QAAQ,iBAAiB;IACrE,KAAK;IACL,MAAM;IACP;GACF,CAAC;;AAIN,QAAO;;;;;AAMT,SAAS,qBAAqB,SAAiE;CAC7F,MAAM,SAAS,IAAI,OAAmC;AAEtD,KAAI,QAAQ,eAAe,sBAAsB,mBAAmB;AAClE,MAAI,CAAC,QAAQ,mBAAmB,QAAQ,gBAAgB,WAAW,EACjE,QAAO,KAAK;GAAE,MAAM,+BAA+B;GAAe,MAAM;GAAwB,CAAC;AAEnG,MAAI,CAAC,QAAQ,qBAAqB,QAAQ,kBAAkB,WAAW,EACrE,QAAO,KAAK;GAAE,MAAM,+BAA+B;GAAe,MAAM;GAA2B,CAAC;;AAKxG,KAAI,QAAQ,sBAAsB,OAChC,QAAO,KAAK;EAAE,MAAM,+BAA+B;EAAgB,MAAM;EAA2B,CAAC;AAEvG,KAAI,QAAQ,qBAAqB,OAC/B,QAAO,KAAK;EAAE,MAAM,+BAA+B;EAAgB,MAAM;EAA0B,CAAC;AAEtG,KAAI,QAAQ,sBAAsB,OAChC,QAAO,KAAK;EAAE,MAAM,+BAA+B;EAAgB,MAAM;EAA2B,CAAC;AAGvG,QAAO;;;;;AAMT,SAAS,wBAAwB,SAAiE;CAChG,MAAM,SAAS,IAAI,OAAmC;AAEtD,KAAI,QAAQ,MAAM;AAChB,MAAI,QAAQ,KAAK,SAAS,aACxB,QAAO,KAAK;GACV,MAAM,+BAA+B;GACrC,MAAM;IAAE,OAAO;IAAY,QAAQ,QAAQ,KAAK;IAAQ,KAAK;IAAc,MAAM;IAAa;GAC/F,CAAC;EAGJ,MAAM,gBAAgB,QAAQ,KAAK,QAAQ,KAAK,QAAQ,MAAM,IAAI,QAAQ,EAAE;AAC5E,MAAI,gBAAgB,cAClB,QAAO,KAAK;GACV,MAAM,+BAA+B;GACrC,MAAM;IAAE,OAAO;IAAmB,QAAQ;IAAe,KAAK;IAAe,MAAM;IAAS;GAC7F,CAAC;;AAIN,KAAI,QAAQ,qBAAqB,QAAQ,kBAAkB,SAAS,uBAClE,QAAO,KAAK;EACV,MAAM,+BAA+B;EACrC,MAAM;GAAE,OAAO;GAAsB,QAAQ,QAAQ,kBAAkB;GAAQ,KAAK;GAAwB,MAAM;GAAQ;EAC3H,CAAC;AAGJ,KAAI,QAAQ,iBAAiB,QAAQ,cAAc,SAAS,mBAC1D,QAAO,KAAK;EACV,MAAM,+BAA+B;EACrC,MAAM;GAAE,OAAO;GAAkB,QAAQ,QAAQ,cAAc;GAAQ,KAAK;GAAoB,MAAM;GAAQ;EAC/G,CAAC;AAGJ,KAAI,QAAQ,mBAAmB,QAAQ,gBAAgB,SAAS,qBAC9D,QAAO,KAAK;EACV,MAAM,+BAA+B;EACrC,MAAM;GAAE,OAAO;GAAoB,QAAQ,QAAQ,gBAAgB;GAAQ,KAAK;GAAsB,MAAM;GAAQ;EACrH,CAAC;AAIJ,KAAI,QAAQ,eAAe;AACzB,MAAI,QAAQ,cAAc,SAAS,mBACjC,QAAO,KAAK;GACV,MAAM,+BAA+B;GACrC,MAAM;IAAE,OAAO;IAAkB,QAAQ,QAAQ,cAAc;IAAQ,KAAK;IAAoB,MAAM;IAAQ;GAC/G,CAAC;EAIJ,MAAM,UAAU,QAAQ,iBAAiB,EAAE;AAC3C,OAAK,MAAM,UAAU,QAAQ,cAC3B,KAAI,OAAO,UAAU,MAAM,OAAO,UAAU,QAAQ,SAAS,CAAC,QAAQ,SAAS,OAAO,MAAM,CAC1F,QAAO,KAAK;GACV,MAAM,+BAA+B;GACrC,MAAM,4BAA4B,OAAO,MAAM;GAChD,CAAC;;CAMR,MAAM,mBACH,QAAQ,mBAAmB,UAAU,MACrC,QAAQ,eAAe,UAAU,MACjC,QAAQ,iBAAiB,UAAU,MACnC,QAAQ,eAAe,UAAU;AAEpC,KAAI,kBAAkB,uBACpB,QAAO,KAAK;EACV,MAAM,+BAA+B;EACrC,MAAM;GAAE,OAAO;GAAoB,QAAQ;GAAiB,KAAK;GAAwB,MAAM;GAAQ;EACxG,CAAC;AAGJ,QAAO"}
1
+ {"version":3,"file":"app-call.mjs","names":[],"sources":["../../../../../packages/transact/src/transactions/app-call.ts"],"sourcesContent":["import {\n Address,\n MAX_ACCOUNT_REFERENCES,\n MAX_APP_ARGS,\n MAX_APP_REFERENCES,\n MAX_ARGS_SIZE,\n MAX_ASSET_REFERENCES,\n MAX_BOX_REFERENCES,\n MAX_EXTRA_PROGRAM_PAGES,\n MAX_GLOBAL_STATE_KEYS,\n MAX_LOCAL_STATE_KEYS,\n MAX_OVERALL_REFERENCES,\n PROGRAM_PAGE_SIZE,\n} from '@algorandfoundation/algokit-common'\nimport { TransactionValidationError, TransactionValidationErrorType } from './common'\n\n/**\n * Represents an app call transaction that interacts with Algorand Smart Contracts.\n *\n * App call transactions are used to create, update, delete, opt-in to,\n * close out of, or clear state from Algorand apps (smart contracts).\n */\nexport type AppCallTransactionFields = {\n /**\n * ID of the app being called.\n *\n * Set this to 0 to indicate an app creation call.\n */\n appId: bigint\n\n /**\n * Defines what additional actions occur with the transaction.\n */\n onComplete: OnApplicationComplete\n\n /**\n * Logic executed for every app call transaction, except when\n * on-completion is set to \"clear\".\n *\n * Approval programs may reject the transaction.\n * Only required for app creation and update transactions.\n */\n approvalProgram?: Uint8Array\n\n /**\n * Logic executed for app call transactions with on-completion set to \"clear\".\n *\n * Clear state programs cannot reject the transaction.\n * Only required for app creation and update transactions.\n */\n clearStateProgram?: Uint8Array\n\n /**\n * Holds the maximum number of global state values.\n *\n * Only required for app creation transactions.\n * This cannot be changed after creation.\n */\n globalStateSchema?: StateSchema\n\n /**\n * Holds the maximum number of local state values.\n *\n * Only required for app creation transactions.\n * This cannot be changed after creation.\n */\n localStateSchema?: StateSchema\n\n /**\n * Number of additional pages allocated to the app's approval\n * and clear state programs.\n *\n * Each extra program page is 2048 bytes. The sum of approval program\n * and clear state program may not exceed 2048*(1+extra_program_pages) bytes.\n * Currently, the maximum value is 3.\n * This cannot be changed after creation.\n */\n extraProgramPages?: number\n\n /**\n * Transaction specific arguments available in the app's\n * approval program and clear state program.\n */\n args?: Uint8Array[]\n\n /**\n * List of accounts in addition to the sender that may be accessed\n * from the app's approval program and clear state program.\n */\n accountReferences?: Address[]\n\n /**\n * List of apps in addition to the current app that may be called\n * from the app's approval program and clear state program.\n */\n appReferences?: bigint[]\n\n /**\n * Lists the assets whose parameters may be accessed by this app's\n * approval program and clear state program.\n *\n * The access is read-only.\n */\n assetReferences?: bigint[]\n\n /**\n * The boxes that should be made available for the runtime of the program.\n */\n boxReferences?: BoxReference[]\n\n /**\n * Resources accessed by the application\n */\n accessReferences?: ResourceReference[]\n\n /**\n * If set, the transaction will be rejected when the app's version is greater than or equal to this value. This can be used to prevent calling an app after it has been updated. Set to 0 or leave undefined to skip the version check.\n * */\n rejectVersion?: number\n}\n\n/**\n * On-completion actions for application transactions.\n *\n * These values define what additional actions occur with the transaction.\n */\nexport enum OnApplicationComplete {\n /**\n * NoOp indicates that an app transaction will simply call its\n * approval program without any additional action.\n */\n NoOp,\n /**\n * OptIn indicates that an app transaction will allocate some\n * local state for the app in the sender's account.\n */\n OptIn,\n /**\n * CloseOut indicates that an app transaction will deallocate\n * some local state for the app from the user's account.\n */\n CloseOut,\n /**\n * ClearState is similar to CloseOut, but may never fail. This\n * allows users to reclaim their minimum balance from an app\n * they no longer wish to opt in to.\n */\n ClearState,\n /**\n * UpdateApplication indicates that an app transaction will\n * update the approval program and clear state program for the app.\n */\n UpdateApplication,\n /**\n * DeleteApplication indicates that an app transaction will\n * delete the app parameters for the app from the creator's\n * balance record.\n */\n DeleteApplication,\n}\n\n/**\n * Schema for app state storage.\n *\n * Defines the maximum number of values that may be stored in app\n * key/value storage for both global and local state.\n */\nexport type StateSchema = {\n /**\n * Maximum number of integer values that may be stored.\n */\n numUints: number\n\n /**\n * Maximum number of byte slice values that may be stored.\n */\n numByteSlices: number\n}\n\n/**\n * Box reference for app call transactions.\n *\n * References a specific box that should be made available for the runtime\n * of the program.\n */\nexport type BoxReference = {\n /**\n * App ID that owns the box.\n * A value of 0 indicates the current app.\n */\n appId: bigint\n\n /**\n * Name of the box.\n */\n name: Uint8Array\n}\n\n/**\n * Names a single resource reference. Only one of the fields should be set.\n */\nexport type ResourceReference = {\n /** Any account addresses whose balance record is accessible by the executing ApprovalProgram or ClearStateProgram. */\n address?: Address\n /** Application ID whose GlobalState may be read by the executing ApprovalProgram or ClearStateProgram. */\n appId?: bigint\n /** Asset ID whose AssetParams may be read by the executing ApprovalProgram or ClearStateProgram. */\n assetId?: bigint\n /** Defines a holding by referring to an Address and Asset it belongs to. */\n holding?: HoldingReference\n /** Defines a local state by referring to an Address and App it belongs to. */\n locals?: LocalsReference\n /** Defines a box by its name and the application ID it belongs to. */\n box?: BoxReference\n}\n\n/**\n * A grouping of the asset index and address of the account\n */\nexport type HoldingReference = {\n /** The asset index of the holding */\n assetId: bigint\n\n /** The address of the account holding the asset */\n address: Address\n}\n\n/** A grouping of the application index and address of the account\n */\nexport type LocalsReference = {\n /** The application index of the local state */\n appId: bigint\n\n /** The address of the account holding the local state */\n address: Address\n}\n\nconst FIELD_ARGS = 'Args'\nconst FIELD_APPROVAL_PROGRAM = 'Approval program'\nconst FIELD_CLEAR_STATE_PROGRAM = 'Clear state program'\nconst FIELD_GLOBAL_STATE_SCHEMA = 'Global state schema'\nconst FIELD_LOCAL_STATE_SCHEMA = 'Local state schema'\nconst FIELD_EXTRA_PROGRAM_PAGES = 'Extra program pages'\n\n/**\n * Validate app call transaction fields\n */\nexport function validateAppCallTransaction(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.appId === 0n) {\n // App creation\n errors.push(...validateAppCreation(appCall))\n } else {\n // App call, update, or delete\n errors.push(...validateAppOperation(appCall))\n }\n\n // Common validations for all app operations\n errors.push(...validateAppCommonFields(appCall))\n\n return errors\n}\n\n/**\n * Validate app creation fields\n */\nfunction validateAppCreation(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (!appCall.approvalProgram || appCall.approvalProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_APPROVAL_PROGRAM })\n }\n\n if (!appCall.clearStateProgram || appCall.clearStateProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_CLEAR_STATE_PROGRAM })\n }\n\n const extraPages = appCall.extraProgramPages ?? 0\n if (extraPages > MAX_EXTRA_PROGRAM_PAGES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_EXTRA_PROGRAM_PAGES, actual: extraPages, max: MAX_EXTRA_PROGRAM_PAGES, unit: 'pages' },\n })\n }\n\n const maxProgramSize = PROGRAM_PAGE_SIZE + extraPages * PROGRAM_PAGE_SIZE\n\n if (appCall.approvalProgram && appCall.approvalProgram.length > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_APPROVAL_PROGRAM, actual: appCall.approvalProgram.length, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n if (appCall.clearStateProgram && appCall.clearStateProgram.length > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_CLEAR_STATE_PROGRAM, actual: appCall.clearStateProgram.length, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n const totalProgramSize = (appCall.approvalProgram?.length ?? 0) + (appCall.clearStateProgram?.length ?? 0)\n if (totalProgramSize > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Combined approval and clear state programs', actual: totalProgramSize, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n if (appCall.globalStateSchema) {\n const totalKeys = appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices\n if (totalKeys > MAX_GLOBAL_STATE_KEYS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_GLOBAL_STATE_SCHEMA,\n actual: appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices,\n max: MAX_GLOBAL_STATE_KEYS,\n unit: 'keys',\n },\n })\n }\n }\n\n if (appCall.localStateSchema) {\n const totalKeys = appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices\n if (totalKeys > MAX_LOCAL_STATE_KEYS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_LOCAL_STATE_SCHEMA,\n actual: appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices,\n max: MAX_LOCAL_STATE_KEYS,\n unit: 'keys',\n },\n })\n }\n }\n\n return errors\n}\n\n/**\n * Validate app operation (update, delete, call) fields\n */\nfunction validateAppOperation(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.onComplete === OnApplicationComplete.UpdateApplication) {\n if (!appCall.approvalProgram || appCall.approvalProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_APPROVAL_PROGRAM })\n }\n if (!appCall.clearStateProgram || appCall.clearStateProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_CLEAR_STATE_PROGRAM })\n }\n }\n\n // These fields are immutable and cannot be set for existing apps\n if (appCall.globalStateSchema !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_GLOBAL_STATE_SCHEMA })\n }\n if (appCall.localStateSchema !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_LOCAL_STATE_SCHEMA })\n }\n if (appCall.extraProgramPages !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_EXTRA_PROGRAM_PAGES })\n }\n\n return errors\n}\n\n/**\n * Validate common app call fields\n */\nfunction validateAppCommonFields(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.args) {\n if (appCall.args.length > MAX_APP_ARGS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_ARGS, actual: appCall.args.length, max: MAX_APP_ARGS, unit: 'arguments' },\n })\n }\n\n const totalArgsSize = appCall.args.reduce((sum, arg) => sum + arg.length, 0)\n if (totalArgsSize > MAX_ARGS_SIZE) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Args total size', actual: totalArgsSize, max: MAX_ARGS_SIZE, unit: 'bytes' },\n })\n }\n }\n\n if (appCall.accountReferences && appCall.accountReferences.length > MAX_ACCOUNT_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Account references', actual: appCall.accountReferences.length, max: MAX_ACCOUNT_REFERENCES, unit: 'refs' },\n })\n }\n\n if (appCall.appReferences && appCall.appReferences.length > MAX_APP_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'App references', actual: appCall.appReferences.length, max: MAX_APP_REFERENCES, unit: 'refs' },\n })\n }\n\n if (appCall.assetReferences && appCall.assetReferences.length > MAX_ASSET_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Asset references', actual: appCall.assetReferences.length, max: MAX_ASSET_REFERENCES, unit: 'refs' },\n })\n }\n\n // Validate box references\n if (appCall.boxReferences) {\n if (appCall.boxReferences.length > MAX_BOX_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Box references', actual: appCall.boxReferences.length, max: MAX_BOX_REFERENCES, unit: 'refs' },\n })\n }\n\n // Validate that box reference app IDs are in app references\n const appRefs = appCall.appReferences || []\n for (const boxRef of appCall.boxReferences) {\n if (boxRef.appId !== 0n && boxRef.appId !== appCall.appId && !appRefs.includes(boxRef.appId)) {\n errors.push({\n type: TransactionValidationErrorType.ArbitraryConstraint,\n data: `Box reference for app ID ${boxRef.appId} must be in app references`,\n })\n }\n }\n }\n\n // Validate overall reference count\n const totalReferences =\n (appCall.accountReferences?.length || 0) +\n (appCall.appReferences?.length || 0) +\n (appCall.assetReferences?.length || 0) +\n (appCall.boxReferences?.length || 0)\n\n if (totalReferences > MAX_OVERALL_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Total references', actual: totalReferences, max: MAX_OVERALL_REFERENCES, unit: 'refs' },\n })\n }\n\n return errors\n}\n"],"mappings":"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"}