wowok 2.1.39 → 2.1.41

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 (1019) hide show
  1. package/dist/cjs/bcs/bcs.d.ts +0 -8
  2. package/dist/cjs/bcs/bcs.js +1 -278
  3. package/dist/cjs/bcs/effects.js +1 -203
  4. package/dist/cjs/bcs/index.js +1 -55
  5. package/dist/cjs/bcs/pure.js +1 -39
  6. package/dist/cjs/bcs/type-tag-serializer.js +1 -107
  7. package/dist/cjs/bcs/types.d.ts +0 -49
  8. package/dist/cjs/bcs/types.js +1 -6
  9. package/dist/cjs/client/index.js +1 -7
  10. package/dist/cjs/client/network.js +1 -24
  11. package/dist/cjs/cryptography/index.js +1 -9
  12. package/dist/cjs/cryptography/intent.d.ts +0 -3
  13. package/dist/cjs/cryptography/intent.js +1 -20
  14. package/dist/cjs/cryptography/keypair.d.ts +4 -38
  15. package/dist/cjs/cryptography/keypair.js +1 -104
  16. package/dist/cjs/cryptography/mnemonics.d.ts +0 -23
  17. package/dist/cjs/cryptography/mnemonics.js +1 -46
  18. package/dist/cjs/cryptography/publickey.d.ts +0 -42
  19. package/dist/cjs/cryptography/publickey.js +1 -114
  20. package/dist/cjs/cryptography/signature-scheme.js +1 -25
  21. package/dist/cjs/cryptography/signature.d.ts +0 -11
  22. package/dist/cjs/cryptography/signature.js +1 -50
  23. package/dist/cjs/experimental/cache.js +1 -61
  24. package/dist/cjs/experimental/client.js +1 -23
  25. package/dist/cjs/experimental/core.d.ts +0 -2
  26. package/dist/cjs/experimental/core.js +1 -85
  27. package/dist/cjs/experimental/errors.js +1 -27
  28. package/dist/cjs/experimental/index.js +1 -8
  29. package/dist/cjs/experimental/persistent-storage.d.ts +0 -98
  30. package/dist/cjs/experimental/persistent-storage.js +1 -337
  31. package/dist/cjs/experimental/persistent-storage.test.d.ts +0 -4
  32. package/dist/cjs/experimental/persistent-storage.test.js +1 -198
  33. package/dist/cjs/experimental/transports/utils.js +1 -100
  34. package/dist/cjs/experimental/types.d.ts +0 -6
  35. package/dist/cjs/experimental/types.js +1 -5
  36. package/dist/cjs/faucet/faucet.d.ts +0 -9
  37. package/dist/cjs/faucet/faucet.js +1 -111
  38. package/dist/cjs/faucet/index.js +1 -4
  39. package/dist/cjs/grpc/client.js +1 -45
  40. package/dist/cjs/grpc/core.js +1 -603
  41. package/dist/cjs/grpc/index.js +1 -5
  42. package/dist/cjs/grpc/proto/google/protobuf/any.d.ts +0 -151
  43. package/dist/cjs/grpc/proto/google/protobuf/any.js +1 -168
  44. package/dist/cjs/grpc/proto/google/protobuf/duration.d.ts +0 -89
  45. package/dist/cjs/grpc/proto/google/protobuf/duration.js +1 -106
  46. package/dist/cjs/grpc/proto/google/protobuf/empty.d.ts +0 -17
  47. package/dist/cjs/grpc/proto/google/protobuf/empty.js +1 -49
  48. package/dist/cjs/grpc/proto/google/protobuf/field_mask.d.ts +0 -217
  49. package/dist/cjs/grpc/proto/google/protobuf/field_mask.js +1 -95
  50. package/dist/cjs/grpc/proto/google/protobuf/struct.d.ts +0 -112
  51. package/dist/cjs/grpc/proto/google/protobuf/struct.js +1 -272
  52. package/dist/cjs/grpc/proto/google/protobuf/timestamp.d.ts +0 -127
  53. package/dist/cjs/grpc/proto/google/protobuf/timestamp.js +1 -150
  54. package/dist/cjs/grpc/proto/google/rpc/error_details.d.ts +0 -407
  55. package/dist/cjs/grpc/proto/google/rpc/error_details.js +1 -343
  56. package/dist/cjs/grpc/proto/google/rpc/status.d.ts +0 -34
  57. package/dist/cjs/grpc/proto/google/rpc/status.js +1 -49
  58. package/dist/cjs/grpc/proto/sui/rpc/v2/argument.d.ts +0 -48
  59. package/dist/cjs/grpc/proto/sui/rpc/v2/argument.js +1 -83
  60. package/dist/cjs/grpc/proto/sui/rpc/v2/balance_change.d.ts +0 -23
  61. package/dist/cjs/grpc/proto/sui/rpc/v2/balance_change.js +1 -44
  62. package/dist/cjs/grpc/proto/sui/rpc/v2/bcs.d.ts +0 -20
  63. package/dist/cjs/grpc/proto/sui/rpc/v2/bcs.js +1 -37
  64. package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint.d.ts +0 -48
  65. package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint.js +1 -69
  66. package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_contents.d.ts +0 -51
  67. package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_contents.js +1 -79
  68. package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_summary.d.ts +0 -149
  69. package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_summary.js +1 -184
  70. package/dist/cjs/grpc/proto/sui/rpc/v2/effects.d.ts +0 -257
  71. package/dist/cjs/grpc/proto/sui/rpc/v2/effects.js +1 -370
  72. package/dist/cjs/grpc/proto/sui/rpc/v2/epoch.d.ts +0 -41
  73. package/dist/cjs/grpc/proto/sui/rpc/v2/epoch.js +1 -79
  74. package/dist/cjs/grpc/proto/sui/rpc/v2/error_reason.d.ts +0 -12
  75. package/dist/cjs/grpc/proto/sui/rpc/v2/error_reason.js +1 -29
  76. package/dist/cjs/grpc/proto/sui/rpc/v2/event.d.ts +0 -63
  77. package/dist/cjs/grpc/proto/sui/rpc/v2/event.js +1 -81
  78. package/dist/cjs/grpc/proto/sui/rpc/v2/executed_transaction.d.ts +0 -56
  79. package/dist/cjs/grpc/proto/sui/rpc/v2/executed_transaction.js +1 -79
  80. package/dist/cjs/grpc/proto/sui/rpc/v2/execution_status.d.ts +0 -623
  81. package/dist/cjs/grpc/proto/sui/rpc/v2/execution_status.js +1 -886
  82. package/dist/cjs/grpc/proto/sui/rpc/v2/gas_cost_summary.d.ts +0 -29
  83. package/dist/cjs/grpc/proto/sui/rpc/v2/gas_cost_summary.js +1 -55
  84. package/dist/cjs/grpc/proto/sui/rpc/v2/input.d.ts +0 -75
  85. package/dist/cjs/grpc/proto/sui/rpc/v2/input.js +1 -102
  86. package/dist/cjs/grpc/proto/sui/rpc/v2/jwk.d.ts +0 -50
  87. package/dist/cjs/grpc/proto/sui/rpc/v2/jwk.js +1 -76
  88. package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.client.d.ts +0 -52
  89. package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.client.js +1 -68
  90. package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.d.ts +0 -260
  91. package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.js +1 -407
  92. package/dist/cjs/grpc/proto/sui/rpc/v2/move_package.d.ts +0 -429
  93. package/dist/cjs/grpc/proto/sui/rpc/v2/move_package.js +1 -608
  94. package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.client.d.ts +0 -30
  95. package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.client.js +1 -45
  96. package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.d.ts +0 -151
  97. package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.js +1 -256
  98. package/dist/cjs/grpc/proto/sui/rpc/v2/name_service.client.d.ts +0 -18
  99. package/dist/cjs/grpc/proto/sui/rpc/v2/name_service.client.js +1 -31
  100. package/dist/cjs/grpc/proto/sui/rpc/v2/name_service.d.ts +0 -97
  101. package/dist/cjs/grpc/proto/sui/rpc/v2/name_service.js +1 -143
  102. package/dist/cjs/grpc/proto/sui/rpc/v2/object.d.ts +0 -95
  103. package/dist/cjs/grpc/proto/sui/rpc/v2/object.js +1 -109
  104. package/dist/cjs/grpc/proto/sui/rpc/v2/object_reference.d.ts +0 -23
  105. package/dist/cjs/grpc/proto/sui/rpc/v2/object_reference.js +1 -45
  106. package/dist/cjs/grpc/proto/sui/rpc/v2/owner.d.ts +0 -42
  107. package/dist/cjs/grpc/proto/sui/rpc/v2/owner.js +1 -75
  108. package/dist/cjs/grpc/proto/sui/rpc/v2/protocol_config.d.ts +0 -15
  109. package/dist/cjs/grpc/proto/sui/rpc/v2/protocol_config.js +1 -45
  110. package/dist/cjs/grpc/proto/sui/rpc/v2/signature.d.ts +0 -447
  111. package/dist/cjs/grpc/proto/sui/rpc/v2/signature.js +1 -584
  112. package/dist/cjs/grpc/proto/sui/rpc/v2/signature_scheme.d.ts +0 -31
  113. package/dist/cjs/grpc/proto/sui/rpc/v2/signature_scheme.js +1 -52
  114. package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.client.d.ts +0 -16
  115. package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.client.js +1 -26
  116. package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.d.ts +0 -54
  117. package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.js +1 -84
  118. package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.client.d.ts +0 -36
  119. package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.client.js +1 -52
  120. package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.d.ts +0 -518
  121. package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.js +1 -659
  122. package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.client.d.ts +0 -36
  123. package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.client.js +1 -36
  124. package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.d.ts +0 -36
  125. package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.js +1 -59
  126. package/dist/cjs/grpc/proto/sui/rpc/v2/system_state.d.ts +0 -538
  127. package/dist/cjs/grpc/proto/sui/rpc/v2/system_state.js +1 -756
  128. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction.d.ts +0 -945
  129. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction.js +1 -1245
  130. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.client.d.ts +0 -18
  131. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.client.js +1 -31
  132. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.d.ts +0 -118
  133. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.js +1 -193
  134. package/dist/cjs/index.js +1 -33
  135. package/dist/cjs/jsonRpc/client.d.ts +0 -140
  136. package/dist/cjs/jsonRpc/client.js +1 -653
  137. package/dist/cjs/jsonRpc/core.js +1 -590
  138. package/dist/cjs/jsonRpc/errors.js +1 -41
  139. package/dist/cjs/jsonRpc/http-transport.d.ts +0 -3
  140. package/dist/cjs/jsonRpc/http-transport.js +1 -73
  141. package/dist/cjs/jsonRpc/index.js +1 -6
  142. package/dist/cjs/jsonRpc/json-rpc-resolver.js +1 -314
  143. package/dist/cjs/jsonRpc/rpc-websocket-client.d.ts +0 -15
  144. package/dist/cjs/jsonRpc/rpc-websocket-client.js +1 -159
  145. package/dist/cjs/jsonRpc/types/chain.js +1 -4
  146. package/dist/cjs/jsonRpc/types/changes.js +1 -4
  147. package/dist/cjs/jsonRpc/types/coins.js +1 -4
  148. package/dist/cjs/jsonRpc/types/common.js +1 -4
  149. package/dist/cjs/jsonRpc/types/generated.d.ts +56 -542
  150. package/dist/cjs/jsonRpc/types/generated.js +1 -4
  151. package/dist/cjs/jsonRpc/types/index.js +1 -4
  152. package/dist/cjs/jsonRpc/types/params.d.ts +0 -336
  153. package/dist/cjs/jsonRpc/types/params.js +1 -4
  154. package/dist/cjs/keypairs/ed25519/ed25519-hd-key.js +1 -63
  155. package/dist/cjs/keypairs/ed25519/index.js +1 -5
  156. package/dist/cjs/keypairs/ed25519/keypair.d.ts +0 -52
  157. package/dist/cjs/keypairs/ed25519/keypair.js +1 -140
  158. package/dist/cjs/keypairs/ed25519/publickey.d.ts +0 -19
  159. package/dist/cjs/keypairs/ed25519/publickey.js +1 -72
  160. package/dist/cjs/keypairs/index.js +1 -7
  161. package/dist/cjs/keypairs/passkey/index.js +1 -5
  162. package/dist/cjs/keypairs/passkey/keypair.d.ts +0 -80
  163. package/dist/cjs/keypairs/passkey/keypair.js +1 -251
  164. package/dist/cjs/keypairs/passkey/publickey.d.ts +0 -47
  165. package/dist/cjs/keypairs/passkey/publickey.js +1 -170
  166. package/dist/cjs/keypairs/passkey/types.d.ts +0 -6
  167. package/dist/cjs/keypairs/passkey/types.js +1 -4
  168. package/dist/cjs/keypairs/secp256k1/index.js +1 -5
  169. package/dist/cjs/keypairs/secp256k1/keypair.d.ts +0 -51
  170. package/dist/cjs/keypairs/secp256k1/keypair.js +1 -133
  171. package/dist/cjs/keypairs/secp256k1/publickey.d.ts +0 -19
  172. package/dist/cjs/keypairs/secp256k1/publickey.js +1 -73
  173. package/dist/cjs/keypairs/secp256r1/index.js +1 -5
  174. package/dist/cjs/keypairs/secp256r1/keypair.d.ts +0 -51
  175. package/dist/cjs/keypairs/secp256r1/keypair.js +1 -130
  176. package/dist/cjs/keypairs/secp256r1/publickey.d.ts +0 -19
  177. package/dist/cjs/keypairs/secp256r1/publickey.js +1 -74
  178. package/dist/cjs/multisig/index.js +1 -5
  179. package/dist/cjs/multisig/publickey.d.ts +1 -36
  180. package/dist/cjs/multisig/publickey.js +1 -243
  181. package/dist/cjs/multisig/signer.d.ts +0 -1
  182. package/dist/cjs/multisig/signer.js +1 -62
  183. package/dist/cjs/transactions/Arguments.js +1 -12
  184. package/dist/cjs/transactions/Commands.d.ts +0 -3
  185. package/dist/cjs/transactions/Commands.js +1 -110
  186. package/dist/cjs/transactions/Inputs.js +1 -55
  187. package/dist/cjs/transactions/ObjectCache.js +1 -208
  188. package/dist/cjs/transactions/Transaction.d.ts +0 -56
  189. package/dist/cjs/transactions/Transaction.js +1 -646
  190. package/dist/cjs/transactions/TransactionData.d.ts +0 -6
  191. package/dist/cjs/transactions/TransactionData.js +1 -424
  192. package/dist/cjs/transactions/__tests__/Transaction.test.js +1 -167
  193. package/dist/cjs/transactions/__tests__/bcs.test.js +1 -200
  194. package/dist/cjs/transactions/data/internal.js +1 -185
  195. package/dist/cjs/transactions/data/v1.js +1 -474
  196. package/dist/cjs/transactions/data/v2.js +1 -108
  197. package/dist/cjs/transactions/executor/caching.d.ts +0 -4
  198. package/dist/cjs/transactions/executor/caching.js +1 -72
  199. package/dist/cjs/transactions/executor/parallel.d.ts +0 -11
  200. package/dist/cjs/transactions/executor/parallel.js +1 -352
  201. package/dist/cjs/transactions/executor/queue.js +1 -62
  202. package/dist/cjs/transactions/executor/serial.d.ts +0 -1
  203. package/dist/cjs/transactions/executor/serial.js +1 -102
  204. package/dist/cjs/transactions/hash.d.ts +0 -6
  205. package/dist/cjs/transactions/hash.js +1 -17
  206. package/dist/cjs/transactions/index.d.ts +0 -1
  207. package/dist/cjs/transactions/index.js +1 -15
  208. package/dist/cjs/transactions/intents/CoinWithBalance.js +1 -148
  209. package/dist/cjs/transactions/object.js +1 -90
  210. package/dist/cjs/transactions/plugins/NamedPackagesPlugin.d.ts +0 -18
  211. package/dist/cjs/transactions/plugins/NamedPackagesPlugin.js +1 -20
  212. package/dist/cjs/transactions/pure.js +1 -39
  213. package/dist/cjs/transactions/resolve.js +1 -72
  214. package/dist/cjs/transactions/serializer.js +1 -170
  215. package/dist/cjs/transactions/utils.js +1 -124
  216. package/dist/cjs/utils/constants.js +1 -27
  217. package/dist/cjs/utils/derived-objects.d.ts +0 -3
  218. package/dist/cjs/utils/derived-objects.js +1 -14
  219. package/dist/cjs/utils/dynamic-fields.js +1 -20
  220. package/dist/cjs/utils/format.js +1 -15
  221. package/dist/cjs/utils/index.js +1 -15
  222. package/dist/cjs/utils/move-registry.d.ts +0 -4
  223. package/dist/cjs/utils/move-registry.js +1 -41
  224. package/dist/cjs/utils/sui-types.d.ts +0 -12
  225. package/dist/cjs/utils/sui-types.js +1 -86
  226. package/dist/cjs/utils/suins.js +1 -36
  227. package/dist/cjs/verify/index.js +1 -5
  228. package/dist/cjs/verify/verify.js +1 -91
  229. package/dist/cjs/version.js +1 -6
  230. package/dist/cjs/w/call/allocation.js +1 -369
  231. package/dist/cjs/w/call/arb.js +1 -109
  232. package/dist/cjs/w/call/arbitration.js +1 -1223
  233. package/dist/cjs/w/call/base.js +1 -324
  234. package/dist/cjs/w/call/contact.js +1 -350
  235. package/dist/cjs/w/call/demand.js +1 -702
  236. package/dist/cjs/w/call/entity.js +1 -180
  237. package/dist/cjs/w/call/guard-ins.d.ts +0 -3
  238. package/dist/cjs/w/call/guard-ins.js +1 -4387
  239. package/dist/cjs/w/call/guard.d.ts +111 -27
  240. package/dist/cjs/w/call/guard.js +1 -1154
  241. package/dist/cjs/w/call/index.js +1 -27
  242. package/dist/cjs/w/call/machine.js +1 -1146
  243. package/dist/cjs/w/call/order.js +1 -348
  244. package/dist/cjs/w/call/passport.js +1 -234
  245. package/dist/cjs/w/call/payment.js +1 -192
  246. package/dist/cjs/w/call/permission.d.ts +0 -20
  247. package/dist/cjs/w/call/permission.js +1 -1227
  248. package/dist/cjs/w/call/personal.js +1 -142
  249. package/dist/cjs/w/call/progress.js +1 -691
  250. package/dist/cjs/w/call/proof.js +1 -69
  251. package/dist/cjs/w/call/repository.js +1 -1097
  252. package/dist/cjs/w/call/resource.js +1 -119
  253. package/dist/cjs/w/call/reward.js +1 -688
  254. package/dist/cjs/w/call/service.js +1 -1991
  255. package/dist/cjs/w/call/treasury.js +1 -877
  256. package/dist/cjs/w/call/util.d.ts +1 -0
  257. package/dist/cjs/w/call/util.js +1 -624
  258. package/dist/cjs/w/common.d.ts +48 -68
  259. package/dist/cjs/w/common.js +1 -604
  260. package/dist/cjs/w/exception.d.ts +1 -0
  261. package/dist/cjs/w/exception.js +1 -582
  262. package/dist/cjs/w/index.js +1 -12
  263. package/dist/cjs/w/local/account.d.ts +0 -45
  264. package/dist/cjs/w/local/account.js +1 -746
  265. package/dist/cjs/w/local/cache.js +1 -191
  266. package/dist/cjs/w/local/config.d.ts +0 -3
  267. package/dist/cjs/w/local/config.js +1 -50
  268. package/dist/cjs/w/local/index.js +1 -233
  269. package/dist/cjs/w/local/local.js +1 -664
  270. package/dist/cjs/w/local/storage.d.ts +0 -20
  271. package/dist/cjs/w/local/storage.js +1 -222
  272. package/dist/cjs/w/local/token.d.ts +1 -4
  273. package/dist/cjs/w/local/token.js +1 -161
  274. package/dist/cjs/w/local/util.d.ts +0 -4
  275. package/dist/cjs/w/local/util.js +1 -50
  276. package/dist/cjs/w/local/wip.d.ts +0 -92
  277. package/dist/cjs/w/local/wip.js +1 -1202
  278. package/dist/cjs/w/messenger/crypto.d.ts +0 -186
  279. package/dist/cjs/w/messenger/crypto.js +1 -574
  280. package/dist/cjs/w/messenger/index.d.ts +0 -18
  281. package/dist/cjs/w/messenger/index.js +1 -28
  282. package/dist/cjs/w/messenger/messenger-api.d.ts +0 -177
  283. package/dist/cjs/w/messenger/messenger-api.js +1 -1503
  284. package/dist/cjs/w/messenger/messenger-manager.d.ts +0 -24
  285. package/dist/cjs/w/messenger/messenger-manager.js +1 -1065
  286. package/dist/cjs/w/messenger/messenger.d.ts +0 -206
  287. package/dist/cjs/w/messenger/messenger.js +1 -1439
  288. package/dist/cjs/w/messenger/server.d.ts +0 -94
  289. package/dist/cjs/w/messenger/server.js +1 -460
  290. package/dist/cjs/w/messenger/session.d.ts +0 -76
  291. package/dist/cjs/w/messenger/session.js +1 -768
  292. package/dist/cjs/w/messenger/storage.d.ts +0 -143
  293. package/dist/cjs/w/messenger/storage.js +1 -1256
  294. package/dist/cjs/w/messenger/templates/wts-html-template.d.ts +0 -31
  295. package/dist/cjs/w/messenger/templates/wts-html-template.js +1 -414
  296. package/dist/cjs/w/messenger/types.d.ts +7 -218
  297. package/dist/cjs/w/messenger/types.js +1 -98
  298. package/dist/cjs/w/messenger/utils.d.ts +0 -14
  299. package/dist/cjs/w/messenger/utils.js +1 -29
  300. package/dist/cjs/w/query/bult-in.d.ts +0 -11
  301. package/dist/cjs/w/query/bult-in.js +1 -107
  302. package/dist/cjs/w/query/event.d.ts +0 -7
  303. package/dist/cjs/w/query/event.js +1 -140
  304. package/dist/cjs/w/query/index.js +1 -8
  305. package/dist/cjs/w/query/object.d.ts +7 -51
  306. package/dist/cjs/w/query/object.js +1 -1636
  307. package/dist/cjs/w/query/received.d.ts +0 -6
  308. package/dist/cjs/w/query/received.js +1 -67
  309. package/dist/cjs/w/query/util.d.ts +1 -2
  310. package/dist/cjs/w/query/util.js +1 -54
  311. package/dist/cjs/w/util.d.ts +2 -5
  312. package/dist/cjs/w/util.js +1 -616
  313. package/dist/esm/bcs/bcs.d.ts +0 -8
  314. package/dist/esm/bcs/bcs.js +1 -278
  315. package/dist/esm/bcs/effects.js +1 -203
  316. package/dist/esm/bcs/index.js +1 -55
  317. package/dist/esm/bcs/pure.js +1 -39
  318. package/dist/esm/bcs/type-tag-serializer.js +1 -107
  319. package/dist/esm/bcs/types.d.ts +0 -49
  320. package/dist/esm/bcs/types.js +1 -6
  321. package/dist/esm/client/index.js +1 -7
  322. package/dist/esm/client/network.js +1 -24
  323. package/dist/esm/cryptography/index.js +1 -9
  324. package/dist/esm/cryptography/intent.d.ts +0 -3
  325. package/dist/esm/cryptography/intent.js +1 -20
  326. package/dist/esm/cryptography/keypair.d.ts +4 -38
  327. package/dist/esm/cryptography/keypair.js +1 -104
  328. package/dist/esm/cryptography/mnemonics.d.ts +0 -23
  329. package/dist/esm/cryptography/mnemonics.js +1 -46
  330. package/dist/esm/cryptography/publickey.d.ts +0 -42
  331. package/dist/esm/cryptography/publickey.js +1 -114
  332. package/dist/esm/cryptography/signature-scheme.js +1 -25
  333. package/dist/esm/cryptography/signature.d.ts +0 -11
  334. package/dist/esm/cryptography/signature.js +1 -50
  335. package/dist/esm/experimental/cache.js +1 -61
  336. package/dist/esm/experimental/client.js +1 -23
  337. package/dist/esm/experimental/core.d.ts +0 -2
  338. package/dist/esm/experimental/core.js +1 -85
  339. package/dist/esm/experimental/errors.js +1 -27
  340. package/dist/esm/experimental/index.js +1 -8
  341. package/dist/esm/experimental/persistent-storage.d.ts +0 -98
  342. package/dist/esm/experimental/persistent-storage.js +1 -337
  343. package/dist/esm/experimental/persistent-storage.test.d.ts +0 -4
  344. package/dist/esm/experimental/persistent-storage.test.js +1 -198
  345. package/dist/esm/experimental/transports/utils.js +1 -100
  346. package/dist/esm/experimental/types.d.ts +0 -6
  347. package/dist/esm/experimental/types.js +1 -5
  348. package/dist/esm/faucet/faucet.d.ts +0 -9
  349. package/dist/esm/faucet/faucet.js +1 -111
  350. package/dist/esm/faucet/index.js +1 -4
  351. package/dist/esm/grpc/client.js +1 -45
  352. package/dist/esm/grpc/core.js +1 -603
  353. package/dist/esm/grpc/index.js +1 -5
  354. package/dist/esm/grpc/proto/google/protobuf/any.d.ts +0 -151
  355. package/dist/esm/grpc/proto/google/protobuf/any.js +1 -168
  356. package/dist/esm/grpc/proto/google/protobuf/duration.d.ts +0 -89
  357. package/dist/esm/grpc/proto/google/protobuf/duration.js +1 -106
  358. package/dist/esm/grpc/proto/google/protobuf/empty.d.ts +0 -17
  359. package/dist/esm/grpc/proto/google/protobuf/empty.js +1 -49
  360. package/dist/esm/grpc/proto/google/protobuf/field_mask.d.ts +0 -217
  361. package/dist/esm/grpc/proto/google/protobuf/field_mask.js +1 -95
  362. package/dist/esm/grpc/proto/google/protobuf/struct.d.ts +0 -112
  363. package/dist/esm/grpc/proto/google/protobuf/struct.js +1 -272
  364. package/dist/esm/grpc/proto/google/protobuf/timestamp.d.ts +0 -127
  365. package/dist/esm/grpc/proto/google/protobuf/timestamp.js +1 -150
  366. package/dist/esm/grpc/proto/google/rpc/error_details.d.ts +0 -407
  367. package/dist/esm/grpc/proto/google/rpc/error_details.js +1 -343
  368. package/dist/esm/grpc/proto/google/rpc/status.d.ts +0 -34
  369. package/dist/esm/grpc/proto/google/rpc/status.js +1 -49
  370. package/dist/esm/grpc/proto/sui/rpc/v2/argument.d.ts +0 -48
  371. package/dist/esm/grpc/proto/sui/rpc/v2/argument.js +1 -83
  372. package/dist/esm/grpc/proto/sui/rpc/v2/balance_change.d.ts +0 -23
  373. package/dist/esm/grpc/proto/sui/rpc/v2/balance_change.js +1 -44
  374. package/dist/esm/grpc/proto/sui/rpc/v2/bcs.d.ts +0 -20
  375. package/dist/esm/grpc/proto/sui/rpc/v2/bcs.js +1 -37
  376. package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint.d.ts +0 -48
  377. package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint.js +1 -69
  378. package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_contents.d.ts +0 -51
  379. package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_contents.js +1 -79
  380. package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_summary.d.ts +0 -149
  381. package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_summary.js +1 -184
  382. package/dist/esm/grpc/proto/sui/rpc/v2/effects.d.ts +0 -257
  383. package/dist/esm/grpc/proto/sui/rpc/v2/effects.js +1 -370
  384. package/dist/esm/grpc/proto/sui/rpc/v2/epoch.d.ts +0 -41
  385. package/dist/esm/grpc/proto/sui/rpc/v2/epoch.js +1 -79
  386. package/dist/esm/grpc/proto/sui/rpc/v2/error_reason.d.ts +0 -12
  387. package/dist/esm/grpc/proto/sui/rpc/v2/error_reason.js +1 -29
  388. package/dist/esm/grpc/proto/sui/rpc/v2/event.d.ts +0 -63
  389. package/dist/esm/grpc/proto/sui/rpc/v2/event.js +1 -81
  390. package/dist/esm/grpc/proto/sui/rpc/v2/executed_transaction.d.ts +0 -56
  391. package/dist/esm/grpc/proto/sui/rpc/v2/executed_transaction.js +1 -79
  392. package/dist/esm/grpc/proto/sui/rpc/v2/execution_status.d.ts +0 -623
  393. package/dist/esm/grpc/proto/sui/rpc/v2/execution_status.js +1 -886
  394. package/dist/esm/grpc/proto/sui/rpc/v2/gas_cost_summary.d.ts +0 -29
  395. package/dist/esm/grpc/proto/sui/rpc/v2/gas_cost_summary.js +1 -55
  396. package/dist/esm/grpc/proto/sui/rpc/v2/input.d.ts +0 -75
  397. package/dist/esm/grpc/proto/sui/rpc/v2/input.js +1 -102
  398. package/dist/esm/grpc/proto/sui/rpc/v2/jwk.d.ts +0 -50
  399. package/dist/esm/grpc/proto/sui/rpc/v2/jwk.js +1 -76
  400. package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.client.d.ts +0 -52
  401. package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.client.js +1 -68
  402. package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.d.ts +0 -260
  403. package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.js +1 -407
  404. package/dist/esm/grpc/proto/sui/rpc/v2/move_package.d.ts +0 -429
  405. package/dist/esm/grpc/proto/sui/rpc/v2/move_package.js +1 -608
  406. package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.client.d.ts +0 -30
  407. package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.client.js +1 -45
  408. package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.d.ts +0 -151
  409. package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.js +1 -256
  410. package/dist/esm/grpc/proto/sui/rpc/v2/name_service.client.d.ts +0 -18
  411. package/dist/esm/grpc/proto/sui/rpc/v2/name_service.client.js +1 -31
  412. package/dist/esm/grpc/proto/sui/rpc/v2/name_service.d.ts +0 -97
  413. package/dist/esm/grpc/proto/sui/rpc/v2/name_service.js +1 -143
  414. package/dist/esm/grpc/proto/sui/rpc/v2/object.d.ts +0 -95
  415. package/dist/esm/grpc/proto/sui/rpc/v2/object.js +1 -109
  416. package/dist/esm/grpc/proto/sui/rpc/v2/object_reference.d.ts +0 -23
  417. package/dist/esm/grpc/proto/sui/rpc/v2/object_reference.js +1 -45
  418. package/dist/esm/grpc/proto/sui/rpc/v2/owner.d.ts +0 -42
  419. package/dist/esm/grpc/proto/sui/rpc/v2/owner.js +1 -75
  420. package/dist/esm/grpc/proto/sui/rpc/v2/protocol_config.d.ts +0 -15
  421. package/dist/esm/grpc/proto/sui/rpc/v2/protocol_config.js +1 -45
  422. package/dist/esm/grpc/proto/sui/rpc/v2/signature.d.ts +0 -447
  423. package/dist/esm/grpc/proto/sui/rpc/v2/signature.js +1 -584
  424. package/dist/esm/grpc/proto/sui/rpc/v2/signature_scheme.d.ts +0 -31
  425. package/dist/esm/grpc/proto/sui/rpc/v2/signature_scheme.js +1 -52
  426. package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.client.d.ts +0 -16
  427. package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.client.js +1 -26
  428. package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.d.ts +0 -54
  429. package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.js +1 -84
  430. package/dist/esm/grpc/proto/sui/rpc/v2/state_service.client.d.ts +0 -36
  431. package/dist/esm/grpc/proto/sui/rpc/v2/state_service.client.js +1 -52
  432. package/dist/esm/grpc/proto/sui/rpc/v2/state_service.d.ts +0 -518
  433. package/dist/esm/grpc/proto/sui/rpc/v2/state_service.js +1 -659
  434. package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.client.d.ts +0 -36
  435. package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.client.js +1 -36
  436. package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.d.ts +0 -36
  437. package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.js +1 -59
  438. package/dist/esm/grpc/proto/sui/rpc/v2/system_state.d.ts +0 -538
  439. package/dist/esm/grpc/proto/sui/rpc/v2/system_state.js +1 -756
  440. package/dist/esm/grpc/proto/sui/rpc/v2/transaction.d.ts +0 -945
  441. package/dist/esm/grpc/proto/sui/rpc/v2/transaction.js +1 -1245
  442. package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.client.d.ts +0 -18
  443. package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.client.js +1 -31
  444. package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.d.ts +0 -118
  445. package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.js +1 -193
  446. package/dist/esm/index.js +1 -33
  447. package/dist/esm/jsonRpc/client.d.ts +0 -140
  448. package/dist/esm/jsonRpc/client.js +1 -653
  449. package/dist/esm/jsonRpc/core.js +1 -590
  450. package/dist/esm/jsonRpc/errors.js +1 -41
  451. package/dist/esm/jsonRpc/http-transport.d.ts +0 -3
  452. package/dist/esm/jsonRpc/http-transport.js +1 -73
  453. package/dist/esm/jsonRpc/index.js +1 -6
  454. package/dist/esm/jsonRpc/json-rpc-resolver.js +1 -314
  455. package/dist/esm/jsonRpc/rpc-websocket-client.d.ts +0 -15
  456. package/dist/esm/jsonRpc/rpc-websocket-client.js +1 -159
  457. package/dist/esm/jsonRpc/types/chain.js +1 -4
  458. package/dist/esm/jsonRpc/types/changes.js +1 -4
  459. package/dist/esm/jsonRpc/types/coins.js +1 -4
  460. package/dist/esm/jsonRpc/types/common.js +1 -4
  461. package/dist/esm/jsonRpc/types/generated.d.ts +56 -542
  462. package/dist/esm/jsonRpc/types/generated.js +1 -4
  463. package/dist/esm/jsonRpc/types/index.js +1 -4
  464. package/dist/esm/jsonRpc/types/params.d.ts +0 -336
  465. package/dist/esm/jsonRpc/types/params.js +1 -4
  466. package/dist/esm/keypairs/ed25519/ed25519-hd-key.js +1 -63
  467. package/dist/esm/keypairs/ed25519/index.js +1 -5
  468. package/dist/esm/keypairs/ed25519/keypair.d.ts +0 -52
  469. package/dist/esm/keypairs/ed25519/keypair.js +1 -140
  470. package/dist/esm/keypairs/ed25519/publickey.d.ts +0 -19
  471. package/dist/esm/keypairs/ed25519/publickey.js +1 -72
  472. package/dist/esm/keypairs/index.js +1 -7
  473. package/dist/esm/keypairs/passkey/index.js +1 -5
  474. package/dist/esm/keypairs/passkey/keypair.d.ts +0 -80
  475. package/dist/esm/keypairs/passkey/keypair.js +1 -251
  476. package/dist/esm/keypairs/passkey/publickey.d.ts +0 -47
  477. package/dist/esm/keypairs/passkey/publickey.js +1 -170
  478. package/dist/esm/keypairs/passkey/types.d.ts +0 -6
  479. package/dist/esm/keypairs/passkey/types.js +1 -4
  480. package/dist/esm/keypairs/secp256k1/index.js +1 -5
  481. package/dist/esm/keypairs/secp256k1/keypair.d.ts +0 -51
  482. package/dist/esm/keypairs/secp256k1/keypair.js +1 -133
  483. package/dist/esm/keypairs/secp256k1/publickey.d.ts +0 -19
  484. package/dist/esm/keypairs/secp256k1/publickey.js +1 -73
  485. package/dist/esm/keypairs/secp256r1/index.js +1 -5
  486. package/dist/esm/keypairs/secp256r1/keypair.d.ts +0 -51
  487. package/dist/esm/keypairs/secp256r1/keypair.js +1 -130
  488. package/dist/esm/keypairs/secp256r1/publickey.d.ts +0 -19
  489. package/dist/esm/keypairs/secp256r1/publickey.js +1 -74
  490. package/dist/esm/multisig/index.js +1 -5
  491. package/dist/esm/multisig/publickey.d.ts +1 -36
  492. package/dist/esm/multisig/publickey.js +1 -243
  493. package/dist/esm/multisig/signer.d.ts +0 -1
  494. package/dist/esm/multisig/signer.js +1 -62
  495. package/dist/esm/transactions/Arguments.js +1 -12
  496. package/dist/esm/transactions/Commands.d.ts +0 -3
  497. package/dist/esm/transactions/Commands.js +1 -110
  498. package/dist/esm/transactions/Inputs.js +1 -55
  499. package/dist/esm/transactions/ObjectCache.js +1 -208
  500. package/dist/esm/transactions/Transaction.d.ts +0 -56
  501. package/dist/esm/transactions/Transaction.js +1 -646
  502. package/dist/esm/transactions/TransactionData.d.ts +0 -6
  503. package/dist/esm/transactions/TransactionData.js +1 -424
  504. package/dist/esm/transactions/__tests__/Transaction.test.js +1 -167
  505. package/dist/esm/transactions/__tests__/bcs.test.js +1 -200
  506. package/dist/esm/transactions/data/internal.js +1 -185
  507. package/dist/esm/transactions/data/v1.js +1 -474
  508. package/dist/esm/transactions/data/v2.js +1 -108
  509. package/dist/esm/transactions/executor/caching.d.ts +0 -4
  510. package/dist/esm/transactions/executor/caching.js +1 -72
  511. package/dist/esm/transactions/executor/parallel.d.ts +0 -11
  512. package/dist/esm/transactions/executor/parallel.js +1 -352
  513. package/dist/esm/transactions/executor/queue.js +1 -62
  514. package/dist/esm/transactions/executor/serial.d.ts +0 -1
  515. package/dist/esm/transactions/executor/serial.js +1 -102
  516. package/dist/esm/transactions/hash.d.ts +0 -6
  517. package/dist/esm/transactions/hash.js +1 -17
  518. package/dist/esm/transactions/index.d.ts +0 -1
  519. package/dist/esm/transactions/index.js +1 -15
  520. package/dist/esm/transactions/intents/CoinWithBalance.js +1 -148
  521. package/dist/esm/transactions/object.js +1 -90
  522. package/dist/esm/transactions/plugins/NamedPackagesPlugin.d.ts +0 -18
  523. package/dist/esm/transactions/plugins/NamedPackagesPlugin.js +1 -20
  524. package/dist/esm/transactions/pure.js +1 -39
  525. package/dist/esm/transactions/resolve.js +1 -72
  526. package/dist/esm/transactions/serializer.js +1 -170
  527. package/dist/esm/transactions/utils.js +1 -124
  528. package/dist/esm/utils/constants.js +1 -27
  529. package/dist/esm/utils/derived-objects.d.ts +0 -3
  530. package/dist/esm/utils/derived-objects.js +1 -14
  531. package/dist/esm/utils/dynamic-fields.js +1 -20
  532. package/dist/esm/utils/format.js +1 -15
  533. package/dist/esm/utils/index.js +1 -15
  534. package/dist/esm/utils/move-registry.d.ts +0 -4
  535. package/dist/esm/utils/move-registry.js +1 -41
  536. package/dist/esm/utils/sui-types.d.ts +0 -12
  537. package/dist/esm/utils/sui-types.js +1 -86
  538. package/dist/esm/utils/suins.js +1 -36
  539. package/dist/esm/verify/index.js +1 -5
  540. package/dist/esm/verify/verify.js +1 -91
  541. package/dist/esm/version.js +1 -6
  542. package/dist/esm/w/call/allocation.js +1 -369
  543. package/dist/esm/w/call/arb.js +1 -109
  544. package/dist/esm/w/call/arbitration.js +1 -1223
  545. package/dist/esm/w/call/base.js +1 -324
  546. package/dist/esm/w/call/contact.js +1 -350
  547. package/dist/esm/w/call/demand.js +1 -702
  548. package/dist/esm/w/call/entity.js +1 -180
  549. package/dist/esm/w/call/guard-ins.d.ts +0 -3
  550. package/dist/esm/w/call/guard-ins.js +1 -4387
  551. package/dist/esm/w/call/guard.d.ts +111 -27
  552. package/dist/esm/w/call/guard.js +1 -1154
  553. package/dist/esm/w/call/index.js +1 -27
  554. package/dist/esm/w/call/machine.js +1 -1146
  555. package/dist/esm/w/call/order.js +1 -348
  556. package/dist/esm/w/call/passport.js +1 -234
  557. package/dist/esm/w/call/payment.js +1 -192
  558. package/dist/esm/w/call/permission.d.ts +0 -20
  559. package/dist/esm/w/call/permission.js +1 -1227
  560. package/dist/esm/w/call/personal.js +1 -142
  561. package/dist/esm/w/call/progress.js +1 -691
  562. package/dist/esm/w/call/proof.js +1 -69
  563. package/dist/esm/w/call/repository.js +1 -1097
  564. package/dist/esm/w/call/resource.js +1 -119
  565. package/dist/esm/w/call/reward.js +1 -688
  566. package/dist/esm/w/call/service.js +1 -1991
  567. package/dist/esm/w/call/treasury.js +1 -877
  568. package/dist/esm/w/call/util.d.ts +1 -0
  569. package/dist/esm/w/call/util.js +1 -624
  570. package/dist/esm/w/common.d.ts +48 -68
  571. package/dist/esm/w/common.js +1 -604
  572. package/dist/esm/w/exception.d.ts +1 -0
  573. package/dist/esm/w/exception.js +1 -582
  574. package/dist/esm/w/index.js +1 -12
  575. package/dist/esm/w/local/account.d.ts +0 -45
  576. package/dist/esm/w/local/account.js +1 -746
  577. package/dist/esm/w/local/cache.js +1 -191
  578. package/dist/esm/w/local/config.d.ts +0 -3
  579. package/dist/esm/w/local/config.js +1 -50
  580. package/dist/esm/w/local/index.js +1 -233
  581. package/dist/esm/w/local/local.js +1 -664
  582. package/dist/esm/w/local/storage.d.ts +0 -20
  583. package/dist/esm/w/local/storage.js +1 -222
  584. package/dist/esm/w/local/token.d.ts +1 -4
  585. package/dist/esm/w/local/token.js +1 -161
  586. package/dist/esm/w/local/util.d.ts +0 -4
  587. package/dist/esm/w/local/util.js +1 -50
  588. package/dist/esm/w/local/wip.d.ts +0 -92
  589. package/dist/esm/w/local/wip.js +1 -1202
  590. package/dist/esm/w/messenger/crypto.d.ts +0 -186
  591. package/dist/esm/w/messenger/crypto.js +1 -574
  592. package/dist/esm/w/messenger/index.d.ts +0 -18
  593. package/dist/esm/w/messenger/index.js +1 -28
  594. package/dist/esm/w/messenger/messenger-api.d.ts +0 -177
  595. package/dist/esm/w/messenger/messenger-api.js +1 -1503
  596. package/dist/esm/w/messenger/messenger-manager.d.ts +0 -24
  597. package/dist/esm/w/messenger/messenger-manager.js +1 -1065
  598. package/dist/esm/w/messenger/messenger.d.ts +0 -206
  599. package/dist/esm/w/messenger/messenger.js +1 -1439
  600. package/dist/esm/w/messenger/server.d.ts +0 -94
  601. package/dist/esm/w/messenger/server.js +1 -460
  602. package/dist/esm/w/messenger/session.d.ts +0 -76
  603. package/dist/esm/w/messenger/session.js +1 -768
  604. package/dist/esm/w/messenger/storage.d.ts +0 -143
  605. package/dist/esm/w/messenger/storage.js +1 -1256
  606. package/dist/esm/w/messenger/templates/wts-html-template.d.ts +0 -31
  607. package/dist/esm/w/messenger/templates/wts-html-template.js +1 -414
  608. package/dist/esm/w/messenger/types.d.ts +7 -218
  609. package/dist/esm/w/messenger/types.js +1 -98
  610. package/dist/esm/w/messenger/utils.d.ts +0 -14
  611. package/dist/esm/w/messenger/utils.js +1 -29
  612. package/dist/esm/w/query/bult-in.d.ts +0 -11
  613. package/dist/esm/w/query/bult-in.js +1 -107
  614. package/dist/esm/w/query/event.d.ts +0 -7
  615. package/dist/esm/w/query/event.js +1 -140
  616. package/dist/esm/w/query/index.js +1 -8
  617. package/dist/esm/w/query/object.d.ts +7 -51
  618. package/dist/esm/w/query/object.js +1 -1636
  619. package/dist/esm/w/query/received.d.ts +0 -6
  620. package/dist/esm/w/query/received.js +1 -67
  621. package/dist/esm/w/query/util.d.ts +1 -2
  622. package/dist/esm/w/query/util.js +1 -54
  623. package/dist/esm/w/util.d.ts +2 -5
  624. package/dist/esm/w/util.js +1 -616
  625. package/package.json +5 -2
  626. package/dist/cjs/bcs/bcs.js.map +0 -1
  627. package/dist/cjs/bcs/effects.js.map +0 -1
  628. package/dist/cjs/bcs/index.js.map +0 -1
  629. package/dist/cjs/bcs/pure.js.map +0 -1
  630. package/dist/cjs/bcs/type-tag-serializer.js.map +0 -1
  631. package/dist/cjs/bcs/types.js.map +0 -1
  632. package/dist/cjs/client/index.js.map +0 -1
  633. package/dist/cjs/client/network.js.map +0 -1
  634. package/dist/cjs/cryptography/index.js.map +0 -1
  635. package/dist/cjs/cryptography/intent.js.map +0 -1
  636. package/dist/cjs/cryptography/keypair.js.map +0 -1
  637. package/dist/cjs/cryptography/mnemonics.js.map +0 -1
  638. package/dist/cjs/cryptography/publickey.js.map +0 -1
  639. package/dist/cjs/cryptography/signature-scheme.js.map +0 -1
  640. package/dist/cjs/cryptography/signature.js.map +0 -1
  641. package/dist/cjs/experimental/cache.js.map +0 -1
  642. package/dist/cjs/experimental/client.js.map +0 -1
  643. package/dist/cjs/experimental/core.js.map +0 -1
  644. package/dist/cjs/experimental/errors.js.map +0 -1
  645. package/dist/cjs/experimental/index.js.map +0 -1
  646. package/dist/cjs/experimental/persistent-storage.js.map +0 -1
  647. package/dist/cjs/experimental/persistent-storage.test.js.map +0 -1
  648. package/dist/cjs/experimental/transports/utils.js.map +0 -1
  649. package/dist/cjs/experimental/types.js.map +0 -1
  650. package/dist/cjs/faucet/faucet.js.map +0 -1
  651. package/dist/cjs/faucet/index.js.map +0 -1
  652. package/dist/cjs/grpc/client.js.map +0 -1
  653. package/dist/cjs/grpc/core.js.map +0 -1
  654. package/dist/cjs/grpc/index.js.map +0 -1
  655. package/dist/cjs/grpc/proto/google/protobuf/any.js.map +0 -1
  656. package/dist/cjs/grpc/proto/google/protobuf/duration.js.map +0 -1
  657. package/dist/cjs/grpc/proto/google/protobuf/empty.js.map +0 -1
  658. package/dist/cjs/grpc/proto/google/protobuf/field_mask.js.map +0 -1
  659. package/dist/cjs/grpc/proto/google/protobuf/struct.js.map +0 -1
  660. package/dist/cjs/grpc/proto/google/protobuf/timestamp.js.map +0 -1
  661. package/dist/cjs/grpc/proto/google/rpc/error_details.js.map +0 -1
  662. package/dist/cjs/grpc/proto/google/rpc/status.js.map +0 -1
  663. package/dist/cjs/grpc/proto/sui/rpc/v2/argument.js.map +0 -1
  664. package/dist/cjs/grpc/proto/sui/rpc/v2/balance_change.js.map +0 -1
  665. package/dist/cjs/grpc/proto/sui/rpc/v2/bcs.js.map +0 -1
  666. package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint.js.map +0 -1
  667. package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_contents.js.map +0 -1
  668. package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_summary.js.map +0 -1
  669. package/dist/cjs/grpc/proto/sui/rpc/v2/effects.js.map +0 -1
  670. package/dist/cjs/grpc/proto/sui/rpc/v2/epoch.js.map +0 -1
  671. package/dist/cjs/grpc/proto/sui/rpc/v2/error_reason.js.map +0 -1
  672. package/dist/cjs/grpc/proto/sui/rpc/v2/event.js.map +0 -1
  673. package/dist/cjs/grpc/proto/sui/rpc/v2/executed_transaction.js.map +0 -1
  674. package/dist/cjs/grpc/proto/sui/rpc/v2/execution_status.js.map +0 -1
  675. package/dist/cjs/grpc/proto/sui/rpc/v2/gas_cost_summary.js.map +0 -1
  676. package/dist/cjs/grpc/proto/sui/rpc/v2/input.js.map +0 -1
  677. package/dist/cjs/grpc/proto/sui/rpc/v2/jwk.js.map +0 -1
  678. package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.client.js.map +0 -1
  679. package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.js.map +0 -1
  680. package/dist/cjs/grpc/proto/sui/rpc/v2/move_package.js.map +0 -1
  681. package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.client.js.map +0 -1
  682. package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.js.map +0 -1
  683. package/dist/cjs/grpc/proto/sui/rpc/v2/name_service.client.js.map +0 -1
  684. package/dist/cjs/grpc/proto/sui/rpc/v2/name_service.js.map +0 -1
  685. package/dist/cjs/grpc/proto/sui/rpc/v2/object.js.map +0 -1
  686. package/dist/cjs/grpc/proto/sui/rpc/v2/object_reference.js.map +0 -1
  687. package/dist/cjs/grpc/proto/sui/rpc/v2/owner.js.map +0 -1
  688. package/dist/cjs/grpc/proto/sui/rpc/v2/protocol_config.js.map +0 -1
  689. package/dist/cjs/grpc/proto/sui/rpc/v2/signature.js.map +0 -1
  690. package/dist/cjs/grpc/proto/sui/rpc/v2/signature_scheme.js.map +0 -1
  691. package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.client.js.map +0 -1
  692. package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.js.map +0 -1
  693. package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.client.js.map +0 -1
  694. package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.js.map +0 -1
  695. package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.client.js.map +0 -1
  696. package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.js.map +0 -1
  697. package/dist/cjs/grpc/proto/sui/rpc/v2/system_state.js.map +0 -1
  698. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction.js.map +0 -1
  699. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.client.js.map +0 -1
  700. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.js.map +0 -1
  701. package/dist/cjs/index.js.map +0 -1
  702. package/dist/cjs/jsonRpc/client.js.map +0 -1
  703. package/dist/cjs/jsonRpc/core.js.map +0 -1
  704. package/dist/cjs/jsonRpc/errors.js.map +0 -1
  705. package/dist/cjs/jsonRpc/http-transport.js.map +0 -1
  706. package/dist/cjs/jsonRpc/index.js.map +0 -1
  707. package/dist/cjs/jsonRpc/json-rpc-resolver.js.map +0 -1
  708. package/dist/cjs/jsonRpc/rpc-websocket-client.js.map +0 -1
  709. package/dist/cjs/jsonRpc/types/chain.js.map +0 -1
  710. package/dist/cjs/jsonRpc/types/changes.js.map +0 -1
  711. package/dist/cjs/jsonRpc/types/coins.js.map +0 -1
  712. package/dist/cjs/jsonRpc/types/common.js.map +0 -1
  713. package/dist/cjs/jsonRpc/types/generated.js.map +0 -1
  714. package/dist/cjs/jsonRpc/types/index.js.map +0 -1
  715. package/dist/cjs/jsonRpc/types/params.js.map +0 -1
  716. package/dist/cjs/keypairs/ed25519/ed25519-hd-key.js.map +0 -1
  717. package/dist/cjs/keypairs/ed25519/index.js.map +0 -1
  718. package/dist/cjs/keypairs/ed25519/keypair.js.map +0 -1
  719. package/dist/cjs/keypairs/ed25519/publickey.js.map +0 -1
  720. package/dist/cjs/keypairs/index.js.map +0 -1
  721. package/dist/cjs/keypairs/passkey/index.js.map +0 -1
  722. package/dist/cjs/keypairs/passkey/keypair.js.map +0 -1
  723. package/dist/cjs/keypairs/passkey/publickey.js.map +0 -1
  724. package/dist/cjs/keypairs/passkey/types.js.map +0 -1
  725. package/dist/cjs/keypairs/secp256k1/index.js.map +0 -1
  726. package/dist/cjs/keypairs/secp256k1/keypair.js.map +0 -1
  727. package/dist/cjs/keypairs/secp256k1/publickey.js.map +0 -1
  728. package/dist/cjs/keypairs/secp256r1/index.js.map +0 -1
  729. package/dist/cjs/keypairs/secp256r1/keypair.js.map +0 -1
  730. package/dist/cjs/keypairs/secp256r1/publickey.js.map +0 -1
  731. package/dist/cjs/multisig/index.js.map +0 -1
  732. package/dist/cjs/multisig/publickey.js.map +0 -1
  733. package/dist/cjs/multisig/signer.js.map +0 -1
  734. package/dist/cjs/transactions/Arguments.js.map +0 -1
  735. package/dist/cjs/transactions/Commands.js.map +0 -1
  736. package/dist/cjs/transactions/Inputs.js.map +0 -1
  737. package/dist/cjs/transactions/ObjectCache.js.map +0 -1
  738. package/dist/cjs/transactions/Transaction.js.map +0 -1
  739. package/dist/cjs/transactions/TransactionData.js.map +0 -1
  740. package/dist/cjs/transactions/__tests__/Transaction.test.js.map +0 -1
  741. package/dist/cjs/transactions/__tests__/bcs.test.js.map +0 -1
  742. package/dist/cjs/transactions/data/internal.js.map +0 -1
  743. package/dist/cjs/transactions/data/v1.js.map +0 -1
  744. package/dist/cjs/transactions/data/v2.js.map +0 -1
  745. package/dist/cjs/transactions/executor/caching.js.map +0 -1
  746. package/dist/cjs/transactions/executor/parallel.js.map +0 -1
  747. package/dist/cjs/transactions/executor/queue.js.map +0 -1
  748. package/dist/cjs/transactions/executor/serial.js.map +0 -1
  749. package/dist/cjs/transactions/hash.js.map +0 -1
  750. package/dist/cjs/transactions/index.js.map +0 -1
  751. package/dist/cjs/transactions/intents/CoinWithBalance.js.map +0 -1
  752. package/dist/cjs/transactions/object.js.map +0 -1
  753. package/dist/cjs/transactions/plugins/NamedPackagesPlugin.js.map +0 -1
  754. package/dist/cjs/transactions/pure.js.map +0 -1
  755. package/dist/cjs/transactions/resolve.js.map +0 -1
  756. package/dist/cjs/transactions/serializer.js.map +0 -1
  757. package/dist/cjs/transactions/utils.js.map +0 -1
  758. package/dist/cjs/utils/constants.js.map +0 -1
  759. package/dist/cjs/utils/derived-objects.js.map +0 -1
  760. package/dist/cjs/utils/dynamic-fields.js.map +0 -1
  761. package/dist/cjs/utils/format.js.map +0 -1
  762. package/dist/cjs/utils/index.js.map +0 -1
  763. package/dist/cjs/utils/move-registry.js.map +0 -1
  764. package/dist/cjs/utils/sui-types.js.map +0 -1
  765. package/dist/cjs/utils/suins.js.map +0 -1
  766. package/dist/cjs/verify/index.js.map +0 -1
  767. package/dist/cjs/verify/verify.js.map +0 -1
  768. package/dist/cjs/version.js.map +0 -1
  769. package/dist/cjs/w/call/allocation.js.map +0 -1
  770. package/dist/cjs/w/call/arb.js.map +0 -1
  771. package/dist/cjs/w/call/arbitration.js.map +0 -1
  772. package/dist/cjs/w/call/base.js.map +0 -1
  773. package/dist/cjs/w/call/contact.js.map +0 -1
  774. package/dist/cjs/w/call/demand.js.map +0 -1
  775. package/dist/cjs/w/call/entity.js.map +0 -1
  776. package/dist/cjs/w/call/guard-ins.js.map +0 -1
  777. package/dist/cjs/w/call/guard.js.map +0 -1
  778. package/dist/cjs/w/call/index.js.map +0 -1
  779. package/dist/cjs/w/call/machine.js.map +0 -1
  780. package/dist/cjs/w/call/order.js.map +0 -1
  781. package/dist/cjs/w/call/passport.js.map +0 -1
  782. package/dist/cjs/w/call/payment.js.map +0 -1
  783. package/dist/cjs/w/call/permission.js.map +0 -1
  784. package/dist/cjs/w/call/personal.js.map +0 -1
  785. package/dist/cjs/w/call/progress.js.map +0 -1
  786. package/dist/cjs/w/call/proof.js.map +0 -1
  787. package/dist/cjs/w/call/repository.js.map +0 -1
  788. package/dist/cjs/w/call/resource.js.map +0 -1
  789. package/dist/cjs/w/call/reward.js.map +0 -1
  790. package/dist/cjs/w/call/service.js.map +0 -1
  791. package/dist/cjs/w/call/treasury.js.map +0 -1
  792. package/dist/cjs/w/call/util.js.map +0 -1
  793. package/dist/cjs/w/common.js.map +0 -1
  794. package/dist/cjs/w/exception.js.map +0 -1
  795. package/dist/cjs/w/index.js.map +0 -1
  796. package/dist/cjs/w/local/account.js.map +0 -1
  797. package/dist/cjs/w/local/cache.js.map +0 -1
  798. package/dist/cjs/w/local/config.js.map +0 -1
  799. package/dist/cjs/w/local/index.js.map +0 -1
  800. package/dist/cjs/w/local/local.js.map +0 -1
  801. package/dist/cjs/w/local/storage.js.map +0 -1
  802. package/dist/cjs/w/local/token.js.map +0 -1
  803. package/dist/cjs/w/local/util.js.map +0 -1
  804. package/dist/cjs/w/local/wip.js.map +0 -1
  805. package/dist/cjs/w/messenger/crypto.js.map +0 -1
  806. package/dist/cjs/w/messenger/index.js.map +0 -1
  807. package/dist/cjs/w/messenger/messenger-api.js.map +0 -1
  808. package/dist/cjs/w/messenger/messenger-manager.js.map +0 -1
  809. package/dist/cjs/w/messenger/messenger.js.map +0 -1
  810. package/dist/cjs/w/messenger/server.js.map +0 -1
  811. package/dist/cjs/w/messenger/session.js.map +0 -1
  812. package/dist/cjs/w/messenger/storage.js.map +0 -1
  813. package/dist/cjs/w/messenger/templates/wts-html-template.js.map +0 -1
  814. package/dist/cjs/w/messenger/types.js.map +0 -1
  815. package/dist/cjs/w/messenger/utils.js.map +0 -1
  816. package/dist/cjs/w/query/bult-in.js.map +0 -1
  817. package/dist/cjs/w/query/event.js.map +0 -1
  818. package/dist/cjs/w/query/index.js.map +0 -1
  819. package/dist/cjs/w/query/object.js.map +0 -1
  820. package/dist/cjs/w/query/received.js.map +0 -1
  821. package/dist/cjs/w/query/util.js.map +0 -1
  822. package/dist/cjs/w/util.js.map +0 -1
  823. package/dist/esm/bcs/bcs.js.map +0 -1
  824. package/dist/esm/bcs/effects.js.map +0 -1
  825. package/dist/esm/bcs/index.js.map +0 -1
  826. package/dist/esm/bcs/pure.js.map +0 -1
  827. package/dist/esm/bcs/type-tag-serializer.js.map +0 -1
  828. package/dist/esm/bcs/types.js.map +0 -1
  829. package/dist/esm/client/index.js.map +0 -1
  830. package/dist/esm/client/network.js.map +0 -1
  831. package/dist/esm/cryptography/index.js.map +0 -1
  832. package/dist/esm/cryptography/intent.js.map +0 -1
  833. package/dist/esm/cryptography/keypair.js.map +0 -1
  834. package/dist/esm/cryptography/mnemonics.js.map +0 -1
  835. package/dist/esm/cryptography/publickey.js.map +0 -1
  836. package/dist/esm/cryptography/signature-scheme.js.map +0 -1
  837. package/dist/esm/cryptography/signature.js.map +0 -1
  838. package/dist/esm/experimental/cache.js.map +0 -1
  839. package/dist/esm/experimental/client.js.map +0 -1
  840. package/dist/esm/experimental/core.js.map +0 -1
  841. package/dist/esm/experimental/errors.js.map +0 -1
  842. package/dist/esm/experimental/index.js.map +0 -1
  843. package/dist/esm/experimental/persistent-storage.js.map +0 -1
  844. package/dist/esm/experimental/persistent-storage.test.js.map +0 -1
  845. package/dist/esm/experimental/transports/utils.js.map +0 -1
  846. package/dist/esm/experimental/types.js.map +0 -1
  847. package/dist/esm/faucet/faucet.js.map +0 -1
  848. package/dist/esm/faucet/index.js.map +0 -1
  849. package/dist/esm/grpc/client.js.map +0 -1
  850. package/dist/esm/grpc/core.js.map +0 -1
  851. package/dist/esm/grpc/index.js.map +0 -1
  852. package/dist/esm/grpc/proto/google/protobuf/any.js.map +0 -1
  853. package/dist/esm/grpc/proto/google/protobuf/duration.js.map +0 -1
  854. package/dist/esm/grpc/proto/google/protobuf/empty.js.map +0 -1
  855. package/dist/esm/grpc/proto/google/protobuf/field_mask.js.map +0 -1
  856. package/dist/esm/grpc/proto/google/protobuf/struct.js.map +0 -1
  857. package/dist/esm/grpc/proto/google/protobuf/timestamp.js.map +0 -1
  858. package/dist/esm/grpc/proto/google/rpc/error_details.js.map +0 -1
  859. package/dist/esm/grpc/proto/google/rpc/status.js.map +0 -1
  860. package/dist/esm/grpc/proto/sui/rpc/v2/argument.js.map +0 -1
  861. package/dist/esm/grpc/proto/sui/rpc/v2/balance_change.js.map +0 -1
  862. package/dist/esm/grpc/proto/sui/rpc/v2/bcs.js.map +0 -1
  863. package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint.js.map +0 -1
  864. package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_contents.js.map +0 -1
  865. package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_summary.js.map +0 -1
  866. package/dist/esm/grpc/proto/sui/rpc/v2/effects.js.map +0 -1
  867. package/dist/esm/grpc/proto/sui/rpc/v2/epoch.js.map +0 -1
  868. package/dist/esm/grpc/proto/sui/rpc/v2/error_reason.js.map +0 -1
  869. package/dist/esm/grpc/proto/sui/rpc/v2/event.js.map +0 -1
  870. package/dist/esm/grpc/proto/sui/rpc/v2/executed_transaction.js.map +0 -1
  871. package/dist/esm/grpc/proto/sui/rpc/v2/execution_status.js.map +0 -1
  872. package/dist/esm/grpc/proto/sui/rpc/v2/gas_cost_summary.js.map +0 -1
  873. package/dist/esm/grpc/proto/sui/rpc/v2/input.js.map +0 -1
  874. package/dist/esm/grpc/proto/sui/rpc/v2/jwk.js.map +0 -1
  875. package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.client.js.map +0 -1
  876. package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.js.map +0 -1
  877. package/dist/esm/grpc/proto/sui/rpc/v2/move_package.js.map +0 -1
  878. package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.client.js.map +0 -1
  879. package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.js.map +0 -1
  880. package/dist/esm/grpc/proto/sui/rpc/v2/name_service.client.js.map +0 -1
  881. package/dist/esm/grpc/proto/sui/rpc/v2/name_service.js.map +0 -1
  882. package/dist/esm/grpc/proto/sui/rpc/v2/object.js.map +0 -1
  883. package/dist/esm/grpc/proto/sui/rpc/v2/object_reference.js.map +0 -1
  884. package/dist/esm/grpc/proto/sui/rpc/v2/owner.js.map +0 -1
  885. package/dist/esm/grpc/proto/sui/rpc/v2/protocol_config.js.map +0 -1
  886. package/dist/esm/grpc/proto/sui/rpc/v2/signature.js.map +0 -1
  887. package/dist/esm/grpc/proto/sui/rpc/v2/signature_scheme.js.map +0 -1
  888. package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.client.js.map +0 -1
  889. package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.js.map +0 -1
  890. package/dist/esm/grpc/proto/sui/rpc/v2/state_service.client.js.map +0 -1
  891. package/dist/esm/grpc/proto/sui/rpc/v2/state_service.js.map +0 -1
  892. package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.client.js.map +0 -1
  893. package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.js.map +0 -1
  894. package/dist/esm/grpc/proto/sui/rpc/v2/system_state.js.map +0 -1
  895. package/dist/esm/grpc/proto/sui/rpc/v2/transaction.js.map +0 -1
  896. package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.client.js.map +0 -1
  897. package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.js.map +0 -1
  898. package/dist/esm/index.js.map +0 -1
  899. package/dist/esm/jsonRpc/client.js.map +0 -1
  900. package/dist/esm/jsonRpc/core.js.map +0 -1
  901. package/dist/esm/jsonRpc/errors.js.map +0 -1
  902. package/dist/esm/jsonRpc/http-transport.js.map +0 -1
  903. package/dist/esm/jsonRpc/index.js.map +0 -1
  904. package/dist/esm/jsonRpc/json-rpc-resolver.js.map +0 -1
  905. package/dist/esm/jsonRpc/rpc-websocket-client.js.map +0 -1
  906. package/dist/esm/jsonRpc/types/chain.js.map +0 -1
  907. package/dist/esm/jsonRpc/types/changes.js.map +0 -1
  908. package/dist/esm/jsonRpc/types/coins.js.map +0 -1
  909. package/dist/esm/jsonRpc/types/common.js.map +0 -1
  910. package/dist/esm/jsonRpc/types/generated.js.map +0 -1
  911. package/dist/esm/jsonRpc/types/index.js.map +0 -1
  912. package/dist/esm/jsonRpc/types/params.js.map +0 -1
  913. package/dist/esm/keypairs/ed25519/ed25519-hd-key.js.map +0 -1
  914. package/dist/esm/keypairs/ed25519/index.js.map +0 -1
  915. package/dist/esm/keypairs/ed25519/keypair.js.map +0 -1
  916. package/dist/esm/keypairs/ed25519/publickey.js.map +0 -1
  917. package/dist/esm/keypairs/index.js.map +0 -1
  918. package/dist/esm/keypairs/passkey/index.js.map +0 -1
  919. package/dist/esm/keypairs/passkey/keypair.js.map +0 -1
  920. package/dist/esm/keypairs/passkey/publickey.js.map +0 -1
  921. package/dist/esm/keypairs/passkey/types.js.map +0 -1
  922. package/dist/esm/keypairs/secp256k1/index.js.map +0 -1
  923. package/dist/esm/keypairs/secp256k1/keypair.js.map +0 -1
  924. package/dist/esm/keypairs/secp256k1/publickey.js.map +0 -1
  925. package/dist/esm/keypairs/secp256r1/index.js.map +0 -1
  926. package/dist/esm/keypairs/secp256r1/keypair.js.map +0 -1
  927. package/dist/esm/keypairs/secp256r1/publickey.js.map +0 -1
  928. package/dist/esm/multisig/index.js.map +0 -1
  929. package/dist/esm/multisig/publickey.js.map +0 -1
  930. package/dist/esm/multisig/signer.js.map +0 -1
  931. package/dist/esm/transactions/Arguments.js.map +0 -1
  932. package/dist/esm/transactions/Commands.js.map +0 -1
  933. package/dist/esm/transactions/Inputs.js.map +0 -1
  934. package/dist/esm/transactions/ObjectCache.js.map +0 -1
  935. package/dist/esm/transactions/Transaction.js.map +0 -1
  936. package/dist/esm/transactions/TransactionData.js.map +0 -1
  937. package/dist/esm/transactions/__tests__/Transaction.test.js.map +0 -1
  938. package/dist/esm/transactions/__tests__/bcs.test.js.map +0 -1
  939. package/dist/esm/transactions/data/internal.js.map +0 -1
  940. package/dist/esm/transactions/data/v1.js.map +0 -1
  941. package/dist/esm/transactions/data/v2.js.map +0 -1
  942. package/dist/esm/transactions/executor/caching.js.map +0 -1
  943. package/dist/esm/transactions/executor/parallel.js.map +0 -1
  944. package/dist/esm/transactions/executor/queue.js.map +0 -1
  945. package/dist/esm/transactions/executor/serial.js.map +0 -1
  946. package/dist/esm/transactions/hash.js.map +0 -1
  947. package/dist/esm/transactions/index.js.map +0 -1
  948. package/dist/esm/transactions/intents/CoinWithBalance.js.map +0 -1
  949. package/dist/esm/transactions/object.js.map +0 -1
  950. package/dist/esm/transactions/plugins/NamedPackagesPlugin.js.map +0 -1
  951. package/dist/esm/transactions/pure.js.map +0 -1
  952. package/dist/esm/transactions/resolve.js.map +0 -1
  953. package/dist/esm/transactions/serializer.js.map +0 -1
  954. package/dist/esm/transactions/utils.js.map +0 -1
  955. package/dist/esm/utils/constants.js.map +0 -1
  956. package/dist/esm/utils/derived-objects.js.map +0 -1
  957. package/dist/esm/utils/dynamic-fields.js.map +0 -1
  958. package/dist/esm/utils/format.js.map +0 -1
  959. package/dist/esm/utils/index.js.map +0 -1
  960. package/dist/esm/utils/move-registry.js.map +0 -1
  961. package/dist/esm/utils/sui-types.js.map +0 -1
  962. package/dist/esm/utils/suins.js.map +0 -1
  963. package/dist/esm/verify/index.js.map +0 -1
  964. package/dist/esm/verify/verify.js.map +0 -1
  965. package/dist/esm/version.js.map +0 -1
  966. package/dist/esm/w/call/allocation.js.map +0 -1
  967. package/dist/esm/w/call/arb.js.map +0 -1
  968. package/dist/esm/w/call/arbitration.js.map +0 -1
  969. package/dist/esm/w/call/base.js.map +0 -1
  970. package/dist/esm/w/call/contact.js.map +0 -1
  971. package/dist/esm/w/call/demand.js.map +0 -1
  972. package/dist/esm/w/call/entity.js.map +0 -1
  973. package/dist/esm/w/call/guard-ins.js.map +0 -1
  974. package/dist/esm/w/call/guard.js.map +0 -1
  975. package/dist/esm/w/call/index.js.map +0 -1
  976. package/dist/esm/w/call/machine.js.map +0 -1
  977. package/dist/esm/w/call/order.js.map +0 -1
  978. package/dist/esm/w/call/passport.js.map +0 -1
  979. package/dist/esm/w/call/payment.js.map +0 -1
  980. package/dist/esm/w/call/permission.js.map +0 -1
  981. package/dist/esm/w/call/personal.js.map +0 -1
  982. package/dist/esm/w/call/progress.js.map +0 -1
  983. package/dist/esm/w/call/proof.js.map +0 -1
  984. package/dist/esm/w/call/repository.js.map +0 -1
  985. package/dist/esm/w/call/resource.js.map +0 -1
  986. package/dist/esm/w/call/reward.js.map +0 -1
  987. package/dist/esm/w/call/service.js.map +0 -1
  988. package/dist/esm/w/call/treasury.js.map +0 -1
  989. package/dist/esm/w/call/util.js.map +0 -1
  990. package/dist/esm/w/common.js.map +0 -1
  991. package/dist/esm/w/exception.js.map +0 -1
  992. package/dist/esm/w/index.js.map +0 -1
  993. package/dist/esm/w/local/account.js.map +0 -1
  994. package/dist/esm/w/local/cache.js.map +0 -1
  995. package/dist/esm/w/local/config.js.map +0 -1
  996. package/dist/esm/w/local/index.js.map +0 -1
  997. package/dist/esm/w/local/local.js.map +0 -1
  998. package/dist/esm/w/local/storage.js.map +0 -1
  999. package/dist/esm/w/local/token.js.map +0 -1
  1000. package/dist/esm/w/local/util.js.map +0 -1
  1001. package/dist/esm/w/local/wip.js.map +0 -1
  1002. package/dist/esm/w/messenger/crypto.js.map +0 -1
  1003. package/dist/esm/w/messenger/index.js.map +0 -1
  1004. package/dist/esm/w/messenger/messenger-api.js.map +0 -1
  1005. package/dist/esm/w/messenger/messenger-manager.js.map +0 -1
  1006. package/dist/esm/w/messenger/messenger.js.map +0 -1
  1007. package/dist/esm/w/messenger/server.js.map +0 -1
  1008. package/dist/esm/w/messenger/session.js.map +0 -1
  1009. package/dist/esm/w/messenger/storage.js.map +0 -1
  1010. package/dist/esm/w/messenger/templates/wts-html-template.js.map +0 -1
  1011. package/dist/esm/w/messenger/types.js.map +0 -1
  1012. package/dist/esm/w/messenger/utils.js.map +0 -1
  1013. package/dist/esm/w/query/bult-in.js.map +0 -1
  1014. package/dist/esm/w/query/event.js.map +0 -1
  1015. package/dist/esm/w/query/index.js.map +0 -1
  1016. package/dist/esm/w/query/object.js.map +0 -1
  1017. package/dist/esm/w/query/received.js.map +0 -1
  1018. package/dist/esm/w/query/util.js.map +0 -1
  1019. package/dist/esm/w/util.js.map +0 -1
