@algorandfoundation/algokit-utils 10.0.0-alpha.3 → 10.0.0-alpha.31

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 (487) hide show
  1. package/_virtual/rolldown_runtime.js +10 -15
  2. package/abi/index.d.ts +2 -1
  3. package/abi/index.js +3 -0
  4. package/abi/index.mjs +2 -1
  5. package/algod-client/index.d.ts +3 -7
  6. package/algod-client/index.js +2 -5
  7. package/algod-client/index.mjs +2 -2
  8. package/index.d.ts +1 -2
  9. package/index.js +0 -7
  10. package/index.mjs +1 -2
  11. package/indexer-client/index.d.ts +2 -2
  12. package/indexer-client/index.js +6 -6
  13. package/indexer-client/index.mjs +2 -2
  14. package/{indexer-lookup.d.ts → indexer-client/indexer-lookup.d.ts} +8 -11
  15. package/{indexer-lookup.mjs → indexer-client/indexer-lookup.js} +6 -10
  16. package/indexer-client/indexer-lookup.js.map +1 -0
  17. package/{indexer-lookup.js → indexer-client/indexer-lookup.mjs} +3 -18
  18. package/indexer-client/indexer-lookup.mjs.map +1 -0
  19. package/kmd-client/index.d.ts +1 -2
  20. package/kmd-client/index.js +0 -5
  21. package/kmd-client/index.mjs +1 -2
  22. package/package.json +5 -6
  23. package/packages/abi/src/abi-method.d.ts +1 -1
  24. package/packages/abi/src/abi-method.js +1 -1
  25. package/packages/abi/src/abi-method.js.map +1 -1
  26. package/packages/abi/src/abi-method.mjs +1 -1
  27. package/packages/abi/src/abi-method.mjs.map +1 -1
  28. package/packages/abi/src/abi-type.d.ts +1 -3
  29. package/packages/abi/src/abi-type.js +7 -36
  30. package/packages/abi/src/abi-type.js.map +1 -1
  31. package/packages/abi/src/abi-type.mjs +7 -36
  32. package/packages/abi/src/abi-type.mjs.map +1 -1
  33. package/packages/abi/src/arc56-contract.js +1 -0
  34. package/packages/abi/src/arc56-contract.js.map +1 -1
  35. package/packages/abi/src/arc56-contract.mjs +1 -0
  36. package/packages/abi/src/arc56-contract.mjs.map +1 -1
  37. package/packages/abi/src/utils.d.ts +22 -0
  38. package/packages/abi/src/utils.js +57 -0
  39. package/packages/abi/src/utils.js.map +1 -0
  40. package/packages/abi/src/utils.mjs +55 -0
  41. package/packages/abi/src/utils.mjs.map +1 -0
  42. package/packages/algo25/src/index.js +1 -1
  43. package/packages/algo25/src/index.mjs +1 -1
  44. package/packages/algod_client/src/apis/api-service.d.ts +44 -44
  45. package/packages/algod_client/src/apis/api-service.js +155 -155
  46. package/packages/algod_client/src/apis/api-service.js.map +1 -1
  47. package/packages/algod_client/src/apis/api-service.mjs +155 -155
  48. package/packages/algod_client/src/apis/api-service.mjs.map +1 -1
  49. package/packages/algod_client/src/core/api-error.js +3 -1
  50. package/packages/algod_client/src/core/api-error.js.map +1 -1
  51. package/packages/algod_client/src/core/api-error.mjs +3 -1
  52. package/packages/algod_client/src/core/api-error.mjs.map +1 -1
  53. package/packages/algod_client/src/core/model-runtime.js +6 -6
  54. package/packages/algod_client/src/core/model-runtime.js.map +1 -1
  55. package/packages/algod_client/src/core/model-runtime.mjs +8 -8
  56. package/packages/algod_client/src/core/model-runtime.mjs.map +1 -1
  57. package/packages/algod_client/src/models/account-participation.js +4 -4
  58. package/packages/algod_client/src/models/account-participation.js.map +1 -1
  59. package/packages/algod_client/src/models/account-participation.mjs +4 -4
  60. package/packages/algod_client/src/models/account-participation.mjs.map +1 -1
  61. package/packages/algod_client/src/models/application-state-schema.d.ts +2 -2
  62. package/packages/algod_client/src/models/application-state-schema.js +2 -2
  63. package/packages/algod_client/src/models/application-state-schema.js.map +1 -1
  64. package/packages/algod_client/src/models/application-state-schema.mjs +2 -2
  65. package/packages/algod_client/src/models/application-state-schema.mjs.map +1 -1
  66. package/packages/algod_client/src/models/asset-params.js +2 -1
  67. package/packages/algod_client/src/models/asset-params.js.map +1 -1
  68. package/packages/algod_client/src/models/asset-params.mjs +2 -1
  69. package/packages/algod_client/src/models/asset-params.mjs.map +1 -1
  70. package/packages/algod_client/src/models/block-response.js +1 -2
  71. package/packages/algod_client/src/models/block-response.js.map +1 -1
  72. package/packages/algod_client/src/models/block-response.mjs +2 -3
  73. package/packages/algod_client/src/models/block-response.mjs.map +1 -1
  74. package/packages/algod_client/src/models/block.d.ts +60 -40
  75. package/packages/algod_client/src/models/block.js +184 -108
  76. package/packages/algod_client/src/models/block.js.map +1 -1
  77. package/packages/algod_client/src/models/block.mjs +184 -108
  78. package/packages/algod_client/src/models/block.mjs.map +1 -1
  79. package/packages/algod_client/src/models/eval-delta-key-value.js +2 -2
  80. package/packages/algod_client/src/models/eval-delta-key-value.js.map +1 -1
  81. package/packages/algod_client/src/models/eval-delta-key-value.mjs +2 -2
  82. package/packages/algod_client/src/models/eval-delta-key-value.mjs.map +1 -1
  83. package/packages/algod_client/src/models/eval-delta.js +2 -2
  84. package/packages/algod_client/src/models/eval-delta.js.map +1 -1
  85. package/packages/algod_client/src/models/eval-delta.mjs +2 -2
  86. package/packages/algod_client/src/models/eval-delta.mjs.map +1 -1
  87. package/packages/algod_client/src/models/ledger-state-delta.js +1 -1
  88. package/packages/algod_client/src/models/ledger-state-delta.js.map +1 -1
  89. package/packages/algod_client/src/models/ledger-state-delta.mjs +2 -2
  90. package/packages/algod_client/src/models/ledger-state-delta.mjs.map +1 -1
  91. package/packages/algod_client/src/models/simulate-request.js +1 -1
  92. package/packages/algod_client/src/models/simulate-request.mjs +1 -1
  93. package/packages/algod_client/src/models/simulate-response.d.ts +2 -1
  94. package/packages/algod_client/src/models/simulate-response.js +6 -1
  95. package/packages/algod_client/src/models/simulate-response.js.map +1 -1
  96. package/packages/algod_client/src/models/simulate-response.mjs +6 -2
  97. package/packages/algod_client/src/models/simulate-response.mjs.map +1 -1
  98. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.d.ts +3 -5
  99. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js +4 -6
  100. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js.map +1 -1
  101. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs +3 -5
  102. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs.map +1 -1
  103. package/packages/algod_client/src/models/transaction-parameters-response.js +2 -2
  104. package/packages/algod_client/src/models/transaction-parameters-response.js.map +1 -1
  105. package/packages/algod_client/src/models/transaction-parameters-response.mjs +2 -2
  106. package/packages/algod_client/src/models/transaction-parameters-response.mjs.map +1 -1
  107. package/packages/common/src/address.d.ts +0 -1
  108. package/packages/common/src/address.js +4 -17
  109. package/packages/common/src/address.js.map +1 -1
  110. package/packages/common/src/address.mjs +5 -17
  111. package/packages/common/src/address.mjs.map +1 -1
  112. package/packages/common/src/codecs/composite/map.js +7 -4
  113. package/packages/common/src/codecs/composite/map.js.map +1 -1
  114. package/packages/common/src/codecs/composite/map.mjs +7 -4
  115. package/packages/common/src/codecs/composite/map.mjs.map +1 -1
  116. package/packages/common/src/codecs/composite/record.js +0 -1
  117. package/packages/common/src/codecs/composite/record.js.map +1 -1
  118. package/packages/common/src/codecs/primitives/address.js +0 -1
  119. package/packages/common/src/codecs/primitives/address.js.map +1 -1
  120. package/packages/common/src/codecs/primitives/bytes-base64.js +26 -0
  121. package/packages/common/src/codecs/primitives/bytes-base64.js.map +1 -0
  122. package/packages/common/src/codecs/primitives/bytes-base64.mjs +25 -0
  123. package/packages/common/src/codecs/primitives/bytes-base64.mjs.map +1 -0
  124. package/packages/common/src/codecs/primitives/bytes.js +0 -1
  125. package/packages/common/src/codecs/primitives/bytes.js.map +1 -1
  126. package/packages/common/src/codecs/primitives/fixed-bytes.js +0 -1
  127. package/packages/common/src/codecs/primitives/fixed-bytes.js.map +1 -1
  128. package/packages/common/src/codecs/wire.js +0 -1
  129. package/packages/common/src/codecs/wire.js.map +1 -1
  130. package/packages/common/src/json.mjs +2 -2
  131. package/packages/common/src/json.mjs.map +1 -1
  132. package/packages/common/src/msgpack.js +0 -1
  133. package/packages/common/src/msgpack.js.map +1 -1
  134. package/packages/{sdk/src/logic → common/src}/sourcemap.d.ts +2 -2
  135. package/packages/{sdk/src/logic → common/src}/sourcemap.js +2 -2
  136. package/packages/{sdk/src/logic → common/src}/sourcemap.js.map +1 -1
  137. package/packages/{sdk/src/logic → common/src}/sourcemap.mjs +1 -1
  138. package/packages/{sdk/src/logic → common/src}/sourcemap.mjs.map +1 -1
  139. package/packages/indexer_client/src/apis/api-service.d.ts +1 -1
  140. package/packages/indexer_client/src/apis/api-service.js +12 -12
  141. package/packages/indexer_client/src/apis/api-service.js.map +1 -1
  142. package/packages/indexer_client/src/apis/api-service.mjs +12 -12
  143. package/packages/indexer_client/src/apis/api-service.mjs.map +1 -1
  144. package/packages/indexer_client/src/core/api-error.js +3 -1
  145. package/packages/indexer_client/src/core/api-error.js.map +1 -1
  146. package/packages/indexer_client/src/core/api-error.mjs +3 -1
  147. package/packages/indexer_client/src/core/api-error.mjs.map +1 -1
  148. package/packages/indexer_client/src/core/model-runtime.js +0 -15
  149. package/packages/indexer_client/src/core/model-runtime.js.map +1 -1
  150. package/packages/indexer_client/src/core/model-runtime.mjs +1 -13
  151. package/packages/indexer_client/src/core/model-runtime.mjs.map +1 -1
  152. package/packages/indexer_client/src/models/account-participation.js +4 -4
  153. package/packages/indexer_client/src/models/account-participation.js.map +1 -1
  154. package/packages/indexer_client/src/models/account-participation.mjs +4 -4
  155. package/packages/indexer_client/src/models/account-participation.mjs.map +1 -1
  156. package/packages/indexer_client/src/models/application-state-schema.d.ts +2 -2
  157. package/packages/indexer_client/src/models/application-state-schema.js +2 -2
  158. package/packages/indexer_client/src/models/application-state-schema.js.map +1 -1
  159. package/packages/indexer_client/src/models/application-state-schema.mjs +2 -2
  160. package/packages/indexer_client/src/models/application-state-schema.mjs.map +1 -1
  161. package/packages/indexer_client/src/models/asset-params.js +2 -1
  162. package/packages/indexer_client/src/models/asset-params.js.map +1 -1
  163. package/packages/indexer_client/src/models/asset-params.mjs +2 -1
  164. package/packages/indexer_client/src/models/asset-params.mjs.map +1 -1
  165. package/packages/indexer_client/src/models/block.d.ts +5 -5
  166. package/packages/indexer_client/src/models/block.js +13 -13
  167. package/packages/indexer_client/src/models/block.js.map +1 -1
  168. package/packages/indexer_client/src/models/block.mjs +13 -13
  169. package/packages/indexer_client/src/models/block.mjs.map +1 -1
  170. package/packages/indexer_client/src/models/eval-delta-key-value.d.ts +1 -1
  171. package/packages/indexer_client/src/models/eval-delta-key-value.js +2 -2
  172. package/packages/indexer_client/src/models/eval-delta-key-value.js.map +1 -1
  173. package/packages/indexer_client/src/models/eval-delta-key-value.mjs +2 -2
  174. package/packages/indexer_client/src/models/eval-delta-key-value.mjs.map +1 -1
  175. package/packages/indexer_client/src/models/eval-delta.d.ts +1 -1
  176. package/packages/indexer_client/src/models/eval-delta.js +2 -2
  177. package/packages/indexer_client/src/models/eval-delta.js.map +1 -1
  178. package/packages/indexer_client/src/models/eval-delta.mjs +2 -2
  179. package/packages/indexer_client/src/models/eval-delta.mjs.map +1 -1
  180. package/packages/indexer_client/src/models/hb-proof-fields.js +6 -6
  181. package/packages/indexer_client/src/models/hb-proof-fields.js.map +1 -1
  182. package/packages/indexer_client/src/models/hb-proof-fields.mjs +6 -6
  183. package/packages/indexer_client/src/models/hb-proof-fields.mjs.map +1 -1
  184. package/packages/indexer_client/src/models/participation-updates.d.ts +2 -2
  185. package/packages/indexer_client/src/models/participation-updates.js +2 -2
  186. package/packages/indexer_client/src/models/participation-updates.js.map +1 -1
  187. package/packages/indexer_client/src/models/participation-updates.mjs +2 -2
  188. package/packages/indexer_client/src/models/participation-updates.mjs.map +1 -1
  189. package/packages/indexer_client/src/models/state-proof-verifier.js +2 -2
  190. package/packages/indexer_client/src/models/state-proof-verifier.js.map +1 -1
  191. package/packages/indexer_client/src/models/state-proof-verifier.mjs +2 -2
  192. package/packages/indexer_client/src/models/state-proof-verifier.mjs.map +1 -1
  193. package/packages/indexer_client/src/models/state-schema.d.ts +2 -2
  194. package/packages/indexer_client/src/models/state-schema.js +2 -2
  195. package/packages/indexer_client/src/models/state-schema.js.map +1 -1
  196. package/packages/indexer_client/src/models/state-schema.mjs +2 -2
  197. package/packages/indexer_client/src/models/state-schema.mjs.map +1 -1
  198. package/packages/indexer_client/src/models/teal-key-value.d.ts +1 -1
  199. package/packages/indexer_client/src/models/teal-key-value.js +2 -2
  200. package/packages/indexer_client/src/models/teal-key-value.js.map +1 -1
  201. package/packages/indexer_client/src/models/teal-key-value.mjs +2 -2
  202. package/packages/indexer_client/src/models/teal-key-value.mjs.map +1 -1
  203. package/packages/indexer_client/src/models/transaction-heartbeat.js +2 -1
  204. package/packages/indexer_client/src/models/transaction-heartbeat.js.map +1 -1
  205. package/packages/indexer_client/src/models/transaction-heartbeat.mjs +2 -1
  206. package/packages/indexer_client/src/models/transaction-heartbeat.mjs.map +1 -1
  207. package/packages/indexer_client/src/models/transaction-keyreg.js +4 -4
  208. package/packages/indexer_client/src/models/transaction-keyreg.js.map +1 -1
  209. package/packages/indexer_client/src/models/transaction-keyreg.mjs +4 -4
  210. package/packages/indexer_client/src/models/transaction-keyreg.mjs.map +1 -1
  211. package/packages/indexer_client/src/models/transaction-signature-logicsig.js +2 -1
  212. package/packages/indexer_client/src/models/transaction-signature-logicsig.js.map +1 -1
  213. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs +2 -1
  214. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs.map +1 -1
  215. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js +3 -3
  216. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js.map +1 -1
  217. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs +3 -3
  218. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs.map +1 -1
  219. package/packages/indexer_client/src/models/transaction-state-proof.d.ts +1 -1
  220. package/packages/indexer_client/src/models/transaction-state-proof.js +2 -2
  221. package/packages/indexer_client/src/models/transaction-state-proof.js.map +1 -1
  222. package/packages/indexer_client/src/models/transaction-state-proof.mjs +2 -2
  223. package/packages/indexer_client/src/models/transaction-state-proof.mjs.map +1 -1
  224. package/packages/indexer_client/src/models/transaction.d.ts +2 -2
  225. package/packages/indexer_client/src/models/transaction.js +6 -5
  226. package/packages/indexer_client/src/models/transaction.js.map +1 -1
  227. package/packages/indexer_client/src/models/transaction.mjs +6 -5
  228. package/packages/indexer_client/src/models/transaction.mjs.map +1 -1
  229. package/packages/kmd_client/src/apis/api-service.d.ts +5 -5
  230. package/packages/kmd_client/src/apis/api-service.js +32 -32
  231. package/packages/kmd_client/src/apis/api-service.js.map +1 -1
  232. package/packages/kmd_client/src/apis/api-service.mjs +32 -32
  233. package/packages/kmd_client/src/apis/api-service.mjs.map +1 -1
  234. package/packages/kmd_client/src/core/api-error.js +3 -1
  235. package/packages/kmd_client/src/core/api-error.js.map +1 -1
  236. package/packages/kmd_client/src/core/api-error.mjs +3 -1
  237. package/packages/kmd_client/src/core/api-error.mjs.map +1 -1
  238. package/packages/kmd_client/src/core/model-runtime.js +2 -12
  239. package/packages/kmd_client/src/core/model-runtime.js.map +1 -1
  240. package/packages/kmd_client/src/core/model-runtime.mjs +3 -11
  241. package/packages/kmd_client/src/core/model-runtime.mjs.map +1 -1
  242. package/packages/transact/src/logicsig.d.ts +35 -33
  243. package/packages/transact/src/logicsig.js +74 -76
  244. package/packages/transact/src/logicsig.js.map +1 -1
  245. package/packages/transact/src/logicsig.mjs +77 -78
  246. package/packages/transact/src/logicsig.mjs.map +1 -1
  247. package/packages/transact/src/multisig.d.ts +11 -116
  248. package/packages/transact/src/multisig.js +106 -136
  249. package/packages/transact/src/multisig.js.map +1 -1
  250. package/packages/transact/src/multisig.mjs +108 -118
  251. package/packages/transact/src/multisig.mjs.map +1 -1
  252. package/packages/transact/src/signer.js +9 -2
  253. package/packages/transact/src/signer.js.map +1 -1
  254. package/packages/transact/src/signer.mjs +10 -3
  255. package/packages/transact/src/signer.mjs.map +1 -1
  256. package/packages/transact/src/transactions/app-call.d.ts +10 -15
  257. package/packages/transact/src/transactions/app-call.js.map +1 -1
  258. package/packages/transact/src/transactions/app-call.mjs.map +1 -1
  259. package/packages/transact/src/transactions/asset-config.d.ts +1 -6
  260. package/packages/transact/src/transactions/asset-config.js.map +1 -1
  261. package/packages/transact/src/transactions/asset-config.mjs.map +1 -1
  262. package/packages/transact/src/transactions/asset-freeze.d.ts +1 -6
  263. package/packages/transact/src/transactions/asset-transfer.d.ts +1 -6
  264. package/packages/transact/src/transactions/key-registration.d.ts +1 -8
  265. package/packages/transact/src/transactions/reference-types-meta.d.ts +26 -0
  266. package/packages/transact/src/transactions/reference-types-meta.js +71 -0
  267. package/packages/transact/src/transactions/reference-types-meta.js.map +1 -0
  268. package/packages/transact/src/transactions/reference-types-meta.mjs +69 -0
  269. package/packages/transact/src/transactions/reference-types-meta.mjs.map +1 -0
  270. package/packages/transact/src/transactions/signed-transaction-meta.js +8 -9
  271. package/packages/transact/src/transactions/signed-transaction-meta.js.map +1 -1
  272. package/packages/transact/src/transactions/signed-transaction-meta.mjs +8 -8
  273. package/packages/transact/src/transactions/signed-transaction-meta.mjs.map +1 -1
  274. package/packages/transact/src/transactions/signed-transaction.d.ts +10 -6
  275. package/packages/transact/src/transactions/signed-transaction.js +1 -1
  276. package/packages/transact/src/transactions/signed-transaction.js.map +1 -1
  277. package/packages/transact/src/transactions/signed-transaction.mjs +1 -2
  278. package/packages/transact/src/transactions/signed-transaction.mjs.map +1 -1
  279. package/packages/transact/src/transactions/state-proof.d.ts +1 -1
  280. package/packages/transact/src/transactions/transaction-meta.js +29 -23
  281. package/packages/transact/src/transactions/transaction-meta.js.map +1 -1
  282. package/packages/transact/src/transactions/transaction-meta.mjs +29 -23
  283. package/packages/transact/src/transactions/transaction-meta.mjs.map +1 -1
  284. package/packages/transact/src/transactions/transaction.d.ts +5 -2
  285. package/packages/transact/src/transactions/transaction.js +5 -4
  286. package/packages/transact/src/transactions/transaction.js.map +1 -1
  287. package/packages/transact/src/transactions/transaction.mjs +5 -4
  288. package/packages/transact/src/transactions/transaction.mjs.map +1 -1
  289. package/testing/account.js +1 -2
  290. package/testing/account.js.map +1 -1
  291. package/testing/account.mjs +1 -2
  292. package/testing/account.mjs.map +1 -1
  293. package/testing/fixtures/algorand-fixture.d.ts +3 -3
  294. package/testing/fixtures/algorand-fixture.js.map +1 -1
  295. package/testing/fixtures/algorand-fixture.mjs.map +1 -1
  296. package/testing/transaction-logger.js +1 -1
  297. package/testing/transaction-logger.mjs +1 -1
  298. package/transact/index.d.ts +11 -10
  299. package/transact/index.js +7 -31
  300. package/transact/index.mjs +7 -10
  301. package/transaction/transaction.js +2 -2
  302. package/transaction/transaction.js.map +1 -1
  303. package/transaction/transaction.mjs +2 -2
  304. package/transaction/transaction.mjs.map +1 -1
  305. package/transactions/app-call.d.ts +5 -4
  306. package/transactions/app-call.js +16 -16
  307. package/transactions/app-call.js.map +1 -1
  308. package/transactions/app-call.mjs +16 -16
  309. package/transactions/app-call.mjs.map +1 -1
  310. package/transactions/asset-config.d.ts +1 -1
  311. package/transactions/asset-config.js +1 -1
  312. package/transactions/asset-config.js.map +1 -1
  313. package/transactions/asset-config.mjs +1 -1
  314. package/transactions/asset-config.mjs.map +1 -1
  315. package/transactions/key-registration.d.ts +1 -1
  316. package/transactions/key-registration.js.map +1 -1
  317. package/transactions/key-registration.mjs.map +1 -1
  318. package/transactions/method-call.d.ts +1 -1
  319. package/transactions/method-call.js +77 -84
  320. package/transactions/method-call.js.map +1 -1
  321. package/transactions/method-call.mjs +77 -84
  322. package/transactions/method-call.mjs.map +1 -1
  323. package/types/account-manager.d.ts +7 -9
  324. package/types/account-manager.js +17 -7
  325. package/types/account-manager.js.map +1 -1
  326. package/types/account-manager.mjs +17 -7
  327. package/types/account-manager.mjs.map +1 -1
  328. package/types/algorand-client-transaction-creator.d.ts +53 -39
  329. package/types/algorand-client-transaction-creator.js +8 -0
  330. package/types/algorand-client-transaction-creator.js.map +1 -1
  331. package/types/algorand-client-transaction-creator.mjs +8 -0
  332. package/types/algorand-client-transaction-creator.mjs.map +1 -1
  333. package/types/algorand-client-transaction-sender.d.ts +58 -44
  334. package/types/algorand-client-transaction-sender.js +8 -1
  335. package/types/algorand-client-transaction-sender.js.map +1 -1
  336. package/types/algorand-client-transaction-sender.mjs +8 -0
  337. package/types/algorand-client-transaction-sender.mjs.map +1 -1
  338. package/types/amount.js +23 -4
  339. package/types/amount.js.map +1 -1
  340. package/types/amount.mjs +20 -2
  341. package/types/amount.mjs.map +1 -1
  342. package/types/app-client.d.ts +111 -106
  343. package/types/app-client.js +2 -3
  344. package/types/app-client.js.map +1 -1
  345. package/types/app-client.mjs +2 -2
  346. package/types/app-client.mjs.map +1 -1
  347. package/types/app-deployer.d.ts +1 -1
  348. package/types/app-deployer.js +3 -3
  349. package/types/app-deployer.js.map +1 -1
  350. package/types/app-deployer.mjs +3 -3
  351. package/types/app-deployer.mjs.map +1 -1
  352. package/types/app-factory.d.ts +44 -41
  353. package/types/app-factory.js +2 -2
  354. package/types/app-factory.js.map +1 -1
  355. package/types/app-factory.mjs +2 -2
  356. package/types/app-factory.mjs.map +1 -1
  357. package/types/app-manager.d.ts +3 -1
  358. package/types/app-manager.js +17 -11
  359. package/types/app-manager.js.map +1 -1
  360. package/types/app-manager.mjs +17 -11
  361. package/types/app-manager.mjs.map +1 -1
  362. package/types/app-spec.js +12 -5
  363. package/types/app-spec.js.map +1 -1
  364. package/types/app-spec.mjs +12 -5
  365. package/types/app-spec.mjs.map +1 -1
  366. package/types/app.d.ts +2 -2
  367. package/types/app.js.map +1 -1
  368. package/types/app.mjs.map +1 -1
  369. package/types/asset-manager.js +1 -1
  370. package/types/asset-manager.js.map +1 -1
  371. package/types/asset-manager.mjs +1 -1
  372. package/types/asset-manager.mjs.map +1 -1
  373. package/types/async-event-emitter.d.ts +3 -6
  374. package/types/async-event-emitter.js.map +1 -1
  375. package/types/async-event-emitter.mjs.map +1 -1
  376. package/types/client-manager.d.ts +1 -1
  377. package/types/client-manager.js.map +1 -1
  378. package/types/client-manager.mjs.map +1 -1
  379. package/types/composer.d.ts +11 -3
  380. package/types/composer.js +55 -46
  381. package/types/composer.js.map +1 -1
  382. package/types/composer.mjs +46 -36
  383. package/types/composer.mjs.map +1 -1
  384. package/types/debugging.d.ts +13 -9
  385. package/types/debugging.js.map +1 -1
  386. package/types/debugging.mjs.map +1 -1
  387. package/types/expand.d.ts +2 -9
  388. package/types/kmd-account-manager.d.ts +1 -0
  389. package/types/kmd-account-manager.js +22 -11
  390. package/types/kmd-account-manager.js.map +1 -1
  391. package/types/kmd-account-manager.mjs +23 -12
  392. package/types/kmd-account-manager.mjs.map +1 -1
  393. package/types/lifecycle-events.d.ts +0 -1
  394. package/types/lifecycle-events.js.map +1 -1
  395. package/types/lifecycle-events.mjs.map +1 -1
  396. package/types/testing.d.ts +4 -4
  397. package/types/transaction.d.ts +1 -1
  398. package/_virtual/rolldown_runtime.mjs +0 -13
  399. package/indexer-lookup.js.map +0 -1
  400. package/indexer-lookup.mjs.map +0 -1
  401. package/packages/algod_client/src/core/model-runtime.d.ts +0 -10
  402. package/packages/algod_client/src/models/application-local-reference.d.ts +0 -20
  403. package/packages/algod_client/src/models/application-local-reference.js +0 -23
  404. package/packages/algod_client/src/models/application-local-reference.js.map +0 -1
  405. package/packages/algod_client/src/models/application-local-reference.mjs +0 -23
  406. package/packages/algod_client/src/models/application-local-reference.mjs.map +0 -1
  407. package/packages/algod_client/src/models/asset-holding-reference.d.ts +0 -20
  408. package/packages/algod_client/src/models/asset-holding-reference.js +0 -23
  409. package/packages/algod_client/src/models/asset-holding-reference.js.map +0 -1
  410. package/packages/algod_client/src/models/asset-holding-reference.mjs +0 -23
  411. package/packages/algod_client/src/models/asset-holding-reference.mjs.map +0 -1
  412. package/packages/algod_client/src/models/box-reference.d.ts +0 -17
  413. package/packages/algod_client/src/models/box-reference.js +0 -23
  414. package/packages/algod_client/src/models/box-reference.js.map +0 -1
  415. package/packages/algod_client/src/models/box-reference.mjs +0 -23
  416. package/packages/algod_client/src/models/box-reference.mjs.map +0 -1
  417. package/packages/indexer_client/src/core/model-runtime.d.ts +0 -10
  418. package/packages/kmd_client/src/core/model-runtime.d.ts +0 -10
  419. package/packages/sdk/src/convert.d.ts +0 -17
  420. package/packages/sdk/src/convert.js +0 -28
  421. package/packages/sdk/src/convert.js.map +0 -1
  422. package/packages/sdk/src/convert.mjs +0 -25
  423. package/packages/sdk/src/convert.mjs.map +0 -1
  424. package/packages/sdk/src/encoding/binarydata.d.ts +0 -34
  425. package/packages/sdk/src/encoding/binarydata.js +0 -65
  426. package/packages/sdk/src/encoding/binarydata.js.map +0 -1
  427. package/packages/sdk/src/encoding/binarydata.mjs +0 -60
  428. package/packages/sdk/src/encoding/binarydata.mjs.map +0 -1
  429. package/packages/sdk/src/encoding/encoding.d.ts +0 -237
  430. package/packages/sdk/src/encoding/encoding.js +0 -302
  431. package/packages/sdk/src/encoding/encoding.js.map +0 -1
  432. package/packages/sdk/src/encoding/encoding.mjs +0 -287
  433. package/packages/sdk/src/encoding/encoding.mjs.map +0 -1
  434. package/packages/sdk/src/encoding/schema/array.js +0 -35
  435. package/packages/sdk/src/encoding/schema/array.js.map +0 -1
  436. package/packages/sdk/src/encoding/schema/array.mjs +0 -35
  437. package/packages/sdk/src/encoding/schema/array.mjs.map +0 -1
  438. package/packages/sdk/src/encoding/schema/bytearray.js +0 -49
  439. package/packages/sdk/src/encoding/schema/bytearray.js.map +0 -1
  440. package/packages/sdk/src/encoding/schema/bytearray.mjs +0 -49
  441. package/packages/sdk/src/encoding/schema/bytearray.mjs.map +0 -1
  442. package/packages/sdk/src/encoding/schema/map.d.ts +0 -58
  443. package/packages/sdk/src/encoding/schema/map.js +0 -110
  444. package/packages/sdk/src/encoding/schema/map.js.map +0 -1
  445. package/packages/sdk/src/encoding/schema/map.mjs +0 -107
  446. package/packages/sdk/src/encoding/schema/map.mjs.map +0 -1
  447. package/packages/sdk/src/encoding/schema/optional.js +0 -46
  448. package/packages/sdk/src/encoding/schema/optional.js.map +0 -1
  449. package/packages/sdk/src/encoding/schema/optional.mjs +0 -46
  450. package/packages/sdk/src/encoding/schema/optional.mjs.map +0 -1
  451. package/packages/sdk/src/encoding/schema/uint64.js +0 -30
  452. package/packages/sdk/src/encoding/schema/uint64.js.map +0 -1
  453. package/packages/sdk/src/encoding/schema/uint64.mjs +0 -30
  454. package/packages/sdk/src/encoding/schema/uint64.mjs.map +0 -1
  455. package/packages/sdk/src/encoding/uint64.d.ts +0 -34
  456. package/packages/sdk/src/encoding/uint64.js +0 -34
  457. package/packages/sdk/src/encoding/uint64.js.map +0 -1
  458. package/packages/sdk/src/encoding/uint64.mjs +0 -33
  459. package/packages/sdk/src/encoding/uint64.mjs.map +0 -1
  460. package/packages/sdk/src/index.d.ts +0 -44
  461. package/packages/sdk/src/index.js +0 -62
  462. package/packages/sdk/src/index.js.map +0 -1
  463. package/packages/sdk/src/index.mjs +0 -58
  464. package/packages/sdk/src/index.mjs.map +0 -1
  465. package/packages/sdk/src/nacl/naclWrappers.js +0 -14
  466. package/packages/sdk/src/nacl/naclWrappers.js.map +0 -1
  467. package/packages/sdk/src/nacl/naclWrappers.mjs +0 -11
  468. package/packages/sdk/src/nacl/naclWrappers.mjs.map +0 -1
  469. package/packages/sdk/src/types/intDecoding.d.ts +0 -28
  470. package/packages/sdk/src/types/intDecoding.js +0 -32
  471. package/packages/sdk/src/types/intDecoding.js.map +0 -1
  472. package/packages/sdk/src/types/intDecoding.mjs +0 -31
  473. package/packages/sdk/src/types/intDecoding.mjs.map +0 -1
  474. package/packages/sdk/src/types/transactions/encoded.d.ts +0 -40
  475. package/packages/sdk/src/types/transactions/encoded.js +0 -64
  476. package/packages/sdk/src/types/transactions/encoded.js.map +0 -1
  477. package/packages/sdk/src/types/transactions/encoded.mjs +0 -59
  478. package/packages/sdk/src/types/transactions/encoded.mjs.map +0 -1
  479. package/packages/sdk/src/utils/utils.d.ts +0 -64
  480. package/packages/sdk/src/utils/utils.js +0 -140
  481. package/packages/sdk/src/utils/utils.js.map +0 -1
  482. package/packages/sdk/src/utils/utils.mjs +0 -128
  483. package/packages/sdk/src/utils/utils.mjs.map +0 -1
  484. package/packages/transact/src/transactions/common.d.ts +0 -37
  485. package/sdk/index.d.ts +0 -10
  486. package/sdk/index.js +0 -59
  487. package/sdk/index.mjs +0 -11
