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

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 (704) 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/account-manager.d.ts +448 -0
  6. package/account-manager.js +623 -0
  7. package/account-manager.js.map +1 -0
  8. package/account-manager.mjs +620 -0
  9. package/account-manager.mjs.map +1 -0
  10. package/account.d.ts +156 -0
  11. package/account.js +10 -0
  12. package/account.js.map +1 -0
  13. package/account.mjs +9 -0
  14. package/account.mjs.map +1 -0
  15. package/algod-client/index.d.ts +3 -7
  16. package/algod-client/index.js +2 -5
  17. package/algod-client/index.mjs +2 -2
  18. package/algorand-client-transaction-creator.d.ts +1103 -0
  19. package/algorand-client-transaction-creator.js +735 -0
  20. package/algorand-client-transaction-creator.js.map +1 -0
  21. package/algorand-client-transaction-creator.mjs +734 -0
  22. package/algorand-client-transaction-creator.mjs.map +1 -0
  23. package/algorand-client-transaction-sender.d.ts +1317 -0
  24. package/algorand-client-transaction-sender.js +933 -0
  25. package/algorand-client-transaction-sender.js.map +1 -0
  26. package/algorand-client-transaction-sender.mjs +932 -0
  27. package/algorand-client-transaction-sender.mjs.map +1 -0
  28. package/algorand-client.d.ts +246 -0
  29. package/algorand-client.js +325 -0
  30. package/algorand-client.js.map +1 -0
  31. package/algorand-client.mjs +325 -0
  32. package/algorand-client.mjs.map +1 -0
  33. package/amount.d.ts +46 -3
  34. package/amount.js +92 -13
  35. package/amount.js.map +1 -1
  36. package/amount.mjs +80 -3
  37. package/amount.mjs.map +1 -1
  38. package/app-client.d.ts +2130 -0
  39. package/app-client.js +909 -0
  40. package/app-client.js.map +1 -0
  41. package/app-client.mjs +908 -0
  42. package/app-client.mjs.map +1 -0
  43. package/app-deployer.d.ts +166 -0
  44. package/app-deployer.js +353 -0
  45. package/app-deployer.js.map +1 -0
  46. package/app-deployer.mjs +353 -0
  47. package/app-deployer.mjs.map +1 -0
  48. package/app-factory.d.ts +965 -0
  49. package/app-factory.js +448 -0
  50. package/app-factory.js.map +1 -0
  51. package/app-factory.mjs +448 -0
  52. package/app-factory.mjs.map +1 -0
  53. package/app-manager.d.ts +323 -0
  54. package/app-manager.js +468 -0
  55. package/app-manager.js.map +1 -0
  56. package/app-manager.mjs +468 -0
  57. package/app-manager.mjs.map +1 -0
  58. package/app-spec.d.ts +203 -0
  59. package/app-spec.js +137 -0
  60. package/app-spec.js.map +1 -0
  61. package/app-spec.mjs +137 -0
  62. package/app-spec.mjs.map +1 -0
  63. package/app.d.ts +257 -0
  64. package/app.js +49 -0
  65. package/app.js.map +1 -0
  66. package/app.mjs +42 -0
  67. package/app.mjs.map +1 -0
  68. package/asset-manager.d.ts +212 -0
  69. package/asset-manager.js +166 -0
  70. package/asset-manager.js.map +1 -0
  71. package/asset-manager.mjs +166 -0
  72. package/asset-manager.mjs.map +1 -0
  73. package/async-event-emitter.d.ts +16 -0
  74. package/async-event-emitter.js +38 -0
  75. package/async-event-emitter.js.map +1 -0
  76. package/async-event-emitter.mjs +37 -0
  77. package/async-event-emitter.mjs.map +1 -0
  78. package/client-manager.d.ts +475 -0
  79. package/client-manager.js +616 -0
  80. package/client-manager.js.map +1 -0
  81. package/client-manager.mjs +616 -0
  82. package/client-manager.mjs.map +1 -0
  83. package/composer.d.ts +947 -0
  84. package/composer.js +1584 -0
  85. package/composer.js.map +1 -0
  86. package/composer.mjs +1583 -0
  87. package/composer.mjs.map +1 -0
  88. package/config.d.ts +1 -1
  89. package/config.js +2 -2
  90. package/config.js.map +1 -1
  91. package/config.mjs +1 -1
  92. package/config.mjs.map +1 -1
  93. package/debugging.d.ts +47 -0
  94. package/debugging.js +20 -0
  95. package/debugging.js.map +1 -0
  96. package/debugging.mjs +15 -0
  97. package/debugging.mjs.map +1 -0
  98. package/dispenser-client.d.ts +90 -0
  99. package/dispenser-client.js +127 -0
  100. package/dispenser-client.js.map +1 -0
  101. package/dispenser-client.mjs +127 -0
  102. package/dispenser-client.mjs.map +1 -0
  103. package/expand.d.ts +2 -0
  104. package/expand.js +0 -0
  105. package/expand.mjs +0 -0
  106. package/index.d.ts +6 -6
  107. package/index.js +4 -10
  108. package/index.mjs +5 -6
  109. package/indexer-client/index.d.ts +2 -2
  110. package/indexer-client/index.js +6 -6
  111. package/indexer-client/index.mjs +2 -2
  112. package/{indexer-lookup.d.ts → indexer-client/indexer-lookup.d.ts} +8 -11
  113. package/{indexer-lookup.mjs → indexer-client/indexer-lookup.js} +6 -10
  114. package/indexer-client/indexer-lookup.js.map +1 -0
  115. package/{indexer-lookup.js → indexer-client/indexer-lookup.mjs} +3 -18
  116. package/indexer-client/indexer-lookup.mjs.map +1 -0
  117. package/indexer.d.ts +40 -0
  118. package/indexer.js +38 -0
  119. package/indexer.js.map +1 -0
  120. package/indexer.mjs +35 -0
  121. package/indexer.mjs.map +1 -0
  122. package/instance-of.d.ts +8 -0
  123. package/kmd-account-manager.d.ts +74 -0
  124. package/kmd-account-manager.js +167 -0
  125. package/kmd-account-manager.js.map +1 -0
  126. package/kmd-account-manager.mjs +165 -0
  127. package/kmd-account-manager.mjs.map +1 -0
  128. package/kmd-client/index.d.ts +1 -2
  129. package/kmd-client/index.js +0 -5
  130. package/kmd-client/index.mjs +1 -2
  131. package/lifecycle-events.d.ts +14 -0
  132. package/lifecycle-events.js +11 -0
  133. package/lifecycle-events.js.map +1 -0
  134. package/lifecycle-events.mjs +10 -0
  135. package/lifecycle-events.mjs.map +1 -0
  136. package/logging.d.ts +13 -0
  137. package/logging.js +47 -0
  138. package/logging.js.map +1 -0
  139. package/logging.mjs +42 -0
  140. package/logging.mjs.map +1 -0
  141. package/logic-error.d.ts +39 -0
  142. package/logic-error.js +54 -0
  143. package/logic-error.js.map +1 -0
  144. package/logic-error.mjs +53 -0
  145. package/logic-error.mjs.map +1 -0
  146. package/network-client.d.ts +43 -0
  147. package/network-client.js +14 -0
  148. package/network-client.js.map +1 -0
  149. package/network-client.mjs +13 -0
  150. package/network-client.mjs.map +1 -0
  151. package/package.json +14 -5
  152. package/packages/abi/src/abi-method.d.ts +1 -1
  153. package/packages/abi/src/abi-method.js +1 -1
  154. package/packages/abi/src/abi-method.js.map +1 -1
  155. package/packages/abi/src/abi-method.mjs +1 -1
  156. package/packages/abi/src/abi-method.mjs.map +1 -1
  157. package/packages/abi/src/abi-type.d.ts +1 -3
  158. package/packages/abi/src/abi-type.js +7 -36
  159. package/packages/abi/src/abi-type.js.map +1 -1
  160. package/packages/abi/src/abi-type.mjs +7 -36
  161. package/packages/abi/src/abi-type.mjs.map +1 -1
  162. package/packages/abi/src/arc56-contract.js +1 -0
  163. package/packages/abi/src/arc56-contract.js.map +1 -1
  164. package/packages/abi/src/arc56-contract.mjs +1 -0
  165. package/packages/abi/src/arc56-contract.mjs.map +1 -1
  166. package/packages/abi/src/utils.d.ts +22 -0
  167. package/packages/abi/src/utils.js +57 -0
  168. package/packages/abi/src/utils.js.map +1 -0
  169. package/packages/abi/src/utils.mjs +55 -0
  170. package/packages/abi/src/utils.mjs.map +1 -0
  171. package/packages/algo25/src/index.js +1 -1
  172. package/packages/algo25/src/index.mjs +1 -1
  173. package/packages/algod_client/src/apis/api-service.d.ts +44 -44
  174. package/packages/algod_client/src/apis/api-service.js +155 -155
  175. package/packages/algod_client/src/apis/api-service.js.map +1 -1
  176. package/packages/algod_client/src/apis/api-service.mjs +155 -155
  177. package/packages/algod_client/src/apis/api-service.mjs.map +1 -1
  178. package/packages/algod_client/src/core/api-error.js +3 -1
  179. package/packages/algod_client/src/core/api-error.js.map +1 -1
  180. package/packages/algod_client/src/core/api-error.mjs +3 -1
  181. package/packages/algod_client/src/core/api-error.mjs.map +1 -1
  182. package/packages/algod_client/src/core/model-runtime.js +6 -6
  183. package/packages/algod_client/src/core/model-runtime.js.map +1 -1
  184. package/packages/algod_client/src/core/model-runtime.mjs +8 -8
  185. package/packages/algod_client/src/core/model-runtime.mjs.map +1 -1
  186. package/packages/algod_client/src/models/account-participation.js +4 -4
  187. package/packages/algod_client/src/models/account-participation.js.map +1 -1
  188. package/packages/algod_client/src/models/account-participation.mjs +4 -4
  189. package/packages/algod_client/src/models/account-participation.mjs.map +1 -1
  190. package/packages/algod_client/src/models/application-state-schema.d.ts +2 -2
  191. package/packages/algod_client/src/models/application-state-schema.js +2 -2
  192. package/packages/algod_client/src/models/application-state-schema.js.map +1 -1
  193. package/packages/algod_client/src/models/application-state-schema.mjs +2 -2
  194. package/packages/algod_client/src/models/application-state-schema.mjs.map +1 -1
  195. package/packages/algod_client/src/models/asset-params.js +2 -1
  196. package/packages/algod_client/src/models/asset-params.js.map +1 -1
  197. package/packages/algod_client/src/models/asset-params.mjs +2 -1
  198. package/packages/algod_client/src/models/asset-params.mjs.map +1 -1
  199. package/packages/algod_client/src/models/block-response.js +1 -2
  200. package/packages/algod_client/src/models/block-response.js.map +1 -1
  201. package/packages/algod_client/src/models/block-response.mjs +2 -3
  202. package/packages/algod_client/src/models/block-response.mjs.map +1 -1
  203. package/packages/algod_client/src/models/block.d.ts +60 -40
  204. package/packages/algod_client/src/models/block.js +184 -108
  205. package/packages/algod_client/src/models/block.js.map +1 -1
  206. package/packages/algod_client/src/models/block.mjs +184 -108
  207. package/packages/algod_client/src/models/block.mjs.map +1 -1
  208. package/packages/algod_client/src/models/eval-delta-key-value.js +2 -2
  209. package/packages/algod_client/src/models/eval-delta-key-value.js.map +1 -1
  210. package/packages/algod_client/src/models/eval-delta-key-value.mjs +2 -2
  211. package/packages/algod_client/src/models/eval-delta-key-value.mjs.map +1 -1
  212. package/packages/algod_client/src/models/eval-delta.js +2 -2
  213. package/packages/algod_client/src/models/eval-delta.js.map +1 -1
  214. package/packages/algod_client/src/models/eval-delta.mjs +2 -2
  215. package/packages/algod_client/src/models/eval-delta.mjs.map +1 -1
  216. package/packages/algod_client/src/models/ledger-state-delta.js +1 -1
  217. package/packages/algod_client/src/models/ledger-state-delta.js.map +1 -1
  218. package/packages/algod_client/src/models/ledger-state-delta.mjs +2 -2
  219. package/packages/algod_client/src/models/ledger-state-delta.mjs.map +1 -1
  220. package/packages/algod_client/src/models/simulate-request.js +1 -1
  221. package/packages/algod_client/src/models/simulate-request.mjs +1 -1
  222. package/packages/algod_client/src/models/simulate-response.d.ts +2 -1
  223. package/packages/algod_client/src/models/simulate-response.js +6 -1
  224. package/packages/algod_client/src/models/simulate-response.js.map +1 -1
  225. package/packages/algod_client/src/models/simulate-response.mjs +6 -2
  226. package/packages/algod_client/src/models/simulate-response.mjs.map +1 -1
  227. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.d.ts +3 -5
  228. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js +4 -6
  229. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js.map +1 -1
  230. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs +3 -5
  231. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs.map +1 -1
  232. package/packages/algod_client/src/models/transaction-parameters-response.js +2 -2
  233. package/packages/algod_client/src/models/transaction-parameters-response.js.map +1 -1
  234. package/packages/algod_client/src/models/transaction-parameters-response.mjs +2 -2
  235. package/packages/algod_client/src/models/transaction-parameters-response.mjs.map +1 -1
  236. package/packages/common/src/address.d.ts +0 -1
  237. package/packages/common/src/address.js +4 -17
  238. package/packages/common/src/address.js.map +1 -1
  239. package/packages/common/src/address.mjs +5 -17
  240. package/packages/common/src/address.mjs.map +1 -1
  241. package/packages/common/src/codecs/composite/map.js +7 -4
  242. package/packages/common/src/codecs/composite/map.js.map +1 -1
  243. package/packages/common/src/codecs/composite/map.mjs +7 -4
  244. package/packages/common/src/codecs/composite/map.mjs.map +1 -1
  245. package/packages/common/src/codecs/composite/record.js +0 -1
  246. package/packages/common/src/codecs/composite/record.js.map +1 -1
  247. package/packages/common/src/codecs/primitives/address.js +0 -1
  248. package/packages/common/src/codecs/primitives/address.js.map +1 -1
  249. package/packages/common/src/codecs/primitives/bytes-base64.js +26 -0
  250. package/packages/common/src/codecs/primitives/bytes-base64.js.map +1 -0
  251. package/packages/common/src/codecs/primitives/bytes-base64.mjs +25 -0
  252. package/packages/common/src/codecs/primitives/bytes-base64.mjs.map +1 -0
  253. package/packages/common/src/codecs/primitives/bytes.js +0 -1
  254. package/packages/common/src/codecs/primitives/bytes.js.map +1 -1
  255. package/packages/common/src/codecs/primitives/fixed-bytes.js +0 -1
  256. package/packages/common/src/codecs/primitives/fixed-bytes.js.map +1 -1
  257. package/packages/common/src/codecs/wire.js +0 -1
  258. package/packages/common/src/codecs/wire.js.map +1 -1
  259. package/packages/common/src/json.mjs +2 -2
  260. package/packages/common/src/json.mjs.map +1 -1
  261. package/packages/common/src/msgpack.js +0 -1
  262. package/packages/common/src/msgpack.js.map +1 -1
  263. package/packages/{sdk/src/logic → common/src}/sourcemap.d.ts +2 -2
  264. package/packages/{sdk/src/logic → common/src}/sourcemap.js +2 -2
  265. package/packages/{sdk/src/logic → common/src}/sourcemap.js.map +1 -1
  266. package/packages/{sdk/src/logic → common/src}/sourcemap.mjs +1 -1
  267. package/packages/{sdk/src/logic → common/src}/sourcemap.mjs.map +1 -1
  268. package/packages/indexer_client/src/apis/api-service.d.ts +1 -1
  269. package/packages/indexer_client/src/apis/api-service.js +12 -12
  270. package/packages/indexer_client/src/apis/api-service.js.map +1 -1
  271. package/packages/indexer_client/src/apis/api-service.mjs +12 -12
  272. package/packages/indexer_client/src/apis/api-service.mjs.map +1 -1
  273. package/packages/indexer_client/src/core/api-error.js +3 -1
  274. package/packages/indexer_client/src/core/api-error.js.map +1 -1
  275. package/packages/indexer_client/src/core/api-error.mjs +3 -1
  276. package/packages/indexer_client/src/core/api-error.mjs.map +1 -1
  277. package/packages/indexer_client/src/core/model-runtime.js +0 -15
  278. package/packages/indexer_client/src/core/model-runtime.js.map +1 -1
  279. package/packages/indexer_client/src/core/model-runtime.mjs +1 -13
  280. package/packages/indexer_client/src/core/model-runtime.mjs.map +1 -1
  281. package/packages/indexer_client/src/models/account-participation.js +4 -4
  282. package/packages/indexer_client/src/models/account-participation.js.map +1 -1
  283. package/packages/indexer_client/src/models/account-participation.mjs +4 -4
  284. package/packages/indexer_client/src/models/account-participation.mjs.map +1 -1
  285. package/packages/indexer_client/src/models/application-state-schema.d.ts +2 -2
  286. package/packages/indexer_client/src/models/application-state-schema.js +2 -2
  287. package/packages/indexer_client/src/models/application-state-schema.js.map +1 -1
  288. package/packages/indexer_client/src/models/application-state-schema.mjs +2 -2
  289. package/packages/indexer_client/src/models/application-state-schema.mjs.map +1 -1
  290. package/packages/indexer_client/src/models/asset-params.js +2 -1
  291. package/packages/indexer_client/src/models/asset-params.js.map +1 -1
  292. package/packages/indexer_client/src/models/asset-params.mjs +2 -1
  293. package/packages/indexer_client/src/models/asset-params.mjs.map +1 -1
  294. package/packages/indexer_client/src/models/block.d.ts +5 -5
  295. package/packages/indexer_client/src/models/block.js +13 -13
  296. package/packages/indexer_client/src/models/block.js.map +1 -1
  297. package/packages/indexer_client/src/models/block.mjs +13 -13
  298. package/packages/indexer_client/src/models/block.mjs.map +1 -1
  299. package/packages/indexer_client/src/models/eval-delta-key-value.d.ts +1 -1
  300. package/packages/indexer_client/src/models/eval-delta-key-value.js +2 -2
  301. package/packages/indexer_client/src/models/eval-delta-key-value.js.map +1 -1
  302. package/packages/indexer_client/src/models/eval-delta-key-value.mjs +2 -2
  303. package/packages/indexer_client/src/models/eval-delta-key-value.mjs.map +1 -1
  304. package/packages/indexer_client/src/models/eval-delta.d.ts +1 -1
  305. package/packages/indexer_client/src/models/eval-delta.js +2 -2
  306. package/packages/indexer_client/src/models/eval-delta.js.map +1 -1
  307. package/packages/indexer_client/src/models/eval-delta.mjs +2 -2
  308. package/packages/indexer_client/src/models/eval-delta.mjs.map +1 -1
  309. package/packages/indexer_client/src/models/hb-proof-fields.js +6 -6
  310. package/packages/indexer_client/src/models/hb-proof-fields.js.map +1 -1
  311. package/packages/indexer_client/src/models/hb-proof-fields.mjs +6 -6
  312. package/packages/indexer_client/src/models/hb-proof-fields.mjs.map +1 -1
  313. package/packages/indexer_client/src/models/participation-updates.d.ts +2 -2
  314. package/packages/indexer_client/src/models/participation-updates.js +2 -2
  315. package/packages/indexer_client/src/models/participation-updates.js.map +1 -1
  316. package/packages/indexer_client/src/models/participation-updates.mjs +2 -2
  317. package/packages/indexer_client/src/models/participation-updates.mjs.map +1 -1
  318. package/packages/indexer_client/src/models/state-proof-verifier.js +2 -2
  319. package/packages/indexer_client/src/models/state-proof-verifier.js.map +1 -1
  320. package/packages/indexer_client/src/models/state-proof-verifier.mjs +2 -2
  321. package/packages/indexer_client/src/models/state-proof-verifier.mjs.map +1 -1
  322. package/packages/indexer_client/src/models/state-schema.d.ts +2 -2
  323. package/packages/indexer_client/src/models/state-schema.js +2 -2
  324. package/packages/indexer_client/src/models/state-schema.js.map +1 -1
  325. package/packages/indexer_client/src/models/state-schema.mjs +2 -2
  326. package/packages/indexer_client/src/models/state-schema.mjs.map +1 -1
  327. package/packages/indexer_client/src/models/teal-key-value.d.ts +1 -1
  328. package/packages/indexer_client/src/models/teal-key-value.js +2 -2
  329. package/packages/indexer_client/src/models/teal-key-value.js.map +1 -1
  330. package/packages/indexer_client/src/models/teal-key-value.mjs +2 -2
  331. package/packages/indexer_client/src/models/teal-key-value.mjs.map +1 -1
  332. package/packages/indexer_client/src/models/transaction-heartbeat.js +2 -1
  333. package/packages/indexer_client/src/models/transaction-heartbeat.js.map +1 -1
  334. package/packages/indexer_client/src/models/transaction-heartbeat.mjs +2 -1
  335. package/packages/indexer_client/src/models/transaction-heartbeat.mjs.map +1 -1
  336. package/packages/indexer_client/src/models/transaction-keyreg.js +4 -4
  337. package/packages/indexer_client/src/models/transaction-keyreg.js.map +1 -1
  338. package/packages/indexer_client/src/models/transaction-keyreg.mjs +4 -4
  339. package/packages/indexer_client/src/models/transaction-keyreg.mjs.map +1 -1
  340. package/packages/indexer_client/src/models/transaction-signature-logicsig.js +2 -1
  341. package/packages/indexer_client/src/models/transaction-signature-logicsig.js.map +1 -1
  342. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs +2 -1
  343. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs.map +1 -1
  344. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js +3 -3
  345. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js.map +1 -1
  346. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs +3 -3
  347. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs.map +1 -1
  348. package/packages/indexer_client/src/models/transaction-state-proof.d.ts +1 -1
  349. package/packages/indexer_client/src/models/transaction-state-proof.js +2 -2
  350. package/packages/indexer_client/src/models/transaction-state-proof.js.map +1 -1
  351. package/packages/indexer_client/src/models/transaction-state-proof.mjs +2 -2
  352. package/packages/indexer_client/src/models/transaction-state-proof.mjs.map +1 -1
  353. package/packages/indexer_client/src/models/transaction.d.ts +2 -2
  354. package/packages/indexer_client/src/models/transaction.js +6 -5
  355. package/packages/indexer_client/src/models/transaction.js.map +1 -1
  356. package/packages/indexer_client/src/models/transaction.mjs +6 -5
  357. package/packages/indexer_client/src/models/transaction.mjs.map +1 -1
  358. package/packages/kmd_client/src/apis/api-service.d.ts +5 -5
  359. package/packages/kmd_client/src/apis/api-service.js +32 -32
  360. package/packages/kmd_client/src/apis/api-service.js.map +1 -1
  361. package/packages/kmd_client/src/apis/api-service.mjs +32 -32
  362. package/packages/kmd_client/src/apis/api-service.mjs.map +1 -1
  363. package/packages/kmd_client/src/core/api-error.js +3 -1
  364. package/packages/kmd_client/src/core/api-error.js.map +1 -1
  365. package/packages/kmd_client/src/core/api-error.mjs +3 -1
  366. package/packages/kmd_client/src/core/api-error.mjs.map +1 -1
  367. package/packages/kmd_client/src/core/model-runtime.js +2 -12
  368. package/packages/kmd_client/src/core/model-runtime.js.map +1 -1
  369. package/packages/kmd_client/src/core/model-runtime.mjs +3 -11
  370. package/packages/kmd_client/src/core/model-runtime.mjs.map +1 -1
  371. package/packages/transact/src/logicsig.d.ts +35 -33
  372. package/packages/transact/src/logicsig.js +74 -76
  373. package/packages/transact/src/logicsig.js.map +1 -1
  374. package/packages/transact/src/logicsig.mjs +77 -78
  375. package/packages/transact/src/logicsig.mjs.map +1 -1
  376. package/packages/transact/src/multisig.d.ts +11 -116
  377. package/packages/transact/src/multisig.js +106 -136
  378. package/packages/transact/src/multisig.js.map +1 -1
  379. package/packages/transact/src/multisig.mjs +108 -118
  380. package/packages/transact/src/multisig.mjs.map +1 -1
  381. package/packages/transact/src/signer.js +9 -2
  382. package/packages/transact/src/signer.js.map +1 -1
  383. package/packages/transact/src/signer.mjs +10 -3
  384. package/packages/transact/src/signer.mjs.map +1 -1
  385. package/packages/transact/src/transactions/app-call.d.ts +10 -15
  386. package/packages/transact/src/transactions/app-call.js.map +1 -1
  387. package/packages/transact/src/transactions/app-call.mjs.map +1 -1
  388. package/packages/transact/src/transactions/asset-config.d.ts +1 -6
  389. package/packages/transact/src/transactions/asset-config.js.map +1 -1
  390. package/packages/transact/src/transactions/asset-config.mjs.map +1 -1
  391. package/packages/transact/src/transactions/asset-freeze.d.ts +1 -6
  392. package/packages/transact/src/transactions/asset-transfer.d.ts +1 -6
  393. package/packages/transact/src/transactions/key-registration.d.ts +1 -8
  394. package/packages/transact/src/transactions/reference-types-meta.d.ts +26 -0
  395. package/packages/transact/src/transactions/reference-types-meta.js +71 -0
  396. package/packages/transact/src/transactions/reference-types-meta.js.map +1 -0
  397. package/packages/transact/src/transactions/reference-types-meta.mjs +69 -0
  398. package/packages/transact/src/transactions/reference-types-meta.mjs.map +1 -0
  399. package/packages/transact/src/transactions/signed-transaction-meta.js +8 -9
  400. package/packages/transact/src/transactions/signed-transaction-meta.js.map +1 -1
  401. package/packages/transact/src/transactions/signed-transaction-meta.mjs +8 -8
  402. package/packages/transact/src/transactions/signed-transaction-meta.mjs.map +1 -1
  403. package/packages/transact/src/transactions/signed-transaction.d.ts +10 -6
  404. package/packages/transact/src/transactions/signed-transaction.js +1 -1
  405. package/packages/transact/src/transactions/signed-transaction.js.map +1 -1
  406. package/packages/transact/src/transactions/signed-transaction.mjs +1 -2
  407. package/packages/transact/src/transactions/signed-transaction.mjs.map +1 -1
  408. package/packages/transact/src/transactions/state-proof.d.ts +1 -1
  409. package/packages/transact/src/transactions/transaction-meta.js +29 -23
  410. package/packages/transact/src/transactions/transaction-meta.js.map +1 -1
  411. package/packages/transact/src/transactions/transaction-meta.mjs +29 -23
  412. package/packages/transact/src/transactions/transaction-meta.mjs.map +1 -1
  413. package/packages/transact/src/transactions/transaction.d.ts +5 -2
  414. package/packages/transact/src/transactions/transaction.js +5 -4
  415. package/packages/transact/src/transactions/transaction.js.map +1 -1
  416. package/packages/transact/src/transactions/transaction.mjs +5 -4
  417. package/packages/transact/src/transactions/transaction.mjs.map +1 -1
  418. package/testing/account.d.ts +2 -2
  419. package/testing/account.js +2 -3
  420. package/testing/account.js.map +1 -1
  421. package/testing/account.mjs +2 -3
  422. package/testing/account.mjs.map +1 -1
  423. package/testing/fixtures/algokit-log-capture-fixture.d.ts +1 -1
  424. package/testing/fixtures/algokit-log-capture-fixture.js.map +1 -1
  425. package/testing/fixtures/algokit-log-capture-fixture.mjs.map +1 -1
  426. package/testing/fixtures/algorand-fixture.d.ts +5 -5
  427. package/testing/fixtures/algorand-fixture.js +2 -2
  428. package/testing/fixtures/algorand-fixture.js.map +1 -1
  429. package/testing/fixtures/algorand-fixture.mjs +2 -2
  430. package/testing/fixtures/algorand-fixture.mjs.map +1 -1
  431. package/testing/index.d.ts +2 -1
  432. package/testing/test-logger.d.ts +1 -1
  433. package/testing/test-logger.js.map +1 -1
  434. package/testing/test-logger.mjs.map +1 -1
  435. package/testing/transaction-logger.js +1 -1
  436. package/testing/transaction-logger.mjs +1 -1
  437. package/testing/types.d.ts +156 -0
  438. package/transact/index.d.ts +11 -10
  439. package/transact/index.js +7 -31
  440. package/transact/index.mjs +7 -10
  441. package/transaction/index.d.ts +4 -0
  442. package/transaction/index.js +9 -0
  443. package/transaction/index.mjs +4 -0
  444. package/transaction/perform-transaction-composer-simulate.d.ts +1 -1
  445. package/transaction/perform-transaction-composer-simulate.js.map +1 -1
  446. package/transaction/perform-transaction-composer-simulate.mjs.map +1 -1
  447. package/transaction/transaction.d.ts +2 -2
  448. package/transaction/transaction.js +2 -2
  449. package/transaction/transaction.js.map +1 -1
  450. package/transaction/transaction.mjs +2 -2
  451. package/transaction/transaction.mjs.map +1 -1
  452. package/transaction/types.d.ts +133 -0
  453. package/transactions/app-call.d.ts +6 -5
  454. package/transactions/app-call.js +17 -17
  455. package/transactions/app-call.js.map +1 -1
  456. package/transactions/app-call.mjs +17 -17
  457. package/transactions/app-call.mjs.map +1 -1
  458. package/transactions/asset-config.d.ts +1 -1
  459. package/transactions/asset-config.js +1 -1
  460. package/transactions/asset-config.js.map +1 -1
  461. package/transactions/asset-config.mjs +1 -1
  462. package/transactions/asset-config.mjs.map +1 -1
  463. package/transactions/common.d.ts +1 -1
  464. package/transactions/common.js.map +1 -1
  465. package/transactions/common.mjs.map +1 -1
  466. package/transactions/key-registration.d.ts +1 -1
  467. package/transactions/key-registration.js.map +1 -1
  468. package/transactions/key-registration.mjs.map +1 -1
  469. package/transactions/method-call.d.ts +2 -2
  470. package/transactions/method-call.js +78 -85
  471. package/transactions/method-call.js.map +1 -1
  472. package/transactions/method-call.mjs +78 -85
  473. package/transactions/method-call.mjs.map +1 -1
  474. package/transactions/payment.d.ts +1 -1
  475. package/transactions/payment.js.map +1 -1
  476. package/transactions/payment.mjs.map +1 -1
  477. package/types/account-manager.d.ts +11 -444
  478. package/types/account-manager.js +5 -606
  479. package/types/account-manager.js.map +1 -1
  480. package/types/account-manager.mjs +5 -604
  481. package/types/account-manager.mjs.map +1 -1
  482. package/types/account.d.ts +8 -150
  483. package/types/account.js +3 -4
  484. package/types/account.js.map +1 -1
  485. package/types/account.mjs +4 -4
  486. package/types/account.mjs.map +1 -1
  487. package/types/algorand-client-transaction-creator.d.ts +5 -1084
  488. package/types/algorand-client-transaction-creator.js +3 -721
  489. package/types/algorand-client-transaction-creator.js.map +1 -1
  490. package/types/algorand-client-transaction-creator.mjs +4 -721
  491. package/types/algorand-client-transaction-creator.mjs.map +1 -1
  492. package/types/algorand-client-transaction-sender.d.ts +5 -1298
  493. package/types/algorand-client-transaction-sender.js +3 -920
  494. package/types/algorand-client-transaction-sender.js.map +1 -1
  495. package/types/algorand-client-transaction-sender.mjs +3 -918
  496. package/types/algorand-client-transaction-sender.mjs.map +1 -1
  497. package/types/algorand-client.d.ts +5 -241
  498. package/types/algorand-client.js +3 -319
  499. package/types/algorand-client.js.map +1 -1
  500. package/types/algorand-client.mjs +3 -319
  501. package/types/algorand-client.mjs.map +1 -1
  502. package/types/amount.d.ts +6 -45
  503. package/types/amount.js +3 -60
  504. package/types/amount.js.map +1 -1
  505. package/types/amount.mjs +3 -60
  506. package/types/amount.mjs.map +1 -1
  507. package/types/app-client.d.ts +75 -2120
  508. package/types/app-client.js +3 -904
  509. package/types/app-client.js.map +1 -1
  510. package/types/app-client.mjs +3 -902
  511. package/types/app-client.mjs.map +1 -1
  512. package/types/app-deployer.d.ts +21 -161
  513. package/types/app-deployer.js +3 -347
  514. package/types/app-deployer.js.map +1 -1
  515. package/types/app-deployer.mjs +3 -347
  516. package/types/app-deployer.mjs.map +1 -1
  517. package/types/app-factory.d.ts +21 -957
  518. package/types/app-factory.js +3 -442
  519. package/types/app-factory.js.map +1 -1
  520. package/types/app-factory.mjs +3 -442
  521. package/types/app-factory.mjs.map +1 -1
  522. package/types/app-manager.d.ts +15 -316
  523. package/types/app-manager.js +3 -456
  524. package/types/app-manager.js.map +1 -1
  525. package/types/app-manager.mjs +3 -456
  526. package/types/app-manager.mjs.map +1 -1
  527. package/types/app-spec.d.ts +39 -198
  528. package/types/app-spec.js +3 -124
  529. package/types/app-spec.js.map +1 -1
  530. package/types/app-spec.mjs +3 -124
  531. package/types/app-spec.mjs.map +1 -1
  532. package/types/app.d.ts +62 -247
  533. package/types/app.js +15 -37
  534. package/types/app.js.map +1 -1
  535. package/types/app.mjs +16 -37
  536. package/types/app.mjs.map +1 -1
  537. package/types/asset-manager.d.ts +9 -207
  538. package/types/asset-manager.js +3 -160
  539. package/types/asset-manager.js.map +1 -1
  540. package/types/asset-manager.mjs +3 -160
  541. package/types/asset-manager.mjs.map +1 -1
  542. package/types/async-event-emitter.d.ts +7 -14
  543. package/types/async-event-emitter.js +3 -32
  544. package/types/async-event-emitter.js.map +1 -1
  545. package/types/async-event-emitter.mjs +4 -32
  546. package/types/async-event-emitter.mjs.map +1 -1
  547. package/types/client-manager.d.ts +27 -470
  548. package/types/client-manager.js +3 -610
  549. package/types/client-manager.js.map +1 -1
  550. package/types/client-manager.mjs +3 -610
  551. package/types/client-manager.mjs.map +1 -1
  552. package/types/composer.d.ts +79 -935
  553. package/types/composer.js +3 -1569
  554. package/types/composer.js.map +1 -1
  555. package/types/composer.mjs +3 -1567
  556. package/types/composer.mjs.map +1 -1
  557. package/types/config.d.ts +7 -52
  558. package/types/config.js +3 -74
  559. package/types/config.js.map +1 -1
  560. package/types/config.mjs +3 -74
  561. package/types/config.mjs.map +1 -1
  562. package/types/debugging.d.ts +12 -33
  563. package/types/debugging.js +11 -10
  564. package/types/debugging.js.map +1 -1
  565. package/types/debugging.mjs +12 -10
  566. package/types/debugging.mjs.map +1 -1
  567. package/types/dispenser-client.d.ts +11 -85
  568. package/types/dispenser-client.js +3 -121
  569. package/types/dispenser-client.js.map +1 -1
  570. package/types/dispenser-client.mjs +3 -121
  571. package/types/dispenser-client.mjs.map +1 -1
  572. package/types/expand.d.ts +4 -5
  573. package/types/indexer.d.ts +16 -36
  574. package/types/indexer.js +7 -30
  575. package/types/indexer.js.map +1 -1
  576. package/types/indexer.mjs +8 -30
  577. package/types/indexer.mjs.map +1 -1
  578. package/types/instance-of.d.ts +4 -4
  579. package/types/kmd-account-manager.d.ts +5 -68
  580. package/types/kmd-account-manager.js +3 -150
  581. package/types/kmd-account-manager.js.map +1 -1
  582. package/types/kmd-account-manager.mjs +3 -148
  583. package/types/kmd-account-manager.mjs.map +1 -1
  584. package/types/lifecycle-events.d.ts +7 -10
  585. package/types/lifecycle-events.js +3 -5
  586. package/types/lifecycle-events.js.map +1 -1
  587. package/types/lifecycle-events.mjs +4 -5
  588. package/types/lifecycle-events.mjs.map +1 -1
  589. package/types/logging.d.ts +14 -9
  590. package/types/logging.js +11 -37
  591. package/types/logging.js.map +1 -1
  592. package/types/logging.mjs +12 -37
  593. package/types/logging.mjs.map +1 -1
  594. package/types/logic-error.d.ts +8 -35
  595. package/types/logic-error.js +3 -48
  596. package/types/logic-error.js.map +1 -1
  597. package/types/logic-error.mjs +4 -48
  598. package/types/logic-error.mjs.map +1 -1
  599. package/types/network-client.d.ts +10 -39
  600. package/types/network-client.js +3 -8
  601. package/types/network-client.js.map +1 -1
  602. package/types/network-client.mjs +4 -8
  603. package/types/network-client.mjs.map +1 -1
  604. package/types/testing.d.ts +13 -151
  605. package/types/transaction.d.ts +33 -128
  606. package/updatable-config.d.ts +57 -0
  607. package/updatable-config.js +80 -0
  608. package/updatable-config.js.map +1 -0
  609. package/updatable-config.mjs +80 -0
  610. package/updatable-config.mjs.map +1 -0
  611. package/util.js +1 -1
  612. package/util.js.map +1 -1
  613. package/util.mjs +1 -1
  614. package/util.mjs.map +1 -1
  615. package/_virtual/rolldown_runtime.mjs +0 -13
  616. package/indexer-lookup.js.map +0 -1
  617. package/indexer-lookup.mjs.map +0 -1
  618. package/packages/algod_client/src/core/model-runtime.d.ts +0 -10
  619. package/packages/algod_client/src/models/application-local-reference.d.ts +0 -20
  620. package/packages/algod_client/src/models/application-local-reference.js +0 -23
  621. package/packages/algod_client/src/models/application-local-reference.js.map +0 -1
  622. package/packages/algod_client/src/models/application-local-reference.mjs +0 -23
  623. package/packages/algod_client/src/models/application-local-reference.mjs.map +0 -1
  624. package/packages/algod_client/src/models/asset-holding-reference.d.ts +0 -20
  625. package/packages/algod_client/src/models/asset-holding-reference.js +0 -23
  626. package/packages/algod_client/src/models/asset-holding-reference.js.map +0 -1
  627. package/packages/algod_client/src/models/asset-holding-reference.mjs +0 -23
  628. package/packages/algod_client/src/models/asset-holding-reference.mjs.map +0 -1
  629. package/packages/algod_client/src/models/box-reference.d.ts +0 -17
  630. package/packages/algod_client/src/models/box-reference.js +0 -23
  631. package/packages/algod_client/src/models/box-reference.js.map +0 -1
  632. package/packages/algod_client/src/models/box-reference.mjs +0 -23
  633. package/packages/algod_client/src/models/box-reference.mjs.map +0 -1
  634. package/packages/indexer_client/src/core/model-runtime.d.ts +0 -10
  635. package/packages/kmd_client/src/core/model-runtime.d.ts +0 -10
  636. package/packages/sdk/src/convert.d.ts +0 -17
  637. package/packages/sdk/src/convert.js +0 -28
  638. package/packages/sdk/src/convert.js.map +0 -1
  639. package/packages/sdk/src/convert.mjs +0 -25
  640. package/packages/sdk/src/convert.mjs.map +0 -1
  641. package/packages/sdk/src/encoding/binarydata.d.ts +0 -34
  642. package/packages/sdk/src/encoding/binarydata.js +0 -65
  643. package/packages/sdk/src/encoding/binarydata.js.map +0 -1
  644. package/packages/sdk/src/encoding/binarydata.mjs +0 -60
  645. package/packages/sdk/src/encoding/binarydata.mjs.map +0 -1
  646. package/packages/sdk/src/encoding/encoding.d.ts +0 -237
  647. package/packages/sdk/src/encoding/encoding.js +0 -302
  648. package/packages/sdk/src/encoding/encoding.js.map +0 -1
  649. package/packages/sdk/src/encoding/encoding.mjs +0 -287
  650. package/packages/sdk/src/encoding/encoding.mjs.map +0 -1
  651. package/packages/sdk/src/encoding/schema/array.js +0 -35
  652. package/packages/sdk/src/encoding/schema/array.js.map +0 -1
  653. package/packages/sdk/src/encoding/schema/array.mjs +0 -35
  654. package/packages/sdk/src/encoding/schema/array.mjs.map +0 -1
  655. package/packages/sdk/src/encoding/schema/bytearray.js +0 -49
  656. package/packages/sdk/src/encoding/schema/bytearray.js.map +0 -1
  657. package/packages/sdk/src/encoding/schema/bytearray.mjs +0 -49
  658. package/packages/sdk/src/encoding/schema/bytearray.mjs.map +0 -1
  659. package/packages/sdk/src/encoding/schema/map.d.ts +0 -58
  660. package/packages/sdk/src/encoding/schema/map.js +0 -110
  661. package/packages/sdk/src/encoding/schema/map.js.map +0 -1
  662. package/packages/sdk/src/encoding/schema/map.mjs +0 -107
  663. package/packages/sdk/src/encoding/schema/map.mjs.map +0 -1
  664. package/packages/sdk/src/encoding/schema/optional.js +0 -46
  665. package/packages/sdk/src/encoding/schema/optional.js.map +0 -1
  666. package/packages/sdk/src/encoding/schema/optional.mjs +0 -46
  667. package/packages/sdk/src/encoding/schema/optional.mjs.map +0 -1
  668. package/packages/sdk/src/encoding/schema/uint64.js +0 -30
  669. package/packages/sdk/src/encoding/schema/uint64.js.map +0 -1
  670. package/packages/sdk/src/encoding/schema/uint64.mjs +0 -30
  671. package/packages/sdk/src/encoding/schema/uint64.mjs.map +0 -1
  672. package/packages/sdk/src/encoding/uint64.d.ts +0 -34
  673. package/packages/sdk/src/encoding/uint64.js +0 -34
  674. package/packages/sdk/src/encoding/uint64.js.map +0 -1
  675. package/packages/sdk/src/encoding/uint64.mjs +0 -33
  676. package/packages/sdk/src/encoding/uint64.mjs.map +0 -1
  677. package/packages/sdk/src/index.d.ts +0 -44
  678. package/packages/sdk/src/index.js +0 -62
  679. package/packages/sdk/src/index.js.map +0 -1
  680. package/packages/sdk/src/index.mjs +0 -58
  681. package/packages/sdk/src/index.mjs.map +0 -1
  682. package/packages/sdk/src/nacl/naclWrappers.js +0 -14
  683. package/packages/sdk/src/nacl/naclWrappers.js.map +0 -1
  684. package/packages/sdk/src/nacl/naclWrappers.mjs +0 -11
  685. package/packages/sdk/src/nacl/naclWrappers.mjs.map +0 -1
  686. package/packages/sdk/src/types/intDecoding.d.ts +0 -28
  687. package/packages/sdk/src/types/intDecoding.js +0 -32
  688. package/packages/sdk/src/types/intDecoding.js.map +0 -1
  689. package/packages/sdk/src/types/intDecoding.mjs +0 -31
  690. package/packages/sdk/src/types/intDecoding.mjs.map +0 -1
  691. package/packages/sdk/src/types/transactions/encoded.d.ts +0 -40
  692. package/packages/sdk/src/types/transactions/encoded.js +0 -64
  693. package/packages/sdk/src/types/transactions/encoded.js.map +0 -1
  694. package/packages/sdk/src/types/transactions/encoded.mjs +0 -59
  695. package/packages/sdk/src/types/transactions/encoded.mjs.map +0 -1
  696. package/packages/sdk/src/utils/utils.d.ts +0 -64
  697. package/packages/sdk/src/utils/utils.js +0 -140
  698. package/packages/sdk/src/utils/utils.js.map +0 -1
  699. package/packages/sdk/src/utils/utils.mjs +0 -128
  700. package/packages/sdk/src/utils/utils.mjs.map +0 -1
  701. package/packages/transact/src/transactions/common.d.ts +0 -37
  702. package/sdk/index.d.ts +0 -10
  703. package/sdk/index.js +0 -59
  704. package/sdk/index.mjs +0 -11