@@ -1,1154 +1 @@
1
- // Copyright (c) Wowok.
2
- // SPDX-License-Identifier: Apache-2.0
3
- import { toTxObject, toTxString, isValidDescription, MAX_DESCRIPTION_LENGTH, isValidU8, isValidName, ValueType, parseValueType, OperatorType, ContextType, isWitnessType, PackageAddress, ObjectType, MAX_INPUT_SIZE, MAX_DEPENDED_COUNT, MAX_MULTI_OPERANDS, } from "../common.js";
4
- import _ from "lodash"; // Import lodash
5
- import { W_ERROR, WErrors } from "../exception.js";
6
- import { CallBase } from "./base.js";
7
- import { LocalMark } from "../local/local.js";
8
- import { WitnessSourceType, WitnessTargetType, query_objects, } from "../query/object.js";
9
- import { bcs } from "../../bcs/index.js";
10
- import { valueToBcsBytes } from "../util.js";
11
- import { getGuardQueryInfo, GUARDQUERY } from "./guard-ins.js";
12
- import { checkType, resolveCallEnv } from "./util.js";
13
- import { isValidWowAddress } from "../../utils/sui-types.js";
14
- import { get_guardSubmissions, verify_guard } from "./passport.js";
15
- import { writeFileSync } from "fs";
16
- import { resolve } from "path";
17
- // ================================================
18
- export function guardFn(name) {
19
- return `${PackageAddress}::guard::${name}`;
20
- }
21
- export class CallGuard extends CallBase {
22
- data;
23
- constructor(data) {
24
- super();
25
- this.data = data;
26
- }
27
- async call(env) {
28
- await this.prepare(env);
29
- return await this.exec(env);
30
- }
31
- async operate(env, tx, _passport, _submission) {
32
- if (!this.data.table || this.data.table.length === 0) {
33
- W_ERROR(WErrors.InvalidParam, "table is empty");
34
- }
35
- if (!this.data.root) {
36
- W_ERROR(WErrors.InvalidParam, "root is empty");
37
- }
38
- const guard = await newGuard(tx, this.data?.description || "", this.data?.table, this.data?.root);
39
- if (this.data?.rely != null) {
40
- const relyGuards = await LocalMark.Instance().get_many_address(this.data.rely.guards);
41
- // 查找原始数组中undefined值的索引
42
- const undefinedIndex = relyGuards.findIndex((v) => v === undefined);
43
- if (undefinedIndex !== -1) {
44
- W_ERROR(WErrors.InvalidParam, `rely.guards invalid: guard at index ${undefinedIndex} not found`);
45
- }
46
- reliesAdd(tx, guard, relyGuards.filter((v) => v !== undefined));
47
- }
48
- await this.new_with_mark(env, tx, ObjectType.Guard, create(tx, guard), this.data?.namedNew);
49
- }
50
- }
51
- export const newGuard = async (tx, description, table, root) => {
52
- if (!isValidDescription(description)) {
53
- W_ERROR(WErrors.IsValidDescription, `Description exceeds maximum length ${MAX_DESCRIPTION_LENGTH}`);
54
- }
55
- // check const
56
- for (let i = 0; i < table.length; i++) {
57
- const v = table[i];
58
- if (!isValidU8(v.identifier))
59
- W_ERROR(WErrors.InvalidParam, `table.identifier ${v.identifier} invalid`);
60
- if (!v.b_submission && (v.value === undefined || v.value === null))
61
- W_ERROR(WErrors.InvalidParam, `table.value ${v.value} with identifier ${v.identifier} invalid`);
62
- if (!isValidName(v.name))
63
- W_ERROR(WErrors.InvalidParam, "table.name");
64
- }
65
- const grouped = _.groupBy(table, "identifier");
66
- const duplicates = Object.keys(grouped).filter((key) => grouped[key].length > 1);
67
- if (duplicates.length > 0) {
68
- W_ERROR(WErrors.InvalidParam, `table.identifier duplicates: ${duplicates.join(", ")}`);
69
- }
70
- // check root
71
- var output = [];
72
- await buildNode(root, ValueType.Bool, table, output);
73
- const totalLength = output.reduce((acc, arr) => acc + arr.length, 0);
74
- const input = new Uint8Array(totalLength);
75
- let offset = 0;
76
- for (const arr of output) {
77
- input.set(arr, offset);
78
- offset += arr.length;
79
- }
80
- /*console.log(
81
- "Input (decimal):",
82
- Array.from(input)
83
- .map((byte) => byte.toString(10))
84
- .join(" "),
85
- );*/
86
- if (input.length > MAX_INPUT_SIZE) {
87
- W_ERROR(WErrors.NewGuardCheckFailed, `Input size exceeds maximum limit ${MAX_INPUT_SIZE}`);
88
- }
89
- if (input.length === 0) {
90
- W_ERROR(WErrors.NewGuardCheckFailed, `Input cannot be empty`);
91
- }
92
- const tableItems = [];
93
- for (let i = 0; i < table.length; i++) {
94
- const item = table[i];
95
- // 转换 value_type 为枚举值(支持字符串输入)
96
- const valueType = parseValueType(item.value_type);
97
- // 根据b_submission的值计算bcsValue
98
- let bcsValue;
99
- if (item.b_submission) {
100
- bcsValue = new Uint8Array(1);
101
- bcsValue[0] = valueType;
102
- }
103
- else {
104
- if (item.value === undefined || item.value === null) {
105
- W_ERROR(WErrors.NewGuardCheckFailed, `Table item value is required when b_submission is false`);
106
- }
107
- bcsValue = await valueToBcsBytes(valueType, item.value);
108
- }
109
- tableItems.push(tx.moveCall({
110
- target: guardFn("table_item"),
111
- arguments: [
112
- tx.pure.u8(item.identifier),
113
- tx.pure.bool(item.b_submission),
114
- tx.pure.vector("u8", Array.from(bcsValue)),
115
- toTxString(tx, item.name),
116
- ],
117
- }));
118
- }
119
- return tx.moveCall({
120
- target: guardFn("new"),
121
- arguments: [
122
- toTxString(tx, description),
123
- tx.makeMoveVec({
124
- elements: tableItems,
125
- type: `${PackageAddress}::guard::TableItem`,
126
- }),
127
- tx.pure.vector("u8", Array.from(input)),
128
- ],
129
- });
130
- };
131
- export function create(tx, guard) {
132
- return tx.moveCall({
133
- target: guardFn("create"),
134
- arguments: [
135
- toTxObject(tx, guard),
136
- tx.object.mutRegistrar(),
137
- tx.object.clock(),
138
- ],
139
- });
140
- }
141
- export function reliesAdd(tx, guard, rely_guards) {
142
- const guards = _.uniq(rely_guards);
143
- if (guards.length > MAX_DEPENDED_COUNT) {
144
- W_ERROR(WErrors.NewGuardCheckFailed, `Relies count exceeds maximum limit ${MAX_DEPENDED_COUNT}`);
145
- }
146
- guards.forEach((g) => {
147
- if (g === guard) {
148
- W_ERROR(WErrors.NewGuardCheckFailed, `Guard cannot rely on itself`);
149
- }
150
- tx.moveCall({
151
- target: guardFn("relies_add"),
152
- arguments: [
153
- toTxObject(tx, guard),
154
- toTxObject(tx, g),
155
- tx.object.mutRegistrar(),
156
- tx.object.clock(),
157
- ],
158
- });
159
- });
160
- }
161
- export function reliesRemove(tx, guard, rely_guards) {
162
- const guards = _.uniq(rely_guards);
163
- if (guards.length > MAX_DEPENDED_COUNT) {
164
- W_ERROR(WErrors.NewGuardCheckFailed, `Relies count exceeds maximum limit ${MAX_DEPENDED_COUNT}`);
165
- }
166
- guards.forEach((g) => {
167
- tx.moveCall({
168
- target: guardFn("relies_remove"),
169
- arguments: [
170
- toTxObject(tx, guard),
171
- toTxObject(tx, g),
172
- tx.object.mutRegistrar(),
173
- ],
174
- });
175
- });
176
- }
177
- export function reliesClear(tx, guard) {
178
- tx.moveCall({
179
- target: guardFn("relies_clear"),
180
- arguments: [toTxObject(tx, guard), tx.object.mutRegistrar()],
181
- });
182
- }
183
- // set the logic(and/or) of the guard; default is and
184
- export function reliesLogic(tx, guard, logic_and) {
185
- tx.moveCall({
186
- target: guardFn("relies_logic_and"),
187
- arguments: [toTxObject(tx, guard), tx.pure.bool(logic_and)],
188
- });
189
- }
190
- // ================================================
191
- const buildNode = async (guard_node, type_required, table, output) => {
192
- const node = guard_node;
193
- switch (node.type) {
194
- case "identifier": {
195
- const f = table.find((v) => v.identifier === node.identifier);
196
- if (f) {
197
- const fValueType = parseValueType(f.value_type);
198
- checkType(fValueType, type_required, node);
199
- output.push(bcs.U8.serialize(ContextType.TypeConstant).toBytes());
200
- output.push(bcs.U8.serialize(node.identifier).toBytes());
201
- }
202
- else {
203
- W_ERROR(WErrors.InvalidParam, "node identifier - " + JSON.stringify(node));
204
- }
205
- break;
206
- }
207
- case "query": {
208
- const q = getGuardQueryInfo(node.query);
209
- if (!q) {
210
- W_ERROR(WErrors.InvalidParam, `query not found: ${node.query}`);
211
- }
212
- checkType(q.return, type_required, node);
213
- if (q.parameters.length === node.parameters.length) {
214
- for (let i = node.parameters.length - 1; i >= 0; --i) {
215
- await buildNode(node.parameters[i], q.parameters[i], table, output);
216
- }
217
- }
218
- else {
219
- W_ERROR(WErrors.InvalidParam, "node query parameters length not match - " +
220
- JSON.stringify(node));
221
- }
222
- const tableItem = table.find((v) => v.identifier === node.object.identifier);
223
- if (!tableItem) {
224
- W_ERROR(WErrors.InvalidParam, "node object from identifier - " + JSON.stringify(node));
225
- }
226
- const tableItemValueType = parseValueType(tableItem.value_type);
227
- if (tableItemValueType !== ValueType.Address) {
228
- W_ERROR(WErrors.InvalidParam, `object to query must be address in table ${tableItem}. ${node.object}`);
229
- }
230
- output.push(bcs.U8.serialize(OperatorType.TypeQuery).toBytes());
231
- if (isWitnessType(node.object.convert_witness)) {
232
- const target = WitnessTargetType(node.object.convert_witness);
233
- if (target !== q.objectType) {
234
- W_ERROR(WErrors.InvalidParam, `witness object type(${target}) not consistent with query object type(${q.objectType})`);
235
- }
236
- const source = WitnessSourceType(node.object.convert_witness);
237
- if (tableItem.object_type) {
238
- if (tableItem.object_type !== source) {
239
- W_ERROR(WErrors.InvalidParam, `witness object type(${source}) not consistent with query object type(${tableItem.object_type})`);
240
- }
241
- }
242
- else {
243
- tableItem.object_type = source;
244
- }
245
- output.push(bcs.U8.serialize(node.object.convert_witness).toBytes());
246
- }
247
- else {
248
- if (tableItem?.object_type) {
249
- if (tableItem.object_type !== q.objectType) {
250
- W_ERROR(WErrors.InvalidParam, `witness object type(${q.objectType}) not consistent with query object type(${tableItem.object_type})`);
251
- }
252
- }
253
- else {
254
- tableItem.object_type = q.objectType;
255
- }
256
- output.push(bcs.U8.serialize(ContextType.TypeConstant).toBytes());
257
- }
258
- output.push(bcs.U8.serialize(node.object.identifier).toBytes());
259
- output.push(bcs.U16.serialize(q.id).toBytes());
260
- break;
261
- }
262
- case "logic_as_u256_greater_or_equal":
263
- case "logic_as_u256_lesser_or_equal":
264
- case "logic_as_u256_equal":
265
- case "logic_as_u256_greater":
266
- case "logic_as_u256_lesser":
267
- case "logic_equal":
268
- case "logic_and":
269
- case "logic_or":
270
- case "logic_string_contains":
271
- case "logic_string_nocase_contains":
272
- case "logic_string_nocase_equal":
273
- case "calc_number_add":
274
- case "calc_number_subtract":
275
- case "calc_number_multiply":
276
- case "calc_number_divide":
277
- case "calc_number_mod":
278
- case "calc_string_nocase_contains":
279
- case "calc_string_nocase_equal":
280
- case "calc_string_contains": {
281
- const opCodeMap = {
282
- logic_as_u256_greater_or_equal: OperatorType.TypeLogicAsU256GreaterEqual,
283
- logic_as_u256_lesser_or_equal: OperatorType.TypeLogicAsU256LesserEqual,
284
- logic_as_u256_equal: OperatorType.TypeLogicAsU256Equal,
285
- logic_as_u256_greater: OperatorType.TypeLogicAsU256Greater,
286
- logic_as_u256_lesser: OperatorType.TypeLogicAsU256Lesser,
287
- logic_equal: OperatorType.TypeLogicEqual,
288
- logic_and: OperatorType.TypeLogicAnd,
289
- logic_or: OperatorType.TypeLogicOr,
290
- logic_string_contains: OperatorType.TypeStringContains,
291
- logic_string_nocase_contains: OperatorType.TypeStringNocaseContains,
292
- logic_string_nocase_equal: OperatorType.TypeStringNocaseEqual,
293
- calc_number_add: OperatorType.TypeNumberAdd,
294
- calc_number_subtract: OperatorType.TypeNumberSubtract,
295
- calc_number_multiply: OperatorType.TypeNumberMultiply,
296
- calc_number_divide: OperatorType.TypeNumberDivide,
297
- calc_number_mod: OperatorType.TypeNumberMod,
298
- calc_string_nocase_contains: OperatorType.TypeStringNocaseContains,
299
- calc_string_nocase_equal: OperatorType.TypeStringNocaseEqual,
300
- calc_string_contains: OperatorType.TypeStringContains,
301
- };
302
- const requiredTypeMap = {
303
- logic_as_u256_greater_or_equal: "number",
304
- logic_as_u256_lesser_or_equal: "number",
305
- logic_as_u256_equal: "number",
306
- logic_as_u256_greater: "number",
307
- logic_as_u256_lesser: "number",
308
- logic_equal: "variable",
309
- logic_and: ValueType.Bool,
310
- logic_or: ValueType.Bool,
311
- logic_string_contains: ValueType.String,
312
- logic_string_nocase_contains: ValueType.String,
313
- logic_string_nocase_equal: ValueType.String,
314
- calc_number_add: "number",
315
- calc_number_subtract: "number",
316
- calc_number_multiply: "number",
317
- calc_number_divide: "number",
318
- calc_number_mod: "number",
319
- calc_string_nocase_contains: ValueType.String,
320
- calc_string_nocase_equal: ValueType.String,
321
- calc_string_contains: ValueType.String,
322
- };
323
- const returnTypeMap = {
324
- logic_as_u256_greater_or_equal: ValueType.Bool,
325
- logic_as_u256_lesser_or_equal: ValueType.Bool,
326
- logic_as_u256_equal: ValueType.Bool,
327
- logic_as_u256_greater: ValueType.Bool,
328
- logic_as_u256_lesser: ValueType.Bool,
329
- logic_equal: ValueType.Bool,
330
- logic_and: ValueType.Bool,
331
- logic_or: ValueType.Bool,
332
- logic_string_contains: ValueType.Bool,
333
- logic_string_nocase_contains: ValueType.Bool,
334
- logic_string_nocase_equal: ValueType.Bool,
335
- calc_number_add: ValueType.U256,
336
- calc_number_subtract: ValueType.U256,
337
- calc_number_multiply: ValueType.U256,
338
- calc_number_divide: ValueType.U256,
339
- calc_number_mod: ValueType.U256,
340
- calc_string_nocase_contains: ValueType.Bool,
341
- calc_string_nocase_equal: ValueType.Bool,
342
- calc_string_contains: ValueType.Bool,
343
- };
344
- checkType(returnTypeMap[node.type], type_required, node);
345
- await multi_operand_op(opCodeMap[node.type], node.nodes, requiredTypeMap[node.type], table, output);
346
- break;
347
- }
348
- case "vec_contains_bool":
349
- case "vec_contains_address":
350
- case "vec_contains_string":
351
- case "vec_contains_string_nocase":
352
- case "vec_contains_number": {
353
- const opCodeMap = {
354
- vec_contains_bool: OperatorType.TypedValueVecContains_Bool,
355
- vec_contains_address: OperatorType.TypedValueVecContains_Address,
356
- vec_contains_string: OperatorType.TypedValueVecContains_String,
357
- vec_contains_string_nocase: OperatorType.TypedValueVecContains_StringNoCase,
358
- vec_contains_number: OperatorType.TypedValueVecContains_Number,
359
- };
360
- const vecTypeMap = {
361
- vec_contains_bool: ValueType.VecBool,
362
- vec_contains_address: ValueType.VecAddress,
363
- vec_contains_string: ValueType.VecString,
364
- vec_contains_string_nocase: ValueType.VecString,
365
- vec_contains_number: "vec_number",
366
- };
367
- const elemTypeMap = {
368
- vec_contains_bool: ValueType.Bool,
369
- vec_contains_address: ValueType.Address,
370
- vec_contains_string: ValueType.String,
371
- vec_contains_string_nocase: ValueType.String,
372
- vec_contains_number: "number",
373
- };
374
- checkType(ValueType.Bool, type_required, node);
375
- //@ 第一个节点是vec类型,后面的节点是元素类型
376
- for (let i = node.nodes.length - 1; i >= 0; --i) {
377
- const nodeType = i === 0 ? vecTypeMap[node.type] : elemTypeMap[node.type];
378
- await buildNode(node.nodes[i], nodeType, table, output);
379
- }
380
- output.push(bcs.U8.serialize(opCodeMap[node.type]).toBytes());
381
- output.push(bcs.U8.serialize(node.nodes.length).toBytes());
382
- break;
383
- }
384
- case "logic_not":
385
- case "calc_string_length":
386
- case "convert_number_address":
387
- case "convert_address_number":
388
- case "convert_number_string":
389
- case "convert_string_number":
390
- case "convert_safe_u8":
391
- case "convert_safe_u16":
392
- case "convert_safe_u32":
393
- case "convert_safe_u64":
394
- case "convert_safe_u128":
395
- case "convert_safe_u256":
396
- case "value_type":
397
- case "vec_length": {
398
- const opCodeMap = {
399
- logic_not: OperatorType.TypeLogicNot,
400
- calc_string_length: OperatorType.TypeStringLength,
401
- convert_number_address: OperatorType.TypeNumberAddress,
402
- convert_address_number: OperatorType.TypeAddressNumber,
403
- convert_number_string: OperatorType.TypeNumberString,
404
- convert_string_number: OperatorType.TypeStringNumber,
405
- //convert_string_lowercase: OperatorType.TypeStringLowercase,
406
- convert_safe_u8: OperatorType.TypeSafeU8,
407
- convert_safe_u16: OperatorType.TypeSafeU16,
408
- convert_safe_u32: OperatorType.TypeSafeU32,
409
- convert_safe_u64: OperatorType.TypeSafeU64,
410
- convert_safe_u128: OperatorType.TypeSafeU128,
411
- convert_safe_u256: OperatorType.TypeSafeU256,
412
- value_type: OperatorType.TypedValueType,
413
- vec_length: OperatorType.TypedValueVecLength,
414
- };
415
- const requiredTypeMap = {
416
- logic_not: ValueType.Bool,
417
- calc_string_length: ValueType.String,
418
- convert_number_address: "number",
419
- convert_address_number: ValueType.Address,
420
- convert_number_string: "number",
421
- convert_string_number: ValueType.String,
422
- convert_safe_u8: "number",
423
- convert_safe_u16: "number",
424
- convert_safe_u32: "number",
425
- convert_safe_u64: "number",
426
- convert_safe_u128: "number",
427
- convert_safe_u256: "number",
428
- value_type: "variable",
429
- vec_length: "vec",
430
- };
431
- const returnTypeMap = {
432
- logic_not: ValueType.Bool,
433
- calc_string_length: ValueType.U64,
434
- convert_number_address: ValueType.Address,
435
- convert_address_number: ValueType.U256,
436
- convert_number_string: ValueType.String,
437
- convert_string_number: ValueType.U256,
438
- convert_safe_u8: ValueType.U8,
439
- convert_safe_u16: ValueType.U16,
440
- convert_safe_u32: ValueType.U32,
441
- convert_safe_u64: ValueType.U64,
442
- convert_safe_u128: ValueType.U128,
443
- convert_safe_u256: ValueType.U256,
444
- value_type: ValueType.U8,
445
- vec_length: ValueType.U64,
446
- };
447
- checkType(returnTypeMap[node.type], type_required, node);
448
- await single_operand_op(opCodeMap[node.type], node.node, requiredTypeMap[node.type], table, output);
449
- break;
450
- }
451
- case "calc_string_indexof":
452
- case "calc_string_nocase_indexof": {
453
- const opCodeMap = {
454
- calc_string_indexof: OperatorType.TypeStringIndexof,
455
- calc_string_nocase_indexof: OperatorType.TypeStringNocaseIndexof,
456
- };
457
- checkType(ValueType.U64, type_required, node);
458
- //@ 第一个元素在栈顶
459
- await buildNode(node.nodeRight, ValueType.String, table, output);
460
- await buildNode(node.nodeLeft, ValueType.String, table, output);
461
- output.push(bcs.U8.serialize(opCodeMap[node.type]).toBytes());
462
- output.push(bcs.U8.serialize(node.order === "forward" ? 0 : 1).toBytes());
463
- break;
464
- }
465
- case "vec_indexof_bool":
466
- case "vec_indexof_address":
467
- case "vec_indexof_string":
468
- case "vec_indexof_string_nocase":
469
- case "vec_indexof_number": {
470
- const opCodeMap = {
471
- vec_indexof_bool: OperatorType.TypedValueVecIndexOf_Bool,
472
- vec_indexof_address: OperatorType.TypedValueVecIndexOf_Address,
473
- vec_indexof_string: OperatorType.TypedValueVecIndexOf_String,
474
- vec_indexof_string_nocase: OperatorType.TypedValueVecIndexOf_StringNoCase,
475
- vec_indexof_number: OperatorType.TypedValueVecIndexOf_Number,
476
- };
477
- const rightTypeMap = {
478
- vec_indexof_bool: ValueType.Bool,
479
- vec_indexof_address: ValueType.Address,
480
- vec_indexof_string: ValueType.String,
481
- vec_indexof_string_nocase: ValueType.String,
482
- vec_indexof_number: "number",
483
- };
484
- const leftTypeMap = {
485
- vec_indexof_bool: ValueType.VecBool,
486
- vec_indexof_address: ValueType.VecAddress,
487
- vec_indexof_string: ValueType.VecString,
488
- vec_indexof_string_nocase: ValueType.VecString,
489
- vec_indexof_number: "vec_number",
490
- };
491
- checkType(ValueType.U64, type_required, node);
492
- //@ 第一个元素在栈顶
493
- await buildNode(node.nodeRight, rightTypeMap[node.type], table, output);
494
- await buildNode(node.nodeLeft, leftTypeMap[node.type], table, output);
495
- output.push(bcs.U8.serialize(opCodeMap[node.type]).toBytes());
496
- output.push(bcs.U8.serialize(node.order === "forward" ? 0 : 1).toBytes());
497
- break;
498
- }
499
- case "context": {
500
- let contextValue;
501
- switch (node.context) {
502
- case "Signer":
503
- contextValue = ContextType.TypeSigner;
504
- break;
505
- case "Clock":
506
- contextValue = ContextType.TypeClock;
507
- break;
508
- case "Guard":
509
- contextValue = ContextType.TypeGuard;
510
- break;
511
- default:
512
- W_ERROR(WErrors.InvalidParam, "Invalid context type: " + node.context);
513
- }
514
- output.push(bcs.U8.serialize(contextValue).toBytes());
515
- // Fix: Clock returns U64 (timestamp), not Address
516
- if (node.context === "Clock") {
517
- checkType(ContextType.TypeClock, type_required, node);
518
- }
519
- else {
520
- checkType(ValueType.Address, type_required, node);
521
- }
522
- break;
523
- }
524
- default:
525
- W_ERROR(WErrors.InvalidParam, "node:" + JSON.stringify(node));
526
- }
527
- };
528
- const multi_operand_op = async (op_code, parameters, required_type, table, output) => {
529
- if (parameters.length < 2 || parameters.length > MAX_MULTI_OPERANDS) {
530
- W_ERROR(WErrors.InvalidParam, `op ${op_code} parameters length must >= 2 and <=
531
- ${MAX_MULTI_OPERANDS}. parameters:
532
- ${JSON.stringify(parameters)}`);
533
- }
534
- //@ 和query一样,栈顶是第一个参数
535
- for (let i = parameters.length - 1; i >= 0; --i) {
536
- await buildNode(parameters[i], required_type, table, output);
537
- }
538
- output.push(bcs.U8.serialize(op_code).toBytes()); // TYPE
539
- output.push(bcs.U8.serialize(parameters.length).toBytes());
540
- };
541
- const single_operand_op = async (op_code, parameter, required_type, table, output) => {
542
- await buildNode(parameter, required_type, table, output);
543
- output.push(bcs.U8.serialize(op_code).toBytes()); // TYPE
544
- };
545
- /**
546
- * Query Guard object data and export to JSON or Markdown file
547
- * @param guard - Guard object ID or name
548
- * @param file_path - Output file path
549
- * @param format - Output format: "json" or "markdown"
550
- * @param network - Network entrypoint
551
- * @throws Error if query fails or file write fails
552
- */
553
- export const guard2file = async (guard, file_path, format = "json", network) => {
554
- // Query Guard object
555
- const queryResult = await query_objects({
556
- objects: [guard],
557
- network,
558
- });
559
- const objects = queryResult.objects;
560
- if (!objects || objects.length === 0 || objects[0].type !== "Guard") {
561
- W_ERROR(WErrors.InvalidParam, `guard2file: Guard object not found: ${guard}`);
562
- return;
563
- }
564
- const guardObj = objects[0];
565
- if (!guardObj) {
566
- W_ERROR(WErrors.InvalidParam, `guard2file: Failed to get Guard object data: ${guard}`);
567
- return;
568
- }
569
- // Prepare output content based on format
570
- let content;
571
- if (format === "json") {
572
- content = generateGuardJson(guardObj);
573
- }
574
- else {
575
- content = generateGuardMarkdown(guardObj);
576
- }
577
- // Write to file
578
- try {
579
- const resolvedPath = resolve(file_path);
580
- writeFileSync(resolvedPath, content, "utf-8");
581
- }
582
- catch (e) {
583
- W_ERROR(WErrors.InvalidParam, `guard2file: Failed to write file '${file_path}': ${e.message}`);
584
- }
585
- };
586
- /**
587
- * Generate JSON format Guard definition with comments
588
- */
589
- const generateGuardJson = (guardObj) => {
590
- const output = {};
591
- // Description
592
- if (guardObj.description) {
593
- output.description = guardObj.description;
594
- }
595
- // Table
596
- if (guardObj.table && guardObj.table.length > 0) {
597
- output.table = guardObj.table.map((item) => ({
598
- identifier: item.identifier,
599
- b_submission: item.b_submission,
600
- value_type: item.value_type,
601
- value: item.value,
602
- name: item.name,
603
- }));
604
- }
605
- // Root node - use guardObj.root directly (already parsed tree structure)
606
- if (guardObj.root) {
607
- output.root = guardObj.root;
608
- }
609
- // Rely (dependencies)
610
- if (guardObj.relies && guardObj.relies.length > 0) {
611
- output.rely = {
612
- guards: guardObj.relies,
613
- logic_or: !guardObj.relies_logic_and,
614
- };
615
- }
616
- return JSON.stringify(output, null, 2);
617
- };
618
- /**
619
- * Generate Markdown format Guard definition with comments
620
- */
621
- const generateGuardMarkdown = (guardObj) => {
622
- const lines = [];
623
- // Header
624
- lines.push(`# Guard Definition`);
625
- lines.push("");
626
- lines.push(`**Object ID:** ${guardObj.object}`);
627
- lines.push("");
628
- // Summary
629
- lines.push("## Summary");
630
- lines.push("");
631
- const description = guardObj.description || "";
632
- const tableCount = guardObj.table ? guardObj.table.length : 0;
633
- let summary = `${description.length > 100 ? description.substring(0, 97) + "..." : description}`;
634
- summary += ` [${tableCount} tables]`;
635
- lines.push(summary);
636
- lines.push("");
637
- // Description
638
- lines.push("## Description");
639
- lines.push("");
640
- lines.push(guardObj.description || "");
641
- lines.push("");
642
- // Table
643
- lines.push("## Table (Data Definitions)");
644
- lines.push("");
645
- lines.push("| Identifier | b_submission | value_type | value | name |");
646
- lines.push("|------------|--------------|------------|-------|------|");
647
- if (guardObj.table && guardObj.table.length > 0) {
648
- for (const item of guardObj.table) {
649
- const itemValueType = parseValueType(item.value_type);
650
- const valueTypeStr = valueTypeToString(itemValueType);
651
- const valueStr = formatValueForMarkdown(item.value);
652
- lines.push(`| ${item.identifier} | ${item.b_submission} | ${valueTypeStr} (${item.value_type}) | ${valueStr} | ${item.name} |`);
653
- }
654
- }
655
- else {
656
- lines.push("| - | - | - | - | - |");
657
- }
658
- lines.push("");
659
- // Root node - use guardObj.root directly (already parsed tree structure)
660
- lines.push("## Root (Computational Tree)");
661
- lines.push("");
662
- lines.push("The root node MUST return a Bool value (pass/fail).");
663
- lines.push("");
664
- if (guardObj.root) {
665
- lines.push("```json");
666
- lines.push(JSON.stringify(guardObj.root, null, 2));
667
- lines.push("```");
668
- lines.push("");
669
- // Add node comments
670
- const nodeComments = generateNodeComments(guardObj.root);
671
- if (nodeComments.length > 0) {
672
- lines.push("### Node Comments");
673
- lines.push("");
674
- for (const comment of nodeComments) {
675
- lines.push(`- **${comment.type}**: ${comment.description}`);
676
- }
677
- lines.push("");
678
- }
679
- }
680
- else {
681
- lines.push("*No root node data available*");
682
- lines.push("");
683
- }
684
- // Rely
685
- if (guardObj.relies && guardObj.relies.length > 0) {
686
- lines.push("## Rely (Dependencies)");
687
- lines.push("");
688
- lines.push(`**Logic:** ${guardObj.relies_logic_and ? "AND" : "OR"}`);
689
- lines.push("");
690
- lines.push("**Dependent Guards:**");
691
- for (const rely of guardObj.relies) {
692
- lines.push(`- ${rely}`);
693
- }
694
- lines.push("");
695
- }
696
- return lines.join("\n");
697
- };
698
- /**
699
- * Format value for markdown display
700
- */
701
- const formatValueForMarkdown = (value) => {
702
- if (value === undefined || value === null) {
703
- return "-";
704
- }
705
- if (typeof value === "boolean") {
706
- return value ? "true" : "false";
707
- }
708
- if (typeof value === "string") {
709
- if (value.length > 30) {
710
- return value.substring(0, 27) + "...";
711
- }
712
- return value;
713
- }
714
- if (typeof value === "number") {
715
- return value.toString();
716
- }
717
- if (Array.isArray(value)) {
718
- if (value.length === 0)
719
- return "[]";
720
- if (value.length > 3) {
721
- return `[${value.slice(0, 3).join(", ")}, ... (${value.length} items)]`;
722
- }
723
- return `[${value.join(", ")}]`;
724
- }
725
- if (typeof value === "object") {
726
- return "{...}";
727
- }
728
- return String(value);
729
- };
730
- /**
731
- * Generate comments for Guard nodes
732
- */
733
- export const generateNodeComments = (node, comments = []) => {
734
- if (!node)
735
- return comments;
736
- // Add comment for this node
737
- if (node.type === "query") {
738
- const queryId = typeof node.query === "number" ? node.query : undefined;
739
- if (queryId !== undefined) {
740
- const queryInfo = GUARDQUERY.find((q) => q.id === queryId);
741
- if (queryInfo) {
742
- comments.push({
743
- type: `query(${node.query})`,
744
- description: `${queryInfo.name}: ${queryInfo.description}`,
745
- });
746
- }
747
- }
748
- }
749
- else if (node.type.startsWith("logic_")) {
750
- comments.push({
751
- type: node.type,
752
- description: `Logic operation: ${node.type.replace(/_/g, " ")}`,
753
- });
754
- }
755
- else if (node.type.startsWith("calc_")) {
756
- comments.push({
757
- type: node.type,
758
- description: `Calculation: ${node.type.replace(/_/g, " ")}`,
759
- });
760
- }
761
- else if (node.type.startsWith("convert_")) {
762
- comments.push({
763
- type: node.type,
764
- description: `Type conversion: ${node.type.replace(/_/g, " ")}`,
765
- });
766
- }
767
- // Recursively process child nodes
768
- if ("nodes" in node && Array.isArray(node.nodes)) {
769
- for (const childNode of node.nodes) {
770
- generateNodeComments(childNode, comments);
771
- }
772
- }
773
- if ("node" in node && node.node) {
774
- generateNodeComments(node.node, comments);
775
- }
776
- if ("parameters" in node && Array.isArray(node.parameters)) {
777
- for (const param of node.parameters) {
778
- generateNodeComments(param, comments);
779
- }
780
- }
781
- if ("nodeLeft" in node && node.nodeLeft) {
782
- generateNodeComments(node.nodeLeft, comments);
783
- }
784
- if ("nodeRight" in node && node.nodeRight) {
785
- generateNodeComments(node.nodeRight, comments);
786
- }
787
- return comments;
788
- };
789
- /**
790
- * Convert ValueType enum to string representation
791
- */
792
- const valueTypeToString = (valueType) => {
793
- const typeMap = {
794
- [ValueType.Bool]: "Bool",
795
- [ValueType.Address]: "Address",
796
- [ValueType.String]: "String",
797
- [ValueType.U8]: "U8",
798
- [ValueType.U16]: "U16",
799
- [ValueType.U32]: "U32",
800
- [ValueType.U64]: "U64",
801
- [ValueType.U128]: "U128",
802
- [ValueType.U256]: "U256",
803
- [ValueType.VecBool]: "VecBool",
804
- [ValueType.VecAddress]: "VecAddress",
805
- [ValueType.VecString]: "VecString",
806
- [ValueType.VecU8]: "VecU8",
807
- [ValueType.VecU16]: "VecU16",
808
- [ValueType.VecU32]: "VecU32",
809
- [ValueType.VecU64]: "VecU64",
810
- [ValueType.VecU128]: "VecU128",
811
- [ValueType.VecU256]: "VecU256",
812
- [ValueType.VecVecU8]: "VecVecU8",
813
- [ValueType.Value]: "Value",
814
- };
815
- return typeMap[valueType] || `Unknown(${valueType})`;
816
- };
817
- export const gen_passport = async (env, guard, info) => {
818
- if (!isValidWowAddress(guard)) {
819
- W_ERROR(WErrors.InvalidParam, "guard invalid: guard empty");
820
- }
821
- await resolveCallEnv(env);
822
- const s = await get_guardSubmissions(env, [guard]);
823
- if (s.submission.length > 0) {
824
- if (!info) {
825
- return {
826
- type: "submission",
827
- guard: s.guard,
828
- submission: s.submission,
829
- };
830
- }
831
- else {
832
- return await verify_guard(env, info);
833
- }
834
- }
835
- else {
836
- return await verify_guard(env, {
837
- type: "submission",
838
- guard: [{ object: guard, impack: true }],
839
- submission: [],
840
- });
841
- }
842
- };
843
- /**
844
- * Detect file format from content or extension
845
- */
846
- function detectFileFormatFromContent(text) {
847
- const trimmed = text.trim();
848
- if (trimmed.startsWith("{") || trimmed.startsWith("[")) {
849
- return "json";
850
- }
851
- return "markdown";
852
- }
853
- /**
854
- * Extract JSON from markdown code blocks
855
- */
856
- function extractJsonFromMarkdown(markdown) {
857
- const codeBlockRegex = /```(?:json)?\s*\n([\s\S]*?)```/g;
858
- let match;
859
- let lastMatch = null;
860
- while ((match = codeBlockRegex.exec(markdown)) !== null) {
861
- const jsonContent = match[1].trim();
862
- if (jsonContent.startsWith("{") || jsonContent.startsWith("[")) {
863
- const beforeMatch = markdown.substring(0, match.index);
864
- const lineOffset = (beforeMatch.match(/\n/g) || []).length + 1;
865
- lastMatch = { json: jsonContent, lineOffset };
866
- // Continue to find the last JSON block (most complete one)
867
- }
868
- }
869
- return lastMatch;
870
- }
871
- /**
872
- * Parse table from markdown section
873
- * First tries JSON code block, then falls back to markdown table
874
- */
875
- function parseTableFromMarkdown(section) {
876
- // Try JSON code block first
877
- const jsonMatch = section.match(/```(?:json)?\s*\n([\s\S]*?)```/);
878
- if (jsonMatch) {
879
- try {
880
- const parsed = JSON.parse(jsonMatch[1]);
881
- if (Array.isArray(parsed)) {
882
- return parsed;
883
- }
884
- }
885
- catch {
886
- // JSON parse failed, continue to table parsing
887
- }
888
- }
889
- // Fallback to markdown table
890
- const tableRows = section.match(/\|[^\n]+\|/g);
891
- if (tableRows && tableRows.length > 2) {
892
- // Skip header and separator rows
893
- return tableRows.slice(2).map((row) => {
894
- const cells = row
895
- .split("|")
896
- .filter((c) => c.trim())
897
- .map((c) => c.trim());
898
- // Parse value_type - can be number (6) or string ("U64" or "U64 (6)")
899
- const valueTypeCell = cells[2];
900
- let value_type;
901
- // Try to parse as number first
902
- const numericMatch = valueTypeCell.match(/\d+/);
903
- if (numericMatch) {
904
- value_type = parseInt(numericMatch[0], 10);
905
- }
906
- else {
907
- // Try to extract type name (e.g., "U64" from "U64" or "U64 (6)")
908
- const typeNameMatch = valueTypeCell.match(/^([A-Za-z]+)/);
909
- if (typeNameMatch) {
910
- value_type = typeNameMatch[1];
911
- }
912
- else {
913
- throw new Error(`Invalid value_type in table row: "${valueTypeCell}". Expected a number (0-19) or type name (e.g., "U64", "Address")`);
914
- }
915
- }
916
- return {
917
- identifier: parseInt(cells[0], 10),
918
- b_submission: cells[1].toLowerCase() === "true",
919
- value_type,
920
- value: cells[3] === "-" ? undefined : cells[3],
921
- name: cells[4] === "-" ? undefined : cells[4],
922
- };
923
- });
924
- }
925
- return undefined;
926
- }
927
- /**
928
- * Parse rely from markdown section
929
- */
930
- function parseRelyFromMarkdown(section) {
931
- const logicMatch = section.match(/\*\*Logic:\*\*\s*(AND|OR)/i);
932
- const guardListMatches = section.match(/^\s*[-*]\s*(\S+)$/gm);
933
- if (logicMatch || guardListMatches) {
934
- return {
935
- logic_or: logicMatch ? logicMatch[1].toUpperCase() === "OR" : false,
936
- guards: guardListMatches
937
- ? guardListMatches.map((g) => g.replace(/^\s*[-*]\s*/, "").trim())
938
- : [],
939
- };
940
- }
941
- return undefined;
942
- }
943
- /**
944
- * Parse Guard definition from markdown content
945
- * Unified parsing logic shared between SDK and MCP
946
- */
947
- export function parseGuardFromMarkdown(content) {
948
- const errors = [];
949
- const result = {};
950
- // Try to extract full JSON from code blocks first
951
- const jsonMatch = extractJsonFromMarkdown(content);
952
- if (jsonMatch) {
953
- try {
954
- const parsed = JSON.parse(jsonMatch.json);
955
- Object.assign(result, parsed);
956
- }
957
- catch (e) {
958
- errors.push({
959
- message: `Failed to parse JSON from code block: ${e.message}`,
960
- path: "/",
961
- line: jsonMatch.lineOffset,
962
- });
963
- }
964
- }
965
- // Parse description section (if not already from JSON)
966
- if (!result.description) {
967
- const descMatch = content.match(/(?:^|\n)#+\s*(?:Description|Description|Description)[^\n]*\n+([^\n#]+)/i);
968
- if (descMatch) {
969
- result.description = descMatch[1].trim();
970
- }
971
- }
972
- // Parse table section (if not already from JSON)
973
- if (!result.table) {
974
- const tableMatch = content.match(/(?:^|\n)#+\s*(?:Table|Data Table|数据表)[^\n]*\n+([\s\S]*?)(?=(?:\n#+|$))/i);
975
- if (tableMatch) {
976
- const table = parseTableFromMarkdown(tableMatch[1]);
977
- if (table) {
978
- result.table = table;
979
- }
980
- }
981
- }
982
- // Parse root section (if not already from JSON)
983
- if (!result.root) {
984
- const rootMatch = content.match(/(?:^|\n)#+\s*(?:Root|根节点)[^\n]*\n+([\s\S]*?)(?=(?:\n#+|$))/i);
985
- if (rootMatch) {
986
- const rootSection = rootMatch[1];
987
- const rootJsonMatch = rootSection.match(/```(?:json)?\s*\n([\s\S]*?)```/);
988
- if (rootJsonMatch) {
989
- try {
990
- result.root = JSON.parse(rootJsonMatch[1]);
991
- }
992
- catch (e) {
993
- errors.push({
994
- message: `Failed to parse root JSON: ${e.message}`,
995
- path: "/root",
996
- });
997
- }
998
- }
999
- }
1000
- }
1001
- // Parse rely section (if not already from JSON)
1002
- if (!result.rely) {
1003
- const relyMatch = content.match(/(?:^|\n)#+\s*(?:Rely|Dependencies|依赖)[^\n]*\n+([\s\S]*?)(?=(?:\n#+|$))/i);
1004
- if (relyMatch) {
1005
- const rely = parseRelyFromMarkdown(relyMatch[1]);
1006
- if (rely) {
1007
- result.rely = rely;
1008
- }
1009
- }
1010
- }
1011
- if (!result.root) {
1012
- errors.push({
1013
- message: "Guard root node not found in markdown file",
1014
- path: "/root",
1015
- });
1016
- return { success: false, errors };
1017
- }
1018
- return {
1019
- success: true,
1020
- data: result,
1021
- errors,
1022
- };
1023
- }
1024
- /**
1025
- * Parse Guard definition from file content
1026
- * Supports both JSON and Markdown formats
1027
- * Unified parsing logic shared between SDK and MCP
1028
- */
1029
- export function parseGuardFile(content, format) {
1030
- const detectedFormat = format ?? detectFileFormatFromContent(content);
1031
- if (detectedFormat === "json") {
1032
- try {
1033
- const parsed = JSON.parse(content);
1034
- if (!parsed.root) {
1035
- return {
1036
- success: false,
1037
- errors: [
1038
- {
1039
- message: "Missing required field: root",
1040
- path: "/root",
1041
- },
1042
- ],
1043
- };
1044
- }
1045
- return { success: true, data: parsed, errors: [] };
1046
- }
1047
- catch (e) {
1048
- return {
1049
- success: false,
1050
- errors: [
1051
- {
1052
- message: `JSON parse error: ${e.message}`,
1053
- path: "/",
1054
- },
1055
- ],
1056
- };
1057
- }
1058
- }
1059
- // Markdown format
1060
- return parseGuardFromMarkdown(content);
1061
- }
1062
- /**
1063
- * Validate GuardNode structure
1064
- * Basic validation without Zod dependency
1065
- */
1066
- export function validateGuardNode(node) {
1067
- const errors = [];
1068
- if (!node || typeof node !== "object") {
1069
- errors.push({ message: "GuardNode must be an object", path: "/" });
1070
- return { success: false, errors };
1071
- }
1072
- const n = node;
1073
- if (!n.type || typeof n.type !== "string") {
1074
- errors.push({
1075
- message: "GuardNode must have a 'type' property",
1076
- path: "/type",
1077
- });
1078
- return { success: false, errors };
1079
- }
1080
- // Basic type validation based on node type
1081
- const validTypes = [
1082
- "identifier",
1083
- "query",
1084
- "context",
1085
- "logic_not",
1086
- "logic_and",
1087
- "logic_or",
1088
- "logic_equal",
1089
- "logic_as_u256_greater_or_equal",
1090
- "logic_as_u256_lesser_or_equal",
1091
- "logic_as_u256_greater",
1092
- "logic_as_u256_lesser",
1093
- "logic_as_u256_equal",
1094
- "logic_string_contains",
1095
- "logic_string_nocase_contains",
1096
- "logic_string_nocase_equal",
1097
- "calc_number_add",
1098
- "calc_number_subtract",
1099
- "calc_number_multiply",
1100
- "calc_number_divide",
1101
- "calc_number_mod",
1102
- "calc_string_length",
1103
- "calc_string_nocase_contains",
1104
- "calc_string_nocase_equal",
1105
- "calc_string_contains",
1106
- "calc_string_indexof",
1107
- "calc_string_nocase_indexof",
1108
- "convert_number_address",
1109
- "convert_address_number",
1110
- "convert_number_string",
1111
- "convert_string_number",
1112
- "convert_safe_u8",
1113
- "convert_safe_u16",
1114
- "convert_safe_u32",
1115
- "convert_safe_u64",
1116
- "convert_safe_u128",
1117
- "convert_safe_u256",
1118
- "value_type",
1119
- "vec_length",
1120
- "vec_contains_bool",
1121
- "vec_contains_address",
1122
- "vec_contains_string",
1123
- "vec_contains_string_nocase",
1124
- "vec_contains_number",
1125
- "vec_indexof_bool",
1126
- "vec_indexof_address",
1127
- "vec_indexof_string",
1128
- "vec_indexof_string_nocase",
1129
- "vec_indexof_number",
1130
- ];
1131
- if (!validTypes.includes(n.type)) {
1132
- errors.push({
1133
- message: `Invalid GuardNode type: ${n.type}`,
1134
- path: "/type",
1135
- });
1136
- }
1137
- return { success: errors.length === 0, errors };
1138
- }
1139
- /**
1140
- * Format parse errors for display
1141
- */
1142
- export function formatGuardParseErrors(errors) {
1143
- return errors
1144
- .map((e) => {
1145
- let msg = `Path: ${e.path}`;
1146
- if (e.line !== undefined && e.column !== undefined) {
1147
- msg += ` (line ${e.line}, column ${e.column})`;
1148
- }
1149
- msg += `\n Error: ${e.message}`;
1150
- return msg;
1151
- })
1152
- .join("\n\n");
1153
- }
1154
- //# sourceMappingURL=guard.js.map
1
+ import{toTxObject,toTxString,isValidDescription,MAX_DESCRIPTION_LENGTH,isValidU8,isValidU64,isValidName,ValueType,parseValueType,OperatorType,ContextType,isWitnessType,PackageAddress,ObjectType,MAX_INPUT_SIZE,MAX_DEPENDED_COUNT,MAX_MULTI_OPERANDS}from'../common.js';import a151a from'lodash';import{W_ERROR,WErrors}from'../exception.js';import{CallBase}from'./base.js';import{isValidAddress,LocalMark}from'../local/local.js';import{GetAccountOrMark_Address}from'../local/index.js';import{WitnessSourceType,WitnessTargetType,query_objects}from'../query/object.js';import{bcs}from'../../bcs/index.js';import{valueToBcsBytes}from'../util.js';import{getGuardQueryInfo,GUARDQUERY}from'./guard-ins.js';import{checkType,resolveCallEnv}from'./util.js';import{isValidWowAddress}from'../../utils/sui-types.js';import{get_guardSubmissions,verify_guard}from'./passport.js';import{writeFileSync}from'fs';import{resolve}from'path';export function guardFn(a){return PackageAddress+'::guard::'+a;}export class CallGuard extends CallBase{['data'];constructor(a){super(),this['data']=a;}async['call'](a){return await this['prepare'](a),await this['exec'](a);}async['operate'](a,b,c,d){(!this['data']['table']||this['data']['table']['length']===0x0)&&W_ERROR(WErrors['InvalidParam'],'table\x20is\x20empty');!this['data']['root']&&W_ERROR(WErrors['InvalidParam'],'root\x20is\x20empty');const e=await newGuard(b,this['data']?.['description']||'',this['data']?.['table'],this['data']?.['root']);if(this['data']?.['rely']!=null){const f=await LocalMark['Instance']()['get_many_address'](this['data']['rely']['guards']),g=f['findIndex'](h=>h===undefined);g!==-0x1&&W_ERROR(WErrors['InvalidParam'],'rely.guards\x20invalid:\x20guard\x20at\x20index\x20'+g+'\x20not\x20found'),reliesAdd(b,e,f['filter'](h=>h!==undefined));}await this['new_with_mark'](a,b,ObjectType['Guard'],create(b,e),this['data']?.['namedNew']);}}export const newGuard=async(a,b,c,d)=>{!isValidDescription(b)&&W_ERROR(WErrors['IsValidDescription'],'Description\x20exceeds\x20maximum\x20length\x20'+MAX_DESCRIPTION_LENGTH);for(let m=0x0;m<c['length'];m++){const n=c[m];if(!isValidU8(n['identifier']))W_ERROR(WErrors['InvalidParam'],'table.identifier\x20'+n['identifier']+'\x20invalid');if(!n['b_submission']&&(n['value']===undefined||n['value']===null))W_ERROR(WErrors['InvalidParam'],'table.value\x20'+n['value']+'\x20with\x20identifier\x20'+n['identifier']+'\x20invalid');if(!isValidName(n['name']))W_ERROR(WErrors['InvalidParam'],'table.name');}const e=a151a['groupBy'](c,'identifier'),f=Object['keys'](e)['filter'](o=>e[o]['length']>0x1);f['length']>0x0&&W_ERROR(WErrors['InvalidParam'],'table.identifier\x20duplicates:\x20'+f['join'](',\x20'));var g=[];await buildNode(d,ValueType['Bool'],c,g);const h=g['reduce']((o,p)=>o+p['length'],0x0),j=new Uint8Array(h);let k=0x0;for(const o of g){j['set'](o,k),k+=o['length'];}j['length']>MAX_INPUT_SIZE&&W_ERROR(WErrors['NewGuardCheckFailed'],'Input\x20size\x20exceeds\x20maximum\x20limit\x20'+MAX_INPUT_SIZE);j['length']===0x0&&W_ERROR(WErrors['NewGuardCheckFailed'],'Input\x20cannot\x20be\x20empty');const l=[];for(let p=0x0;p<c['length'];p++){const q=c[p],r=parseValueType(q['value_type']);let s;q['b_submission']?(s=new Uint8Array(0x1),s[0x0]=r):((q['value']===undefined||q['value']===null)&&W_ERROR(WErrors['NewGuardCheckFailed'],'Table\x20item\x20value\x20is\x20required\x20when\x20b_submission\x20is\x20false'),s=await valueToBcsBytes(r,q['value'])),l['push'](a['moveCall']({'target':guardFn('table_item'),'arguments':[a['pure']['u8'](q['identifier']),a['pure']['bool'](q['b_submission']),a['pure']['vector']('u8',Array['from'](s)),toTxString(a,q['name'])]}));}return a['moveCall']({'target':guardFn('new'),'arguments':[toTxString(a,b),a['makeMoveVec']({'elements':l,'type':PackageAddress+'::guard::TableItem'}),a['pure']['vector']('u8',Array['from'](j))]});};export function create(a,b){return a['moveCall']({'target':guardFn('create'),'arguments':[toTxObject(a,b),a['object']['mutRegistrar'](),a['object']['clock']()]});}export function reliesAdd(a,b,c){const d=a151a['uniq'](c);d['length']>MAX_DEPENDED_COUNT&&W_ERROR(WErrors['NewGuardCheckFailed'],'Relies\x20count\x20exceeds\x20maximum\x20limit\x20'+MAX_DEPENDED_COUNT),d['forEach'](e=>{e===b&&W_ERROR(WErrors['NewGuardCheckFailed'],'Guard\x20cannot\x20rely\x20on\x20itself'),a['moveCall']({'target':guardFn('relies_add'),'arguments':[toTxObject(a,b),toTxObject(a,e),a['object']['mutRegistrar'](),a['object']['clock']()]});});}export function reliesRemove(a,b,c){const d=a151a['uniq'](c);d['length']>MAX_DEPENDED_COUNT&&W_ERROR(WErrors['NewGuardCheckFailed'],'Relies\x20count\x20exceeds\x20maximum\x20limit\x20'+MAX_DEPENDED_COUNT),d['forEach'](e=>{a['moveCall']({'target':guardFn('relies_remove'),'arguments':[toTxObject(a,b),toTxObject(a,e),a['object']['mutRegistrar']()]});});}export function reliesClear(a,b){a['moveCall']({'target':guardFn('relies_clear'),'arguments':[toTxObject(a,b),a['object']['mutRegistrar']()]});}export function reliesLogic(a,b,c){a['moveCall']({'target':guardFn('relies_logic_and'),'arguments':[toTxObject(a,b),a['pure']['bool'](c)]});}const buildNode=async(a,b,c,d)=>{const e=a;switch(e['type']){case'identifier':{const g=c['find'](h=>h['identifier']===e['identifier']);if(g){const h=parseValueType(g['value_type']);checkType(h,b,e),d['push'](bcs['U8']['serialize'](ContextType['TypeConstant'])['toBytes']()),d['push'](bcs['U8']['serialize'](e['identifier'])['toBytes']());}else W_ERROR(WErrors['InvalidParam'],'node\x20identifier\x20-\x20'+JSON['stringify'](e));break;}case'query':{const j=getGuardQueryInfo(e['query']);!j&&W_ERROR(WErrors['InvalidParam'],'query\x20not\x20found:\x20'+e['query']);checkType(j['return'],b,e);if(j['parameters']['length']===e['parameters']['length'])for(let m=e['parameters']['length']-0x1;m>=0x0;--m){await buildNode(e['parameters'][m],j['parameters'][m],c,d);}else W_ERROR(WErrors['InvalidParam'],'node\x20query\x20parameters\x20length\x20not\x20match\x20-\x20'+JSON['stringify'](e));const k=c['find'](n=>n['identifier']===e['object']['identifier']);!k&&W_ERROR(WErrors['InvalidParam'],'node\x20object\x20from\x20identifier\x20-\x20'+JSON['stringify'](e));const l=parseValueType(k['value_type']);l!==ValueType['Address']&&W_ERROR(WErrors['InvalidParam'],'object\x20to\x20query\x20must\x20be\x20address\x20in\x20table\x20'+k+'.\x20'+e['object']);d['push'](bcs['U8']['serialize'](OperatorType['TypeQuery'])['toBytes']());if(isWitnessType(e['object']['convert_witness'])){const n=WitnessTargetType(e['object']['convert_witness']);n!==j['objectType']&&W_ERROR(WErrors['InvalidParam'],'witness\x20object\x20type('+n+')\x20not\x20consistent\x20with\x20query\x20object\x20type('+j['objectType']+')');const o=WitnessSourceType(e['object']['convert_witness']);k['object_type']?k['object_type']!==o&&W_ERROR(WErrors['InvalidParam'],'witness\x20object\x20type('+o+')\x20not\x20consistent\x20with\x20query\x20object\x20type('+k['object_type']+')'):k['object_type']=o,d['push'](bcs['U8']['serialize'](e['object']['convert_witness'])['toBytes']());}else k?.['object_type']?k['object_type']!==j['objectType']&&W_ERROR(WErrors['InvalidParam'],'witness\x20object\x20type('+j['objectType']+')\x20not\x20consistent\x20with\x20query\x20object\x20type('+k['object_type']+')'):k['object_type']=j['objectType'],d['push'](bcs['U8']['serialize'](ContextType['TypeConstant'])['toBytes']());d['push'](bcs['U8']['serialize'](e['object']['identifier'])['toBytes']()),d['push'](bcs['U16']['serialize'](j['id'])['toBytes']());break;}case'logic_as_u256_greater_or_equal':case'logic_as_u256_lesser_or_equal':case'logic_as_u256_equal':case'logic_as_u256_greater':case'logic_as_u256_lesser':case'logic_equal':case'logic_and':case'logic_or':case'logic_string_contains':case'logic_string_nocase_contains':case'logic_string_nocase_equal':case'calc_number_add':case'calc_number_subtract':case'calc_number_multiply':case'calc_number_divide':case'calc_number_mod':case'calc_string_nocase_contains':case'calc_string_nocase_equal':case'calc_string_contains':{const p={'logic_as_u256_greater_or_equal':OperatorType['TypeLogicAsU256GreaterEqual'],'logic_as_u256_lesser_or_equal':OperatorType['TypeLogicAsU256LesserEqual'],'logic_as_u256_equal':OperatorType['TypeLogicAsU256Equal'],'logic_as_u256_greater':OperatorType['TypeLogicAsU256Greater'],'logic_as_u256_lesser':OperatorType['TypeLogicAsU256Lesser'],'logic_equal':OperatorType['TypeLogicEqual'],'logic_and':OperatorType['TypeLogicAnd'],'logic_or':OperatorType['TypeLogicOr'],'logic_string_contains':OperatorType['TypeStringContains'],'logic_string_nocase_contains':OperatorType['TypeStringNocaseContains'],'logic_string_nocase_equal':OperatorType['TypeStringNocaseEqual'],'calc_number_add':OperatorType['TypeNumberAdd'],'calc_number_subtract':OperatorType['TypeNumberSubtract'],'calc_number_multiply':OperatorType['TypeNumberMultiply'],'calc_number_divide':OperatorType['TypeNumberDivide'],'calc_number_mod':OperatorType['TypeNumberMod'],'calc_string_nocase_contains':OperatorType['TypeStringNocaseContains'],'calc_string_nocase_equal':OperatorType['TypeStringNocaseEqual'],'calc_string_contains':OperatorType['TypeStringContains']},r={'logic_as_u256_greater_or_equal':'number','logic_as_u256_lesser_or_equal':'number','logic_as_u256_equal':'number','logic_as_u256_greater':'number','logic_as_u256_lesser':'number','logic_equal':'variable','logic_and':ValueType['Bool'],'logic_or':ValueType['Bool'],'logic_string_contains':ValueType['String'],'logic_string_nocase_contains':ValueType['String'],'logic_string_nocase_equal':ValueType['String'],'calc_number_add':'number','calc_number_subtract':'number','calc_number_multiply':'number','calc_number_divide':'number','calc_number_mod':'number','calc_string_nocase_contains':ValueType['String'],'calc_string_nocase_equal':ValueType['String'],'calc_string_contains':ValueType['String']},s={'logic_as_u256_greater_or_equal':ValueType['Bool'],'logic_as_u256_lesser_or_equal':ValueType['Bool'],'logic_as_u256_equal':ValueType['Bool'],'logic_as_u256_greater':ValueType['Bool'],'logic_as_u256_lesser':ValueType['Bool'],'logic_equal':ValueType['Bool'],'logic_and':ValueType['Bool'],'logic_or':ValueType['Bool'],'logic_string_contains':ValueType['Bool'],'logic_string_nocase_contains':ValueType['Bool'],'logic_string_nocase_equal':ValueType['Bool'],'calc_number_add':ValueType['U256'],'calc_number_subtract':ValueType['U256'],'calc_number_multiply':ValueType['U256'],'calc_number_divide':ValueType['U256'],'calc_number_mod':ValueType['U256'],'calc_string_nocase_contains':ValueType['Bool'],'calc_string_nocase_equal':ValueType['Bool'],'calc_string_contains':ValueType['Bool']};checkType(s[e['type']],b,e),await multi_operand_op(p[e['type']],e['nodes'],r[e['type']],c,d);break;}case'vec_contains_bool':case'vec_contains_address':case'vec_contains_string':case'vec_contains_string_nocase':case'vec_contains_number':{const t={'vec_contains_bool':OperatorType['TypedValueVecContains_Bool'],'vec_contains_address':OperatorType['TypedValueVecContains_Address'],'vec_contains_string':OperatorType['TypedValueVecContains_String'],'vec_contains_string_nocase':OperatorType['TypedValueVecContains_StringNoCase'],'vec_contains_number':OperatorType['TypedValueVecContains_Number']},u={'vec_contains_bool':ValueType['VecBool'],'vec_contains_address':ValueType['VecAddress'],'vec_contains_string':ValueType['VecString'],'vec_contains_string_nocase':ValueType['VecString'],'vec_contains_number':'vec_number'},v={'vec_contains_bool':ValueType['Bool'],'vec_contains_address':ValueType['Address'],'vec_contains_string':ValueType['String'],'vec_contains_string_nocase':ValueType['String'],'vec_contains_number':'number'};checkType(ValueType['Bool'],b,e);for(let w=e['nodes']['length']-0x1;w>=0x0;--w){const x=w===0x0?u[e['type']]:v[e['type']];await buildNode(e['nodes'][w],x,c,d);}d['push'](bcs['U8']['serialize'](t[e['type']])['toBytes']()),d['push'](bcs['U8']['serialize'](e['nodes']['length'])['toBytes']());break;}case'logic_not':case'calc_string_length':case'convert_number_address':case'convert_address_number':case'convert_number_string':case'convert_string_number':case'convert_safe_u8':case'convert_safe_u16':case'convert_safe_u32':case'convert_safe_u64':case'convert_safe_u128':case'convert_safe_u256':case'value_type':case'vec_length':{const y={'logic_not':OperatorType['TypeLogicNot'],'calc_string_length':OperatorType['TypeStringLength'],'convert_number_address':OperatorType['TypeNumberAddress'],'convert_address_number':OperatorType['TypeAddressNumber'],'convert_number_string':OperatorType['TypeNumberString'],'convert_string_number':OperatorType['TypeStringNumber'],'convert_safe_u8':OperatorType['TypeSafeU8'],'convert_safe_u16':OperatorType['TypeSafeU16'],'convert_safe_u32':OperatorType['TypeSafeU32'],'convert_safe_u64':OperatorType['TypeSafeU64'],'convert_safe_u128':OperatorType['TypeSafeU128'],'convert_safe_u256':OperatorType['TypeSafeU256'],'value_type':OperatorType['TypedValueType'],'vec_length':OperatorType['TypedValueVecLength']},z={'logic_not':ValueType['Bool'],'calc_string_length':ValueType['String'],'convert_number_address':'number','convert_address_number':ValueType['Address'],'convert_number_string':'number','convert_string_number':ValueType['String'],'convert_safe_u8':'number','convert_safe_u16':'number','convert_safe_u32':'number','convert_safe_u64':'number','convert_safe_u128':'number','convert_safe_u256':'number','value_type':'variable','vec_length':'vec'},A={'logic_not':ValueType['Bool'],'calc_string_length':ValueType['U64'],'convert_number_address':ValueType['Address'],'convert_address_number':ValueType['U256'],'convert_number_string':ValueType['String'],'convert_string_number':ValueType['U256'],'convert_safe_u8':ValueType['U8'],'convert_safe_u16':ValueType['U16'],'convert_safe_u32':ValueType['U32'],'convert_safe_u64':ValueType['U64'],'convert_safe_u128':ValueType['U128'],'convert_safe_u256':ValueType['U256'],'value_type':ValueType['U8'],'vec_length':ValueType['U64']};checkType(A[e['type']],b,e),await single_operand_op(y[e['type']],e['node'],z[e['type']],c,d);break;}case'calc_string_indexof':case'calc_string_nocase_indexof':{const B={'calc_string_indexof':OperatorType['TypeStringIndexof'],'calc_string_nocase_indexof':OperatorType['TypeStringNocaseIndexof']};checkType(ValueType['U64'],b,e),await buildNode(e['nodeRight'],ValueType['String'],c,d),await buildNode(e['nodeLeft'],ValueType['String'],c,d),d['push'](bcs['U8']['serialize'](B[e['type']])['toBytes']()),d['push'](bcs['U8']['serialize'](e['order']==='forward'?0x0:0x1)['toBytes']());break;}case'vec_indexof_bool':case'vec_indexof_address':case'vec_indexof_string':case'vec_indexof_string_nocase':case'vec_indexof_number':{const C={'vec_indexof_bool':OperatorType['TypedValueVecIndexOf_Bool'],'vec_indexof_address':OperatorType['TypedValueVecIndexOf_Address'],'vec_indexof_string':OperatorType['TypedValueVecIndexOf_String'],'vec_indexof_string_nocase':OperatorType['TypedValueVecIndexOf_StringNoCase'],'vec_indexof_number':OperatorType['TypedValueVecIndexOf_Number']},D={'vec_indexof_bool':ValueType['Bool'],'vec_indexof_address':ValueType['Address'],'vec_indexof_string':ValueType['String'],'vec_indexof_string_nocase':ValueType['String'],'vec_indexof_number':'number'},E={'vec_indexof_bool':ValueType['VecBool'],'vec_indexof_address':ValueType['VecAddress'],'vec_indexof_string':ValueType['VecString'],'vec_indexof_string_nocase':ValueType['VecString'],'vec_indexof_number':'vec_number'};checkType(ValueType['U64'],b,e),await buildNode(e['nodeRight'],D[e['type']],c,d),await buildNode(e['nodeLeft'],E[e['type']],c,d),d['push'](bcs['U8']['serialize'](C[e['type']])['toBytes']()),d['push'](bcs['U8']['serialize'](e['order']==='forward'?0x0:0x1)['toBytes']());break;}case'query_reward_record_find':case'query_reward_record_count':case'query_reward_record_exists':{!isValidU8(e['object']['identifier'])&&W_ERROR(WErrors['IsValidU8'],e['type']+'\x20object\x20identifier\x20'+e['object']['identifier']+'\x20is\x20not\x20a\x20valid\x20U8\x20(0-255)');const F=c['find'](H=>H['identifier']===e['object']['identifier']);!F&&W_ERROR(WErrors['IsValidIdentifier'],e['type']+'\x20object\x20identifier\x20'+e['object']['identifier']+'\x20not\x20found\x20in\x20table');const G=await buildRewardRecordQuery(e,c,b);d['push'](...G['output']);break;}case'query_progress_history_find':case'query_progress_history_session_find':case'query_progress_history_session_forward_find':case'query_progress_history_session_count':case'query_progress_history_session_forward_count':case'query_progress_history_session_forward_retained_submission_count':{!isValidU8(e['object']['identifier'])&&W_ERROR(WErrors['IsValidU8'],e['type']+'\x20object\x20identifier\x20'+e['object']['identifier']+'\x20is\x20not\x20a\x20valid\x20U8\x20(0-255)');const H=c['find'](J=>J['identifier']===e['object']['identifier']);!H&&W_ERROR(WErrors['IsValidIdentifier'],e['type']+'\x20object\x20identifier\x20'+e['object']['identifier']+'\x20not\x20found\x20in\x20table');const I=await buildProgressQuery(e,c,b);d['push'](...I['output']);break;}case'context':{let J;switch(e['context']){case'Signer':J=ContextType['TypeSigner'];break;case'Clock':J=ContextType['TypeClock'];break;case'Guard':J=ContextType['TypeGuard'];break;default:W_ERROR(WErrors['InvalidParam'],'Invalid\x20context\x20type:\x20'+e['context']);}d['push'](bcs['U8']['serialize'](J)['toBytes']());e['context']==='Clock'?checkType(ContextType['TypeClock'],b,e):checkType(ValueType['Address'],b,e);break;}default:W_ERROR(WErrors['InvalidParam'],'node:'+JSON['stringify'](e));}},multi_operand_op=async(a,b,c,d,e)=>{(b['length']<0x2||b['length']>MAX_MULTI_OPERANDS)&&W_ERROR(WErrors['InvalidParam'],'op\x20'+a+'\x20parameters\x20length\x20must\x20>=\x202\x20and\x20<=\x20\x20\x0a\x09\x09\x09\x09'+MAX_MULTI_OPERANDS+'.\x20\x09parameters:\x0a\x09\x09\x09\x09'+JSON['stringify'](b));for(let f=b['length']-0x1;f>=0x0;--f){await buildNode(b[f],c,d,e);}e['push'](bcs['U8']['serialize'](a)['toBytes']()),e['push'](bcs['U8']['serialize'](b['length'])['toBytes']());},getNewIdentifier=(a,b)=>{let c=0x0;while(c<0x100&&a['find'](d=>d['identifier']===c)){c++;}return c>=0x100&&W_ERROR(WErrors['InvalidParam'],b+'\x20cannot\x20find\x20available\x20identifier\x20in\x20table\x20(all\x20256\x20identifiers\x20are\x20used)'),c;},StoreFromIdFilter=bcs['struct']('StoreFromIdFilter',{'mode':bcs['U8'],'value':bcs['option'](bcs['Address'])}),RecordQueryConditionsBCS=bcs['struct']('RecordQueryConditions',{'recipient':bcs['Address'],'guard':bcs['option'](bcs['Address']),'time_min':bcs['option'](bcs['U64']),'time_max':bcs['option'](bcs['U64']),'amount_min':bcs['option'](bcs['U64']),'amount_max':bcs['option'](bcs['U64']),'store_from_id':bcs['option'](StoreFromIdFilter)}),buildRecordQueryConditionsFromConst=a=>{const b={'recipient':a['recipient'],'guard':a['guard']??null,'time_min':a['timeMin']??null,'time_max':a['timeMax']??null,'amount_min':a['amountMin']??null,'amount_max':a['amountMax']??null,'store_from_id':a['storeFromId']?{'mode':a['storeFromId']==='not_exists'?0x0:a['storeFromId']==='exists'?0x1:0x2,'value':typeof a['storeFromId']==='object'?a['storeFromId']['eq']:null}:null};return RecordQueryConditionsBCS['serialize'](b)['toBytes']();},buildRewardRecordQuery=async(a,b,c)=>{const d=a['recipient'];d['type']!=='identifier'&&W_ERROR(WErrors['InvalidParam'],a['type']+'\x20recipient\x20must\x20be\x20an\x20identifier');const e=d,f=b[e['identifier']];!f&&W_ERROR(WErrors['InvalidParam'],a['type']+'\x20recipient\x20identifier\x20'+e['identifier']+'\x20not\x20found\x20in\x20table');f['value_type']!==ValueType['Address']&&W_ERROR(WErrors['InvalidParam'],a['type']+'\x20recipient\x20must\x20be\x20Address\x20type,\x20got\x20'+f['value_type']);a['where']['timeMin']!==undefined&&!isValidU64(a['where']['timeMin'])&&W_ERROR(WErrors['IsValidU64'],'Reward\x20record\x20query\x20timeMin\x20\x22'+a['where']['timeMin']+'\x22\x20is\x20not\x20a\x20valid\x20U64');a['where']['timeMax']!==undefined&&!isValidU64(a['where']['timeMax'])&&W_ERROR(WErrors['IsValidU64'],'Reward\x20record\x20query\x20timeMax\x20\x22'+a['where']['timeMax']+'\x22\x20is\x20not\x20a\x20valid\x20U64');a['where']['amountMin']!==undefined&&!isValidU64(a['where']['amountMin'])&&W_ERROR(WErrors['IsValidU64'],'Reward\x20record\x20query\x20amountMin\x20\x22'+a['where']['amountMin']+'\x22\x20is\x20not\x20a\x20valid\x20U64');a['where']['amountMax']!==undefined&&!isValidU64(a['where']['amountMax'])&&W_ERROR(WErrors['IsValidU64'],'Reward\x20record\x20query\x20amountMax\x20\x22'+a['where']['amountMax']+'\x22\x20is\x20not\x20a\x20valid\x20U64');const g={'recipient':f['value']};if(a['where']['guard']){const o=await LocalMark['Instance']()['get_address'](a['where']['guard']);!o&&W_ERROR(WErrors['AddressNotFound'],'Reward\x20record\x20query\x20guard\x20\x22'+a['where']['guard']+'\x22\x20not\x20found\x20in\x20LocalMark'),g['guard']=o;}if(a['where']['timeMin']!==undefined)g['timeMin']=a['where']['timeMin'];if(a['where']['timeMax']!==undefined)g['timeMax']=a['where']['timeMax'];if(a['where']['amountMin']!==undefined)g['amountMin']=a['where']['amountMin'];if(a['where']['amountMax']!==undefined)g['amountMax']=a['where']['amountMax'];if(a['where']['storeFromId']!==undefined){if(typeof a['where']['storeFromId']==='object'&&'eq'in a['where']['storeFromId']){const p=await LocalMark['Instance']()['get_address'](a['where']['storeFromId']['eq']);!p&&W_ERROR(WErrors['AddressNotFound'],'Reward\x20record\x20query\x20storeFromId\x20\x22'+a['where']['storeFromId']['eq']+'\x22\x20not\x20found\x20in\x20LocalMark'),g['storeFromId']={'eq':p};}else g['storeFromId']=a['where']['storeFromId'];}const h=buildRecordQueryConditionsFromConst(g);let i,j;switch(a['type']){case'query_reward_record_find':i=a['find']==='first'?0x65a:0x65b,j=ValueType['U64'];break;case'query_reward_record_count':i=0x65c,j=ValueType['U64'];break;case'query_reward_record_exists':i=0x65d,j=ValueType['Bool'];break;}const k=a['object']['identifier'],l=getNewIdentifier(b,a['type']);b['push']({'identifier':l,'value_type':ValueType['VecU8'],'value':Array['from'](h),'b_submission':![],'name':'query_conditions_'+l});const m=b['find'](q=>q['identifier']===k);m&&(m['object_type']=ObjectType['Reward']);const n=[];return n['push'](bcs['U8']['serialize'](ContextType['TypeConstant'])['toBytes']()),n['push'](bcs['U8']['serialize'](l)['toBytes']()),n['push'](bcs['U8']['serialize'](OperatorType['TypeQuery'])['toBytes']()),n['push'](bcs['U8']['serialize'](ContextType['TypeConstant'])['toBytes']()),n['push'](bcs['U8']['serialize'](k)['toBytes']()),n['push'](bcs['U16']['serialize'](i)['toBytes']()),checkType(j,c,a),{'output':n,'returnType':j};},ProgressHistoryFindConditionsBCS=bcs['struct']('ProgressHistoryFindConditions',{'node':bcs['option'](bcs['String']),'next_node':bcs['option'](bcs['String']),'time_min':bcs['option'](bcs['U64']),'time_max':bcs['option'](bcs['U64']),'find':bcs['U8']}),ProgressSessionFindConditionsBCS=bcs['struct']('ProgressSessionFindConditions',{'next_node':bcs['option'](bcs['String']),'find':bcs['U8']}),ProgressForwardFindConditionsBCS=bcs['struct']('ProgressForwardFindConditions',{'who':bcs['option'](bcs['Address']),'operation':bcs['option'](bcs['String']),'accomplished':bcs['option'](bcs['Bool']),'time_min':bcs['option'](bcs['U64']),'time_max':bcs['option'](bcs['U64']),'find':bcs['U8']}),buildProgressHistoryFindConditions=a=>{a['where']['node']!==undefined&&!isValidName(a['where']['node'])&&W_ERROR(WErrors['IsValidName'],'Progress\x20history\x20find\x20node\x20\x22'+a['where']['node']+'\x22\x20is\x20not\x20a\x20valid\x20name');a['where']['nextNode']!==undefined&&!isValidName(a['where']['nextNode'])&&W_ERROR(WErrors['IsValidName'],'Progress\x20history\x20find\x20nextNode\x20\x22'+a['where']['nextNode']+'\x22\x20is\x20not\x20a\x20valid\x20name');a['where']['timeMin']!==undefined&&!isValidU64(a['where']['timeMin'])&&W_ERROR(WErrors['IsValidU64'],'Progress\x20history\x20find\x20timeMin\x20\x22'+a['where']['timeMin']+'\x22\x20is\x20not\x20a\x20valid\x20U64');a['where']['timeMax']!==undefined&&!isValidU64(a['where']['timeMax'])&&W_ERROR(WErrors['IsValidU64'],'Progress\x20history\x20find\x20timeMax\x20\x22'+a['where']['timeMax']+'\x22\x20is\x20not\x20a\x20valid\x20U64');a['where']['indexMin']!==undefined&&!isValidU64(a['where']['indexMin'])&&W_ERROR(WErrors['IsValidU64'],'Progress\x20history\x20find\x20indexMin\x20\x22'+a['where']['indexMin']+'\x22\x20is\x20not\x20a\x20valid\x20U64');a['where']['indexMax']!==undefined&&!isValidU64(a['where']['indexMax'])&&W_ERROR(WErrors['IsValidU64'],'Progress\x20history\x20find\x20indexMax\x20\x22'+a['where']['indexMax']+'\x22\x20is\x20not\x20a\x20valid\x20U64');const b={'node':a['where']['node']??null,'next_node':a['where']['nextNode']??null,'time_min':a['where']['timeMin']??null,'time_max':a['where']['timeMax']??null,'index_min':a['where']['indexMin']??null,'index_max':a['where']['indexMax']??null,'find':a['find']==='first'?0x0:0x1};return ProgressHistoryFindConditionsBCS['serialize'](b)['toBytes']();},buildProgressSessionFindConditions=a=>{a['where']['nextNode']!==undefined&&!isValidName(a['where']['nextNode'])&&W_ERROR(WErrors['IsValidName'],'Progress\x20session\x20find\x20nextNode\x20\x22'+a['where']['nextNode']+'\x22\x20is\x20not\x20a\x20valid\x20name');const b={'next_node':a['where']['nextNode']??null,'find':a['find']==='first'?0x0:0x1};return ProgressSessionFindConditionsBCS['serialize'](b)['toBytes']();},buildProgressForwardFindConditions=async a=>{a['where']['operation']!==undefined&&!isValidName(a['where']['operation'])&&W_ERROR(WErrors['IsValidName'],'Progress\x20forward\x20find\x20operation\x20\x22'+a['where']['operation']+'\x22\x20is\x20not\x20a\x20valid\x20name');a['where']['timeMin']!==undefined&&!isValidU64(a['where']['timeMin'])&&W_ERROR(WErrors['IsValidU64'],'Progress\x20forward\x20find\x20timeMin\x20\x22'+a['where']['timeMin']+'\x22\x20is\x20not\x20a\x20valid\x20U64');a['where']['timeMax']!==undefined&&!isValidU64(a['where']['timeMax'])&&W_ERROR(WErrors['IsValidU64'],'Progress\x20forward\x20find\x20timeMax\x20\x22'+a['where']['timeMax']+'\x22\x20is\x20not\x20a\x20valid\x20U64');let b=null;if(a['where']['who']!==undefined){const d=await GetAccountOrMark_Address({'name_or_address':a['where']['who']});!d&&W_ERROR(WErrors['AddressNotFound'],'Progress\x20forward\x20find\x20who\x20\x22'+a['where']['who']+'\x22\x20not\x20found\x20in\x20LocalMark\x20or\x20accounts'),b=d;}const c={'who':b,'operation':a['where']['operation']??null,'accomplished':a['where']['accomplished']??null,'time_min':a['where']['timeMin']??null,'time_max':a['where']['timeMax']??null,'find':a['find']==='first'?0x0:0x1};return ProgressForwardFindConditionsBCS['serialize'](c)['toBytes']();},buildProgressQuery=async(a,b,c)=>{const d=[];let e;const f=ValueType['U64'];let g;switch(a['type']){case'query_progress_history_find':{e=0x4fa,g=buildProgressHistoryFindConditions(a);break;}case'query_progress_history_session_find':{e=0x4fb,g=buildProgressSessionFindConditions(a);break;}case'query_progress_history_session_forward_find':{e=0x4fc,g=await buildProgressForwardFindConditions(a);break;}case'query_progress_history_session_count':{e=0x4fd,g=new Uint8Array(0x0);break;}case'query_progress_history_session_forward_count':{e=0x4fe,g=new Uint8Array(0x0);break;}case'query_progress_history_session_forward_retained_submission_count':{e=0x4ff,g=new Uint8Array(0x0);break;}}const h=a['object']['identifier'],i=getNewIdentifier(b,a['type']);b['push']({'identifier':i,'value_type':ValueType['VecU8'],'value':Array['from'](g),'b_submission':![],'name':'query_conditions_'+i});if(a['type']==='query_progress_history_find'||a['type']==='query_progress_history_session_find'||a['type']==='query_progress_history_session_forward_find'||a['type']==='query_progress_history_session_count'||a['type']==='query_progress_history_session_forward_count'||a['type']==='query_progress_history_session_forward_retained_submission_count'){const j=b['find'](k=>k['identifier']===h);j&&(j['object_type']=ObjectType['Progress']);}(a['type']==='query_progress_history_find'||a['type']==='query_progress_history_session_find'||a['type']==='query_progress_history_session_forward_find')&&(d['push'](bcs['U8']['serialize'](ContextType['TypeConstant'])['toBytes']()),d['push'](bcs['U8']['serialize'](i)['toBytes']()));switch(a['type']){case'query_progress_history_session_forward_retained_submission_count':{await buildNode(a['forwardIdx'],ValueType['U64'],b,d),await buildNode(a['sessionIdx'],ValueType['U64'],b,d),await buildNode(a['historyIdx'],ValueType['U64'],b,d);break;}case'query_progress_history_session_forward_find':case'query_progress_history_session_forward_count':{await buildNode(a['sessionIdx'],ValueType['U64'],b,d),await buildNode(a['historyIdx'],ValueType['U64'],b,d);break;}case'query_progress_history_session_find':case'query_progress_history_session_count':{await buildNode(a['historyIdx'],ValueType['U64'],b,d);break;}case'query_progress_history_find':{break;}}return d['push'](bcs['U8']['serialize'](OperatorType['TypeQuery'])['toBytes']()),d['push'](bcs['U8']['serialize'](ContextType['TypeConstant'])['toBytes']()),d['push'](bcs['U8']['serialize'](h)['toBytes']()),d['push'](bcs['U16']['serialize'](e)['toBytes']()),checkType(f,c,a),{'output':d,'returnType':f};},single_operand_op=async(a,b,c,d,e)=>{await buildNode(b,c,d,e),e['push'](bcs['U8']['serialize'](a)['toBytes']());};export const guard2file=async(a,b,c='json',d)=>{const f=await query_objects({'objects':[a],'network':d}),g=f['objects'];if(!g||g['length']===0x0||g[0x0]['type']!=='Guard'){W_ERROR(WErrors['InvalidParam'],'guard2file:\x20Guard\x20object\x20not\x20found:\x20'+a);return;}const h=g[0x0];if(!h){W_ERROR(WErrors['InvalidParam'],'guard2file:\x20Failed\x20to\x20get\x20Guard\x20object\x20data:\x20'+a);return;}let i;c==='json'?i=generateGuardJson(h):i=generateGuardMarkdown(h);try{const j=resolve(b);writeFileSync(j,i,'utf-8');}catch(k){W_ERROR(WErrors['InvalidParam'],'guard2file:\x20Failed\x20to\x20write\x20file\x20\x27'+b+'\x27:\x20'+k['message']);}};const generateGuardJson=a=>{const b={};return a['description']&&(b['description']=a['description']),a['table']&&a['table']['length']>0x0&&(b['table']=a['table']['map'](c=>({'identifier':c['identifier'],'b_submission':c['b_submission'],'value_type':c['value_type'],'value':c['value'],'name':c['name']}))),a['root']&&(b['root']=a['root']),a['relies']&&a['relies']['length']>0x0&&(b['rely']={'guards':a['relies'],'logic_or':!a['relies_logic_and']}),JSON['stringify'](b,null,0x2);},generateGuardMarkdown=a=>{const b=[];b['push']('#\x20Guard\x20Definition'),b['push'](''),b['push']('**Object\x20ID:**\x20'+a['object']),b['push'](''),b['push']('##\x20Summary'),b['push']('');const c=a['description']||'',d=a['table']?a['table']['length']:0x0;let e=''+(c['length']>0x64?c['substring'](0x0,0x61)+'...':c);e+='\x20['+d+'\x20tables]',b['push'](e),b['push'](''),b['push']('##\x20Description'),b['push'](''),b['push'](a['description']||''),b['push'](''),b['push']('##\x20Table\x20(Data\x20Definitions)'),b['push'](''),b['push']('|\x20Identifier\x20|\x20b_submission\x20|\x20value_type\x20|\x20value\x20|\x20name\x20|'),b['push']('|------------|--------------|------------|-------|------|');if(a['table']&&a['table']['length']>0x0)for(const f of a['table']){const g=parseValueType(f['value_type']),h=valueTypeToString(g),i=formatValueForMarkdown(f['value']);b['push']('|\x20'+f['identifier']+'\x20|\x20'+f['b_submission']+'\x20|\x20'+h+'\x20('+f['value_type']+')\x20|\x20'+i+'\x20|\x20'+f['name']+'\x20|');}else b['push']('|\x20-\x20|\x20-\x20|\x20-\x20|\x20-\x20|\x20-\x20|');b['push'](''),b['push']('##\x20Root\x20(Computational\x20Tree)'),b['push'](''),b['push']('The\x20root\x20node\x20MUST\x20return\x20a\x20Bool\x20value\x20(pass/fail).'),b['push']('');if(a['root']){b['push']('```json'),b['push'](JSON['stringify'](a['root'],null,0x2)),b['push']('```'),b['push']('');const j=generateNodeComments(a['root']);if(j['length']>0x0){b['push']('###\x20Node\x20Comments'),b['push']('');for(const k of j){b['push']('-\x20**'+k['type']+'**:\x20'+k['description']);}b['push']('');}}else b['push']('*No\x20root\x20node\x20data\x20available*'),b['push']('');if(a['relies']&&a['relies']['length']>0x0){b['push']('##\x20Rely\x20(Dependencies)'),b['push'](''),b['push']('**Logic:**\x20'+(a['relies_logic_and']?'AND':'OR')),b['push'](''),b['push']('**Dependent\x20Guards:**');for(const l of a['relies']){b['push']('-\x20'+l);}b['push']('');}return b['join']('\x0a');},formatValueForMarkdown=a=>{if(a===undefined||a===null)return'-';if(typeof a==='boolean')return a?'true':'false';if(typeof a==='string')return a['startsWith']('0x')&&a['length']===0x42&&(!isValidAddress(a)&&W_ERROR(WErrors['IsValidAddress'],'Invalid\x20address:\x20'+a)),a;if(typeof a==='number')return a['toString']();if(Array['isArray'](a)){if(a['length']===0x0)return'[]';if(a['length']>0x3)return'['+a['slice'](0x0,0x3)['join'](',\x20')+',\x20...\x20('+a['length']+'\x20items)]';return'['+a['join'](',\x20')+']';}if(typeof a==='object')return'{...}';return String(a);};export const generateNodeComments=(a,b=[])=>{if(!a)return b;if(a['type']==='query'){const c=typeof a['query']==='number'?a['query']:undefined;if(c!==undefined){const d=GUARDQUERY['find'](e=>e['id']===c);d&&b['push']({'type':'query('+a['query']+')','description':d['name']+':\x20'+d['description']});}}else{if(a['type']['startsWith']('query_reward_record_')){const e=a['type']['replace']('query_','')['replace'](/_/g,'.'),f=GUARDQUERY['find'](g=>g['name']===e);f?b['push']({'type':a['type'],'description':f['name']+':\x20'+f['description']}):b['push']({'type':a['type'],'description':'Reward\x20Record\x20query:\x20'+a['type']['replace'](/_/g,'\x20')});}else{if(a['type']['startsWith']('query_progress_history_')){const g=a['type']['replace']('query_','')['replace'](/_/g,'.'),h=GUARDQUERY['find'](i=>i['name']===g);h?b['push']({'type':a['type'],'description':h['name']+':\x20'+h['description']}):b['push']({'type':a['type'],'description':'Progress\x20History\x20query:\x20'+a['type']['replace'](/_/g,'\x20')});}else{if(a['type']['startsWith']('logic_'))b['push']({'type':a['type'],'description':'Logic\x20operation:\x20'+a['type']['replace'](/_/g,'\x20')});else{if(a['type']['startsWith']('calc_'))b['push']({'type':a['type'],'description':'Calculation:\x20'+a['type']['replace'](/_/g,'\x20')});else a['type']['startsWith']('convert_')&&b['push']({'type':a['type'],'description':'Type\x20conversion:\x20'+a['type']['replace'](/_/g,'\x20')});}}}}if('nodes'in a&&Array['isArray'](a['nodes']))for(const i of a['nodes']){generateNodeComments(i,b);}'node'in a&&a['node']&&generateNodeComments(a['node'],b);if('parameters'in a&&Array['isArray'](a['parameters']))for(const j of a['parameters']){generateNodeComments(j,b);}return'nodeLeft'in a&&a['nodeLeft']&&generateNodeComments(a['nodeLeft'],b),'nodeRight'in a&&a['nodeRight']&&generateNodeComments(a['nodeRight'],b),'recipient'in a&&a['recipient']&&generateNodeComments(a['recipient'],b),'historyIdx'in a&&a['historyIdx']&&generateNodeComments(a['historyIdx'],b),'sessionIdx'in a&&a['sessionIdx']&&generateNodeComments(a['sessionIdx'],b),'forwardIdx'in a&&a['forwardIdx']&&generateNodeComments(a['forwardIdx'],b),b;};const valueTypeToString=a=>{const b={[ValueType['Bool']]:'Bool',[ValueType['Address']]:'Address',[ValueType['String']]:'String',[ValueType['U8']]:'U8',[ValueType['U16']]:'U16',[ValueType['U32']]:'U32',[ValueType['U64']]:'U64',[ValueType['U128']]:'U128',[ValueType['U256']]:'U256',[ValueType['VecBool']]:'VecBool',[ValueType['VecAddress']]:'VecAddress',[ValueType['VecString']]:'VecString',[ValueType['VecU8']]:'VecU8',[ValueType['VecU16']]:'VecU16',[ValueType['VecU32']]:'VecU32',[ValueType['VecU64']]:'VecU64',[ValueType['VecU128']]:'VecU128',[ValueType['VecU256']]:'VecU256',[ValueType['VecVecU8']]:'VecVecU8',[ValueType['Value']]:'Value'};return b[a]||'Unknown('+a+')';};export const gen_passport=async(a,b,c)=>{!isValidWowAddress(b)&&W_ERROR(WErrors['InvalidParam'],'guard\x20invalid:\x20guard\x20empty');await resolveCallEnv(a);const d=await get_guardSubmissions(a,[b]);return d['submission']['length']>0x0?!c?{'type':'submission','guard':d['guard'],'submission':d['submission']}:await verify_guard(a,c):await verify_guard(a,{'type':'submission','guard':[{'object':b,'impack':!![]}],'submission':[]});};function detectFileFormatFromContent(a){const b=a['trim']();if(b['startsWith']('{')||b['startsWith']('['))return'json';return'markdown';}function extractJsonFromMarkdown(a){const b=/```(?:json)?\s*\n([\s\S]*?)```/g;let c,d=null;while((c=b['exec'](a))!==null){const e=c[0x1]['trim']();if(e['startsWith']('{')||e['startsWith']('[')){const f=a['substring'](0x0,c['index']),g=(f['match'](/\n/g)||[])['length']+0x1;d={'json':e,'lineOffset':g};}}return d;}function parseTableFromMarkdown(a){const b=a['match'](/```(?:json)?\s*\n([\s\S]*?)```/);if(b)try{const d=JSON['parse'](b[0x1]);if(Array['isArray'](d))return d;}catch{}const c=a['match'](/\|[^\n]+\|/g);if(c&&c['length']>0x2)return c['slice'](0x2)['map'](e=>{const f=e['split']('|')['filter'](j=>j['trim']())['map'](j=>j['trim']()),g=f[0x2];let h;const i=g['match'](/\((\d+)\)/);if(i)h=parseInt(i[0x1],0xa);else{const j=g['match'](/^\s*(\d+)\s*$/);if(j)h=parseInt(j[0x1],0xa);else{const k=g['match'](/^([A-Za-z]+)/);if(k)h=k[0x1];else throw new Error('Invalid\x20value_type\x20in\x20table\x20row:\x20\x22'+g+'\x22.\x20Expected\x20a\x20number\x20(0-19)\x20or\x20type\x20name\x20(e.g.,\x20\x22U64\x22,\x20\x22Address\x22)');}}return{'identifier':parseInt(f[0x0],0xa),'b_submission':f[0x1]['toLowerCase']()==='true','value_type':h,'value':f[0x3]==='-'?undefined:f[0x3],'name':f[0x4]==='-'?undefined:f[0x4]};});return undefined;}function parseRelyFromMarkdown(a){const b=a['match'](/\*\*Logic:\*\*\s*(AND|OR)/i),c=a['match'](/^\s*[-*]\s*(\S+)$/gm);if(b||c)return{'logic_or':b?b[0x1]['toUpperCase']()==='OR':![],'guards':c?c['map'](d=>d['replace'](/^\s*[-*]\s*/,'')['trim']()):[]};return undefined;}export function parseGuardFromMarkdown(a){const b=[],c={},d=extractJsonFromMarkdown(a);if(d)try{const f=JSON['parse'](d['json']);Object['assign'](c,f);}catch(g){b['push']({'message':'Failed\x20to\x20parse\x20JSON\x20from\x20code\x20block:\x20'+g['message'],'path':'/','line':d['lineOffset']});}if(!c['description']){const h=a['match'](/(?:^|\n)#+\s*(?:Description|Description|Description)[^\n]*\n+([^\n#]+)/i);h&&(c['description']=h[0x1]['trim']());}if(!c['table']){const i=a['match'](/(?:^|\n)#+\s*(?:Table|Data Table|数据表)[^\n]*\n+([\s\S]*?)(?=(?:\n#+|$))/i);if(i){const j=parseTableFromMarkdown(i[0x1]);j&&(c['table']=j);}}if(!c['root']){const k=a['match'](/(?:^|\n)#+\s*(?:Root|根节点)[^\n]*\n+([\s\S]*?)(?=(?:\n#+|$))/i);if(k){const l=k[0x1],m=l['match'](/```(?:json)?\s*\n([\s\S]*?)```/);if(m)try{c['root']=JSON['parse'](m[0x1]);}catch(n){b['push']({'message':'Failed\x20to\x20parse\x20root\x20JSON:\x20'+n['message'],'path':'/root'});}}}if(!c['rely']){const o=a['match'](/(?:^|\n)#+\s*(?:Rely|Dependencies|依赖)[^\n]*\n+([\s\S]*?)(?=(?:\n#+|$))/i);if(o){const p=parseRelyFromMarkdown(o[0x1]);p&&(c['rely']=p);}}if(!c['root'])return b['push']({'message':'Guard\x20root\x20node\x20not\x20found\x20in\x20markdown\x20file','path':'/root'}),{'success':![],'errors':b};return{'success':!![],'data':c,'errors':b};}export function parseGuardFile(a,b){const c=b??detectFileFormatFromContent(a);if(c==='json')try{const d=JSON['parse'](a);if(!d['root'])return{'success':![],'errors':[{'message':'Missing\x20required\x20field:\x20root','path':'/root'}]};return{'success':!![],'data':d,'errors':[]};}catch(f){return{'success':![],'errors':[{'message':'JSON\x20parse\x20error:\x20'+f['message'],'path':'/'}]};}return parseGuardFromMarkdown(a);}export function validateGuardNode(a){const b=[];if(!a||typeof a!=='object')return b['push']({'message':'GuardNode\x20must\x20be\x20an\x20object','path':'/'}),{'success':![],'errors':b};const c=a;if(!c['type']||typeof c['type']!=='string')return b['push']({'message':'GuardNode\x20must\x20have\x20a\x20\x27type\x27\x20property','path':'/type'}),{'success':![],'errors':b};const d=['identifier','query','context','logic_not','logic_and','logic_or','logic_equal','logic_as_u256_greater_or_equal','logic_as_u256_lesser_or_equal','logic_as_u256_greater','logic_as_u256_lesser','logic_as_u256_equal','logic_string_contains','logic_string_nocase_contains','logic_string_nocase_equal','calc_number_add','calc_number_subtract','calc_number_multiply','calc_number_divide','calc_number_mod','calc_string_length','calc_string_nocase_contains','calc_string_nocase_equal','calc_string_contains','calc_string_indexof','calc_string_nocase_indexof','convert_number_address','convert_address_number','convert_number_string','convert_string_number','convert_safe_u8','convert_safe_u16','convert_safe_u32','convert_safe_u64','convert_safe_u128','convert_safe_u256','value_type','vec_length','vec_contains_bool','vec_contains_address','vec_contains_string','vec_contains_string_nocase','vec_contains_number','vec_indexof_bool','vec_indexof_address','vec_indexof_string','vec_indexof_string_nocase','vec_indexof_number','query_reward_record_find','query_reward_record_count','query_reward_record_exists','query_progress_history_find','query_progress_history_session_find','query_progress_history_session_forward_find','query_progress_history_session_count','query_progress_history_session_forward_count','query_progress_history_session_forward_retained_submission_count'];return!d['includes'](c['type'])&&b['push']({'message':'Invalid\x20GuardNode\x20type:\x20'+c['type'],'path':'/type'}),{'success':b['length']===0x0,'errors':b};}export function formatGuardParseErrors(a){return a['map'](b=>{let c='Path:\x20'+b['path'];return b['line']!==undefined&&b['column']!==undefined&&(c+='\x20(line\x20'+b['line']+',\x20column\x20'+b['column']+')'),c+='\x0a\x20\x20Error:\x20'+b['message'],c;})['join']('\x0a\x0a');}