@@ -1 +0,0 @@
1
- {"version":3,"file":"map.mjs","names":["entries: NamedMapEntry[]","obj: { [key: string]: JSONEncodingData }"],"sources":["../../../../../../packages/sdk/src/encoding/schema/map.ts"],"sourcesContent":["import { RawBinaryString } from 'algorand-msgpack'\nimport { Schema, MsgpackEncodingData, MsgpackRawStringProvider, JSONEncodingData, PrepareJSONOptions } from '../encoding.js'\nimport { ensureUint64, arrayEqual } from '../../utils/utils.js'\nimport { bytesToString, coerceToBytes, bytesToBase64, base64ToBytes } from '../binarydata.js'\n\n/* eslint-disable class-methods-use-this */\n\n/**\n * Describes a key-value entry in a NamedMapSchema.\n */\nexport interface NamedMapEntry {\n /**\n * Key of the entry. Must be unique for this map.\n */\n key: string\n /**\n * The Schema for the entry's value.\n */\n valueSchema: Schema\n /**\n * If true, the entry will be omitted from the encoding if the value is the default value.\n */\n omitEmpty: boolean\n /**\n * If true, valueSchema must be a NamedMapSchema and key must be the empty string. The fields of\n * valueSchema will be embedded directly in the parent map.\n *\n * omitEmpty is ignored for embedded entries. Instead, the individual omitEmpty values of the\n * embedded fields are used.\n */\n embedded?: boolean\n}\n\n/**\n * Applies the omitEmpty flag to all entries in the array.\n * @param entries - The entries to apply the flag to.\n * @returns A new array with the omitEmpty flag applied to all entries.\n */\nexport function allOmitEmpty(entries: Array<Omit<NamedMapEntry, 'omitEmpty'>>): NamedMapEntry[] {\n return entries.map((entry) => ({ ...entry, omitEmpty: true }))\n}\n\n/**\n * Schema for a map/struct with a fixed set of known string fields.\n */\nexport class NamedMapSchema extends Schema {\n private readonly entries: NamedMapEntry[]\n\n constructor(entries: NamedMapEntry[]) {\n super()\n this.entries = entries\n this.checkEntries()\n }\n\n /**\n * Adds new entries to the map schema. WARNING: this is a mutable operation, and you should be very\n * careful when using it. Any error that happens here is non-recoverable and will corrupt the\n * NamedMapSchema object;\n * @param entries - The entries to add.\n */\n public pushEntries(...entries: NamedMapEntry[]) {\n this.entries.push(...entries)\n this.checkEntries()\n }\n\n private checkEntries() {\n for (const entry of this.entries) {\n if (entry.embedded) {\n if (entry.key !== '') {\n throw new Error('Embedded entries must have an empty key')\n }\n if (!(entry.valueSchema instanceof NamedMapSchema)) {\n throw new Error('Embedded entry valueSchema must be a NamedMapSchema')\n }\n }\n }\n\n const keys = new Set<string>()\n for (const entry of this.getEntries()) {\n if (keys.has(entry.key)) {\n throw new Error(`Duplicate key: ${entry.key}`)\n }\n keys.add(entry.key)\n }\n }\n\n /**\n * Returns all top-level entries, properly accounting for fields from embedded entries.\n * @returns An array of all top-level entries for this map.\n */\n public getEntries(): NamedMapEntry[] {\n const entries: NamedMapEntry[] = []\n for (const entry of this.entries) {\n if (entry.embedded) {\n const embeddedMapSchema = entry.valueSchema as NamedMapSchema\n entries.push(...embeddedMapSchema.getEntries())\n } else {\n entries.push(entry)\n }\n }\n return entries\n }\n\n public defaultValue(): Map<string, unknown> {\n const map = new Map<string, unknown>()\n for (const entry of this.getEntries()) {\n map.set(entry.key, entry.valueSchema.defaultValue())\n }\n return map\n }\n\n public isDefaultValue(data: unknown): boolean {\n if (!(data instanceof Map)) return false\n for (const entry of this.getEntries()) {\n if (!entry.valueSchema.isDefaultValue(data.get(entry.key))) {\n return false\n }\n }\n return true\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (!(data instanceof Map)) {\n throw new Error(`NamedMapSchema data must be a Map. Got (${typeof data}) ${data}`)\n }\n const map = new Map<string, MsgpackEncodingData>()\n for (const entry of this.getEntries()) {\n const value = data.get(entry.key)\n if (entry.omitEmpty && entry.valueSchema.isDefaultValue(value)) {\n continue\n }\n map.set(entry.key, entry.valueSchema.prepareMsgpack(value))\n }\n return map\n }\n\n public fromPreparedMsgpack(encoded: MsgpackEncodingData, rawStringProvider: MsgpackRawStringProvider): Map<string, unknown> {\n if (!(encoded instanceof Map)) {\n throw new Error('NamedMapSchema data must be a Map')\n }\n const map = new Map<string, unknown>()\n for (const entry of this.getEntries()) {\n if (encoded.has(entry.key)) {\n map.set(entry.key, entry.valueSchema.fromPreparedMsgpack(encoded.get(entry.key), rawStringProvider.withMapValue(entry.key)))\n } else if (entry.omitEmpty) {\n map.set(entry.key, entry.valueSchema.defaultValue())\n } else {\n throw new Error(`Missing key: ${entry.key}`)\n }\n }\n return map\n }\n\n public prepareJSON(data: unknown, options: PrepareJSONOptions): JSONEncodingData {\n if (!(data instanceof Map)) {\n throw new Error('NamedMapSchema data must be a Map')\n }\n const obj: { [key: string]: JSONEncodingData } = {}\n for (const entry of this.getEntries()) {\n const value = data.get(entry.key)\n if (entry.omitEmpty && entry.valueSchema.isDefaultValue(value)) {\n continue\n }\n obj[entry.key] = entry.valueSchema.prepareJSON(value, options)\n }\n return obj\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): Map<string, unknown> {\n if (encoded == null || typeof encoded !== 'object' || Array.isArray(encoded)) {\n throw new Error('NamedMapSchema data must be an object')\n }\n const map = new Map<string, unknown>()\n for (const entry of this.getEntries()) {\n if (Object.prototype.hasOwnProperty.call(encoded, entry.key)) {\n map.set(entry.key, entry.valueSchema.fromPreparedJSON(encoded[entry.key]))\n } else if (entry.omitEmpty) {\n map.set(entry.key, entry.valueSchema.defaultValue())\n } else {\n throw new Error(`Missing key: ${entry.key}`)\n }\n }\n return map\n }\n}\n\n/**\n * Combines multiple maps into a single map. Throws an error if any of the maps have duplicate keys.\n * @param maps - The maps to combine.\n * @returns A new map with all the entries from the input maps.\n */\nexport function combineMaps<K, V>(...maps: Array<Map<K, V>>): Map<K, V> {\n const combined = new Map<K, V>()\n for (const map of maps) {\n for (const [key, value] of map) {\n if (combined.has(key)) {\n throw new Error(`Duplicate key: ${key}`)\n }\n combined.set(key, value)\n }\n }\n return combined\n}\n\n/**\n * Converts a map to a new map with different keys and values.\n * @param map - The map to convert.\n * @param func - The function to convert each entry.\n * @returns A new map with the converted entries.\n */\nexport function convertMap<K1, V1, K2, V2>(map: Map<K1, V1>, func: (k: K1, v: V1) => [K2, V2]): Map<K2, V2> {\n const mapped = new Map<K2, V2>()\n for (const [key, value] of map) {\n const [newKey, newValue] = func(key, value)\n mapped.set(newKey, newValue)\n }\n return mapped\n}\n\n/**\n * Schema for a map with a variable number of uint64 keys.\n */\nexport class Uint64MapSchema extends Schema {\n constructor(public readonly valueSchema: Schema) {\n super()\n }\n\n public defaultValue(): Map<bigint, unknown> {\n return new Map()\n }\n\n public isDefaultValue(data: unknown): boolean {\n return data instanceof Map && data.size === 0\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (!(data instanceof Map)) {\n throw new Error(`Uint64MapSchema data must be a Map. Got (${typeof data}) ${data}`)\n }\n const prepared = new Map<bigint, MsgpackEncodingData>()\n for (const [key, value] of data) {\n const bigintKey = ensureUint64(key)\n if (prepared.has(bigintKey)) {\n throw new Error(`Duplicate key: ${bigintKey}`)\n }\n prepared.set(bigintKey, this.valueSchema.prepareMsgpack(value))\n }\n return prepared\n }\n\n public fromPreparedMsgpack(encoded: MsgpackEncodingData, rawStringProvider: MsgpackRawStringProvider): Map<bigint, unknown> {\n if (!(encoded instanceof Map)) {\n throw new Error('Uint64MapSchema data must be a Map')\n }\n const map = new Map<bigint, unknown>()\n for (const [key, value] of encoded) {\n const bigintKey = ensureUint64(key)\n if (map.has(bigintKey)) {\n throw new Error(`Duplicate key: ${bigintKey}`)\n }\n map.set(bigintKey, this.valueSchema.fromPreparedMsgpack(value, rawStringProvider.withMapValue(key)))\n }\n return map\n }\n\n public prepareJSON(data: unknown, options: PrepareJSONOptions): JSONEncodingData {\n if (!(data instanceof Map)) {\n throw new Error(`Uint64MapSchema data must be a Map. Got (${typeof data}) ${data}`)\n }\n const prepared = new Map<bigint, JSONEncodingData>()\n for (const [key, value] of data) {\n const bigintKey = ensureUint64(key)\n if (prepared.has(bigintKey)) {\n throw new Error(`Duplicate key: ${bigintKey}`)\n }\n prepared.set(bigintKey, this.valueSchema.prepareJSON(value, options))\n }\n // Convert map to object\n const obj: { [key: string]: JSONEncodingData } = {}\n for (const [key, value] of prepared) {\n obj[key.toString()] = value\n }\n return obj\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): Map<bigint, unknown> {\n if (encoded == null || typeof encoded !== 'object' || Array.isArray(encoded)) {\n throw new Error('Uint64MapSchema data must be an object')\n }\n const map = new Map<bigint, unknown>()\n for (const [key, value] of Object.entries(encoded)) {\n const bigintKey = BigInt(key)\n if (map.has(bigintKey)) {\n throw new Error(`Duplicate key: ${bigintKey}`)\n }\n map.set(bigintKey, this.valueSchema.fromPreparedJSON(value))\n }\n return map\n }\n}\n\n/**\n * Schema for a map with a variable number of string keys.\n */\nexport class StringMapSchema extends Schema {\n constructor(public readonly valueSchema: Schema) {\n super()\n }\n\n public defaultValue(): Map<string, unknown> {\n return new Map()\n }\n\n public isDefaultValue(data: unknown): boolean {\n return data instanceof Map && data.size === 0\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (!(data instanceof Map)) {\n throw new Error(`StringMapSchema data must be a Map. Got (${typeof data}) ${data}`)\n }\n const prepared = new Map<string, MsgpackEncodingData>()\n for (const [key, value] of data) {\n if (typeof key !== 'string') {\n throw new Error(`Invalid key: ${key}`)\n }\n if (prepared.has(key)) {\n throw new Error(`Duplicate key: ${key}`)\n }\n prepared.set(key, this.valueSchema.prepareMsgpack(value))\n }\n return prepared\n }\n\n public fromPreparedMsgpack(encoded: MsgpackEncodingData, rawStringProvider: MsgpackRawStringProvider): Map<string, unknown> {\n if (!(encoded instanceof Map)) {\n throw new Error('StringMapSchema data must be a Map')\n }\n const map = new Map<string, unknown>()\n for (const [key, value] of encoded) {\n if (typeof key !== 'string') {\n throw new Error(`Invalid key: ${key}`)\n }\n if (map.has(key)) {\n throw new Error(`Duplicate key: ${key}`)\n }\n map.set(key, this.valueSchema.fromPreparedMsgpack(value, rawStringProvider.withMapValue(key)))\n }\n return map\n }\n\n public prepareJSON(data: unknown, options: PrepareJSONOptions): JSONEncodingData {\n if (!(data instanceof Map)) {\n throw new Error(`StringMapSchema data must be a Map. Got (${typeof data}) ${data}`)\n }\n const prepared = new Map<string, JSONEncodingData>()\n for (const [key, value] of data) {\n if (typeof key !== 'string') {\n throw new Error(`Invalid key: ${key}`)\n }\n if (prepared.has(key)) {\n throw new Error(`Duplicate key: ${key}`)\n }\n prepared.set(key, this.valueSchema.prepareJSON(value, options))\n }\n // Convert map to object\n const obj: { [key: string]: JSONEncodingData } = {}\n for (const [key, value] of prepared) {\n obj[key] = value\n }\n return obj\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): Map<string, unknown> {\n if (encoded == null || typeof encoded !== 'object' || Array.isArray(encoded)) {\n throw new Error('StringMapSchema data must be an object')\n }\n const map = new Map<string, unknown>()\n for (const [key, value] of Object.entries(encoded)) {\n if (map.has(key)) {\n throw new Error(`Duplicate key: ${key}`)\n }\n map.set(key, this.valueSchema.fromPreparedJSON(value))\n }\n return map\n }\n}\n\n/**\n * Schema for a map with a variable number of byte array keys.\n */\nexport class ByteArrayMapSchema extends Schema {\n constructor(public readonly valueSchema: Schema) {\n super()\n }\n\n public defaultValue(): Map<Uint8Array, unknown> {\n return new Map()\n }\n\n public isDefaultValue(data: unknown): boolean {\n return data instanceof Map && data.size === 0\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (!(data instanceof Map)) {\n throw new Error(`ByteArrayMapSchema data must be a Map. Got (${typeof data}) ${data}`)\n }\n const prepared = new Map<Uint8Array, MsgpackEncodingData>()\n for (const [key, value] of data) {\n if (!(key instanceof Uint8Array)) {\n throw new Error(`Invalid key: ${key} (${typeof key})`)\n }\n prepared.set(key, this.valueSchema.prepareMsgpack(value))\n }\n return prepared\n }\n\n public fromPreparedMsgpack(encoded: MsgpackEncodingData, rawStringProvider: MsgpackRawStringProvider): Map<Uint8Array, unknown> {\n if (!(encoded instanceof Map)) {\n throw new Error('ByteArrayMapSchema data must be a Map')\n }\n const map = new Map<Uint8Array, unknown>()\n for (const [key, value] of encoded) {\n if (!(key instanceof Uint8Array)) {\n throw new Error(`Invalid key: ${key} (${typeof key})`)\n }\n map.set(key, this.valueSchema.fromPreparedMsgpack(value, rawStringProvider.withMapValue(key)))\n }\n return map\n }\n\n public prepareJSON(data: unknown, options: PrepareJSONOptions): JSONEncodingData {\n if (!(data instanceof Map)) {\n throw new Error(`ByteArrayMapSchema data must be a Map. Got (${typeof data}) ${data}`)\n }\n const prepared = new Map<string, JSONEncodingData>()\n for (const [key, value] of data) {\n if (!(key instanceof Uint8Array)) {\n throw new Error(`Invalid key: ${key} (${typeof key})`)\n }\n const b64Encoded = bytesToBase64(key)\n if (prepared.has(b64Encoded)) {\n throw new Error(`Duplicate key (base64): ${b64Encoded}`)\n }\n prepared.set(b64Encoded, this.valueSchema.prepareJSON(value, options))\n }\n // Convert map to object\n const obj: { [key: string]: JSONEncodingData } = {}\n for (const [key, value] of prepared) {\n obj[key] = value\n }\n return obj\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): Map<Uint8Array, unknown> {\n if (encoded == null || typeof encoded !== 'object' || Array.isArray(encoded)) {\n throw new Error('ByteArrayMapSchema data must be an object')\n }\n const map = new Map<Uint8Array, unknown>()\n for (const [key, value] of Object.entries(encoded)) {\n map.set(base64ToBytes(key), this.valueSchema.fromPreparedJSON(value))\n }\n return map\n }\n}\n\n/**\n * Converts any RawBinaryString values to regular strings in a MsgpackEncodingData object.\n *\n * Note this conversion may be lossy if the binary data is not valid UTF-8.\n *\n * @returns A new object with RawBinaryString values converted to strings.\n */\nfunction convertRawStringsInMsgpackValue(value: MsgpackEncodingData): MsgpackEncodingData {\n if (value instanceof RawBinaryString) {\n return bytesToString(value.rawBinaryValue as Uint8Array)\n }\n if (value instanceof Map) {\n const newMap = new Map<string | number | bigint | Uint8Array, MsgpackEncodingData>()\n for (const [key, val] of value) {\n newMap.set(convertRawStringsInMsgpackValue(key) as string | number | bigint | Uint8Array, convertRawStringsInMsgpackValue(val))\n }\n return newMap\n }\n if (Array.isArray(value)) {\n return value.map(convertRawStringsInMsgpackValue)\n }\n return value\n}\n\n/**\n * Schema for a map with a variable number of binary string keys.\n *\n * See SpecialCaseBinaryStringSchema for more information about the key type.\n */\nexport class SpecialCaseBinaryStringMapSchema extends Schema {\n constructor(public readonly valueSchema: Schema) {\n super()\n }\n\n public defaultValue(): Map<Uint8Array, unknown> {\n return new Map()\n }\n\n public isDefaultValue(data: unknown): boolean {\n return data instanceof Map && data.size === 0\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (!(data instanceof Map)) {\n throw new Error(`SpecialCaseBinaryStringMapSchema data must be a Map. Got (${typeof data}) ${data}`)\n }\n const prepared = new Map<RawBinaryString, MsgpackEncodingData>()\n for (const [key, value] of data) {\n if (!(key instanceof Uint8Array)) {\n throw new Error(`Invalid key: ${key} (${typeof key})`)\n }\n prepared.set(new RawBinaryString(key), this.valueSchema.prepareMsgpack(value))\n }\n // Cast is needed because RawBinaryString is not part of the standard MsgpackEncodingData\n return prepared as unknown as Map<Uint8Array, MsgpackEncodingData>\n }\n\n public fromPreparedMsgpack(_encoded: MsgpackEncodingData, rawStringProvider: MsgpackRawStringProvider): Map<Uint8Array, unknown> {\n const map = new Map<Uint8Array, unknown>()\n const keysAndValues = rawStringProvider.getRawStringKeysAndValuesAtCurrentLocation()\n for (const [key, value] of keysAndValues) {\n map.set(\n key,\n this.valueSchema.fromPreparedMsgpack(\n convertRawStringsInMsgpackValue(value),\n rawStringProvider.withMapValue(new RawBinaryString(key)),\n ),\n )\n }\n return map\n }\n\n public prepareJSON(data: unknown, options: PrepareJSONOptions): JSONEncodingData {\n if (!(data instanceof Map)) {\n throw new Error(`SpecialCaseBinaryStringMapSchema data must be a Map. Got (${typeof data}) ${data}`)\n }\n const prepared = new Map<string, JSONEncodingData>()\n for (const [key, value] of data) {\n if (!(key instanceof Uint8Array)) {\n throw new Error(`Invalid key: ${key}`)\n }\n // Not safe to convert to string for all binary data\n const keyStringValue = bytesToString(key)\n if (!options.lossyBinaryStringConversion && !arrayEqual(coerceToBytes(keyStringValue), key)) {\n throw new Error(\n `Invalid UTF-8 byte array encountered. Encode with lossyBinaryStringConversion enabled to bypass this check. Base64 value: ${bytesToBase64(key)}`,\n )\n }\n prepared.set(keyStringValue, this.valueSchema.prepareJSON(value, options))\n }\n // Convert map to object\n const obj: { [key: string]: JSONEncodingData } = {}\n for (const [key, value] of prepared) {\n obj[key] = value\n }\n return obj\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): Map<Uint8Array, unknown> {\n if (encoded == null || typeof encoded !== 'object' || Array.isArray(encoded)) {\n throw new Error('SpecialCaseBinaryStringMapSchema data must be an object')\n }\n const map = new Map<Uint8Array, unknown>()\n for (const [key, value] of Object.entries(encoded)) {\n map.set(coerceToBytes(key), this.valueSchema.fromPreparedJSON(value))\n }\n return map\n }\n}\n"],"mappings":";;;;;;;;;AAsCA,SAAgB,aAAa,SAAmE;AAC9F,QAAO,QAAQ,KAAK,WAAW;EAAE,GAAG;EAAO,WAAW;EAAM,EAAE;;;;;AAMhE,IAAa,iBAAb,MAAa,uBAAuB,OAAO;CACzC,AAAiB;CAEjB,YAAY,SAA0B;AACpC,SAAO;AACP,OAAK,UAAU;AACf,OAAK,cAAc;;;;;;;;CASrB,AAAO,YAAY,GAAG,SAA0B;AAC9C,OAAK,QAAQ,KAAK,GAAG,QAAQ;AAC7B,OAAK,cAAc;;CAGrB,AAAQ,eAAe;AACrB,OAAK,MAAM,SAAS,KAAK,QACvB,KAAI,MAAM,UAAU;AAClB,OAAI,MAAM,QAAQ,GAChB,OAAM,IAAI,MAAM,0CAA0C;AAE5D,OAAI,EAAE,MAAM,uBAAuB,gBACjC,OAAM,IAAI,MAAM,sDAAsD;;EAK5E,MAAM,uBAAO,IAAI,KAAa;AAC9B,OAAK,MAAM,SAAS,KAAK,YAAY,EAAE;AACrC,OAAI,KAAK,IAAI,MAAM,IAAI,CACrB,OAAM,IAAI,MAAM,kBAAkB,MAAM,MAAM;AAEhD,QAAK,IAAI,MAAM,IAAI;;;;;;;CAQvB,AAAO,aAA8B;EACnC,MAAMA,UAA2B,EAAE;AACnC,OAAK,MAAM,SAAS,KAAK,QACvB,KAAI,MAAM,SAER,SAAQ,KAAK,GADa,MAAM,YACE,YAAY,CAAC;MAE/C,SAAQ,KAAK,MAAM;AAGvB,SAAO;;CAGT,AAAO,eAAqC;EAC1C,MAAM,sBAAM,IAAI,KAAsB;AACtC,OAAK,MAAM,SAAS,KAAK,YAAY,CACnC,KAAI,IAAI,MAAM,KAAK,MAAM,YAAY,cAAc,CAAC;AAEtD,SAAO;;CAGT,AAAO,eAAe,MAAwB;AAC5C,MAAI,EAAE,gBAAgB,KAAM,QAAO;AACnC,OAAK,MAAM,SAAS,KAAK,YAAY,CACnC,KAAI,CAAC,MAAM,YAAY,eAAe,KAAK,IAAI,MAAM,IAAI,CAAC,CACxD,QAAO;AAGX,SAAO;;CAGT,AAAO,eAAe,MAAoC;AACxD,MAAI,EAAE,gBAAgB,KACpB,OAAM,IAAI,MAAM,2CAA2C,OAAO,KAAK,IAAI,OAAO;EAEpF,MAAM,sBAAM,IAAI,KAAkC;AAClD,OAAK,MAAM,SAAS,KAAK,YAAY,EAAE;GACrC,MAAM,QAAQ,KAAK,IAAI,MAAM,IAAI;AACjC,OAAI,MAAM,aAAa,MAAM,YAAY,eAAe,MAAM,CAC5D;AAEF,OAAI,IAAI,MAAM,KAAK,MAAM,YAAY,eAAe,MAAM,CAAC;;AAE7D,SAAO;;CAGT,AAAO,oBAAoB,SAA8B,mBAAmE;AAC1H,MAAI,EAAE,mBAAmB,KACvB,OAAM,IAAI,MAAM,oCAAoC;EAEtD,MAAM,sBAAM,IAAI,KAAsB;AACtC,OAAK,MAAM,SAAS,KAAK,YAAY,CACnC,KAAI,QAAQ,IAAI,MAAM,IAAI,CACxB,KAAI,IAAI,MAAM,KAAK,MAAM,YAAY,oBAAoB,QAAQ,IAAI,MAAM,IAAI,EAAE,kBAAkB,aAAa,MAAM,IAAI,CAAC,CAAC;WACnH,MAAM,UACf,KAAI,IAAI,MAAM,KAAK,MAAM,YAAY,cAAc,CAAC;MAEpD,OAAM,IAAI,MAAM,gBAAgB,MAAM,MAAM;AAGhD,SAAO;;CAGT,AAAO,YAAY,MAAe,SAA+C;AAC/E,MAAI,EAAE,gBAAgB,KACpB,OAAM,IAAI,MAAM,oCAAoC;EAEtD,MAAMC,MAA2C,EAAE;AACnD,OAAK,MAAM,SAAS,KAAK,YAAY,EAAE;GACrC,MAAM,QAAQ,KAAK,IAAI,MAAM,IAAI;AACjC,OAAI,MAAM,aAAa,MAAM,YAAY,eAAe,MAAM,CAC5D;AAEF,OAAI,MAAM,OAAO,MAAM,YAAY,YAAY,OAAO,QAAQ;;AAEhE,SAAO;;CAGT,AAAO,iBAAiB,SAAiD;AACvE,MAAI,WAAW,QAAQ,OAAO,YAAY,YAAY,MAAM,QAAQ,QAAQ,CAC1E,OAAM,IAAI,MAAM,wCAAwC;EAE1D,MAAM,sBAAM,IAAI,KAAsB;AACtC,OAAK,MAAM,SAAS,KAAK,YAAY,CACnC,KAAI,OAAO,UAAU,eAAe,KAAK,SAAS,MAAM,IAAI,CAC1D,KAAI,IAAI,MAAM,KAAK,MAAM,YAAY,iBAAiB,QAAQ,MAAM,KAAK,CAAC;WACjE,MAAM,UACf,KAAI,IAAI,MAAM,KAAK,MAAM,YAAY,cAAc,CAAC;MAEpD,OAAM,IAAI,MAAM,gBAAgB,MAAM,MAAM;AAGhD,SAAO"}
@@ -1,46 +0,0 @@
1
- const require_encoding = require('../encoding.js');
2
-
3
- //#region packages/sdk/src/encoding/schema/optional.ts
4
- /**
5
- * OptionalSchema allows for another schema-defined value to be optional.
6
- *
7
- * This expands the set of values which can be represented by the given schema to include `undefined`.
8
- *
9
- * Note that this schema considers `undefined` _and_ any default values from the underlying schema
10
- * to all be default values. This means that when using NamedMapSchema to omit default values, an
11
- * `undefined` value is indistinguishable from the given schema's default value; in this respect,
12
- * OptionalSchema does not affect the encoding of NamedMapSchema values, but rather allows the
13
- * application to restore omitted values as `undefined` instead of their default value.
14
- *
15
- * Upon decoding, this schema also allows null/undefined values to be acceptable as values.
16
- */
17
- var OptionalSchema = class extends require_encoding.Schema {
18
- constructor(valueSchema) {
19
- super();
20
- this.valueSchema = valueSchema;
21
- }
22
- defaultValue() {}
23
- isDefaultValue(data) {
24
- return data === void 0 || this.valueSchema.isDefaultValue(data);
25
- }
26
- prepareMsgpack(data) {
27
- if (data === void 0) return;
28
- return this.valueSchema.prepareMsgpack(data);
29
- }
30
- fromPreparedMsgpack(encoded, rawStringProvider) {
31
- if (encoded === void 0 || encoded === null) return;
32
- return this.valueSchema.fromPreparedMsgpack(encoded, rawStringProvider);
33
- }
34
- prepareJSON(data, options) {
35
- if (data === void 0) return null;
36
- return this.valueSchema.prepareJSON(data, options);
37
- }
38
- fromPreparedJSON(encoded) {
39
- if (encoded === void 0 || encoded === null) return;
40
- return this.valueSchema.fromPreparedJSON(encoded);
41
- }
42
- };
43
-
44
- //#endregion
45
- exports.OptionalSchema = OptionalSchema;
46
- //# sourceMappingURL=optional.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"optional.js","names":["Schema","valueSchema: Schema"],"sources":["../../../../../../packages/sdk/src/encoding/schema/optional.ts"],"sourcesContent":["import { Schema, MsgpackEncodingData, MsgpackRawStringProvider, JSONEncodingData, PrepareJSONOptions } from '../encoding.js'\n\n/* eslint-disable class-methods-use-this */\n\n/**\n * OptionalSchema allows for another schema-defined value to be optional.\n *\n * This expands the set of values which can be represented by the given schema to include `undefined`.\n *\n * Note that this schema considers `undefined` _and_ any default values from the underlying schema\n * to all be default values. This means that when using NamedMapSchema to omit default values, an\n * `undefined` value is indistinguishable from the given schema's default value; in this respect,\n * OptionalSchema does not affect the encoding of NamedMapSchema values, but rather allows the\n * application to restore omitted values as `undefined` instead of their default value.\n *\n * Upon decoding, this schema also allows null/undefined values to be acceptable as values.\n */\nexport class OptionalSchema extends Schema {\n constructor(public readonly valueSchema: Schema) {\n super()\n }\n\n public defaultValue(): undefined {\n return undefined\n }\n\n public isDefaultValue(data: unknown): boolean {\n return data === undefined || this.valueSchema.isDefaultValue(data)\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (data === undefined) {\n return undefined\n }\n return this.valueSchema.prepareMsgpack(data)\n }\n\n public fromPreparedMsgpack(encoded: MsgpackEncodingData, rawStringProvider: MsgpackRawStringProvider): unknown {\n // JS undefined is encoded as msgpack nil, which may be decoded as JS null\n if (encoded === undefined || encoded === null) {\n return undefined\n }\n return this.valueSchema.fromPreparedMsgpack(encoded, rawStringProvider)\n }\n\n public prepareJSON(data: unknown, options: PrepareJSONOptions): JSONEncodingData {\n if (data === undefined) {\n // JSON representation does not have undefined, only null\n return null\n }\n return this.valueSchema.prepareJSON(data, options)\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): unknown {\n if (encoded === undefined || encoded === null) {\n return undefined\n }\n return this.valueSchema.fromPreparedJSON(encoded)\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAiBA,IAAa,iBAAb,cAAoCA,wBAAO;CACzC,YAAY,AAAgBC,aAAqB;AAC/C,SAAO;EADmB;;CAI5B,AAAO,eAA0B;CAIjC,AAAO,eAAe,MAAwB;AAC5C,SAAO,SAAS,UAAa,KAAK,YAAY,eAAe,KAAK;;CAGpE,AAAO,eAAe,MAAoC;AACxD,MAAI,SAAS,OACX;AAEF,SAAO,KAAK,YAAY,eAAe,KAAK;;CAG9C,AAAO,oBAAoB,SAA8B,mBAAsD;AAE7G,MAAI,YAAY,UAAa,YAAY,KACvC;AAEF,SAAO,KAAK,YAAY,oBAAoB,SAAS,kBAAkB;;CAGzE,AAAO,YAAY,MAAe,SAA+C;AAC/E,MAAI,SAAS,OAEX,QAAO;AAET,SAAO,KAAK,YAAY,YAAY,MAAM,QAAQ;;CAGpD,AAAO,iBAAiB,SAAoC;AAC1D,MAAI,YAAY,UAAa,YAAY,KACvC;AAEF,SAAO,KAAK,YAAY,iBAAiB,QAAQ"}
@@ -1,46 +0,0 @@
1
- import { Schema } from "../encoding.mjs";
2
-
3
- //#region packages/sdk/src/encoding/schema/optional.ts
4
- /**
5
- * OptionalSchema allows for another schema-defined value to be optional.
6
- *
7
- * This expands the set of values which can be represented by the given schema to include `undefined`.
8
- *
9
- * Note that this schema considers `undefined` _and_ any default values from the underlying schema
10
- * to all be default values. This means that when using NamedMapSchema to omit default values, an
11
- * `undefined` value is indistinguishable from the given schema's default value; in this respect,
12
- * OptionalSchema does not affect the encoding of NamedMapSchema values, but rather allows the
13
- * application to restore omitted values as `undefined` instead of their default value.
14
- *
15
- * Upon decoding, this schema also allows null/undefined values to be acceptable as values.
16
- */
17
- var OptionalSchema = class extends Schema {
18
- constructor(valueSchema) {
19
- super();
20
- this.valueSchema = valueSchema;
21
- }
22
- defaultValue() {}
23
- isDefaultValue(data) {
24
- return data === void 0 || this.valueSchema.isDefaultValue(data);
25
- }
26
- prepareMsgpack(data) {
27
- if (data === void 0) return;
28
- return this.valueSchema.prepareMsgpack(data);
29
- }
30
- fromPreparedMsgpack(encoded, rawStringProvider) {
31
- if (encoded === void 0 || encoded === null) return;
32
- return this.valueSchema.fromPreparedMsgpack(encoded, rawStringProvider);
33
- }
34
- prepareJSON(data, options) {
35
- if (data === void 0) return null;
36
- return this.valueSchema.prepareJSON(data, options);
37
- }
38
- fromPreparedJSON(encoded) {
39
- if (encoded === void 0 || encoded === null) return;
40
- return this.valueSchema.fromPreparedJSON(encoded);
41
- }
42
- };
43
-
44
- //#endregion
45
- export { OptionalSchema };
46
- //# sourceMappingURL=optional.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"optional.mjs","names":["valueSchema: Schema"],"sources":["../../../../../../packages/sdk/src/encoding/schema/optional.ts"],"sourcesContent":["import { Schema, MsgpackEncodingData, MsgpackRawStringProvider, JSONEncodingData, PrepareJSONOptions } from '../encoding.js'\n\n/* eslint-disable class-methods-use-this */\n\n/**\n * OptionalSchema allows for another schema-defined value to be optional.\n *\n * This expands the set of values which can be represented by the given schema to include `undefined`.\n *\n * Note that this schema considers `undefined` _and_ any default values from the underlying schema\n * to all be default values. This means that when using NamedMapSchema to omit default values, an\n * `undefined` value is indistinguishable from the given schema's default value; in this respect,\n * OptionalSchema does not affect the encoding of NamedMapSchema values, but rather allows the\n * application to restore omitted values as `undefined` instead of their default value.\n *\n * Upon decoding, this schema also allows null/undefined values to be acceptable as values.\n */\nexport class OptionalSchema extends Schema {\n constructor(public readonly valueSchema: Schema) {\n super()\n }\n\n public defaultValue(): undefined {\n return undefined\n }\n\n public isDefaultValue(data: unknown): boolean {\n return data === undefined || this.valueSchema.isDefaultValue(data)\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (data === undefined) {\n return undefined\n }\n return this.valueSchema.prepareMsgpack(data)\n }\n\n public fromPreparedMsgpack(encoded: MsgpackEncodingData, rawStringProvider: MsgpackRawStringProvider): unknown {\n // JS undefined is encoded as msgpack nil, which may be decoded as JS null\n if (encoded === undefined || encoded === null) {\n return undefined\n }\n return this.valueSchema.fromPreparedMsgpack(encoded, rawStringProvider)\n }\n\n public prepareJSON(data: unknown, options: PrepareJSONOptions): JSONEncodingData {\n if (data === undefined) {\n // JSON representation does not have undefined, only null\n return null\n }\n return this.valueSchema.prepareJSON(data, options)\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): unknown {\n if (encoded === undefined || encoded === null) {\n return undefined\n }\n return this.valueSchema.fromPreparedJSON(encoded)\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAiBA,IAAa,iBAAb,cAAoC,OAAO;CACzC,YAAY,AAAgBA,aAAqB;AAC/C,SAAO;EADmB;;CAI5B,AAAO,eAA0B;CAIjC,AAAO,eAAe,MAAwB;AAC5C,SAAO,SAAS,UAAa,KAAK,YAAY,eAAe,KAAK;;CAGpE,AAAO,eAAe,MAAoC;AACxD,MAAI,SAAS,OACX;AAEF,SAAO,KAAK,YAAY,eAAe,KAAK;;CAG9C,AAAO,oBAAoB,SAA8B,mBAAsD;AAE7G,MAAI,YAAY,UAAa,YAAY,KACvC;AAEF,SAAO,KAAK,YAAY,oBAAoB,SAAS,kBAAkB;;CAGzE,AAAO,YAAY,MAAe,SAA+C;AAC/E,MAAI,SAAS,OAEX,QAAO;AAET,SAAO,KAAK,YAAY,YAAY,MAAM,QAAQ;;CAGpD,AAAO,iBAAiB,SAAoC;AAC1D,MAAI,YAAY,UAAa,YAAY,KACvC;AAEF,SAAO,KAAK,YAAY,iBAAiB,QAAQ"}
@@ -1,30 +0,0 @@
1
- const require_utils = require('../../utils/utils.js');
2
- const require_encoding = require('../encoding.js');
3
-
4
- //#region packages/sdk/src/encoding/schema/uint64.ts
5
- var Uint64Schema = class extends require_encoding.Schema {
6
- defaultValue() {
7
- return BigInt(0);
8
- }
9
- isDefaultValue(data) {
10
- if (typeof data === "bigint") return data === BigInt(0);
11
- if (typeof data === "number") return data === 0;
12
- return false;
13
- }
14
- prepareMsgpack(data) {
15
- return require_utils.ensureUint64(data);
16
- }
17
- fromPreparedMsgpack(encoded, _rawStringProvider) {
18
- return require_utils.ensureUint64(encoded);
19
- }
20
- prepareJSON(data, _options) {
21
- return require_utils.ensureUint64(data);
22
- }
23
- fromPreparedJSON(encoded) {
24
- return require_utils.ensureUint64(encoded);
25
- }
26
- };
27
-
28
- //#endregion
29
- exports.Uint64Schema = Uint64Schema;
30
- //# sourceMappingURL=uint64.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uint64.js","names":["Schema","ensureUint64"],"sources":["../../../../../../packages/sdk/src/encoding/schema/uint64.ts"],"sourcesContent":["import { Schema, MsgpackEncodingData, MsgpackRawStringProvider, JSONEncodingData, PrepareJSONOptions } from '../encoding.js'\nimport { ensureUint64 } from '../../utils/utils.js'\n\n/* eslint-disable class-methods-use-this */\n\nexport class Uint64Schema extends Schema {\n public defaultValue(): bigint {\n return BigInt(0)\n }\n\n public isDefaultValue(data: unknown): boolean {\n if (typeof data === 'bigint') return data === BigInt(0)\n if (typeof data === 'number') return data === 0\n return false\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n return ensureUint64(data)\n }\n\n public fromPreparedMsgpack(\n encoded: MsgpackEncodingData,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _rawStringProvider: MsgpackRawStringProvider,\n ): bigint {\n return ensureUint64(encoded)\n }\n\n public prepareJSON(\n data: unknown,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _options: PrepareJSONOptions,\n ): JSONEncodingData {\n return ensureUint64(data)\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): bigint {\n return ensureUint64(encoded)\n }\n}\n"],"mappings":";;;;AAKA,IAAa,eAAb,cAAkCA,wBAAO;CACvC,AAAO,eAAuB;AAC5B,SAAO,OAAO,EAAE;;CAGlB,AAAO,eAAe,MAAwB;AAC5C,MAAI,OAAO,SAAS,SAAU,QAAO,SAAS,OAAO,EAAE;AACvD,MAAI,OAAO,SAAS,SAAU,QAAO,SAAS;AAC9C,SAAO;;CAGT,AAAO,eAAe,MAAoC;AACxD,SAAOC,2BAAa,KAAK;;CAG3B,AAAO,oBACL,SAEA,oBACQ;AACR,SAAOA,2BAAa,QAAQ;;CAG9B,AAAO,YACL,MAEA,UACkB;AAClB,SAAOA,2BAAa,KAAK;;CAG3B,AAAO,iBAAiB,SAAmC;AACzD,SAAOA,2BAAa,QAAQ"}
@@ -1,30 +0,0 @@
1
- import { ensureUint64 } from "../../utils/utils.mjs";
2
- import { Schema } from "../encoding.mjs";
3
-
4
- //#region packages/sdk/src/encoding/schema/uint64.ts
5
- var Uint64Schema = class extends Schema {
6
- defaultValue() {
7
- return BigInt(0);
8
- }
9
- isDefaultValue(data) {
10
- if (typeof data === "bigint") return data === BigInt(0);
11
- if (typeof data === "number") return data === 0;
12
- return false;
13
- }
14
- prepareMsgpack(data) {
15
- return ensureUint64(data);
16
- }
17
- fromPreparedMsgpack(encoded, _rawStringProvider) {
18
- return ensureUint64(encoded);
19
- }
20
- prepareJSON(data, _options) {
21
- return ensureUint64(data);
22
- }
23
- fromPreparedJSON(encoded) {
24
- return ensureUint64(encoded);
25
- }
26
- };
27
-
28
- //#endregion
29
- export { Uint64Schema };
30
- //# sourceMappingURL=uint64.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uint64.mjs","names":[],"sources":["../../../../../../packages/sdk/src/encoding/schema/uint64.ts"],"sourcesContent":["import { Schema, MsgpackEncodingData, MsgpackRawStringProvider, JSONEncodingData, PrepareJSONOptions } from '../encoding.js'\nimport { ensureUint64 } from '../../utils/utils.js'\n\n/* eslint-disable class-methods-use-this */\n\nexport class Uint64Schema extends Schema {\n public defaultValue(): bigint {\n return BigInt(0)\n }\n\n public isDefaultValue(data: unknown): boolean {\n if (typeof data === 'bigint') return data === BigInt(0)\n if (typeof data === 'number') return data === 0\n return false\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n return ensureUint64(data)\n }\n\n public fromPreparedMsgpack(\n encoded: MsgpackEncodingData,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _rawStringProvider: MsgpackRawStringProvider,\n ): bigint {\n return ensureUint64(encoded)\n }\n\n public prepareJSON(\n data: unknown,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _options: PrepareJSONOptions,\n ): JSONEncodingData {\n return ensureUint64(data)\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): bigint {\n return ensureUint64(encoded)\n }\n}\n"],"mappings":";;;;AAKA,IAAa,eAAb,cAAkC,OAAO;CACvC,AAAO,eAAuB;AAC5B,SAAO,OAAO,EAAE;;CAGlB,AAAO,eAAe,MAAwB;AAC5C,MAAI,OAAO,SAAS,SAAU,QAAO,SAAS,OAAO,EAAE;AACvD,MAAI,OAAO,SAAS,SAAU,QAAO,SAAS;AAC9C,SAAO;;CAGT,AAAO,eAAe,MAAoC;AACxD,SAAO,aAAa,KAAK;;CAG3B,AAAO,oBACL,SAEA,oBACQ;AACR,SAAO,aAAa,QAAQ;;CAG9B,AAAO,YACL,MAEA,UACkB;AAClB,SAAO,aAAa,KAAK;;CAG3B,AAAO,iBAAiB,SAAmC;AACzD,SAAO,aAAa,QAAQ"}
@@ -1,34 +0,0 @@
1
- //#region packages/sdk/src/encoding/uint64.d.ts
2
- /**
3
- * encodeUint64 converts an integer to its binary representation.
4
- * @param num - The number to convert. This must be an unsigned integer less than
5
- * 2^64.
6
- * @returns An 8-byte typed array containing the big-endian encoding of the input
7
- * integer.
8
- */
9
- declare function encodeUint64(num: number | bigint): Uint8Array;
10
- /**
11
- * decodeUint64 produces an integer from a binary representation.
12
- * @param data - An typed array containing the big-endian encoding of an unsigned integer
13
- * less than 2^64. This array must be at most 8 bytes long.
14
- * @param decodingMode - Configure how the integer will be
15
- * decoded.
16
- *
17
- * The options are:
18
- * * "safe": The integer will be decoded as a Number, but if it is greater than
19
- * Number.MAX_SAFE_INTEGER an error will be thrown.
20
- * * "mixed": The integer will be decoded as a Number if it is less than or equal to
21
- * Number.MAX_SAFE_INTEGER, otherwise it will be decoded as a BigInt.
22
- * * "bigint": The integer will always be decoded as a BigInt.
23
- *
24
- * Defaults to "safe" if not included.
25
- * @returns The integer that was encoded in the input data. The return type will
26
- * be determined by the parameter decodingMode.
27
- */
28
- declare function decodeUint64(data: Uint8Array, decodingMode: 'safe'): number;
29
- declare function decodeUint64(data: Uint8Array, decodingMode: 'mixed'): number | bigint;
30
- declare function decodeUint64(data: Uint8Array, decodingMode: 'bigint'): bigint;
31
- declare function decodeUint64(data: Uint8Array): number;
32
- //#endregion
33
- export { decodeUint64, encodeUint64 };
34
- //# sourceMappingURL=uint64.d.ts.map
@@ -1,34 +0,0 @@
1
- const require_utils = require('../utils/utils.js');
2
-
3
- //#region packages/sdk/src/encoding/uint64.ts
4
- /**
5
- * encodeUint64 converts an integer to its binary representation.
6
- * @param num - The number to convert. This must be an unsigned integer less than
7
- * 2^64.
8
- * @returns An 8-byte typed array containing the big-endian encoding of the input
9
- * integer.
10
- */
11
- function encodeUint64(num) {
12
- if (!(typeof num === "bigint" || Number.isInteger(num)) || num < 0 || num > BigInt("0xffffffffffffffff")) throw new Error("Input is not a 64-bit unsigned integer");
13
- const encoding = new Uint8Array(8);
14
- new DataView(encoding.buffer).setBigUint64(0, BigInt(num));
15
- return encoding;
16
- }
17
- function decodeUint64(data, decodingMode = "safe") {
18
- if (decodingMode !== "safe" && decodingMode !== "mixed" && decodingMode !== "bigint") throw new Error(`Unknown decodingMode option: ${decodingMode}`);
19
- if (data.byteLength === 0 || data.byteLength > 8) throw new Error(`Data has unacceptable length. Expected length is between 1 and 8, got ${data.byteLength}`);
20
- const encoding = require_utils.concatArrays(new Uint8Array(8 - data.byteLength), data);
21
- const num = new DataView(encoding.buffer).getBigUint64(0);
22
- const isBig = num > BigInt(Number.MAX_SAFE_INTEGER);
23
- if (decodingMode === "safe") {
24
- if (isBig) throw new Error(`Integer exceeds maximum safe integer: ${num.toString()}. Try decoding with "mixed" or "safe" decodingMode.`);
25
- return Number(num);
26
- }
27
- if (decodingMode === "mixed" && !isBig) return Number(num);
28
- return num;
29
- }
30
-
31
- //#endregion
32
- exports.decodeUint64 = decodeUint64;
33
- exports.encodeUint64 = encodeUint64;
34
- //# sourceMappingURL=uint64.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uint64.js","names":["concatArrays"],"sources":["../../../../../packages/sdk/src/encoding/uint64.ts"],"sourcesContent":["import { concatArrays } from '../utils/utils.js'\n\n// NOTE: at the moment we specifically do not use Buffer.writeBigUInt64BE and\n// Buffer.readBigUInt64BE. This is because projects using webpack v4\n// automatically include an old version of the npm `buffer` package (v4.9.2 at\n// the time of writing), and this old version does not have these methods.\n\n/**\n * encodeUint64 converts an integer to its binary representation.\n * @param num - The number to convert. This must be an unsigned integer less than\n * 2^64.\n * @returns An 8-byte typed array containing the big-endian encoding of the input\n * integer.\n */\nexport function encodeUint64(num: number | bigint) {\n const isInteger = typeof num === 'bigint' || Number.isInteger(num)\n\n if (!isInteger || num < 0 || num > BigInt('0xffffffffffffffff')) {\n throw new Error('Input is not a 64-bit unsigned integer')\n }\n\n const encoding = new Uint8Array(8)\n const view = new DataView(encoding.buffer)\n view.setBigUint64(0, BigInt(num))\n\n return encoding\n}\n\n/**\n * decodeUint64 produces an integer from a binary representation.\n * @param data - An typed array containing the big-endian encoding of an unsigned integer\n * less than 2^64. This array must be at most 8 bytes long.\n * @param decodingMode - Configure how the integer will be\n * decoded.\n *\n * The options are:\n * * \"safe\": The integer will be decoded as a Number, but if it is greater than\n * Number.MAX_SAFE_INTEGER an error will be thrown.\n * * \"mixed\": The integer will be decoded as a Number if it is less than or equal to\n * Number.MAX_SAFE_INTEGER, otherwise it will be decoded as a BigInt.\n * * \"bigint\": The integer will always be decoded as a BigInt.\n *\n * Defaults to \"safe\" if not included.\n * @returns The integer that was encoded in the input data. The return type will\n * be determined by the parameter decodingMode.\n */\nexport function decodeUint64(data: Uint8Array, decodingMode: 'safe'): number\nexport function decodeUint64(data: Uint8Array, decodingMode: 'mixed'): number | bigint\nexport function decodeUint64(data: Uint8Array, decodingMode: 'bigint'): bigint\nexport function decodeUint64(data: Uint8Array): number\nexport function decodeUint64(data: any, decodingMode: any = 'safe') {\n if (decodingMode !== 'safe' && decodingMode !== 'mixed' && decodingMode !== 'bigint') {\n throw new Error(`Unknown decodingMode option: ${decodingMode}`)\n }\n\n if (data.byteLength === 0 || data.byteLength > 8) {\n throw new Error(`Data has unacceptable length. Expected length is between 1 and 8, got ${data.byteLength}`)\n }\n\n // insert 0s at the beginning if data is smaller than 8 bytes\n const padding = new Uint8Array(8 - data.byteLength)\n const encoding = concatArrays(padding, data)\n const view = new DataView(encoding.buffer)\n\n const num = view.getBigUint64(0)\n const isBig = num > BigInt(Number.MAX_SAFE_INTEGER)\n\n if (decodingMode === 'safe') {\n if (isBig) {\n throw new Error(`Integer exceeds maximum safe integer: ${num.toString()}. Try decoding with \"mixed\" or \"safe\" decodingMode.`)\n }\n return Number(num)\n }\n\n if (decodingMode === 'mixed' && !isBig) {\n return Number(num)\n }\n\n return num\n}\n"],"mappings":";;;;;;;;;;AAcA,SAAgB,aAAa,KAAsB;AAGjD,KAAI,EAFc,OAAO,QAAQ,YAAY,OAAO,UAAU,IAAI,KAEhD,MAAM,KAAK,MAAM,OAAO,qBAAqB,CAC7D,OAAM,IAAI,MAAM,yCAAyC;CAG3D,MAAM,WAAW,IAAI,WAAW,EAAE;AAElC,CADa,IAAI,SAAS,SAAS,OAAO,CACrC,aAAa,GAAG,OAAO,IAAI,CAAC;AAEjC,QAAO;;AAyBT,SAAgB,aAAa,MAAW,eAAoB,QAAQ;AAClE,KAAI,iBAAiB,UAAU,iBAAiB,WAAW,iBAAiB,SAC1E,OAAM,IAAI,MAAM,gCAAgC,eAAe;AAGjE,KAAI,KAAK,eAAe,KAAK,KAAK,aAAa,EAC7C,OAAM,IAAI,MAAM,yEAAyE,KAAK,aAAa;CAK7G,MAAM,WAAWA,2BADD,IAAI,WAAW,IAAI,KAAK,WAAW,EACZ,KAAK;CAG5C,MAAM,MAFO,IAAI,SAAS,SAAS,OAAO,CAEzB,aAAa,EAAE;CAChC,MAAM,QAAQ,MAAM,OAAO,OAAO,iBAAiB;AAEnD,KAAI,iBAAiB,QAAQ;AAC3B,MAAI,MACF,OAAM,IAAI,MAAM,yCAAyC,IAAI,UAAU,CAAC,qDAAqD;AAE/H,SAAO,OAAO,IAAI;;AAGpB,KAAI,iBAAiB,WAAW,CAAC,MAC/B,QAAO,OAAO,IAAI;AAGpB,QAAO"}
@@ -1,33 +0,0 @@
1
- import { concatArrays } from "../utils/utils.mjs";
2
-
3
- //#region packages/sdk/src/encoding/uint64.ts
4
- /**
5
- * encodeUint64 converts an integer to its binary representation.
6
- * @param num - The number to convert. This must be an unsigned integer less than
7
- * 2^64.
8
- * @returns An 8-byte typed array containing the big-endian encoding of the input
9
- * integer.
10
- */
11
- function encodeUint64(num) {
12
- if (!(typeof num === "bigint" || Number.isInteger(num)) || num < 0 || num > BigInt("0xffffffffffffffff")) throw new Error("Input is not a 64-bit unsigned integer");
13
- const encoding = new Uint8Array(8);
14
- new DataView(encoding.buffer).setBigUint64(0, BigInt(num));
15
- return encoding;
16
- }
17
- function decodeUint64(data, decodingMode = "safe") {
18
- if (decodingMode !== "safe" && decodingMode !== "mixed" && decodingMode !== "bigint") throw new Error(`Unknown decodingMode option: ${decodingMode}`);
19
- if (data.byteLength === 0 || data.byteLength > 8) throw new Error(`Data has unacceptable length. Expected length is between 1 and 8, got ${data.byteLength}`);
20
- const encoding = concatArrays(new Uint8Array(8 - data.byteLength), data);
21
- const num = new DataView(encoding.buffer).getBigUint64(0);
22
- const isBig = num > BigInt(Number.MAX_SAFE_INTEGER);
23
- if (decodingMode === "safe") {
24
- if (isBig) throw new Error(`Integer exceeds maximum safe integer: ${num.toString()}. Try decoding with "mixed" or "safe" decodingMode.`);
25
- return Number(num);
26
- }
27
- if (decodingMode === "mixed" && !isBig) return Number(num);
28
- return num;
29
- }
30
-
31
- //#endregion
32
- export { decodeUint64, encodeUint64 };
33
- //# sourceMappingURL=uint64.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uint64.mjs","names":[],"sources":["../../../../../packages/sdk/src/encoding/uint64.ts"],"sourcesContent":["import { concatArrays } from '../utils/utils.js'\n\n// NOTE: at the moment we specifically do not use Buffer.writeBigUInt64BE and\n// Buffer.readBigUInt64BE. This is because projects using webpack v4\n// automatically include an old version of the npm `buffer` package (v4.9.2 at\n// the time of writing), and this old version does not have these methods.\n\n/**\n * encodeUint64 converts an integer to its binary representation.\n * @param num - The number to convert. This must be an unsigned integer less than\n * 2^64.\n * @returns An 8-byte typed array containing the big-endian encoding of the input\n * integer.\n */\nexport function encodeUint64(num: number | bigint) {\n const isInteger = typeof num === 'bigint' || Number.isInteger(num)\n\n if (!isInteger || num < 0 || num > BigInt('0xffffffffffffffff')) {\n throw new Error('Input is not a 64-bit unsigned integer')\n }\n\n const encoding = new Uint8Array(8)\n const view = new DataView(encoding.buffer)\n view.setBigUint64(0, BigInt(num))\n\n return encoding\n}\n\n/**\n * decodeUint64 produces an integer from a binary representation.\n * @param data - An typed array containing the big-endian encoding of an unsigned integer\n * less than 2^64. This array must be at most 8 bytes long.\n * @param decodingMode - Configure how the integer will be\n * decoded.\n *\n * The options are:\n * * \"safe\": The integer will be decoded as a Number, but if it is greater than\n * Number.MAX_SAFE_INTEGER an error will be thrown.\n * * \"mixed\": The integer will be decoded as a Number if it is less than or equal to\n * Number.MAX_SAFE_INTEGER, otherwise it will be decoded as a BigInt.\n * * \"bigint\": The integer will always be decoded as a BigInt.\n *\n * Defaults to \"safe\" if not included.\n * @returns The integer that was encoded in the input data. The return type will\n * be determined by the parameter decodingMode.\n */\nexport function decodeUint64(data: Uint8Array, decodingMode: 'safe'): number\nexport function decodeUint64(data: Uint8Array, decodingMode: 'mixed'): number | bigint\nexport function decodeUint64(data: Uint8Array, decodingMode: 'bigint'): bigint\nexport function decodeUint64(data: Uint8Array): number\nexport function decodeUint64(data: any, decodingMode: any = 'safe') {\n if (decodingMode !== 'safe' && decodingMode !== 'mixed' && decodingMode !== 'bigint') {\n throw new Error(`Unknown decodingMode option: ${decodingMode}`)\n }\n\n if (data.byteLength === 0 || data.byteLength > 8) {\n throw new Error(`Data has unacceptable length. Expected length is between 1 and 8, got ${data.byteLength}`)\n }\n\n // insert 0s at the beginning if data is smaller than 8 bytes\n const padding = new Uint8Array(8 - data.byteLength)\n const encoding = concatArrays(padding, data)\n const view = new DataView(encoding.buffer)\n\n const num = view.getBigUint64(0)\n const isBig = num > BigInt(Number.MAX_SAFE_INTEGER)\n\n if (decodingMode === 'safe') {\n if (isBig) {\n throw new Error(`Integer exceeds maximum safe integer: ${num.toString()}. Try decoding with \"mixed\" or \"safe\" decodingMode.`)\n }\n return Number(num)\n }\n\n if (decodingMode === 'mixed' && !isBig) {\n return Number(num)\n }\n\n return num\n}\n"],"mappings":";;;;;;;;;;AAcA,SAAgB,aAAa,KAAsB;AAGjD,KAAI,EAFc,OAAO,QAAQ,YAAY,OAAO,UAAU,IAAI,KAEhD,MAAM,KAAK,MAAM,OAAO,qBAAqB,CAC7D,OAAM,IAAI,MAAM,yCAAyC;CAG3D,MAAM,WAAW,IAAI,WAAW,EAAE;AAElC,CADa,IAAI,SAAS,SAAS,OAAO,CACrC,aAAa,GAAG,OAAO,IAAI,CAAC;AAEjC,QAAO;;AAyBT,SAAgB,aAAa,MAAW,eAAoB,QAAQ;AAClE,KAAI,iBAAiB,UAAU,iBAAiB,WAAW,iBAAiB,SAC1E,OAAM,IAAI,MAAM,gCAAgC,eAAe;AAGjE,KAAI,KAAK,eAAe,KAAK,KAAK,aAAa,EAC7C,OAAM,IAAI,MAAM,yEAAyE,KAAK,aAAa;CAK7G,MAAM,WAAW,aADD,IAAI,WAAW,IAAI,KAAK,WAAW,EACZ,KAAK;CAG5C,MAAM,MAFO,IAAI,SAAS,SAAS,OAAO,CAEzB,aAAa,EAAE;CAChC,MAAM,QAAQ,MAAM,OAAO,OAAO,iBAAiB;AAEnD,KAAI,iBAAiB,QAAQ;AAC3B,MAAI,MACF,OAAM,IAAI,MAAM,yCAAyC,IAAI,UAAU,CAAC,qDAAqD;AAE/H,SAAO,OAAO,IAAI;;AAGpB,KAAI,iBAAiB,WAAW,CAAC,MAC/B,QAAO,OAAO,IAAI;AAGpB,QAAO"}
@@ -1,44 +0,0 @@
1
- import { Transaction } from "../../transact/src/transactions/transaction.js";
2
- import { INVALID_MICROALGOS_ERROR_MSG, algosToMicroalgos, microalgosToAlgos } from "./convert.js";
3
- import { base64ToBytes, bytesToBase64, bytesToHex, bytesToString, coerceToBytes, hexToBytes } from "./encoding/binarydata.js";
4
- import { IntDecoding } from "./types/intDecoding.js";
5
- import { ERROR_CONTAINS_EMPTY_STRING, Encodable, EncodableClass, EncodeJSONOptions, JSONEncodingData, MsgpackEncodingData, MsgpackRawStringProvider, PrepareJSONOptions, Schema, decodeJSON, decodeMsgpack, decodeObj, encodeJSON, encodeMsgpack, encodeObj, jsonEncodingDataToMsgpackEncodingData, msgpackEncodingDataToJSONEncodingData, msgpackRawDecode, msgpackRawDecodeAsMap, msgpackRawEncode } from "./encoding/encoding.js";
6
- import { decodeUint64, encodeUint64 } from "./encoding/uint64.js";
7
- import { PcLineLocation, ProgramSourceMap, SourceLocation } from "./logic/sourcemap.js";
8
- import { ENCODED_MULTISIG_SCHEMA, ENCODED_SUBSIG_SCHEMA, EncodedMultisig, EncodedSubsig, encodedMultiSigFromEncodingData, encodedMultiSigToEncodingData, encodedSubsigFromEncodingData, encodedSubsigToEncodingData } from "./types/transactions/encoded.js";
9
- import { ParseJSONOptions, arrayEqual, concatArrays, ensureBigInt, ensureSafeInteger, ensureSafeUnsignedInteger, ensureUint64, isNode, isReactNative, parseJSON, removeUndefinedProperties, stringifyJSON } from "./utils/utils.js";
10
-
11
- //#region packages/sdk/src/index.d.ts
12
- declare const MULTISIG_BAD_SENDER_ERROR_MSG = "The transaction sender address and multisig preimage do not match.";
13
- /**
14
- * signTransaction takes an object with either payment or key registration fields and
15
- * a secret key and returns a signed blob.
16
- *
17
- * Payment transaction fields: from, to, amount, fee, firstValid, lastValid, genesisHash,
18
- * note(optional), GenesisID(optional), closeRemainderTo(optional)
19
- *
20
- * Key registration fields: fee, firstValid, lastValid, voteKey, selectionKey, voteFirst,
21
- * voteLast, voteKeyDilution, genesisHash, note(optional), GenesisID(optional)
22
- *
23
- * If flatFee is not set and the final calculated fee is lower than the protocol minimum fee, the fee will be increased to match the minimum.
24
- * @param txn - object with either payment or key registration fields
25
- * @param sk - Algorand Secret Key
26
- * @returns object contains the binary signed transaction and its txID
27
- */
28
- declare function signTransaction(txn: Transaction, sk: Uint8Array): {
29
- txID: string;
30
- blob: Uint8Array;
31
- };
32
- /**
33
- * signBytes takes arbitrary bytes and a secret key, prepends the bytes with "MX" for domain separation, signs the bytes
34
- * with the private key, and returns the signature.
35
- * @param bytes - Uint8array
36
- * @param sk - Algorand secret key
37
- * @returns binary signature
38
- */
39
- declare function signBytes(bytes: Uint8Array, sk: Uint8Array): Uint8Array;
40
- declare const ERROR_MULTISIG_BAD_SENDER: Error;
41
- declare const ERROR_INVALID_MICROALGOS: Error;
42
- //#endregion
43
- export { ERROR_INVALID_MICROALGOS, ERROR_MULTISIG_BAD_SENDER, MULTISIG_BAD_SENDER_ERROR_MSG, signBytes, signTransaction };
44
- //# sourceMappingURL=index.d.ts.map
@@ -1,62 +0,0 @@
1
- const require_transaction = require('../../transact/src/transactions/transaction.js');
2
- const require_signed_transaction = require('../../transact/src/transactions/signed-transaction.js');
3
- const require_convert = require('./convert.js');
4
- const require_intDecoding = require('./types/intDecoding.js');
5
- const require_utils = require('./utils/utils.js');
6
- const require_naclWrappers = require('./nacl/naclWrappers.js');
7
- const require_binarydata = require('./encoding/binarydata.js');
8
- const require_encoding = require('./encoding/encoding.js');
9
- const require_uint64 = require('./encoding/uint64.js');
10
- const require_sourcemap = require('./logic/sourcemap.js');
11
- const require_encoded = require('./types/transactions/encoded.js');
12
-
13
- //#region packages/sdk/src/index.ts
14
- const SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]);
15
- const MULTISIG_BAD_SENDER_ERROR_MSG = "The transaction sender address and multisig preimage do not match.";
16
- /**
17
- * signTransaction takes an object with either payment or key registration fields and
18
- * a secret key and returns a signed blob.
19
- *
20
- * Payment transaction fields: from, to, amount, fee, firstValid, lastValid, genesisHash,
21
- * note(optional), GenesisID(optional), closeRemainderTo(optional)
22
- *
23
- * Key registration fields: fee, firstValid, lastValid, voteKey, selectionKey, voteFirst,
24
- * voteLast, voteKeyDilution, genesisHash, note(optional), GenesisID(optional)
25
- *
26
- * If flatFee is not set and the final calculated fee is lower than the protocol minimum fee, the fee will be increased to match the minimum.
27
- * @param txn - object with either payment or key registration fields
28
- * @param sk - Algorand Secret Key
29
- * @returns object contains the binary signed transaction and its txID
30
- */
31
- function signTransaction(txn, sk) {
32
- const bytesToSign = require_transaction.encodeTransaction(txn);
33
- const signedTxn = {
34
- txn,
35
- sig: require_naclWrappers.sign(bytesToSign, sk)
36
- };
37
- return {
38
- txID: txn.txId(),
39
- blob: require_signed_transaction.encodeSignedTransaction(signedTxn)
40
- };
41
- }
42
- /**
43
- * signBytes takes arbitrary bytes and a secret key, prepends the bytes with "MX" for domain separation, signs the bytes
44
- * with the private key, and returns the signature.
45
- * @param bytes - Uint8array
46
- * @param sk - Algorand secret key
47
- * @returns binary signature
48
- */
49
- function signBytes(bytes, sk) {
50
- const toBeSigned = require_utils.concatArrays(SIGN_BYTES_PREFIX, bytes);
51
- return require_naclWrappers.sign(toBeSigned, sk);
52
- }
53
- const ERROR_MULTISIG_BAD_SENDER = new Error(MULTISIG_BAD_SENDER_ERROR_MSG);
54
- const ERROR_INVALID_MICROALGOS = new Error(require_convert.INVALID_MICROALGOS_ERROR_MSG);
55
-
56
- //#endregion
57
- exports.ERROR_INVALID_MICROALGOS = ERROR_INVALID_MICROALGOS;
58
- exports.ERROR_MULTISIG_BAD_SENDER = ERROR_MULTISIG_BAD_SENDER;
59
- exports.MULTISIG_BAD_SENDER_ERROR_MSG = MULTISIG_BAD_SENDER_ERROR_MSG;
60
- exports.signBytes = signBytes;
61
- exports.signTransaction = signTransaction;
62
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["encodeTransaction","signedTxn: SignedTransaction","encodeSignedTransaction"],"sources":["../../../../packages/sdk/src/index.ts"],"sourcesContent":["import type { SignedTransaction, Transaction } from '@algorandfoundation/algokit-transact'\nimport { encodeSignedTransaction, encodeTransaction } from '@algorandfoundation/algokit-transact'\nimport * as convert from './convert'\nimport * as nacl from './nacl/naclWrappers'\nimport * as utils from './utils/utils'\n\nconst SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]) // \"MX\"\n\n// Errors\nexport const MULTISIG_BAD_SENDER_ERROR_MSG = 'The transaction sender address and multisig preimage do not match.'\n\n/**\n * signTransaction takes an object with either payment or key registration fields and\n * a secret key and returns a signed blob.\n *\n * Payment transaction fields: from, to, amount, fee, firstValid, lastValid, genesisHash,\n * note(optional), GenesisID(optional), closeRemainderTo(optional)\n *\n * Key registration fields: fee, firstValid, lastValid, voteKey, selectionKey, voteFirst,\n * voteLast, voteKeyDilution, genesisHash, note(optional), GenesisID(optional)\n *\n * If flatFee is not set and the final calculated fee is lower than the protocol minimum fee, the fee will be increased to match the minimum.\n * @param txn - object with either payment or key registration fields\n * @param sk - Algorand Secret Key\n * @returns object contains the binary signed transaction and its txID\n */\nexport function signTransaction(txn: Transaction, sk: Uint8Array) {\n // Sign the transaction using nacl\n const bytesToSign = encodeTransaction(txn)\n const signature = nacl.sign(bytesToSign, sk)\n\n const signedTxn: SignedTransaction = {\n txn: txn,\n sig: signature,\n }\n\n return {\n txID: txn.txId(),\n blob: encodeSignedTransaction(signedTxn),\n }\n}\n\n/**\n * signBytes takes arbitrary bytes and a secret key, prepends the bytes with \"MX\" for domain separation, signs the bytes\n * with the private key, and returns the signature.\n * @param bytes - Uint8array\n * @param sk - Algorand secret key\n * @returns binary signature\n */\nexport function signBytes(bytes: Uint8Array, sk: Uint8Array) {\n const toBeSigned = utils.concatArrays(SIGN_BYTES_PREFIX, bytes)\n const sig = nacl.sign(toBeSigned, sk)\n return sig\n}\n\nexport const ERROR_MULTISIG_BAD_SENDER = new Error(MULTISIG_BAD_SENDER_ERROR_MSG)\nexport const ERROR_INVALID_MICROALGOS = new Error(convert.INVALID_MICROALGOS_ERROR_MSG)\n\n// Export client classes with algosdk-compatible names\nexport * from './convert'\nexport { base64ToBytes, bytesToBase64, bytesToHex, bytesToString, coerceToBytes, hexToBytes } from './encoding/binarydata'\nexport * from './encoding/encoding'\nexport { decodeUint64, encodeUint64 } from './encoding/uint64'\nexport * from './logic/sourcemap'\nexport * from './types/intDecoding'\nexport { default as IntDecoding } from './types/intDecoding'\nexport * from './types/transactions/index'\nexport * from './utils/utils'\n"],"mappings":";;;;;;;;;;;;;AAMA,MAAM,oBAAoB,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC;AAGnD,MAAa,gCAAgC;;;;;;;;;;;;;;;;AAiB7C,SAAgB,gBAAgB,KAAkB,IAAgB;CAEhE,MAAM,cAAcA,sCAAkB,IAAI;CAG1C,MAAMC,YAA+B;EAC9B;EACL,+BAJ0B,aAAa,GAAG;EAK3C;AAED,QAAO;EACL,MAAM,IAAI,MAAM;EAChB,MAAMC,mDAAwB,UAAU;EACzC;;;;;;;;;AAUH,SAAgB,UAAU,OAAmB,IAAgB;CAC3D,MAAM,wCAAgC,mBAAmB,MAAM;AAE/D,kCADsB,YAAY,GAAG;;AAIvC,MAAa,4BAA4B,IAAI,MAAM,8BAA8B;AACjF,MAAa,2BAA2B,IAAI,mDAA2C"}
@@ -1,58 +0,0 @@
1
- import { encodeTransaction } from "../../transact/src/transactions/transaction.mjs";
2
- import { encodeSignedTransaction } from "../../transact/src/transactions/signed-transaction.mjs";
3
- import { INVALID_MICROALGOS_ERROR_MSG, algosToMicroalgos, microalgosToAlgos } from "./convert.mjs";
4
- import intDecoding_default from "./types/intDecoding.mjs";
5
- import { arrayEqual, concatArrays, ensureBigInt, ensureSafeInteger, ensureSafeUnsignedInteger, ensureUint64, isNode, isReactNative, parseJSON, removeUndefinedProperties, stringifyJSON } from "./utils/utils.mjs";
6
- import { sign } from "./nacl/naclWrappers.mjs";
7
- import { base64ToBytes, bytesToBase64, bytesToHex, bytesToString, coerceToBytes, hexToBytes } from "./encoding/binarydata.mjs";
8
- import { ERROR_CONTAINS_EMPTY_STRING, MsgpackRawStringProvider, Schema, decodeJSON, decodeMsgpack, decodeObj, encodeJSON, encodeMsgpack, encodeObj, jsonEncodingDataToMsgpackEncodingData, msgpackEncodingDataToJSONEncodingData, msgpackRawDecode, msgpackRawDecodeAsMap, msgpackRawEncode } from "./encoding/encoding.mjs";
9
- import { decodeUint64, encodeUint64 } from "./encoding/uint64.mjs";
10
- import { ProgramSourceMap } from "./logic/sourcemap.mjs";
11
- import { ENCODED_MULTISIG_SCHEMA, ENCODED_SUBSIG_SCHEMA, encodedMultiSigFromEncodingData, encodedMultiSigToEncodingData, encodedSubsigFromEncodingData, encodedSubsigToEncodingData } from "./types/transactions/encoded.mjs";
12
-
13
- //#region packages/sdk/src/index.ts
14
- const SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]);
15
- const MULTISIG_BAD_SENDER_ERROR_MSG = "The transaction sender address and multisig preimage do not match.";
16
- /**
17
- * signTransaction takes an object with either payment or key registration fields and
18
- * a secret key and returns a signed blob.
19
- *
20
- * Payment transaction fields: from, to, amount, fee, firstValid, lastValid, genesisHash,
21
- * note(optional), GenesisID(optional), closeRemainderTo(optional)
22
- *
23
- * Key registration fields: fee, firstValid, lastValid, voteKey, selectionKey, voteFirst,
24
- * voteLast, voteKeyDilution, genesisHash, note(optional), GenesisID(optional)
25
- *
26
- * If flatFee is not set and the final calculated fee is lower than the protocol minimum fee, the fee will be increased to match the minimum.
27
- * @param txn - object with either payment or key registration fields
28
- * @param sk - Algorand Secret Key
29
- * @returns object contains the binary signed transaction and its txID
30
- */
31
- function signTransaction(txn, sk) {
32
- const bytesToSign = encodeTransaction(txn);
33
- const signedTxn = {
34
- txn,
35
- sig: sign(bytesToSign, sk)
36
- };
37
- return {
38
- txID: txn.txId(),
39
- blob: encodeSignedTransaction(signedTxn)
40
- };
41
- }
42
- /**
43
- * signBytes takes arbitrary bytes and a secret key, prepends the bytes with "MX" for domain separation, signs the bytes
44
- * with the private key, and returns the signature.
45
- * @param bytes - Uint8array
46
- * @param sk - Algorand secret key
47
- * @returns binary signature
48
- */
49
- function signBytes(bytes, sk) {
50
- const toBeSigned = concatArrays(SIGN_BYTES_PREFIX, bytes);
51
- return sign(toBeSigned, sk);
52
- }
53
- const ERROR_MULTISIG_BAD_SENDER = new Error(MULTISIG_BAD_SENDER_ERROR_MSG);
54
- const ERROR_INVALID_MICROALGOS = new Error(INVALID_MICROALGOS_ERROR_MSG);
55
-
56
- //#endregion
57
- export { ERROR_INVALID_MICROALGOS, ERROR_MULTISIG_BAD_SENDER, MULTISIG_BAD_SENDER_ERROR_MSG, signBytes, signTransaction };
58
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","names":["signedTxn: SignedTransaction","nacl.sign","utils.concatArrays","convert.INVALID_MICROALGOS_ERROR_MSG"],"sources":["../../../../packages/sdk/src/index.ts"],"sourcesContent":["import type { SignedTransaction, Transaction } from '@algorandfoundation/algokit-transact'\nimport { encodeSignedTransaction, encodeTransaction } from '@algorandfoundation/algokit-transact'\nimport * as convert from './convert'\nimport * as nacl from './nacl/naclWrappers'\nimport * as utils from './utils/utils'\n\nconst SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]) // \"MX\"\n\n// Errors\nexport const MULTISIG_BAD_SENDER_ERROR_MSG = 'The transaction sender address and multisig preimage do not match.'\n\n/**\n * signTransaction takes an object with either payment or key registration fields and\n * a secret key and returns a signed blob.\n *\n * Payment transaction fields: from, to, amount, fee, firstValid, lastValid, genesisHash,\n * note(optional), GenesisID(optional), closeRemainderTo(optional)\n *\n * Key registration fields: fee, firstValid, lastValid, voteKey, selectionKey, voteFirst,\n * voteLast, voteKeyDilution, genesisHash, note(optional), GenesisID(optional)\n *\n * If flatFee is not set and the final calculated fee is lower than the protocol minimum fee, the fee will be increased to match the minimum.\n * @param txn - object with either payment or key registration fields\n * @param sk - Algorand Secret Key\n * @returns object contains the binary signed transaction and its txID\n */\nexport function signTransaction(txn: Transaction, sk: Uint8Array) {\n // Sign the transaction using nacl\n const bytesToSign = encodeTransaction(txn)\n const signature = nacl.sign(bytesToSign, sk)\n\n const signedTxn: SignedTransaction = {\n txn: txn,\n sig: signature,\n }\n\n return {\n txID: txn.txId(),\n blob: encodeSignedTransaction(signedTxn),\n }\n}\n\n/**\n * signBytes takes arbitrary bytes and a secret key, prepends the bytes with \"MX\" for domain separation, signs the bytes\n * with the private key, and returns the signature.\n * @param bytes - Uint8array\n * @param sk - Algorand secret key\n * @returns binary signature\n */\nexport function signBytes(bytes: Uint8Array, sk: Uint8Array) {\n const toBeSigned = utils.concatArrays(SIGN_BYTES_PREFIX, bytes)\n const sig = nacl.sign(toBeSigned, sk)\n return sig\n}\n\nexport const ERROR_MULTISIG_BAD_SENDER = new Error(MULTISIG_BAD_SENDER_ERROR_MSG)\nexport const ERROR_INVALID_MICROALGOS = new Error(convert.INVALID_MICROALGOS_ERROR_MSG)\n\n// Export client classes with algosdk-compatible names\nexport * from './convert'\nexport { base64ToBytes, bytesToBase64, bytesToHex, bytesToString, coerceToBytes, hexToBytes } from './encoding/binarydata'\nexport * from './encoding/encoding'\nexport { decodeUint64, encodeUint64 } from './encoding/uint64'\nexport * from './logic/sourcemap'\nexport * from './types/intDecoding'\nexport { default as IntDecoding } from './types/intDecoding'\nexport * from './types/transactions/index'\nexport * from './utils/utils'\n"],"mappings":";;;;;;;;;;;;;AAMA,MAAM,oBAAoB,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC;AAGnD,MAAa,gCAAgC;;;;;;;;;;;;;;;;AAiB7C,SAAgB,gBAAgB,KAAkB,IAAgB;CAEhE,MAAM,cAAc,kBAAkB,IAAI;CAG1C,MAAMA,YAA+B;EAC9B;EACL,KAJgBC,KAAU,aAAa,GAAG;EAK3C;AAED,QAAO;EACL,MAAM,IAAI,MAAM;EAChB,MAAM,wBAAwB,UAAU;EACzC;;;;;;;;;AAUH,SAAgB,UAAU,OAAmB,IAAgB;CAC3D,MAAM,aAAaC,aAAmB,mBAAmB,MAAM;AAE/D,QADYD,KAAU,YAAY,GAAG;;AAIvC,MAAa,4BAA4B,IAAI,MAAM,8BAA8B;AACjF,MAAa,2BAA2B,IAAI,MAAME,6BAAqC"}
@@ -1,14 +0,0 @@
1
- const require_rolldown_runtime = require('../../../../_virtual/rolldown_runtime.js');
2
- let js_sha512 = require("js-sha512");
3
- js_sha512 = require_rolldown_runtime.__toESM(js_sha512);
4
- let tweetnacl = require("tweetnacl");
5
- tweetnacl = require_rolldown_runtime.__toESM(tweetnacl);
6
-
7
- //#region packages/sdk/src/nacl/naclWrappers.ts
8
- function sign(msg, secretKey) {
9
- return tweetnacl.default.sign.detached(msg, secretKey);
10
- }
11
-
12
- //#endregion
13
- exports.sign = sign;
14
- //# sourceMappingURL=naclWrappers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"naclWrappers.js","names":["nacl"],"sources":["../../../../../packages/sdk/src/nacl/naclWrappers.ts"],"sourcesContent":["import nacl from 'tweetnacl'\nimport sha512 from 'js-sha512'\nimport { isReactNative } from '../utils/utils.js'\n\nexport function genericHash(arr: sha512.Message) {\n return sha512.sha512_256.array(arr)\n}\n\nexport function randomBytes(length: number) {\n if (isReactNative()) {\n console.warn(\n `It looks like you're running in react-native. In order to perform common crypto operations you will need to polyfill common operations such as crypto.getRandomValues`,\n )\n }\n return nacl.randomBytes(length)\n}\n\nexport function keyPairFromSeed(seed: Uint8Array) {\n return nacl.sign.keyPair.fromSeed(seed)\n}\n\nexport function keyPair() {\n const seed = randomBytes(nacl.box.secretKeyLength)\n return keyPairFromSeed(seed)\n}\n\nexport function isValidSignatureLength(len: number) {\n return len === nacl.sign.signatureLength\n}\n\nexport function keyPairFromSecretKey(sk: Uint8Array) {\n return nacl.sign.keyPair.fromSecretKey(sk)\n}\n\nexport function sign(msg: Uint8Array, secretKey: Uint8Array) {\n return nacl.sign.detached(msg, secretKey)\n}\n\nexport function bytesEqual(a: Uint8Array, b: Uint8Array) {\n return nacl.verify(a, b)\n}\n\nexport function verify(message: Uint8Array, signature: Uint8Array, verifyKey: Uint8Array) {\n return nacl.sign.detached.verify(message, signature, verifyKey)\n}\n\n// constants\nexport const PUBLIC_KEY_LENGTH = nacl.sign.publicKeyLength\nexport const SECRET_KEY_LENGTH = nacl.sign.secretKeyLength\nexport const HASH_BYTES_LENGTH = 32\nexport const SEED_BTYES_LENGTH = 32\n"],"mappings":";;;;;;;AAkCA,SAAgB,KAAK,KAAiB,WAAuB;AAC3D,QAAOA,kBAAK,KAAK,SAAS,KAAK,UAAU"}
@@ -1,11 +0,0 @@
1
- import sha512 from "js-sha512";
2
- import nacl from "tweetnacl";
3
-
4
- //#region packages/sdk/src/nacl/naclWrappers.ts
5
- function sign(msg, secretKey) {
6
- return nacl.sign.detached(msg, secretKey);
7
- }
8
-
9
- //#endregion
10
- export { sign };
11
- //# sourceMappingURL=naclWrappers.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"naclWrappers.mjs","names":[],"sources":["../../../../../packages/sdk/src/nacl/naclWrappers.ts"],"sourcesContent":["import nacl from 'tweetnacl'\nimport sha512 from 'js-sha512'\nimport { isReactNative } from '../utils/utils.js'\n\nexport function genericHash(arr: sha512.Message) {\n return sha512.sha512_256.array(arr)\n}\n\nexport function randomBytes(length: number) {\n if (isReactNative()) {\n console.warn(\n `It looks like you're running in react-native. In order to perform common crypto operations you will need to polyfill common operations such as crypto.getRandomValues`,\n )\n }\n return nacl.randomBytes(length)\n}\n\nexport function keyPairFromSeed(seed: Uint8Array) {\n return nacl.sign.keyPair.fromSeed(seed)\n}\n\nexport function keyPair() {\n const seed = randomBytes(nacl.box.secretKeyLength)\n return keyPairFromSeed(seed)\n}\n\nexport function isValidSignatureLength(len: number) {\n return len === nacl.sign.signatureLength\n}\n\nexport function keyPairFromSecretKey(sk: Uint8Array) {\n return nacl.sign.keyPair.fromSecretKey(sk)\n}\n\nexport function sign(msg: Uint8Array, secretKey: Uint8Array) {\n return nacl.sign.detached(msg, secretKey)\n}\n\nexport function bytesEqual(a: Uint8Array, b: Uint8Array) {\n return nacl.verify(a, b)\n}\n\nexport function verify(message: Uint8Array, signature: Uint8Array, verifyKey: Uint8Array) {\n return nacl.sign.detached.verify(message, signature, verifyKey)\n}\n\n// constants\nexport const PUBLIC_KEY_LENGTH = nacl.sign.publicKeyLength\nexport const SECRET_KEY_LENGTH = nacl.sign.secretKeyLength\nexport const HASH_BYTES_LENGTH = 32\nexport const SEED_BTYES_LENGTH = 32\n"],"mappings":";;;;AAkCA,SAAgB,KAAK,KAAiB,WAAuB;AAC3D,QAAO,KAAK,KAAK,SAAS,KAAK,UAAU"}