@@ -1,287 +0,0 @@
1
- import intDecoding_default from "../types/intDecoding.mjs";
2
- import { arrayEqual, parseJSON, stringifyJSON } from "../utils/utils.mjs";
3
- import { bytesToBase64, coerceToBytes } from "./binarydata.mjs";
4
- import { IntMode, RawBinaryString, decode, encode } from "algorand-msgpack";
5
-
6
- //#region packages/sdk/src/encoding/encoding.ts
7
- const ERROR_CONTAINS_EMPTY_STRING = "The object contains empty or 0 values. First empty or 0 value encountered during encoding: ";
8
- /**
9
- * containsEmpty returns true if any of the object's values are empty, false otherwise.
10
- * Empty arrays considered empty
11
- * @param obj - The object to check
12
- * @returns \{true, empty key\} if contains empty, \{false, undefined\} otherwise
13
- */
14
- function containsEmpty(obj) {
15
- for (const key in obj) if (Object.prototype.hasOwnProperty.call(obj, key)) {
16
- if (!obj[key] || obj[key].length === 0) return {
17
- containsEmpty: true,
18
- firstEmptyKey: key
19
- };
20
- }
21
- return {
22
- containsEmpty: false,
23
- firstEmptyKey: void 0
24
- };
25
- }
26
- /**
27
- * msgpackRawEncode encodes objects using msgpack, regardless of whether there are
28
- * empty or 0 value fields.
29
- * @param obj - a dictionary to be encoded. May or may not contain empty or 0 values.
30
- * @returns msgpack representation of the object
31
- */
32
- function msgpackRawEncode(obj) {
33
- return encode(obj, { sortKeys: true });
34
- }
35
- /**
36
- * encodeObj takes a javascript object and returns its msgpack encoding
37
- * Note that the encoding sorts the fields alphabetically
38
- * @param o - js object to be encoded. Must not contain empty or 0 values.
39
- * @returns Uint8Array binary representation
40
- * @throws Error containing ERROR_CONTAINS_EMPTY_STRING if the object contains empty or zero values
41
- *
42
- * @deprecated Use {@link msgpackRawEncode} instead. Note that function does not
43
- * check for empty values like this one does.
44
- */
45
- function encodeObj(obj) {
46
- const emptyCheck = containsEmpty(obj);
47
- if (emptyCheck.containsEmpty) throw new Error(ERROR_CONTAINS_EMPTY_STRING + emptyCheck.firstEmptyKey);
48
- return msgpackRawEncode(obj);
49
- }
50
- function intDecodingToIntMode(intDecoding) {
51
- switch (intDecoding) {
52
- case intDecoding_default.UNSAFE: return IntMode.UNSAFE_NUMBER;
53
- case intDecoding_default.SAFE: return IntMode.SAFE_NUMBER;
54
- case intDecoding_default.MIXED: return IntMode.MIXED;
55
- case intDecoding_default.BIGINT: return IntMode.BIGINT;
56
- default: throw new Error(`Invalid intDecoding: ${intDecoding}`);
57
- }
58
- }
59
- /**
60
- * Decodes msgpack bytes into a plain JavaScript object.
61
- * @param buffer - The msgpack bytes to decode
62
- * @param options - Options for decoding, including int decoding mode. See {@link IntDecoding} for more information.
63
- * @returns The decoded object
64
- */
65
- function msgpackRawDecode(buffer, options) {
66
- return decode(buffer, { intMode: options?.intDecoding ? intDecodingToIntMode(options?.intDecoding) : IntMode.BIGINT });
67
- }
68
- /**
69
- * decodeObj takes a Uint8Array and returns its javascript obj
70
- * @param o - Uint8Array to decode
71
- * @returns object
72
- *
73
- * @deprecated Use {@link msgpackRawDecode} instead. Note that this function uses `IntDecoding.MIXED`
74
- * while `msgpackRawDecode` defaults to `IntDecoding.BIGINT` for int decoding, though it is
75
- * configurable.
76
- */
77
- function decodeObj(o) {
78
- return msgpackRawDecode(o, { intDecoding: intDecoding_default.MIXED });
79
- }
80
- /**
81
- * Decodes msgpack bytes into a Map object. This supports decoding non-string map keys.
82
- * @param encoded - The msgpack bytes to decode
83
- * @param options - Options for decoding, including int decoding mode. See {@link IntDecoding} for more information.
84
- * @returns The decoded Map object
85
- */
86
- function msgpackRawDecodeAsMap(encoded, options) {
87
- return decode(encoded, {
88
- intMode: options?.intDecoding ? intDecodingToIntMode(options?.intDecoding) : IntMode.BIGINT,
89
- useMap: true
90
- });
91
- }
92
- function msgpackRawDecodeAsMapWithRawStrings(encoded, options) {
93
- return decode(encoded, {
94
- intMode: options?.intDecoding ? intDecodingToIntMode(options?.intDecoding) : IntMode.BIGINT,
95
- useMap: true,
96
- rawBinaryStringKeys: true,
97
- rawBinaryStringValues: true,
98
- useRawBinaryStringClass: true
99
- });
100
- }
101
- function msgpackEncodingDataToJSONEncodingData(e) {
102
- if (e === null || e === void 0) return e;
103
- if (e instanceof Uint8Array) return bytesToBase64(e);
104
- if (Array.isArray(e)) return e.map(msgpackEncodingDataToJSONEncodingData);
105
- if (e instanceof Map) {
106
- const obj = {};
107
- for (const [k, v] of e) {
108
- if (typeof k !== "string") throw new Error(`JSON map key must be a string: ${k}`);
109
- obj[k] = msgpackEncodingDataToJSONEncodingData(v);
110
- }
111
- return obj;
112
- }
113
- return e;
114
- }
115
- function jsonEncodingDataToMsgpackEncodingData(e) {
116
- if (e === null || e === void 0) return e;
117
- if (typeof e === "string" || typeof e === "number" || typeof e === "bigint" || typeof e === "boolean") return e;
118
- if (Array.isArray(e)) return e.map(jsonEncodingDataToMsgpackEncodingData);
119
- if (typeof e === "object") {
120
- const obj = /* @__PURE__ */ new Map();
121
- for (const [key, value] of Object.entries(e)) obj.set(key, jsonEncodingDataToMsgpackEncodingData(value));
122
- return obj;
123
- }
124
- throw new Error(`Invalid JSON encoding data: ${e}`);
125
- }
126
- var MsgpackObjectPathSegmentKind = /* @__PURE__ */ function(MsgpackObjectPathSegmentKind$1) {
127
- MsgpackObjectPathSegmentKind$1[MsgpackObjectPathSegmentKind$1["MAP_VALUE"] = 0] = "MAP_VALUE";
128
- MsgpackObjectPathSegmentKind$1[MsgpackObjectPathSegmentKind$1["ARRAY_ELEMENT"] = 1] = "ARRAY_ELEMENT";
129
- return MsgpackObjectPathSegmentKind$1;
130
- }(MsgpackObjectPathSegmentKind || {});
131
- /**
132
- * This class is used to index into an encoded msgpack object and extract raw strings.
133
- */
134
- var MsgpackRawStringProvider = class MsgpackRawStringProvider {
135
- parent;
136
- baseObjectBytes;
137
- segment;
138
- resolvedCache = null;
139
- resolvedCachePresent = false;
140
- constructor({ parent, segment, baseObjectBytes }) {
141
- this.parent = parent;
142
- this.segment = segment;
143
- this.baseObjectBytes = baseObjectBytes;
144
- }
145
- /**
146
- * Create a new provider that resolves to the current provider's map value at the given key.
147
- */
148
- withMapValue(key) {
149
- return new MsgpackRawStringProvider({
150
- parent: this,
151
- segment: {
152
- kind: MsgpackObjectPathSegmentKind.MAP_VALUE,
153
- key
154
- }
155
- });
156
- }
157
- /**
158
- * Create a new provider that resolves to the current provider's array element at the given index.
159
- */
160
- withArrayElement(index) {
161
- return new MsgpackRawStringProvider({
162
- parent: this,
163
- segment: {
164
- kind: MsgpackObjectPathSegmentKind.ARRAY_ELEMENT,
165
- key: index
166
- }
167
- });
168
- }
169
- /**
170
- * Get the raw string at the current location. If the current location is not a raw string, an error is thrown.
171
- */
172
- getRawStringAtCurrentLocation() {
173
- const resolved = this.resolve();
174
- if (resolved instanceof RawBinaryString) return resolved.rawBinaryValue;
175
- throw new Error(`Invalid type. Expected RawBinaryString, got ${resolved} (${typeof resolved})`);
176
- }
177
- /**
178
- * Get the raw string map keys and values at the current location. If the current location is not a map, an error is thrown.
179
- */
180
- getRawStringKeysAndValuesAtCurrentLocation() {
181
- const resolved = this.resolve();
182
- if (!(resolved instanceof Map)) throw new Error(`Invalid type. Expected Map, got ${resolved} (${typeof resolved})`);
183
- const keysAndValues = /* @__PURE__ */ new Map();
184
- for (const [key, value] of resolved) if (key instanceof RawBinaryString) keysAndValues.set(key.rawBinaryValue, value);
185
- else throw new Error(`Invalid type for map key. Expected RawBinaryString, got ${key} (${typeof key})`);
186
- return keysAndValues;
187
- }
188
- /**
189
- * Resolve the provider by extracting the value it indicates from the base msgpack object.
190
- */
191
- resolve() {
192
- if (this.resolvedCachePresent) return this.resolvedCache;
193
- let parentResolved;
194
- if (this.parent) parentResolved = this.parent.resolve();
195
- else parentResolved = msgpackRawDecodeAsMapWithRawStrings(this.baseObjectBytes);
196
- if (!this.segment) {
197
- this.resolvedCache = parentResolved;
198
- this.resolvedCachePresent = true;
199
- return parentResolved;
200
- }
201
- if (this.segment.kind === MsgpackObjectPathSegmentKind.MAP_VALUE) {
202
- if (!(parentResolved instanceof Map)) throw new Error(`Invalid type. Expected Map, got ${parentResolved} (${typeof parentResolved})`);
203
- if (typeof this.segment.key === "string" || this.segment.key instanceof Uint8Array || this.segment.key instanceof RawBinaryString) {
204
- const targetBytes = this.segment.key instanceof RawBinaryString ? this.segment.key.rawBinaryValue : coerceToBytes(this.segment.key);
205
- const targetIsRawString = typeof this.segment.key === "string" || this.segment.key instanceof RawBinaryString;
206
- for (const [key, value] of parentResolved) {
207
- let potentialKeyBytes;
208
- if (targetIsRawString) {
209
- if (key instanceof RawBinaryString) potentialKeyBytes = key.rawBinaryValue;
210
- } else if (key instanceof Uint8Array) potentialKeyBytes = key;
211
- if (potentialKeyBytes && arrayEqual(targetBytes, potentialKeyBytes)) {
212
- this.resolvedCache = value;
213
- break;
214
- }
215
- }
216
- } else this.resolvedCache = parentResolved.get(this.segment.key);
217
- this.resolvedCachePresent = true;
218
- return this.resolvedCache;
219
- }
220
- if (this.segment.kind === MsgpackObjectPathSegmentKind.ARRAY_ELEMENT) {
221
- if (!Array.isArray(parentResolved)) throw new Error(`Invalid type. Expected Array, got ${parentResolved} (${typeof parentResolved})`);
222
- this.resolvedCache = parentResolved[this.segment.key];
223
- this.resolvedCachePresent = true;
224
- return this.resolvedCache;
225
- }
226
- throw new Error(`Invalid segment kind: ${this.segment.kind}`);
227
- }
228
- /**
229
- * Get the path string of the current location indicated by the provider. Useful for debugging.
230
- */
231
- getPathString() {
232
- const parentPathString = this.parent ? this.parent.getPathString() : "root";
233
- if (!this.segment) return parentPathString;
234
- if (this.segment.kind === MsgpackObjectPathSegmentKind.MAP_VALUE) return `${parentPathString} -> map key "${this.segment.key}" (${typeof this.segment.key})`;
235
- if (this.segment.kind === MsgpackObjectPathSegmentKind.ARRAY_ELEMENT) return `${parentPathString} -> array index ${this.segment.key} (${typeof this.segment.key})`;
236
- return `${parentPathString} -> unknown segment kind ${this.segment.kind}`;
237
- }
238
- };
239
- /**
240
- * A Schema is used to prepare objects for encoding and decoding from msgpack and JSON.
241
- *
242
- * Schemas represent a specific type.
243
- */
244
- var Schema = class {};
245
- /**
246
- * Decode a msgpack byte array to an Encodable object.
247
- * @param encoded - The msgpack bytes to decode
248
- * @param c - The class of the object to decode. This class must match the object that was encoded.
249
- * @returns An instance of the class with the decoded data
250
- */
251
- function decodeMsgpack(encoded, c) {
252
- const decoded = msgpackRawDecodeAsMap(encoded);
253
- const rawStringProvider = new MsgpackRawStringProvider({ baseObjectBytes: encoded });
254
- return c.fromEncodingData(c.encodingSchema.fromPreparedMsgpack(decoded, rawStringProvider));
255
- }
256
- /**
257
- * Encode an Encodable object to a msgpack byte array.
258
- * @param e - The object to encode
259
- * @returns A msgpack byte array encoding of the object
260
- */
261
- function encodeMsgpack(e) {
262
- return msgpackRawEncode(e.getEncodingSchema().prepareMsgpack(e.toEncodingData()));
263
- }
264
- /**
265
- * Decode a JSON string to an Encodable object.
266
- * @param encoded - The JSON string to decode
267
- * @param c - The class of the object to decode. This class must match the object that was encoded.
268
- * @returns An instance of the class with the decoded data
269
- */
270
- function decodeJSON(encoded, c) {
271
- const decoded = parseJSON(encoded, { intDecoding: intDecoding_default.BIGINT });
272
- return c.fromEncodingData(c.encodingSchema.fromPreparedJSON(decoded));
273
- }
274
- /**
275
- * Encode an Encodable object to a JSON string.
276
- * @param e - The object to encode
277
- * @param options - Optional encoding options. See {@link EncodeJSONOptions} for more information.
278
- * @returns A JSON string encoding of the object
279
- */
280
- function encodeJSON(e, options) {
281
- const { space,...prepareJSONOptions } = options ?? {};
282
- return stringifyJSON(e.getEncodingSchema().prepareJSON(e.toEncodingData(), prepareJSONOptions), void 0, space);
283
- }
284
-
285
- //#endregion
286
- export { ERROR_CONTAINS_EMPTY_STRING, MsgpackRawStringProvider, Schema, decodeJSON, decodeMsgpack, decodeObj, encodeJSON, encodeMsgpack, encodeObj, jsonEncodingDataToMsgpackEncodingData, msgpackEncodingDataToJSONEncodingData, msgpackRawDecode, msgpackRawDecodeAsMap, msgpackRawEncode };
287
- //# sourceMappingURL=encoding.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"encoding.mjs","names":["msgpackEncode","IntDecoding","msgpackDecode","obj: { [key: string]: JSONEncodingData }","parentResolved: MsgpackEncodingData","potentialKeyBytes: Uint8Array | undefined","decoded: JSONEncodingData"],"sources":["../../../../../packages/sdk/src/encoding/encoding.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/**\n * This file is a wrapper of msgpack.js.\n * The wrapper was written in order to ensure correct encoding of Algorand Transaction and other formats.\n * In particular, it matches go-algorand blockchain client, written in go (https://www.github.com/algorand/go-algorand.\n * Algorand's msgpack encoding follows to following rules -\n * 1. Every integer must be encoded to the smallest type possible (0-255-\\>8bit, 256-65535-\\>16bit, etx)\n * 2. All fields names must be sorted\n * 3. All empty and 0 fields should be omitted\n * 4. Every positive number must be encoded as uint\n * 5. Binary blob should be used for binary data and string for strings\n * */\n\nimport {\n DecoderOptions,\n EncoderOptions,\n IntMode,\n RawBinaryString,\n decode as msgpackDecode,\n encode as msgpackEncode,\n} from 'algorand-msgpack'\nimport IntDecoding from '../types/intDecoding.js'\nimport { arrayEqual, parseJSON, stringifyJSON } from '../utils/utils.js'\nimport { bytesToBase64, coerceToBytes } from './binarydata.js'\n\n// Errors\nexport const ERROR_CONTAINS_EMPTY_STRING = 'The object contains empty or 0 values. First empty or 0 value encountered during encoding: '\n\n/**\n * containsEmpty returns true if any of the object's values are empty, false otherwise.\n * Empty arrays considered empty\n * @param obj - The object to check\n * @returns \\{true, empty key\\} if contains empty, \\{false, undefined\\} otherwise\n */\nfunction containsEmpty(obj: Record<string | number | symbol, any>) {\n for (const key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n if (!obj[key] || obj[key].length === 0) {\n return { containsEmpty: true, firstEmptyKey: key }\n }\n }\n }\n return { containsEmpty: false, firstEmptyKey: undefined }\n}\n\n/**\n * msgpackRawEncode encodes objects using msgpack, regardless of whether there are\n * empty or 0 value fields.\n * @param obj - a dictionary to be encoded. May or may not contain empty or 0 values.\n * @returns msgpack representation of the object\n */\nexport function msgpackRawEncode(obj: unknown) {\n // enable the canonical option\n const options: EncoderOptions = { sortKeys: true }\n return msgpackEncode(obj, options)\n}\n\n/**\n * encodeObj takes a javascript object and returns its msgpack encoding\n * Note that the encoding sorts the fields alphabetically\n * @param o - js object to be encoded. Must not contain empty or 0 values.\n * @returns Uint8Array binary representation\n * @throws Error containing ERROR_CONTAINS_EMPTY_STRING if the object contains empty or zero values\n *\n * @deprecated Use {@link msgpackRawEncode} instead. Note that function does not\n * check for empty values like this one does.\n */\nexport function encodeObj(obj: Record<string | number | symbol, any>) {\n // Check for empty values\n const emptyCheck = containsEmpty(obj)\n if (emptyCheck.containsEmpty) {\n throw new Error(ERROR_CONTAINS_EMPTY_STRING + emptyCheck.firstEmptyKey)\n }\n return msgpackRawEncode(obj)\n}\n\nfunction intDecodingToIntMode(intDecoding: IntDecoding): IntMode {\n switch (intDecoding) {\n case IntDecoding.UNSAFE:\n return IntMode.UNSAFE_NUMBER\n case IntDecoding.SAFE:\n return IntMode.SAFE_NUMBER\n case IntDecoding.MIXED:\n return IntMode.MIXED\n case IntDecoding.BIGINT:\n return IntMode.BIGINT\n default:\n throw new Error(`Invalid intDecoding: ${intDecoding}`)\n }\n}\n\n/**\n * Decodes msgpack bytes into a plain JavaScript object.\n * @param buffer - The msgpack bytes to decode\n * @param options - Options for decoding, including int decoding mode. See {@link IntDecoding} for more information.\n * @returns The decoded object\n */\nexport function msgpackRawDecode(buffer: ArrayLike<number>, options?: { intDecoding: IntDecoding }) {\n const decoderOptions: DecoderOptions = {\n intMode: options?.intDecoding ? intDecodingToIntMode(options?.intDecoding) : IntMode.BIGINT,\n }\n return msgpackDecode(buffer, decoderOptions)\n}\n\n/**\n * decodeObj takes a Uint8Array and returns its javascript obj\n * @param o - Uint8Array to decode\n * @returns object\n *\n * @deprecated Use {@link msgpackRawDecode} instead. Note that this function uses `IntDecoding.MIXED`\n * while `msgpackRawDecode` defaults to `IntDecoding.BIGINT` for int decoding, though it is\n * configurable.\n */\nexport function decodeObj(o: ArrayLike<number>) {\n return msgpackRawDecode(o, { intDecoding: IntDecoding.MIXED })\n}\n\n/**\n * Decodes msgpack bytes into a Map object. This supports decoding non-string map keys.\n * @param encoded - The msgpack bytes to decode\n * @param options - Options for decoding, including int decoding mode. See {@link IntDecoding} for more information.\n * @returns The decoded Map object\n */\nexport function msgpackRawDecodeAsMap(encoded: ArrayLike<number>, options?: { intDecoding: IntDecoding }) {\n const decoderOptions: DecoderOptions = {\n intMode: options?.intDecoding ? intDecodingToIntMode(options?.intDecoding) : IntMode.BIGINT,\n useMap: true,\n }\n return msgpackDecode(encoded, decoderOptions)\n}\n\nfunction msgpackRawDecodeAsMapWithRawStrings(encoded: ArrayLike<number>, options?: { intDecoding: IntDecoding }) {\n const decoderOptions: DecoderOptions = {\n intMode: options?.intDecoding ? intDecodingToIntMode(options?.intDecoding) : IntMode.BIGINT,\n useMap: true,\n rawBinaryStringKeys: true,\n rawBinaryStringValues: true,\n useRawBinaryStringClass: true,\n }\n return msgpackDecode(encoded, decoderOptions)\n}\n\nexport type MsgpackEncodingData =\n | null\n | undefined\n | string\n | number\n | bigint\n | boolean\n | Uint8Array\n | MsgpackEncodingData[]\n | Map<string | number | bigint | Uint8Array, MsgpackEncodingData>\n\nexport type JSONEncodingData =\n | null\n | undefined\n | string\n | number\n | bigint\n | boolean\n | JSONEncodingData[]\n | { [key: string]: JSONEncodingData }\n\nexport function msgpackEncodingDataToJSONEncodingData(e: MsgpackEncodingData): JSONEncodingData {\n if (e === null || e === undefined) {\n return e as JSONEncodingData\n }\n if (e instanceof Uint8Array) {\n return bytesToBase64(e)\n }\n if (Array.isArray(e)) {\n return e.map(msgpackEncodingDataToJSONEncodingData)\n }\n if (e instanceof Map) {\n const obj: { [key: string]: JSONEncodingData } = {}\n for (const [k, v] of e) {\n if (typeof k !== 'string') {\n throw new Error(`JSON map key must be a string: ${k}`)\n }\n obj[k] = msgpackEncodingDataToJSONEncodingData(v)\n }\n return obj\n }\n return e\n}\n\nexport function jsonEncodingDataToMsgpackEncodingData(e: JSONEncodingData): MsgpackEncodingData {\n if (e === null || e === undefined) {\n return e as MsgpackEncodingData\n }\n if (\n typeof e === 'string' || // Note, this will not convert base64 to Uint8Array\n typeof e === 'number' ||\n typeof e === 'bigint' ||\n typeof e === 'boolean'\n ) {\n return e\n }\n if (Array.isArray(e)) {\n return e.map(jsonEncodingDataToMsgpackEncodingData)\n }\n if (typeof e === 'object') {\n const obj = new Map<string, MsgpackEncodingData>()\n for (const [key, value] of Object.entries(e)) {\n obj.set(key, jsonEncodingDataToMsgpackEncodingData(value))\n }\n return obj\n }\n throw new Error(`Invalid JSON encoding data: ${e}`)\n}\n\nenum MsgpackObjectPathSegmentKind {\n MAP_VALUE,\n ARRAY_ELEMENT,\n}\n\ninterface MsgpackObjectPathSegment {\n kind: MsgpackObjectPathSegmentKind\n key: string | number | bigint | Uint8Array | RawBinaryString\n}\n\n/**\n * This class is used to index into an encoded msgpack object and extract raw strings.\n */\nexport class MsgpackRawStringProvider {\n private readonly parent?: MsgpackRawStringProvider\n\n private readonly baseObjectBytes?: ArrayLike<number>\n\n private readonly segment?: MsgpackObjectPathSegment\n\n private resolvedCache: MsgpackEncodingData = null\n private resolvedCachePresent = false\n\n public constructor({\n parent,\n segment,\n baseObjectBytes,\n }:\n | {\n parent: MsgpackRawStringProvider\n segment: MsgpackObjectPathSegment\n baseObjectBytes?: undefined\n }\n | {\n parent?: undefined\n segment?: undefined\n baseObjectBytes: ArrayLike<number>\n }) {\n this.parent = parent\n this.segment = segment\n this.baseObjectBytes = baseObjectBytes\n }\n\n /**\n * Create a new provider that resolves to the current provider's map value at the given key.\n */\n public withMapValue(key: string | number | bigint | Uint8Array | RawBinaryString): MsgpackRawStringProvider {\n return new MsgpackRawStringProvider({\n parent: this,\n segment: {\n kind: MsgpackObjectPathSegmentKind.MAP_VALUE,\n key,\n },\n })\n }\n\n /**\n * Create a new provider that resolves to the current provider's array element at the given index.\n */\n public withArrayElement(index: number): MsgpackRawStringProvider {\n return new MsgpackRawStringProvider({\n parent: this,\n segment: {\n kind: MsgpackObjectPathSegmentKind.ARRAY_ELEMENT,\n key: index,\n },\n })\n }\n\n /**\n * Get the raw string at the current location. If the current location is not a raw string, an error is thrown.\n */\n public getRawStringAtCurrentLocation(): Uint8Array {\n const resolved = this.resolve()\n if (resolved instanceof RawBinaryString) {\n // Decoded rawBinaryValue will always be a Uint8Array\n return resolved.rawBinaryValue as Uint8Array\n }\n throw new Error(`Invalid type. Expected RawBinaryString, got ${resolved} (${typeof resolved})`)\n }\n\n /**\n * Get the raw string map keys and values at the current location. If the current location is not a map, an error is thrown.\n */\n public getRawStringKeysAndValuesAtCurrentLocation(): Map<Uint8Array, MsgpackEncodingData> {\n const resolved = this.resolve()\n if (!(resolved instanceof Map)) {\n throw new Error(`Invalid type. Expected Map, got ${resolved} (${typeof resolved})`)\n }\n const keysAndValues = new Map<Uint8Array, MsgpackEncodingData>()\n for (const [key, value] of resolved) {\n if (key instanceof RawBinaryString) {\n // Decoded rawBinaryValue will always be a Uint8Array\n keysAndValues.set(key.rawBinaryValue as Uint8Array, value)\n } else {\n throw new Error(`Invalid type for map key. Expected RawBinaryString, got ${key} (${typeof key})`)\n }\n }\n return keysAndValues\n }\n\n /**\n * Resolve the provider by extracting the value it indicates from the base msgpack object.\n */\n private resolve(): MsgpackEncodingData {\n if (this.resolvedCachePresent) {\n return this.resolvedCache\n }\n let parentResolved: MsgpackEncodingData\n if (this.parent) {\n parentResolved = this.parent.resolve()\n } else {\n // Need to parse baseObjectBytes\n parentResolved = msgpackRawDecodeAsMapWithRawStrings(this.baseObjectBytes!) as MsgpackEncodingData\n }\n if (!this.segment) {\n this.resolvedCache = parentResolved\n this.resolvedCachePresent = true\n return parentResolved\n }\n if (this.segment.kind === MsgpackObjectPathSegmentKind.MAP_VALUE) {\n if (!(parentResolved instanceof Map)) {\n throw new Error(`Invalid type. Expected Map, got ${parentResolved} (${typeof parentResolved})`)\n }\n // All decoded map keys will be raw strings, and Map objects compare complex values by reference,\n // so we must check all the values for value-equality.\n if (typeof this.segment.key === 'string' || this.segment.key instanceof Uint8Array || this.segment.key instanceof RawBinaryString) {\n const targetBytes =\n this.segment.key instanceof RawBinaryString\n ? // Decoded rawBinaryValue will always be a Uint8Array\n (this.segment.key.rawBinaryValue as Uint8Array)\n : coerceToBytes(this.segment.key)\n const targetIsRawString = typeof this.segment.key === 'string' || this.segment.key instanceof RawBinaryString\n for (const [key, value] of parentResolved) {\n let potentialKeyBytes: Uint8Array | undefined\n if (targetIsRawString) {\n if (key instanceof RawBinaryString) {\n // Decoded rawBinaryValue will always be a Uint8Array\n potentialKeyBytes = key.rawBinaryValue as Uint8Array\n }\n } else if (key instanceof Uint8Array) {\n potentialKeyBytes = key\n }\n if (potentialKeyBytes && arrayEqual(targetBytes, potentialKeyBytes)) {\n this.resolvedCache = value\n break\n }\n }\n } else {\n this.resolvedCache = parentResolved.get(this.segment.key)\n }\n this.resolvedCachePresent = true\n return this.resolvedCache\n }\n if (this.segment.kind === MsgpackObjectPathSegmentKind.ARRAY_ELEMENT) {\n if (!Array.isArray(parentResolved)) {\n throw new Error(`Invalid type. Expected Array, got ${parentResolved} (${typeof parentResolved})`)\n }\n this.resolvedCache = parentResolved[this.segment.key as number]\n this.resolvedCachePresent = true\n return this.resolvedCache\n }\n throw new Error(`Invalid segment kind: ${this.segment.kind}`)\n }\n\n /**\n * Get the path string of the current location indicated by the provider. Useful for debugging.\n */\n public getPathString(): string {\n const parentPathString = this.parent ? this.parent.getPathString() : 'root'\n if (!this.segment) {\n return parentPathString\n }\n if (this.segment.kind === MsgpackObjectPathSegmentKind.MAP_VALUE) {\n return `${parentPathString} -> map key \"${this.segment.key}\" (${typeof this.segment.key})`\n }\n if (this.segment.kind === MsgpackObjectPathSegmentKind.ARRAY_ELEMENT) {\n return `${parentPathString} -> array index ${this.segment.key} (${typeof this.segment.key})`\n }\n return `${parentPathString} -> unknown segment kind ${this.segment.kind}`\n }\n}\n\n/**\n * Options for {@link Schema.prepareJSON}\n */\nexport interface PrepareJSONOptions {\n /**\n * If true, allows invalid UTF-8 binary strings to be converted to JSON strings.\n *\n * Otherwise, an error will be thrown if encoding a binary string to a JSON cannot be done losslessly.\n */\n lossyBinaryStringConversion?: boolean\n}\n\n/**\n * A Schema is used to prepare objects for encoding and decoding from msgpack and JSON.\n *\n * Schemas represent a specific type.\n */\nexport abstract class Schema {\n /**\n * Get the default value for this type.\n */\n public abstract defaultValue(): unknown\n\n /**\n * Checks if the value is the default value for this type.\n * @param data - The value to check\n * @returns True if the value is the default value, false otherwise\n */\n public abstract isDefaultValue(data: unknown): boolean\n\n /**\n * Prepares the encoding data for encoding to msgpack.\n * @param data - Encoding data to be prepared.\n * @returns A value ready to be msgpack encoded.\n */\n public abstract prepareMsgpack(data: unknown): MsgpackEncodingData\n\n /**\n * Restores the encoding data from a msgpack encoding object.\n * @param encoded - The msgpack encoding object to restore.\n * @param rawStringProvider - A provider for raw strings.\n * @returns The original encoding data.\n */\n public abstract fromPreparedMsgpack(encoded: MsgpackEncodingData, rawStringProvider: MsgpackRawStringProvider): unknown\n\n /**\n * Prepares the encoding data for encoding to JSON.\n * @param data - The JSON encoding data to be prepared.\n * @returns A value ready to be JSON encoded.\n */\n public abstract prepareJSON(data: unknown, options: PrepareJSONOptions): JSONEncodingData\n\n /**\n * Restores the encoding data from a JSON encoding object.\n * @param encoded - The JSON encoding object to restore.\n * @returns The original encoding data.\n */\n public abstract fromPreparedJSON(encoded: JSONEncodingData): unknown\n}\n\n/**\n * An interface for objects that can be encoded and decoded to/from msgpack and JSON.\n */\nexport interface Encodable {\n /**\n * Extract the encoding data for this object. This data, after being prepared by the encoding\n * Schema, can be encoded to msgpack or JSON.\n */\n toEncodingData(): unknown\n /**\n * Get the encoding Schema for this object, used to prepare the encoding data for msgpack and JSON.\n */\n getEncodingSchema(): Schema\n}\n\n/**\n * A type that represents the class of an Encodable object.\n */\nexport interface EncodableClass<T extends Encodable> {\n /**\n * Create a new instance of this class from the given encoding data.\n * @param data - The encoding data to create the object from\n */\n fromEncodingData(data: unknown): T\n /**\n * The encoding Schema for this class, used to prepare encoding data from msgpack and JSON.\n */\n readonly encodingSchema: Schema\n}\n\n/**\n * Decode a msgpack byte array to an Encodable object.\n * @param encoded - The msgpack bytes to decode\n * @param c - The class of the object to decode. This class must match the object that was encoded.\n * @returns An instance of the class with the decoded data\n */\nexport function decodeMsgpack<T extends Encodable>(encoded: ArrayLike<number>, c: EncodableClass<T>): T {\n const decoded = msgpackRawDecodeAsMap(encoded) as MsgpackEncodingData\n const rawStringProvider = new MsgpackRawStringProvider({\n baseObjectBytes: encoded,\n })\n return c.fromEncodingData(c.encodingSchema.fromPreparedMsgpack(decoded, rawStringProvider))\n}\n\n/**\n * Encode an Encodable object to a msgpack byte array.\n * @param e - The object to encode\n * @returns A msgpack byte array encoding of the object\n */\nexport function encodeMsgpack(e: Encodable): Uint8Array {\n return msgpackRawEncode(e.getEncodingSchema().prepareMsgpack(e.toEncodingData()))\n}\n\n/**\n * Decode a JSON string to an Encodable object.\n * @param encoded - The JSON string to decode\n * @param c - The class of the object to decode. This class must match the object that was encoded.\n * @returns An instance of the class with the decoded data\n */\nexport function decodeJSON<T extends Encodable>(encoded: string, c: EncodableClass<T>): T {\n const decoded: JSONEncodingData = parseJSON(encoded, {\n intDecoding: IntDecoding.BIGINT,\n })\n return c.fromEncodingData(c.encodingSchema.fromPreparedJSON(decoded) as JSONEncodingData)\n}\n\nexport interface EncodeJSONOptions {\n /**\n * Adds indentation, white space, and line break characters to the return-value JSON text to make\n * it easier to read.\n */\n space?: string | number\n\n /**\n * If true, allows invalid UTF-8 binary strings to be converted to JSON strings.\n *\n * Otherwise, an error will be thrown if encoding a binary string to a JSON cannot be done losslessly.\n */\n lossyBinaryStringConversion?: boolean\n}\n\n/**\n * Encode an Encodable object to a JSON string.\n * @param e - The object to encode\n * @param options - Optional encoding options. See {@link EncodeJSONOptions} for more information.\n * @returns A JSON string encoding of the object\n */\nexport function encodeJSON(e: Encodable, options?: EncodeJSONOptions): string {\n const { space, ...prepareJSONOptions } = options ?? {}\n const prepared = e.getEncodingSchema().prepareJSON(e.toEncodingData(), prepareJSONOptions)\n return stringifyJSON(prepared, undefined, space)\n}\n"],"mappings":"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"}
@@ -1,35 +0,0 @@
1
- const require_encoding = require('../encoding.js');
2
-
3
- //#region packages/sdk/src/encoding/schema/array.ts
4
- var ArraySchema = class extends require_encoding.Schema {
5
- constructor(itemSchema) {
6
- super();
7
- this.itemSchema = itemSchema;
8
- }
9
- defaultValue() {
10
- return [];
11
- }
12
- isDefaultValue(data) {
13
- return Array.isArray(data) && data.length === 0;
14
- }
15
- prepareMsgpack(data) {
16
- if (Array.isArray(data)) return data.map((item) => this.itemSchema.prepareMsgpack(item));
17
- throw new Error("ArraySchema data must be an array");
18
- }
19
- fromPreparedMsgpack(encoded, rawStringProvider) {
20
- if (Array.isArray(encoded)) return encoded.map((item, index) => this.itemSchema.fromPreparedMsgpack(item, rawStringProvider.withArrayElement(index)));
21
- throw new Error(`ArraySchema encoded data must be an array: ${encoded} (${typeof encoded})`);
22
- }
23
- prepareJSON(data, options) {
24
- if (Array.isArray(data)) return data.map((item) => this.itemSchema.prepareJSON(item, options));
25
- throw new Error("ArraySchema data must be an array");
26
- }
27
- fromPreparedJSON(encoded) {
28
- if (Array.isArray(encoded)) return encoded.map((item) => this.itemSchema.fromPreparedJSON(item));
29
- throw new Error(`ArraySchema encoded data must be an array: ${encoded} (${typeof encoded})`);
30
- }
31
- };
32
-
33
- //#endregion
34
- exports.ArraySchema = ArraySchema;
35
- //# sourceMappingURL=array.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"array.js","names":["Schema","itemSchema: Schema"],"sources":["../../../../../../packages/sdk/src/encoding/schema/array.ts"],"sourcesContent":["import { Schema, MsgpackEncodingData, MsgpackRawStringProvider, JSONEncodingData, PrepareJSONOptions } from '../encoding.js'\n\n/* eslint-disable class-methods-use-this */\n\nexport class ArraySchema extends Schema {\n constructor(public readonly itemSchema: Schema) {\n super()\n }\n\n public defaultValue(): unknown[] {\n return []\n }\n\n public isDefaultValue(data: unknown): boolean {\n return Array.isArray(data) && data.length === 0\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (Array.isArray(data)) {\n return data.map((item) => this.itemSchema.prepareMsgpack(item))\n }\n throw new Error('ArraySchema data must be an array')\n }\n\n public fromPreparedMsgpack(encoded: MsgpackEncodingData, rawStringProvider: MsgpackRawStringProvider): unknown[] {\n if (Array.isArray(encoded)) {\n return encoded.map((item, index) => this.itemSchema.fromPreparedMsgpack(item, rawStringProvider.withArrayElement(index)))\n }\n throw new Error(`ArraySchema encoded data must be an array: ${encoded} (${typeof encoded})`)\n }\n\n public prepareJSON(data: unknown, options: PrepareJSONOptions): JSONEncodingData {\n if (Array.isArray(data)) {\n return data.map((item) => this.itemSchema.prepareJSON(item, options))\n }\n throw new Error('ArraySchema data must be an array')\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): unknown[] {\n if (Array.isArray(encoded)) {\n return encoded.map((item) => this.itemSchema.fromPreparedJSON(item))\n }\n throw new Error(`ArraySchema encoded data must be an array: ${encoded} (${typeof encoded})`)\n }\n}\n"],"mappings":";;;AAIA,IAAa,cAAb,cAAiCA,wBAAO;CACtC,YAAY,AAAgBC,YAAoB;AAC9C,SAAO;EADmB;;CAI5B,AAAO,eAA0B;AAC/B,SAAO,EAAE;;CAGX,AAAO,eAAe,MAAwB;AAC5C,SAAO,MAAM,QAAQ,KAAK,IAAI,KAAK,WAAW;;CAGhD,AAAO,eAAe,MAAoC;AACxD,MAAI,MAAM,QAAQ,KAAK,CACrB,QAAO,KAAK,KAAK,SAAS,KAAK,WAAW,eAAe,KAAK,CAAC;AAEjE,QAAM,IAAI,MAAM,oCAAoC;;CAGtD,AAAO,oBAAoB,SAA8B,mBAAwD;AAC/G,MAAI,MAAM,QAAQ,QAAQ,CACxB,QAAO,QAAQ,KAAK,MAAM,UAAU,KAAK,WAAW,oBAAoB,MAAM,kBAAkB,iBAAiB,MAAM,CAAC,CAAC;AAE3H,QAAM,IAAI,MAAM,8CAA8C,QAAQ,IAAI,OAAO,QAAQ,GAAG;;CAG9F,AAAO,YAAY,MAAe,SAA+C;AAC/E,MAAI,MAAM,QAAQ,KAAK,CACrB,QAAO,KAAK,KAAK,SAAS,KAAK,WAAW,YAAY,MAAM,QAAQ,CAAC;AAEvE,QAAM,IAAI,MAAM,oCAAoC;;CAGtD,AAAO,iBAAiB,SAAsC;AAC5D,MAAI,MAAM,QAAQ,QAAQ,CACxB,QAAO,QAAQ,KAAK,SAAS,KAAK,WAAW,iBAAiB,KAAK,CAAC;AAEtE,QAAM,IAAI,MAAM,8CAA8C,QAAQ,IAAI,OAAO,QAAQ,GAAG"}
@@ -1,35 +0,0 @@
1
- import { Schema } from "../encoding.mjs";
2
-
3
- //#region packages/sdk/src/encoding/schema/array.ts
4
- var ArraySchema = class extends Schema {
5
- constructor(itemSchema) {
6
- super();
7
- this.itemSchema = itemSchema;
8
- }
9
- defaultValue() {
10
- return [];
11
- }
12
- isDefaultValue(data) {
13
- return Array.isArray(data) && data.length === 0;
14
- }
15
- prepareMsgpack(data) {
16
- if (Array.isArray(data)) return data.map((item) => this.itemSchema.prepareMsgpack(item));
17
- throw new Error("ArraySchema data must be an array");
18
- }
19
- fromPreparedMsgpack(encoded, rawStringProvider) {
20
- if (Array.isArray(encoded)) return encoded.map((item, index) => this.itemSchema.fromPreparedMsgpack(item, rawStringProvider.withArrayElement(index)));
21
- throw new Error(`ArraySchema encoded data must be an array: ${encoded} (${typeof encoded})`);
22
- }
23
- prepareJSON(data, options) {
24
- if (Array.isArray(data)) return data.map((item) => this.itemSchema.prepareJSON(item, options));
25
- throw new Error("ArraySchema data must be an array");
26
- }
27
- fromPreparedJSON(encoded) {
28
- if (Array.isArray(encoded)) return encoded.map((item) => this.itemSchema.fromPreparedJSON(item));
29
- throw new Error(`ArraySchema encoded data must be an array: ${encoded} (${typeof encoded})`);
30
- }
31
- };
32
-
33
- //#endregion
34
- export { ArraySchema };
35
- //# sourceMappingURL=array.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"array.mjs","names":["itemSchema: Schema"],"sources":["../../../../../../packages/sdk/src/encoding/schema/array.ts"],"sourcesContent":["import { Schema, MsgpackEncodingData, MsgpackRawStringProvider, JSONEncodingData, PrepareJSONOptions } from '../encoding.js'\n\n/* eslint-disable class-methods-use-this */\n\nexport class ArraySchema extends Schema {\n constructor(public readonly itemSchema: Schema) {\n super()\n }\n\n public defaultValue(): unknown[] {\n return []\n }\n\n public isDefaultValue(data: unknown): boolean {\n return Array.isArray(data) && data.length === 0\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (Array.isArray(data)) {\n return data.map((item) => this.itemSchema.prepareMsgpack(item))\n }\n throw new Error('ArraySchema data must be an array')\n }\n\n public fromPreparedMsgpack(encoded: MsgpackEncodingData, rawStringProvider: MsgpackRawStringProvider): unknown[] {\n if (Array.isArray(encoded)) {\n return encoded.map((item, index) => this.itemSchema.fromPreparedMsgpack(item, rawStringProvider.withArrayElement(index)))\n }\n throw new Error(`ArraySchema encoded data must be an array: ${encoded} (${typeof encoded})`)\n }\n\n public prepareJSON(data: unknown, options: PrepareJSONOptions): JSONEncodingData {\n if (Array.isArray(data)) {\n return data.map((item) => this.itemSchema.prepareJSON(item, options))\n }\n throw new Error('ArraySchema data must be an array')\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): unknown[] {\n if (Array.isArray(encoded)) {\n return encoded.map((item) => this.itemSchema.fromPreparedJSON(item))\n }\n throw new Error(`ArraySchema encoded data must be an array: ${encoded} (${typeof encoded})`)\n }\n}\n"],"mappings":";;;AAIA,IAAa,cAAb,cAAiC,OAAO;CACtC,YAAY,AAAgBA,YAAoB;AAC9C,SAAO;EADmB;;CAI5B,AAAO,eAA0B;AAC/B,SAAO,EAAE;;CAGX,AAAO,eAAe,MAAwB;AAC5C,SAAO,MAAM,QAAQ,KAAK,IAAI,KAAK,WAAW;;CAGhD,AAAO,eAAe,MAAoC;AACxD,MAAI,MAAM,QAAQ,KAAK,CACrB,QAAO,KAAK,KAAK,SAAS,KAAK,WAAW,eAAe,KAAK,CAAC;AAEjE,QAAM,IAAI,MAAM,oCAAoC;;CAGtD,AAAO,oBAAoB,SAA8B,mBAAwD;AAC/G,MAAI,MAAM,QAAQ,QAAQ,CACxB,QAAO,QAAQ,KAAK,MAAM,UAAU,KAAK,WAAW,oBAAoB,MAAM,kBAAkB,iBAAiB,MAAM,CAAC,CAAC;AAE3H,QAAM,IAAI,MAAM,8CAA8C,QAAQ,IAAI,OAAO,QAAQ,GAAG;;CAG9F,AAAO,YAAY,MAAe,SAA+C;AAC/E,MAAI,MAAM,QAAQ,KAAK,CACrB,QAAO,KAAK,KAAK,SAAS,KAAK,WAAW,YAAY,MAAM,QAAQ,CAAC;AAEvE,QAAM,IAAI,MAAM,oCAAoC;;CAGtD,AAAO,iBAAiB,SAAsC;AAC5D,MAAI,MAAM,QAAQ,QAAQ,CACxB,QAAO,QAAQ,KAAK,SAAS,KAAK,WAAW,iBAAiB,KAAK,CAAC;AAEtE,QAAM,IAAI,MAAM,8CAA8C,QAAQ,IAAI,OAAO,QAAQ,GAAG"}
@@ -1,49 +0,0 @@
1
- const require_binarydata = require('../binarydata.js');
2
- const require_encoding = require('../encoding.js');
3
-
4
- //#region packages/sdk/src/encoding/schema/bytearray.ts
5
- var FixedLengthByteArraySchema = class extends require_encoding.Schema {
6
- constructor(length) {
7
- super();
8
- this.length = length;
9
- }
10
- defaultValue() {
11
- return new Uint8Array(this.length);
12
- }
13
- isDefaultValue(data) {
14
- return data instanceof Uint8Array && data.byteLength === this.length && data.every((byte) => byte === 0);
15
- }
16
- prepareMsgpack(data) {
17
- if (data instanceof Uint8Array) {
18
- if (data.byteLength === this.length) return data;
19
- throw new Error(`Invalid byte array length: wanted ${this.length}, got ${data.byteLength}`);
20
- }
21
- throw new Error("Invalid byte array");
22
- }
23
- fromPreparedMsgpack(encoded, _rawStringProvider) {
24
- if (encoded instanceof Uint8Array) {
25
- if (encoded.byteLength === this.length) return encoded;
26
- throw new Error(`Invalid byte array length: wanted ${this.length}, got ${encoded.byteLength}`);
27
- }
28
- throw new Error("Invalid byte array");
29
- }
30
- prepareJSON(data) {
31
- if (data instanceof Uint8Array) {
32
- if (data.byteLength === this.length) return require_binarydata.bytesToBase64(data);
33
- throw new Error(`Invalid byte array length: wanted ${this.length}, got ${data.byteLength}`);
34
- }
35
- throw new Error("Invalid byte array");
36
- }
37
- fromPreparedJSON(encoded) {
38
- if (typeof encoded === "string") {
39
- const bytes = require_binarydata.base64ToBytes(encoded);
40
- if (bytes.byteLength === this.length) return bytes;
41
- throw new Error(`Invalid byte array length: wanted ${this.length}, got ${bytes.byteLength}`);
42
- }
43
- throw new Error("Invalid base64 byte array");
44
- }
45
- };
46
-
47
- //#endregion
48
- exports.FixedLengthByteArraySchema = FixedLengthByteArraySchema;
49
- //# sourceMappingURL=bytearray.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bytearray.js","names":["Schema","length: number","bytesToBase64","base64ToBytes"],"sources":["../../../../../../packages/sdk/src/encoding/schema/bytearray.ts"],"sourcesContent":["import { Schema, MsgpackEncodingData, MsgpackRawStringProvider, JSONEncodingData, PrepareJSONOptions } from '../encoding.js'\nimport { base64ToBytes, bytesToBase64 } from '../binarydata.js'\n\n/* eslint-disable class-methods-use-this */\n\nexport class ByteArraySchema extends Schema {\n public defaultValue(): Uint8Array {\n return new Uint8Array()\n }\n\n public isDefaultValue(data: unknown): boolean {\n return data instanceof Uint8Array && data.byteLength === 0\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (data instanceof Uint8Array) {\n return data\n }\n throw new Error(`Invalid byte array: (${typeof data}) ${data}`)\n }\n\n public fromPreparedMsgpack(\n encoded: MsgpackEncodingData,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _rawStringProvider: MsgpackRawStringProvider,\n ): Uint8Array {\n if (encoded instanceof Uint8Array) {\n return encoded\n }\n throw new Error(`Invalid byte array: (${typeof encoded}) ${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 if (data instanceof Uint8Array) {\n return bytesToBase64(data)\n }\n throw new Error(`Invalid byte array: (${typeof data}) ${data}`)\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): Uint8Array {\n if (encoded === null || encoded === undefined) {\n return this.defaultValue()\n }\n if (typeof encoded === 'string') {\n return base64ToBytes(encoded)\n }\n throw new Error(`Invalid byte array: (${typeof encoded}) ${encoded}`)\n }\n}\n\nexport class FixedLengthByteArraySchema extends Schema {\n constructor(public readonly length: number) {\n super()\n }\n\n public defaultValue(): Uint8Array {\n return new Uint8Array(this.length)\n }\n\n public isDefaultValue(data: unknown): boolean {\n return data instanceof Uint8Array && data.byteLength === this.length && data.every((byte) => byte === 0)\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (data instanceof Uint8Array) {\n if (data.byteLength === this.length) {\n return data\n }\n throw new Error(`Invalid byte array length: wanted ${this.length}, got ${data.byteLength}`)\n }\n throw new Error('Invalid byte array')\n }\n\n public fromPreparedMsgpack(\n encoded: MsgpackEncodingData,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _rawStringProvider: MsgpackRawStringProvider,\n ): Uint8Array {\n if (encoded instanceof Uint8Array) {\n if (encoded.byteLength === this.length) {\n return encoded\n }\n throw new Error(`Invalid byte array length: wanted ${this.length}, got ${encoded.byteLength}`)\n }\n throw new Error('Invalid byte array')\n }\n\n public prepareJSON(data: unknown): JSONEncodingData {\n if (data instanceof Uint8Array) {\n if (data.byteLength === this.length) {\n return bytesToBase64(data)\n }\n throw new Error(`Invalid byte array length: wanted ${this.length}, got ${data.byteLength}`)\n }\n throw new Error('Invalid byte array')\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): Uint8Array {\n if (typeof encoded === 'string') {\n const bytes = base64ToBytes(encoded)\n if (bytes.byteLength === this.length) {\n return bytes\n }\n throw new Error(`Invalid byte array length: wanted ${this.length}, got ${bytes.byteLength}`)\n }\n throw new Error('Invalid base64 byte array')\n }\n}\n"],"mappings":";;;;AAsDA,IAAa,6BAAb,cAAgDA,wBAAO;CACrD,YAAY,AAAgBC,QAAgB;AAC1C,SAAO;EADmB;;CAI5B,AAAO,eAA2B;AAChC,SAAO,IAAI,WAAW,KAAK,OAAO;;CAGpC,AAAO,eAAe,MAAwB;AAC5C,SAAO,gBAAgB,cAAc,KAAK,eAAe,KAAK,UAAU,KAAK,OAAO,SAAS,SAAS,EAAE;;CAG1G,AAAO,eAAe,MAAoC;AACxD,MAAI,gBAAgB,YAAY;AAC9B,OAAI,KAAK,eAAe,KAAK,OAC3B,QAAO;AAET,SAAM,IAAI,MAAM,qCAAqC,KAAK,OAAO,QAAQ,KAAK,aAAa;;AAE7F,QAAM,IAAI,MAAM,qBAAqB;;CAGvC,AAAO,oBACL,SAEA,oBACY;AACZ,MAAI,mBAAmB,YAAY;AACjC,OAAI,QAAQ,eAAe,KAAK,OAC9B,QAAO;AAET,SAAM,IAAI,MAAM,qCAAqC,KAAK,OAAO,QAAQ,QAAQ,aAAa;;AAEhG,QAAM,IAAI,MAAM,qBAAqB;;CAGvC,AAAO,YAAY,MAAiC;AAClD,MAAI,gBAAgB,YAAY;AAC9B,OAAI,KAAK,eAAe,KAAK,OAC3B,QAAOC,iCAAc,KAAK;AAE5B,SAAM,IAAI,MAAM,qCAAqC,KAAK,OAAO,QAAQ,KAAK,aAAa;;AAE7F,QAAM,IAAI,MAAM,qBAAqB;;CAGvC,AAAO,iBAAiB,SAAuC;AAC7D,MAAI,OAAO,YAAY,UAAU;GAC/B,MAAM,QAAQC,iCAAc,QAAQ;AACpC,OAAI,MAAM,eAAe,KAAK,OAC5B,QAAO;AAET,SAAM,IAAI,MAAM,qCAAqC,KAAK,OAAO,QAAQ,MAAM,aAAa;;AAE9F,QAAM,IAAI,MAAM,4BAA4B"}
@@ -1,49 +0,0 @@
1
- import { base64ToBytes, bytesToBase64 } from "../binarydata.mjs";
2
- import { Schema } from "../encoding.mjs";
3
-
4
- //#region packages/sdk/src/encoding/schema/bytearray.ts
5
- var FixedLengthByteArraySchema = class extends Schema {
6
- constructor(length) {
7
- super();
8
- this.length = length;
9
- }
10
- defaultValue() {
11
- return new Uint8Array(this.length);
12
- }
13
- isDefaultValue(data) {
14
- return data instanceof Uint8Array && data.byteLength === this.length && data.every((byte) => byte === 0);
15
- }
16
- prepareMsgpack(data) {
17
- if (data instanceof Uint8Array) {
18
- if (data.byteLength === this.length) return data;
19
- throw new Error(`Invalid byte array length: wanted ${this.length}, got ${data.byteLength}`);
20
- }
21
- throw new Error("Invalid byte array");
22
- }
23
- fromPreparedMsgpack(encoded, _rawStringProvider) {
24
- if (encoded instanceof Uint8Array) {
25
- if (encoded.byteLength === this.length) return encoded;
26
- throw new Error(`Invalid byte array length: wanted ${this.length}, got ${encoded.byteLength}`);
27
- }
28
- throw new Error("Invalid byte array");
29
- }
30
- prepareJSON(data) {
31
- if (data instanceof Uint8Array) {
32
- if (data.byteLength === this.length) return bytesToBase64(data);
33
- throw new Error(`Invalid byte array length: wanted ${this.length}, got ${data.byteLength}`);
34
- }
35
- throw new Error("Invalid byte array");
36
- }
37
- fromPreparedJSON(encoded) {
38
- if (typeof encoded === "string") {
39
- const bytes = base64ToBytes(encoded);
40
- if (bytes.byteLength === this.length) return bytes;
41
- throw new Error(`Invalid byte array length: wanted ${this.length}, got ${bytes.byteLength}`);
42
- }
43
- throw new Error("Invalid base64 byte array");
44
- }
45
- };
46
-
47
- //#endregion
48
- export { FixedLengthByteArraySchema };
49
- //# sourceMappingURL=bytearray.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bytearray.mjs","names":["length: number"],"sources":["../../../../../../packages/sdk/src/encoding/schema/bytearray.ts"],"sourcesContent":["import { Schema, MsgpackEncodingData, MsgpackRawStringProvider, JSONEncodingData, PrepareJSONOptions } from '../encoding.js'\nimport { base64ToBytes, bytesToBase64 } from '../binarydata.js'\n\n/* eslint-disable class-methods-use-this */\n\nexport class ByteArraySchema extends Schema {\n public defaultValue(): Uint8Array {\n return new Uint8Array()\n }\n\n public isDefaultValue(data: unknown): boolean {\n return data instanceof Uint8Array && data.byteLength === 0\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (data instanceof Uint8Array) {\n return data\n }\n throw new Error(`Invalid byte array: (${typeof data}) ${data}`)\n }\n\n public fromPreparedMsgpack(\n encoded: MsgpackEncodingData,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _rawStringProvider: MsgpackRawStringProvider,\n ): Uint8Array {\n if (encoded instanceof Uint8Array) {\n return encoded\n }\n throw new Error(`Invalid byte array: (${typeof encoded}) ${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 if (data instanceof Uint8Array) {\n return bytesToBase64(data)\n }\n throw new Error(`Invalid byte array: (${typeof data}) ${data}`)\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): Uint8Array {\n if (encoded === null || encoded === undefined) {\n return this.defaultValue()\n }\n if (typeof encoded === 'string') {\n return base64ToBytes(encoded)\n }\n throw new Error(`Invalid byte array: (${typeof encoded}) ${encoded}`)\n }\n}\n\nexport class FixedLengthByteArraySchema extends Schema {\n constructor(public readonly length: number) {\n super()\n }\n\n public defaultValue(): Uint8Array {\n return new Uint8Array(this.length)\n }\n\n public isDefaultValue(data: unknown): boolean {\n return data instanceof Uint8Array && data.byteLength === this.length && data.every((byte) => byte === 0)\n }\n\n public prepareMsgpack(data: unknown): MsgpackEncodingData {\n if (data instanceof Uint8Array) {\n if (data.byteLength === this.length) {\n return data\n }\n throw new Error(`Invalid byte array length: wanted ${this.length}, got ${data.byteLength}`)\n }\n throw new Error('Invalid byte array')\n }\n\n public fromPreparedMsgpack(\n encoded: MsgpackEncodingData,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _rawStringProvider: MsgpackRawStringProvider,\n ): Uint8Array {\n if (encoded instanceof Uint8Array) {\n if (encoded.byteLength === this.length) {\n return encoded\n }\n throw new Error(`Invalid byte array length: wanted ${this.length}, got ${encoded.byteLength}`)\n }\n throw new Error('Invalid byte array')\n }\n\n public prepareJSON(data: unknown): JSONEncodingData {\n if (data instanceof Uint8Array) {\n if (data.byteLength === this.length) {\n return bytesToBase64(data)\n }\n throw new Error(`Invalid byte array length: wanted ${this.length}, got ${data.byteLength}`)\n }\n throw new Error('Invalid byte array')\n }\n\n public fromPreparedJSON(encoded: JSONEncodingData): Uint8Array {\n if (typeof encoded === 'string') {\n const bytes = base64ToBytes(encoded)\n if (bytes.byteLength === this.length) {\n return bytes\n }\n throw new Error(`Invalid byte array length: wanted ${this.length}, got ${bytes.byteLength}`)\n }\n throw new Error('Invalid base64 byte array')\n }\n}\n"],"mappings":";;;;AAsDA,IAAa,6BAAb,cAAgD,OAAO;CACrD,YAAY,AAAgBA,QAAgB;AAC1C,SAAO;EADmB;;CAI5B,AAAO,eAA2B;AAChC,SAAO,IAAI,WAAW,KAAK,OAAO;;CAGpC,AAAO,eAAe,MAAwB;AAC5C,SAAO,gBAAgB,cAAc,KAAK,eAAe,KAAK,UAAU,KAAK,OAAO,SAAS,SAAS,EAAE;;CAG1G,AAAO,eAAe,MAAoC;AACxD,MAAI,gBAAgB,YAAY;AAC9B,OAAI,KAAK,eAAe,KAAK,OAC3B,QAAO;AAET,SAAM,IAAI,MAAM,qCAAqC,KAAK,OAAO,QAAQ,KAAK,aAAa;;AAE7F,QAAM,IAAI,MAAM,qBAAqB;;CAGvC,AAAO,oBACL,SAEA,oBACY;AACZ,MAAI,mBAAmB,YAAY;AACjC,OAAI,QAAQ,eAAe,KAAK,OAC9B,QAAO;AAET,SAAM,IAAI,MAAM,qCAAqC,KAAK,OAAO,QAAQ,QAAQ,aAAa;;AAEhG,QAAM,IAAI,MAAM,qBAAqB;;CAGvC,AAAO,YAAY,MAAiC;AAClD,MAAI,gBAAgB,YAAY;AAC9B,OAAI,KAAK,eAAe,KAAK,OAC3B,QAAO,cAAc,KAAK;AAE5B,SAAM,IAAI,MAAM,qCAAqC,KAAK,OAAO,QAAQ,KAAK,aAAa;;AAE7F,QAAM,IAAI,MAAM,qBAAqB;;CAGvC,AAAO,iBAAiB,SAAuC;AAC7D,MAAI,OAAO,YAAY,UAAU;GAC/B,MAAM,QAAQ,cAAc,QAAQ;AACpC,OAAI,MAAM,eAAe,KAAK,OAC5B,QAAO;AAET,SAAM,IAAI,MAAM,qCAAqC,KAAK,OAAO,QAAQ,MAAM,aAAa;;AAE9F,QAAM,IAAI,MAAM,4BAA4B"}
@@ -1,58 +0,0 @@
1
- import { JSONEncodingData, MsgpackEncodingData, MsgpackRawStringProvider, PrepareJSONOptions, Schema } from "../encoding.js";
2
-
3
- //#region packages/sdk/src/encoding/schema/map.d.ts
4
-
5
- /**
6
- * Describes a key-value entry in a NamedMapSchema.
7
- */
8
- interface NamedMapEntry {
9
- /**
10
- * Key of the entry. Must be unique for this map.
11
- */
12
- key: string;
13
- /**
14
- * The Schema for the entry's value.
15
- */
16
- valueSchema: Schema;
17
- /**
18
- * If true, the entry will be omitted from the encoding if the value is the default value.
19
- */
20
- omitEmpty: boolean;
21
- /**
22
- * If true, valueSchema must be a NamedMapSchema and key must be the empty string. The fields of
23
- * valueSchema will be embedded directly in the parent map.
24
- *
25
- * omitEmpty is ignored for embedded entries. Instead, the individual omitEmpty values of the
26
- * embedded fields are used.
27
- */
28
- embedded?: boolean;
29
- }
30
- /**
31
- * Schema for a map/struct with a fixed set of known string fields.
32
- */
33
- declare class NamedMapSchema extends Schema {
34
- private readonly entries;
35
- constructor(entries: NamedMapEntry[]);
36
- /**
37
- * Adds new entries to the map schema. WARNING: this is a mutable operation, and you should be very
38
- * careful when using it. Any error that happens here is non-recoverable and will corrupt the
39
- * NamedMapSchema object;
40
- * @param entries - The entries to add.
41
- */
42
- pushEntries(...entries: NamedMapEntry[]): void;
43
- private checkEntries;
44
- /**
45
- * Returns all top-level entries, properly accounting for fields from embedded entries.
46
- * @returns An array of all top-level entries for this map.
47
- */
48
- getEntries(): NamedMapEntry[];
49
- defaultValue(): Map<string, unknown>;
50
- isDefaultValue(data: unknown): boolean;
51
- prepareMsgpack(data: unknown): MsgpackEncodingData;
52
- fromPreparedMsgpack(encoded: MsgpackEncodingData, rawStringProvider: MsgpackRawStringProvider): Map<string, unknown>;
53
- prepareJSON(data: unknown, options: PrepareJSONOptions): JSONEncodingData;
54
- fromPreparedJSON(encoded: JSONEncodingData): Map<string, unknown>;
55
- }
56
- //#endregion
57
- export { NamedMapSchema };
58
- //# sourceMappingURL=map.d.ts.map