wowok 2.1.10 → 2.1.13
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.
- package/dist/cjs/bcs/bcs.d.ts +199 -199
- package/dist/cjs/bcs/bcs.js +273 -318
- package/dist/cjs/bcs/bcs.js.map +1 -0
- package/dist/cjs/bcs/effects.d.ts +109 -109
- package/dist/cjs/bcs/effects.js +205 -230
- package/dist/cjs/bcs/effects.js.map +1 -0
- package/dist/cjs/bcs/index.d.ts +1 -2584
- package/dist/cjs/bcs/index.js +61 -76
- package/dist/cjs/bcs/index.js.map +1 -0
- package/dist/cjs/bcs/pure.js +38 -58
- package/dist/cjs/bcs/pure.js.map +1 -0
- package/dist/cjs/bcs/type-tag-serializer.js +102 -114
- package/dist/cjs/bcs/type-tag-serializer.js.map +1 -0
- package/dist/cjs/bcs/types.js +6 -23
- package/dist/cjs/bcs/types.js.map +1 -0
- package/dist/cjs/client/index.js +17 -33
- package/dist/cjs/client/index.js.map +1 -0
- package/dist/cjs/client/network.js +25 -40
- package/dist/cjs/client/network.js.map +1 -0
- package/dist/cjs/cryptography/index.js +29 -45
- package/dist/cjs/cryptography/index.js.map +1 -0
- package/dist/cjs/cryptography/intent.d.ts +1 -1
- package/dist/cjs/cryptography/intent.js +20 -31
- package/dist/cjs/cryptography/intent.js.map +1 -0
- package/dist/cjs/cryptography/keypair.js +102 -116
- package/dist/cjs/cryptography/keypair.js.map +1 -0
- package/dist/cjs/cryptography/mnemonics.js +43 -41
- package/dist/cjs/cryptography/mnemonics.js.map +1 -0
- package/dist/cjs/cryptography/publickey.js +112 -134
- package/dist/cjs/cryptography/publickey.js.map +1 -0
- package/dist/cjs/cryptography/signature-scheme.js +24 -43
- package/dist/cjs/cryptography/signature-scheme.js.map +1 -0
- package/dist/cjs/cryptography/signature.d.ts +2 -24
- package/dist/cjs/cryptography/signature.js +50 -67
- package/dist/cjs/cryptography/signature.js.map +1 -0
- package/dist/cjs/experimental/cache.js +65 -0
- package/dist/cjs/experimental/cache.js.map +1 -0
- package/dist/cjs/experimental/client.js +27 -0
- package/dist/cjs/experimental/client.js.map +1 -0
- package/dist/cjs/experimental/core.js +89 -0
- package/dist/cjs/experimental/core.js.map +1 -0
- package/dist/cjs/experimental/errors.js +32 -0
- package/dist/cjs/experimental/errors.js.map +1 -0
- package/dist/cjs/experimental/index.js +15 -0
- package/dist/cjs/experimental/index.js.map +1 -0
- package/dist/cjs/experimental/persistent-storage.js +343 -0
- package/dist/cjs/experimental/persistent-storage.js.map +1 -0
- package/dist/cjs/experimental/persistent-storage.test.js +200 -0
- package/dist/cjs/experimental/persistent-storage.test.js.map +1 -0
- package/dist/cjs/experimental/transports/utils.js +104 -0
- package/dist/cjs/experimental/transports/utils.js.map +1 -0
- package/dist/cjs/experimental/types.js +6 -0
- package/dist/cjs/experimental/types.js.map +1 -0
- package/dist/cjs/faucet/faucet.js +106 -124
- package/dist/cjs/faucet/faucet.js.map +1 -0
- package/dist/cjs/faucet/index.js +12 -28
- package/dist/cjs/faucet/index.js.map +1 -0
- package/dist/cjs/grpc/client.js +47 -62
- package/dist/cjs/grpc/client.js.map +1 -0
- package/dist/cjs/grpc/core.js +580 -617
- package/dist/cjs/grpc/core.js.map +1 -0
- package/dist/cjs/grpc/index.js +9 -25
- package/dist/cjs/grpc/index.js.map +1 -0
- package/dist/cjs/grpc/proto/google/protobuf/any.js +168 -135
- package/dist/cjs/grpc/proto/google/protobuf/any.js.map +1 -0
- package/dist/cjs/grpc/proto/google/protobuf/duration.js +105 -90
- package/dist/cjs/grpc/proto/google/protobuf/duration.js.map +1 -0
- package/dist/cjs/grpc/proto/google/protobuf/empty.js +50 -28
- package/dist/cjs/grpc/proto/google/protobuf/empty.js.map +1 -0
- package/dist/cjs/grpc/proto/google/protobuf/field_mask.js +96 -75
- package/dist/cjs/grpc/proto/google/protobuf/field_mask.js.map +1 -0
- package/dist/cjs/grpc/proto/google/protobuf/struct.js +266 -215
- package/dist/cjs/grpc/proto/google/protobuf/struct.js.map +1 -0
- package/dist/cjs/grpc/proto/google/protobuf/timestamp.js +150 -131
- package/dist/cjs/grpc/proto/google/protobuf/timestamp.js.map +1 -0
- package/dist/cjs/grpc/proto/google/rpc/error_details.js +331 -302
- package/dist/cjs/grpc/proto/google/rpc/error_details.js.map +1 -0
- package/dist/cjs/grpc/proto/google/rpc/status.js +50 -50
- package/dist/cjs/grpc/proto/google/rpc/status.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/argument.js +84 -68
- package/dist/cjs/grpc/proto/sui/rpc/v2/argument.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/balance_change.js +45 -50
- package/dist/cjs/grpc/proto/sui/rpc/v2/balance_change.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/bcs.js +38 -43
- package/dist/cjs/grpc/proto/sui/rpc/v2/bcs.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint.js +70 -75
- package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_contents.js +79 -81
- package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_contents.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_summary.js +183 -166
- package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_summary.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/effects.js +369 -296
- package/dist/cjs/grpc/proto/sui/rpc/v2/effects.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/epoch.js +80 -85
- package/dist/cjs/grpc/proto/sui/rpc/v2/epoch.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/error_reason.js +31 -28
- package/dist/cjs/grpc/proto/sui/rpc/v2/error_reason.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/event.js +81 -83
- package/dist/cjs/grpc/proto/sui/rpc/v2/event.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/executed_transaction.js +80 -85
- package/dist/cjs/grpc/proto/sui/rpc/v2/executed_transaction.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/execution_status.js +876 -506
- package/dist/cjs/grpc/proto/sui/rpc/v2/execution_status.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/gas_cost_summary.js +56 -61
- package/dist/cjs/grpc/proto/sui/rpc/v2/gas_cost_summary.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/input.js +103 -83
- package/dist/cjs/grpc/proto/sui/rpc/v2/input.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/jwk.js +76 -78
- package/dist/cjs/grpc/proto/sui/rpc/v2/jwk.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.client.js +69 -119
- package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.client.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.js +392 -350
- package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/move_package.js +599 -473
- package/dist/cjs/grpc/proto/sui/rpc/v2/move_package.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.client.js +46 -78
- package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.client.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.js +242 -224
- package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/name_service.client.js +32 -52
- package/dist/cjs/grpc/proto/sui/rpc/v2/name_service.client.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/name_service.js +139 -134
- package/dist/cjs/grpc/proto/sui/rpc/v2/name_service.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/object.js +109 -111
- package/dist/cjs/grpc/proto/sui/rpc/v2/object.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/object_reference.js +46 -51
- package/dist/cjs/grpc/proto/sui/rpc/v2/object_reference.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/owner.js +76 -61
- package/dist/cjs/grpc/proto/sui/rpc/v2/owner.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/protocol_config.js +46 -59
- package/dist/cjs/grpc/proto/sui/rpc/v2/protocol_config.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature.js +568 -522
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature_scheme.js +54 -32
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature_scheme.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.client.js +27 -47
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.client.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.js +83 -86
- package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.client.js +53 -85
- package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.client.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.js +645 -529
- package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.client.js +37 -51
- package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.client.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.js +58 -61
- package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/system_state.js +749 -730
- package/dist/cjs/grpc/proto/sui/rpc/v2/system_state.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/transaction.js +1218 -975
- package/dist/cjs/grpc/proto/sui/rpc/v2/transaction.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.client.js +32 -46
- package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.client.js.map +1 -0
- package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.js +186 -167
- package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.js.map +1 -0
- package/dist/cjs/index.js +96 -91
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/jsonRpc/client.js +654 -743
- package/dist/cjs/jsonRpc/client.js.map +1 -0
- package/dist/cjs/jsonRpc/core.d.ts +7 -7
- package/dist/cjs/jsonRpc/core.js +562 -606
- package/dist/cjs/jsonRpc/core.js.map +1 -0
- package/dist/cjs/jsonRpc/errors.js +38 -56
- package/dist/cjs/jsonRpc/errors.js.map +1 -0
- package/dist/cjs/jsonRpc/http-transport.js +70 -114
- package/dist/cjs/jsonRpc/http-transport.js.map +1 -0
- package/dist/cjs/jsonRpc/index.js +14 -30
- package/dist/cjs/jsonRpc/index.js.map +1 -0
- package/dist/cjs/jsonRpc/json-rpc-resolver.js +286 -290
- package/dist/cjs/jsonRpc/json-rpc-resolver.js.map +1 -0
- package/dist/cjs/jsonRpc/rpc-websocket-client.js +150 -207
- package/dist/cjs/jsonRpc/rpc-websocket-client.js.map +1 -0
- package/dist/cjs/jsonRpc/types/chain.js +4 -15
- package/dist/cjs/jsonRpc/types/chain.js.map +1 -0
- package/dist/cjs/jsonRpc/types/changes.js +4 -15
- package/dist/cjs/jsonRpc/types/changes.js.map +1 -0
- package/dist/cjs/jsonRpc/types/coins.js +4 -15
- package/dist/cjs/jsonRpc/types/coins.js.map +1 -0
- package/dist/cjs/jsonRpc/types/common.js +4 -15
- package/dist/cjs/jsonRpc/types/common.js.map +1 -0
- package/dist/cjs/jsonRpc/types/generated.d.ts +1 -1
- package/dist/cjs/jsonRpc/types/generated.js +4 -15
- package/dist/cjs/jsonRpc/types/generated.js.map +1 -0
- package/dist/cjs/jsonRpc/types/index.js +4 -15
- package/dist/cjs/jsonRpc/types/index.js.map +1 -0
- package/dist/cjs/jsonRpc/types/params.js +4 -15
- package/dist/cjs/jsonRpc/types/params.js.map +1 -0
- package/dist/cjs/keypairs/ed25519/ed25519-hd-key.js +54 -69
- package/dist/cjs/keypairs/ed25519/ed25519-hd-key.js.map +1 -0
- package/dist/cjs/keypairs/ed25519/index.js +10 -26
- package/dist/cjs/keypairs/ed25519/index.js.map +1 -0
- package/dist/cjs/keypairs/ed25519/keypair.js +134 -159
- package/dist/cjs/keypairs/ed25519/keypair.js.map +1 -0
- package/dist/cjs/keypairs/ed25519/publickey.js +70 -84
- package/dist/cjs/keypairs/ed25519/publickey.js.map +1 -0
- package/dist/cjs/keypairs/index.js +21 -19
- package/dist/cjs/keypairs/index.js.map +1 -0
- package/dist/cjs/keypairs/passkey/index.js +11 -27
- package/dist/cjs/keypairs/passkey/index.js.map +1 -0
- package/dist/cjs/keypairs/passkey/keypair.js +245 -256
- package/dist/cjs/keypairs/passkey/keypair.js.map +1 -0
- package/dist/cjs/keypairs/passkey/publickey.js +163 -162
- package/dist/cjs/keypairs/passkey/publickey.js.map +1 -0
- package/dist/cjs/keypairs/passkey/types.js +4 -15
- package/dist/cjs/keypairs/passkey/types.js.map +1 -0
- package/dist/cjs/keypairs/secp256k1/index.js +10 -26
- package/dist/cjs/keypairs/secp256k1/index.js.map +1 -0
- package/dist/cjs/keypairs/secp256k1/keypair.js +129 -151
- package/dist/cjs/keypairs/secp256k1/keypair.js.map +1 -0
- package/dist/cjs/keypairs/secp256k1/publickey.js +71 -89
- package/dist/cjs/keypairs/secp256k1/publickey.js.map +1 -0
- package/dist/cjs/keypairs/secp256r1/index.js +10 -26
- package/dist/cjs/keypairs/secp256r1/index.js.map +1 -0
- package/dist/cjs/keypairs/secp256r1/keypair.js +127 -148
- package/dist/cjs/keypairs/secp256r1/keypair.js.map +1 -0
- package/dist/cjs/keypairs/secp256r1/publickey.js +72 -90
- package/dist/cjs/keypairs/secp256r1/publickey.js.map +1 -0
- package/dist/cjs/multisig/index.js +10 -26
- package/dist/cjs/multisig/index.js.map +1 -0
- package/dist/cjs/multisig/publickey.d.ts +1 -1
- package/dist/cjs/multisig/publickey.js +228 -276
- package/dist/cjs/multisig/publickey.js.map +1 -0
- package/dist/cjs/multisig/signer.js +62 -110
- package/dist/cjs/multisig/signer.js.map +1 -0
- package/dist/cjs/transactions/Arguments.d.ts +4 -4
- package/dist/cjs/transactions/Arguments.js +13 -34
- package/dist/cjs/transactions/Arguments.js.map +1 -0
- package/dist/cjs/transactions/Commands.js +111 -141
- package/dist/cjs/transactions/Commands.js.map +1 -0
- package/dist/cjs/transactions/Inputs.js +53 -82
- package/dist/cjs/transactions/Inputs.js.map +1 -0
- package/dist/cjs/transactions/ObjectCache.d.ts +8 -8
- package/dist/cjs/transactions/ObjectCache.js +204 -241
- package/dist/cjs/transactions/ObjectCache.js.map +1 -0
- package/dist/cjs/transactions/Transaction.d.ts +31 -31
- package/dist/cjs/transactions/Transaction.js +628 -719
- package/dist/cjs/transactions/Transaction.js.map +1 -0
- package/dist/cjs/transactions/TransactionData.d.ts +9 -9
- package/dist/cjs/transactions/TransactionData.js +396 -440
- package/dist/cjs/transactions/TransactionData.js.map +1 -0
- package/dist/cjs/transactions/__tests__/Transaction.test.js +169 -0
- package/dist/cjs/transactions/__tests__/Transaction.test.js.map +1 -0
- package/dist/cjs/transactions/__tests__/bcs.test.js +202 -0
- package/dist/cjs/transactions/__tests__/bcs.test.js.map +1 -0
- package/dist/cjs/transactions/data/internal.js +166 -207
- package/dist/cjs/transactions/data/internal.js.map +1 -0
- package/dist/cjs/transactions/data/v1.js +436 -495
- package/dist/cjs/transactions/data/v1.js.map +1 -0
- package/dist/cjs/transactions/data/v2.d.ts +5 -5
- package/dist/cjs/transactions/data/v2.js +94 -107
- package/dist/cjs/transactions/data/v2.js.map +1 -0
- package/dist/cjs/transactions/executor/caching.js +71 -113
- package/dist/cjs/transactions/executor/caching.js.map +1 -0
- package/dist/cjs/transactions/executor/parallel.js +339 -378
- package/dist/cjs/transactions/executor/parallel.js.map +1 -0
- package/dist/cjs/transactions/executor/queue.js +60 -80
- package/dist/cjs/transactions/executor/queue.js.map +1 -0
- package/dist/cjs/transactions/executor/serial.d.ts +4 -4
- package/dist/cjs/transactions/executor/serial.js +102 -131
- package/dist/cjs/transactions/executor/serial.js.map +1 -0
- package/dist/cjs/transactions/hash.js +17 -28
- package/dist/cjs/transactions/hash.js.map +1 -0
- package/dist/cjs/transactions/index.js +33 -49
- package/dist/cjs/transactions/index.js.map +1 -0
- package/dist/cjs/transactions/intents/CoinWithBalance.js +137 -191
- package/dist/cjs/transactions/intents/CoinWithBalance.js.map +1 -0
- package/dist/cjs/transactions/object.js +88 -111
- package/dist/cjs/transactions/object.js.map +1 -0
- package/dist/cjs/transactions/plugins/NamedPackagesPlugin.js +20 -32
- package/dist/cjs/transactions/plugins/NamedPackagesPlugin.js.map +1 -0
- package/dist/cjs/transactions/pure.js +38 -60
- package/dist/cjs/transactions/pure.js.map +1 -0
- package/dist/cjs/transactions/resolve.js +62 -88
- package/dist/cjs/transactions/resolve.js.map +1 -0
- package/dist/cjs/transactions/serializer.js +150 -163
- package/dist/cjs/transactions/serializer.js.map +1 -0
- package/dist/cjs/transactions/utils.d.ts +1 -1
- package/dist/cjs/transactions/utils.js +114 -125
- package/dist/cjs/transactions/utils.js.map +1 -0
- package/dist/cjs/utils/constants.js +29 -56
- package/dist/cjs/utils/constants.js.map +1 -0
- package/dist/cjs/utils/derived-objects.js +14 -30
- package/dist/cjs/utils/derived-objects.js.map +1 -0
- package/dist/cjs/utils/dynamic-fields.js +20 -37
- package/dist/cjs/utils/dynamic-fields.js.map +1 -0
- package/dist/cjs/utils/format.js +14 -30
- package/dist/cjs/utils/format.js.map +1 -0
- package/dist/cjs/utils/index.js +50 -64
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/move-registry.js +37 -35
- package/dist/cjs/utils/move-registry.js.map +1 -0
- package/dist/cjs/utils/sui-types.js +74 -68
- package/dist/cjs/utils/sui-types.js.map +1 -0
- package/dist/cjs/utils/suins.js +30 -46
- package/dist/cjs/utils/suins.js.map +1 -0
- package/dist/cjs/verify/index.js +12 -27
- package/dist/cjs/verify/index.js.map +1 -0
- package/dist/cjs/verify/verify.js +83 -110
- package/dist/cjs/verify/verify.js.map +1 -0
- package/dist/cjs/version.js +8 -25
- package/dist/cjs/version.js.map +1 -0
- package/dist/cjs/w/call/allocation.js +323 -413
- package/dist/cjs/w/call/allocation.js.map +1 -0
- package/dist/cjs/w/call/arb.js +105 -136
- package/dist/cjs/w/call/arb.js.map +1 -0
- package/dist/cjs/w/call/arbitration.js +1206 -1581
- package/dist/cjs/w/call/arbitration.js.map +1 -0
- package/dist/cjs/w/call/base.js +303 -333
- package/dist/cjs/w/call/base.js.map +1 -0
- package/dist/cjs/w/call/contact.js +335 -452
- package/dist/cjs/w/call/contact.js.map +1 -0
- package/dist/cjs/w/call/demand.js +690 -844
- package/dist/cjs/w/call/demand.js.map +1 -0
- package/dist/cjs/w/call/entity.js +167 -201
- package/dist/cjs/w/call/entity.js.map +1 -0
- package/dist/cjs/w/call/guard-ins.js +4376 -4389
- package/dist/cjs/w/call/guard-ins.js.map +1 -0
- package/dist/cjs/w/call/guard.js +1078 -1112
- package/dist/cjs/w/call/guard.js.map +1 -0
- package/dist/cjs/w/call/index.js +69 -70
- package/dist/cjs/w/call/index.js.map +1 -0
- package/dist/cjs/w/call/machine.js +1105 -1419
- package/dist/cjs/w/call/machine.js.map +1 -0
- package/dist/cjs/w/call/order.js +314 -454
- package/dist/cjs/w/call/order.js.map +1 -0
- package/dist/cjs/w/call/passport.js +214 -253
- package/dist/cjs/w/call/passport.js.map +1 -0
- package/dist/cjs/w/call/payment.js +187 -224
- package/dist/cjs/w/call/payment.js.map +1 -0
- package/dist/cjs/w/call/permission.js +1183 -1294
- package/dist/cjs/w/call/permission.js.map +1 -0
- package/dist/cjs/w/call/personal.js +132 -170
- package/dist/cjs/w/call/personal.js.map +1 -0
- package/dist/cjs/w/call/progress.js +634 -794
- package/dist/cjs/w/call/progress.js.map +1 -0
- package/dist/cjs/w/call/proof.js +67 -116
- package/dist/cjs/w/call/proof.js.map +1 -0
- package/dist/cjs/w/call/repository.js +1037 -1251
- package/dist/cjs/w/call/repository.js.map +1 -0
- package/dist/cjs/w/call/resource.js +111 -131
- package/dist/cjs/w/call/resource.js.map +1 -0
- package/dist/cjs/w/call/reward.js +675 -853
- package/dist/cjs/w/call/reward.js.map +1 -0
- package/dist/cjs/w/call/service.js +1879 -2385
- package/dist/cjs/w/call/service.js.map +1 -0
- package/dist/cjs/w/call/treasury.js +841 -1138
- package/dist/cjs/w/call/treasury.js.map +1 -0
- package/dist/cjs/w/call/util.js +593 -624
- package/dist/cjs/w/call/util.js.map +1 -0
- package/dist/cjs/w/common.d.ts +1 -1
- package/dist/cjs/w/common.js +548 -518
- package/dist/cjs/w/common.js.map +1 -0
- package/dist/cjs/w/exception.js +574 -584
- package/dist/cjs/w/exception.js.map +1 -0
- package/dist/cjs/w/index.js +26 -23
- package/dist/cjs/w/index.js.map +1 -0
- package/dist/cjs/w/local/account.js +664 -741
- package/dist/cjs/w/local/account.js.map +1 -0
- package/dist/cjs/w/local/cache.js +180 -166
- package/dist/cjs/w/local/cache.js.map +1 -0
- package/dist/cjs/w/local/config.js +51 -80
- package/dist/cjs/w/local/config.js.map +1 -0
- package/dist/cjs/w/local/index.js +225 -290
- package/dist/cjs/w/local/index.js.map +1 -0
- package/dist/cjs/w/local/local.d.ts +2 -2
- package/dist/cjs/w/local/local.js +638 -646
- package/dist/cjs/w/local/local.js.map +1 -0
- package/dist/cjs/w/local/storage.js +210 -164
- package/dist/cjs/w/local/storage.js.map +1 -0
- package/dist/cjs/w/local/token.js +158 -175
- package/dist/cjs/w/local/token.js.map +1 -0
- package/dist/cjs/w/local/util.js +80 -51
- package/dist/cjs/w/local/util.js.map +1 -0
- package/dist/cjs/w/local/wip.js +1078 -802
- package/dist/cjs/w/local/wip.js.map +1 -0
- package/dist/cjs/w/messenger/crypto.js +496 -389
- package/dist/cjs/w/messenger/crypto.js.map +1 -0
- package/dist/cjs/w/messenger/index.js +53 -35
- package/dist/cjs/w/messenger/index.js.map +1 -0
- package/dist/cjs/w/messenger/messenger-api.js +1159 -1035
- package/dist/cjs/w/messenger/messenger-api.js.map +1 -0
- package/dist/cjs/w/messenger/messenger-manager.js +954 -1083
- package/dist/cjs/w/messenger/messenger-manager.js.map +1 -0
- package/dist/cjs/w/messenger/messenger.d.ts +1 -1
- package/dist/cjs/w/messenger/messenger.js +1304 -1450
- package/dist/cjs/w/messenger/messenger.js.map +1 -0
- package/dist/cjs/w/messenger/server.js +390 -512
- package/dist/cjs/w/messenger/server.js.map +1 -0
- package/dist/cjs/w/messenger/session.js +399 -403
- package/dist/cjs/w/messenger/session.js.map +1 -0
- package/dist/cjs/w/messenger/storage.js +881 -777
- package/dist/cjs/w/messenger/storage.js.map +1 -0
- package/dist/cjs/w/messenger/types.d.ts +2 -2
- package/dist/cjs/w/messenger/types.js +83 -103
- package/dist/cjs/w/messenger/types.js.map +1 -0
- package/dist/cjs/w/messenger/utils.js +29 -34
- package/dist/cjs/w/messenger/utils.js.map +1 -0
- package/dist/cjs/w/query/bult-in.js +101 -110
- package/dist/cjs/w/query/bult-in.js.map +1 -0
- package/dist/cjs/w/query/event.js +134 -146
- package/dist/cjs/w/query/event.js.map +1 -0
- package/dist/cjs/w/query/index.js +22 -20
- package/dist/cjs/w/query/index.js.map +1 -0
- package/dist/cjs/w/query/object.js +1576 -1576
- package/dist/cjs/w/query/object.js.map +1 -0
- package/dist/cjs/w/query/received.js +66 -88
- package/dist/cjs/w/query/received.js.map +1 -0
- package/dist/cjs/w/query/util.js +53 -77
- package/dist/cjs/w/query/util.js.map +1 -0
- package/dist/cjs/w/util.js +589 -675
- package/dist/cjs/w/util.js.map +1 -0
- package/dist/esm/bcs/bcs.d.ts +199 -199
- package/dist/esm/bcs/bcs.js +269 -310
- package/dist/esm/bcs/bcs.js.map +1 -0
- package/dist/esm/bcs/effects.d.ts +109 -109
- package/dist/esm/bcs/effects.js +171 -179
- package/dist/esm/bcs/effects.js.map +1 -0
- package/dist/esm/bcs/index.d.ts +1 -2584
- package/dist/esm/bcs/index.js +51 -94
- package/dist/esm/bcs/index.js.map +1 -0
- package/dist/esm/bcs/pure.js +35 -38
- package/dist/esm/bcs/pure.js.map +1 -0
- package/dist/esm/bcs/type-tag-serializer.js +98 -95
- package/dist/esm/bcs/type-tag-serializer.js.map +1 -0
- package/dist/esm/bcs/types.js +5 -5
- package/dist/esm/bcs/types.js.map +1 -0
- package/dist/esm/client/index.js +7 -23
- package/dist/esm/client/index.js.map +1 -0
- package/dist/esm/client/network.js +23 -22
- package/dist/esm/client/network.js.map +1 -0
- package/dist/esm/cryptography/index.js +9 -46
- package/dist/esm/cryptography/index.js.map +1 -0
- package/dist/esm/cryptography/intent.d.ts +1 -1
- package/dist/esm/cryptography/intent.js +18 -12
- package/dist/esm/cryptography/intent.js.map +1 -0
- package/dist/esm/cryptography/keypair.js +95 -99
- package/dist/esm/cryptography/keypair.js.map +1 -0
- package/dist/esm/cryptography/mnemonics.js +40 -24
- package/dist/esm/cryptography/mnemonics.js.map +1 -0
- package/dist/esm/cryptography/publickey.js +104 -115
- package/dist/esm/cryptography/publickey.js.map +1 -0
- package/dist/esm/cryptography/signature-scheme.js +22 -24
- package/dist/esm/cryptography/signature-scheme.js.map +1 -0
- package/dist/esm/cryptography/signature.d.ts +2 -24
- package/dist/esm/cryptography/signature.js +44 -48
- package/dist/esm/cryptography/signature.js.map +1 -0
- package/dist/esm/experimental/cache.js +61 -0
- package/dist/esm/experimental/cache.js.map +1 -0
- package/dist/esm/experimental/client.js +23 -0
- package/dist/esm/experimental/client.js.map +1 -0
- package/dist/esm/experimental/core.js +85 -0
- package/dist/esm/experimental/core.js.map +1 -0
- package/dist/esm/experimental/errors.js +27 -0
- package/dist/esm/experimental/errors.js.map +1 -0
- package/dist/esm/experimental/index.js +8 -0
- package/dist/esm/experimental/index.js.map +1 -0
- package/dist/esm/experimental/persistent-storage.js +337 -0
- package/dist/esm/experimental/persistent-storage.js.map +1 -0
- package/dist/esm/experimental/persistent-storage.test.js +198 -0
- package/dist/esm/experimental/persistent-storage.test.js.map +1 -0
- package/dist/esm/experimental/transports/utils.js +100 -0
- package/dist/esm/experimental/transports/utils.js.map +1 -0
- package/dist/esm/experimental/types.js +5 -0
- package/dist/esm/experimental/types.js.map +1 -0
- package/dist/esm/faucet/faucet.js +104 -111
- package/dist/esm/faucet/faucet.js.map +1 -0
- package/dist/esm/faucet/index.js +4 -16
- package/dist/esm/faucet/index.js.map +1 -0
- package/dist/esm/grpc/client.js +34 -34
- package/dist/esm/grpc/client.js.map +1 -0
- package/dist/esm/grpc/core.js +570 -601
- package/dist/esm/grpc/core.js.map +1 -0
- package/dist/esm/grpc/index.js +5 -6
- package/dist/esm/grpc/index.js.map +1 -0
- package/dist/esm/grpc/proto/google/protobuf/any.js +161 -111
- package/dist/esm/grpc/proto/google/protobuf/any.js.map +1 -0
- package/dist/esm/grpc/proto/google/protobuf/duration.js +99 -67
- package/dist/esm/grpc/proto/google/protobuf/duration.js.map +1 -0
- package/dist/esm/grpc/proto/google/protobuf/empty.js +46 -7
- package/dist/esm/grpc/proto/google/protobuf/empty.js.map +1 -0
- package/dist/esm/grpc/proto/google/protobuf/field_mask.js +90 -52
- package/dist/esm/grpc/proto/google/protobuf/field_mask.js.map +1 -0
- package/dist/esm/grpc/proto/google/protobuf/struct.js +258 -190
- package/dist/esm/grpc/proto/google/protobuf/struct.js.map +1 -0
- package/dist/esm/grpc/proto/google/protobuf/timestamp.js +144 -108
- package/dist/esm/grpc/proto/google/protobuf/timestamp.js.map +1 -0
- package/dist/esm/grpc/proto/google/rpc/error_details.js +313 -267
- package/dist/esm/grpc/proto/google/rpc/error_details.js.map +1 -0
- package/dist/esm/grpc/proto/google/rpc/status.js +45 -28
- package/dist/esm/grpc/proto/google/rpc/status.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/argument.js +80 -47
- package/dist/esm/grpc/proto/sui/rpc/v2/argument.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/balance_change.js +41 -29
- package/dist/esm/grpc/proto/sui/rpc/v2/balance_change.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/bcs.js +34 -22
- package/dist/esm/grpc/proto/sui/rpc/v2/bcs.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint.js +61 -49
- package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_contents.js +72 -57
- package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_contents.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_summary.js +173 -139
- package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_summary.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/effects.js +358 -268
- package/dist/esm/grpc/proto/sui/rpc/v2/effects.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/epoch.js +72 -60
- package/dist/esm/grpc/proto/sui/rpc/v2/epoch.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/error_reason.js +29 -9
- package/dist/esm/grpc/proto/sui/rpc/v2/error_reason.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/event.js +74 -59
- package/dist/esm/grpc/proto/sui/rpc/v2/event.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/executed_transaction.js +69 -57
- package/dist/esm/grpc/proto/sui/rpc/v2/executed_transaction.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/execution_status.js +861 -474
- package/dist/esm/grpc/proto/sui/rpc/v2/execution_status.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/gas_cost_summary.js +52 -40
- package/dist/esm/grpc/proto/sui/rpc/v2/gas_cost_summary.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/input.js +98 -61
- package/dist/esm/grpc/proto/sui/rpc/v2/input.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/jwk.js +71 -56
- package/dist/esm/grpc/proto/sui/rpc/v2/jwk.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.client.js +65 -100
- package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.client.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.js +365 -306
- package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/move_package.js +585 -442
- package/dist/esm/grpc/proto/sui/rpc/v2/move_package.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.client.js +42 -59
- package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.client.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.js +226 -191
- package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/name_service.client.js +28 -33
- package/dist/esm/grpc/proto/sui/rpc/v2/name_service.client.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/name_service.js +129 -107
- package/dist/esm/grpc/proto/sui/rpc/v2/name_service.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/object.js +100 -85
- package/dist/esm/grpc/proto/sui/rpc/v2/object.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/object_reference.js +42 -30
- package/dist/esm/grpc/proto/sui/rpc/v2/object_reference.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/owner.js +72 -40
- package/dist/esm/grpc/proto/sui/rpc/v2/owner.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/protocol_config.js +42 -38
- package/dist/esm/grpc/proto/sui/rpc/v2/protocol_config.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/signature.js +544 -481
- package/dist/esm/grpc/proto/sui/rpc/v2/signature.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/signature_scheme.js +52 -13
- package/dist/esm/grpc/proto/sui/rpc/v2/signature_scheme.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.client.js +23 -28
- package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.client.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.js +74 -60
- package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/state_service.client.js +49 -66
- package/dist/esm/grpc/proto/sui/rpc/v2/state_service.client.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/state_service.js +623 -490
- package/dist/esm/grpc/proto/sui/rpc/v2/state_service.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.client.js +33 -32
- package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.client.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.js +50 -36
- package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/system_state.js +737 -701
- package/dist/esm/grpc/proto/sui/rpc/v2/system_state.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/transaction.js +1177 -917
- package/dist/esm/grpc/proto/sui/rpc/v2/transaction.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.client.js +28 -27
- package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.client.js.map +1 -0
- package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.js +169 -133
- package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.js.map +1 -0
- package/dist/esm/index.js +21 -107
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/jsonRpc/client.js +646 -727
- package/dist/esm/jsonRpc/client.js.map +1 -0
- package/dist/esm/jsonRpc/core.d.ts +7 -7
- package/dist/esm/jsonRpc/core.js +550 -581
- package/dist/esm/jsonRpc/core.js.map +1 -0
- package/dist/esm/jsonRpc/errors.js +36 -41
- package/dist/esm/jsonRpc/errors.js.map +1 -0
- package/dist/esm/jsonRpc/http-transport.js +65 -93
- package/dist/esm/jsonRpc/http-transport.js.map +1 -0
- package/dist/esm/jsonRpc/index.js +6 -20
- package/dist/esm/jsonRpc/index.js.map +1 -0
- package/dist/esm/jsonRpc/json-rpc-resolver.js +281 -276
- package/dist/esm/jsonRpc/json-rpc-resolver.js.map +1 -0
- package/dist/esm/jsonRpc/rpc-websocket-client.js +147 -189
- package/dist/esm/jsonRpc/rpc-websocket-client.js.map +1 -0
- package/dist/esm/jsonRpc/types/chain.js +4 -0
- package/dist/esm/jsonRpc/types/chain.js.map +1 -0
- package/dist/esm/jsonRpc/types/changes.js +4 -0
- package/dist/esm/jsonRpc/types/changes.js.map +1 -0
- package/dist/esm/jsonRpc/types/coins.js +4 -0
- package/dist/esm/jsonRpc/types/coins.js.map +1 -0
- package/dist/esm/jsonRpc/types/common.js +4 -0
- package/dist/esm/jsonRpc/types/common.js.map +1 -0
- package/dist/esm/jsonRpc/types/generated.d.ts +1 -1
- package/dist/esm/jsonRpc/types/generated.js +4 -0
- package/dist/esm/jsonRpc/types/generated.js.map +1 -0
- package/dist/esm/jsonRpc/types/index.js +4 -0
- package/dist/esm/jsonRpc/types/index.js.map +1 -0
- package/dist/esm/jsonRpc/types/params.js +4 -0
- package/dist/esm/jsonRpc/types/params.js.map +1 -0
- package/dist/esm/keypairs/ed25519/ed25519-hd-key.js +49 -48
- package/dist/esm/keypairs/ed25519/ed25519-hd-key.js.map +1 -0
- package/dist/esm/keypairs/ed25519/index.js +5 -10
- package/dist/esm/keypairs/ed25519/index.js.map +1 -0
- package/dist/esm/keypairs/ed25519/keypair.js +128 -146
- package/dist/esm/keypairs/ed25519/keypair.js.map +1 -0
- package/dist/esm/keypairs/ed25519/publickey.js +64 -67
- package/dist/esm/keypairs/ed25519/publickey.js.map +1 -0
- package/dist/esm/keypairs/index.js +3 -0
- package/dist/esm/keypairs/index.js.map +1 -0
- package/dist/esm/keypairs/passkey/index.js +5 -12
- package/dist/esm/keypairs/passkey/index.js.map +1 -0
- package/dist/esm/keypairs/passkey/keypair.js +236 -243
- package/dist/esm/keypairs/passkey/keypair.js.map +1 -0
- package/dist/esm/keypairs/passkey/publickey.js +154 -140
- package/dist/esm/keypairs/passkey/publickey.js.map +1 -0
- package/dist/esm/keypairs/passkey/types.js +4 -0
- package/dist/esm/keypairs/passkey/types.js.map +1 -0
- package/dist/esm/keypairs/secp256k1/index.js +5 -10
- package/dist/esm/keypairs/secp256k1/index.js.map +1 -0
- package/dist/esm/keypairs/secp256k1/keypair.js +120 -134
- package/dist/esm/keypairs/secp256k1/keypair.js.map +1 -0
- package/dist/esm/keypairs/secp256k1/publickey.js +64 -71
- package/dist/esm/keypairs/secp256k1/publickey.js.map +1 -0
- package/dist/esm/keypairs/secp256r1/index.js +5 -10
- package/dist/esm/keypairs/secp256r1/index.js.map +1 -0
- package/dist/esm/keypairs/secp256r1/keypair.js +118 -131
- package/dist/esm/keypairs/secp256r1/keypair.js.map +1 -0
- package/dist/esm/keypairs/secp256r1/publickey.js +63 -66
- package/dist/esm/keypairs/secp256r1/publickey.js.map +1 -0
- package/dist/esm/multisig/index.js +5 -10
- package/dist/esm/multisig/index.js.map +1 -0
- package/dist/esm/multisig/publickey.d.ts +1 -1
- package/dist/esm/multisig/publickey.js +216 -253
- package/dist/esm/multisig/publickey.js.map +1 -0
- package/dist/esm/multisig/signer.js +57 -89
- package/dist/esm/multisig/signer.js.map +1 -0
- package/dist/esm/transactions/Arguments.d.ts +4 -4
- package/dist/esm/transactions/Arguments.js +9 -13
- package/dist/esm/transactions/Arguments.js.map +1 -0
- package/dist/esm/transactions/Commands.js +105 -118
- package/dist/esm/transactions/Commands.js.map +1 -0
- package/dist/esm/transactions/Inputs.js +49 -61
- package/dist/esm/transactions/Inputs.js.map +1 -0
- package/dist/esm/transactions/ObjectCache.d.ts +8 -8
- package/dist/esm/transactions/ObjectCache.js +200 -223
- package/dist/esm/transactions/ObjectCache.js.map +1 -0
- package/dist/esm/transactions/Transaction.d.ts +32 -32
- package/dist/esm/transactions/Transaction.js +611 -696
- package/dist/esm/transactions/Transaction.js.map +1 -0
- package/dist/esm/transactions/TransactionData.d.ts +9 -9
- package/dist/esm/transactions/TransactionData.js +386 -415
- package/dist/esm/transactions/TransactionData.js.map +1 -0
- package/dist/esm/transactions/__tests__/Transaction.test.js +167 -0
- package/dist/esm/transactions/__tests__/Transaction.test.js.map +1 -0
- package/dist/esm/transactions/__tests__/bcs.test.js +200 -0
- package/dist/esm/transactions/__tests__/bcs.test.js.map +1 -0
- package/dist/esm/transactions/data/internal.js +158 -205
- package/dist/esm/transactions/data/internal.js.map +1 -0
- package/dist/esm/transactions/data/v1.js +419 -487
- package/dist/esm/transactions/data/v1.js.map +1 -0
- package/dist/esm/transactions/data/v2.d.ts +5 -5
- package/dist/esm/transactions/data/v2.js +89 -107
- package/dist/esm/transactions/data/v2.js.map +1 -0
- package/dist/esm/transactions/executor/caching.d.ts +2 -2
- package/dist/esm/transactions/executor/caching.js +66 -93
- package/dist/esm/transactions/executor/caching.js.map +1 -0
- package/dist/esm/transactions/executor/parallel.js +329 -352
- package/dist/esm/transactions/executor/parallel.js.map +1 -0
- package/dist/esm/transactions/executor/queue.js +58 -64
- package/dist/esm/transactions/executor/queue.js.map +1 -0
- package/dist/esm/transactions/executor/serial.d.ts +5 -5
- package/dist/esm/transactions/executor/serial.js +96 -110
- package/dist/esm/transactions/executor/serial.js.map +1 -0
- package/dist/esm/transactions/hash.js +15 -9
- package/dist/esm/transactions/hash.js.map +1 -0
- package/dist/esm/transactions/index.js +15 -41
- package/dist/esm/transactions/index.js.map +1 -0
- package/dist/esm/transactions/intents/CoinWithBalance.js +127 -165
- package/dist/esm/transactions/intents/CoinWithBalance.js.map +1 -0
- package/dist/esm/transactions/object.js +86 -92
- package/dist/esm/transactions/object.js.map +1 -0
- package/dist/esm/transactions/plugins/NamedPackagesPlugin.js +18 -15
- package/dist/esm/transactions/plugins/NamedPackagesPlugin.js.map +1 -0
- package/dist/esm/transactions/pure.js +34 -39
- package/dist/esm/transactions/pure.js.map +1 -0
- package/dist/esm/transactions/resolve.js +58 -69
- package/dist/esm/transactions/resolve.js.map +1 -0
- package/dist/esm/transactions/serializer.js +145 -144
- package/dist/esm/transactions/serializer.js.map +1 -0
- package/dist/esm/transactions/utils.d.ts +1 -1
- package/dist/esm/transactions/utils.js +110 -109
- package/dist/esm/transactions/utils.js.map +1 -0
- package/dist/esm/utils/constants.js +26 -36
- package/dist/esm/utils/constants.js.map +1 -0
- package/dist/esm/utils/derived-objects.js +11 -10
- package/dist/esm/utils/derived-objects.js.map +1 -0
- package/dist/esm/utils/dynamic-fields.js +16 -16
- package/dist/esm/utils/dynamic-fields.js.map +1 -0
- package/dist/esm/utils/format.js +13 -13
- package/dist/esm/utils/format.js.map +1 -0
- package/dist/esm/utils/index.js +15 -76
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/move-registry.js +34 -17
- package/dist/esm/utils/move-registry.js.map +1 -0
- package/dist/esm/utils/sui-types.js +70 -54
- package/dist/esm/utils/sui-types.js.map +1 -0
- package/dist/esm/utils/suins.js +29 -29
- package/dist/esm/utils/suins.js.map +1 -0
- package/dist/esm/verify/index.js +5 -14
- package/dist/esm/verify/index.js.map +1 -0
- package/dist/esm/verify/verify.js +76 -93
- package/dist/esm/verify/verify.js.map +1 -0
- package/dist/esm/version.js +6 -6
- package/dist/esm/version.js.map +1 -0
- package/dist/esm/w/call/allocation.js +307 -402
- package/dist/esm/w/call/allocation.js.map +1 -0
- package/dist/esm/w/call/arb.js +100 -129
- package/dist/esm/w/call/arb.js.map +1 -0
- package/dist/esm/w/call/arbitration.js +1170 -1568
- package/dist/esm/w/call/arbitration.js.map +1 -0
- package/dist/esm/w/call/base.js +288 -315
- package/dist/esm/w/call/base.js.map +1 -0
- package/dist/esm/w/call/contact.js +318 -442
- package/dist/esm/w/call/contact.js.map +1 -0
- package/dist/esm/w/call/demand.js +673 -841
- package/dist/esm/w/call/demand.js.map +1 -0
- package/dist/esm/w/call/entity.js +162 -203
- package/dist/esm/w/call/entity.js.map +1 -0
- package/dist/esm/w/call/guard-ins.js +4373 -4371
- package/dist/esm/w/call/guard-ins.js.map +1 -0
- package/dist/esm/w/call/guard.js +1061 -1108
- package/dist/esm/w/call/guard.js.map +1 -0
- package/dist/esm/w/call/index.js +24 -56
- package/dist/esm/w/call/index.js.map +1 -0
- package/dist/esm/w/call/machine.js +1086 -1433
- package/dist/esm/w/call/machine.js.map +1 -0
- package/dist/esm/w/call/order.js +301 -448
- package/dist/esm/w/call/order.js.map +1 -0
- package/dist/esm/w/call/passport.js +204 -240
- package/dist/esm/w/call/passport.js.map +1 -0
- package/dist/esm/w/call/payment.js +177 -215
- package/dist/esm/w/call/payment.js.map +1 -0
- package/dist/esm/w/call/permission.js +1172 -1320
- package/dist/esm/w/call/permission.js.map +1 -0
- package/dist/esm/w/call/personal.js +121 -156
- package/dist/esm/w/call/personal.js.map +1 -0
- package/dist/esm/w/call/progress.js +625 -797
- package/dist/esm/w/call/progress.js.map +1 -0
- package/dist/esm/w/call/proof.js +61 -103
- package/dist/esm/w/call/proof.js.map +1 -0
- package/dist/esm/w/call/repository.js +1017 -1251
- package/dist/esm/w/call/repository.js.map +1 -0
- package/dist/esm/w/call/resource.js +108 -124
- package/dist/esm/w/call/resource.js.map +1 -0
- package/dist/esm/w/call/reward.js +660 -847
- package/dist/esm/w/call/reward.js.map +1 -0
- package/dist/esm/w/call/service.js +1849 -2400
- package/dist/esm/w/call/service.js.map +1 -0
- package/dist/esm/w/call/treasury.js +815 -1125
- package/dist/esm/w/call/treasury.js.map +1 -0
- package/dist/esm/w/call/util.js +553 -576
- package/dist/esm/w/call/util.js.map +1 -0
- package/dist/esm/w/common.d.ts +1 -1
- package/dist/esm/w/common.js +579 -580
- package/dist/esm/w/common.js.map +1 -0
- package/dist/esm/w/exception.js +570 -573
- package/dist/esm/w/exception.js.map +1 -0
- package/dist/esm/w/index.js +4 -0
- package/dist/esm/w/index.js.map +1 -0
- package/dist/esm/w/local/account.js +652 -709
- package/dist/esm/w/local/account.js.map +1 -0
- package/dist/esm/w/local/cache.js +176 -147
- package/dist/esm/w/local/cache.js.map +1 -0
- package/dist/esm/w/local/config.js +46 -60
- package/dist/esm/w/local/config.js.map +1 -0
- package/dist/esm/w/local/index.js +196 -273
- package/dist/esm/w/local/index.js.map +1 -0
- package/dist/esm/w/local/local.d.ts +2 -2
- package/dist/esm/w/local/local.js +631 -626
- package/dist/esm/w/local/local.js.map +1 -0
- package/dist/esm/w/local/storage.js +168 -136
- package/dist/esm/w/local/storage.js.map +1 -0
- package/dist/esm/w/local/token.js +149 -151
- package/dist/esm/w/local/token.js.map +1 -0
- package/dist/esm/w/local/util.js +45 -22
- package/dist/esm/w/local/util.js.map +1 -0
- package/dist/esm/w/local/wip.js +1038 -781
- package/dist/esm/w/local/wip.js.map +1 -0
- package/dist/esm/w/messenger/crypto.js +491 -387
- package/dist/esm/w/messenger/crypto.js.map +1 -0
- package/dist/esm/w/messenger/index.js +27 -24
- package/dist/esm/w/messenger/index.js.map +1 -0
- package/dist/esm/w/messenger/messenger-api.js +1111 -1017
- package/dist/esm/w/messenger/messenger-api.js.map +1 -0
- package/dist/esm/w/messenger/messenger-manager.js +944 -1052
- package/dist/esm/w/messenger/messenger-manager.js.map +1 -0
- package/dist/esm/w/messenger/messenger.d.ts +1 -1
- package/dist/esm/w/messenger/messenger.js +1258 -1421
- package/dist/esm/w/messenger/messenger.js.map +1 -0
- package/dist/esm/w/messenger/server.js +388 -499
- package/dist/esm/w/messenger/server.js.map +1 -0
- package/dist/esm/w/messenger/session.js +394 -399
- package/dist/esm/w/messenger/session.js.map +1 -0
- package/dist/esm/w/messenger/storage.js +840 -751
- package/dist/esm/w/messenger/storage.js.map +1 -0
- package/dist/esm/w/messenger/types.d.ts +2 -2
- package/dist/esm/w/messenger/types.js +80 -85
- package/dist/esm/w/messenger/types.js.map +1 -0
- package/dist/esm/w/messenger/utils.js +28 -16
- package/dist/esm/w/messenger/utils.js.map +1 -0
- package/dist/esm/w/query/bult-in.js +95 -100
- package/dist/esm/w/query/bult-in.js.map +1 -0
- package/dist/esm/w/query/event.js +128 -125
- package/dist/esm/w/query/event.js.map +1 -0
- package/dist/esm/w/query/index.js +3 -0
- package/dist/esm/w/query/index.js.map +1 -0
- package/dist/esm/w/query/object.js +1560 -1574
- package/dist/esm/w/query/object.js.map +1 -0
- package/dist/esm/w/query/received.js +57 -63
- package/dist/esm/w/query/received.js.map +1 -0
- package/dist/esm/w/query/util.js +48 -56
- package/dist/esm/w/query/util.js.map +1 -0
- package/dist/esm/w/util.js +578 -673
- package/dist/esm/w/util.js.map +1 -0
- package/package.json +13 -7
- package/prebuilds/better-sqlite3-v12.9.0-node-v115-darwin-arm64.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v115-darwin-x64.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v115-linux-arm.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v115-linux-arm64.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v115-linux-x64.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v115-win32-arm64.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v115-win32-x64.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v127-darwin-arm64.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v127-darwin-x64.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v127-linux-arm.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v127-linux-arm64.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v127-linux-x64.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v127-win32-arm64.node +0 -0
- package/prebuilds/better-sqlite3-v12.9.0-node-v127-win32-x64.node +0 -0
- package/scripts/download-prebuilds.js +234 -0
- package/scripts/install-better-sqlite3.js +377 -0
- package/dist/cjs/graphql/client.js +0 -98
- package/dist/cjs/graphql/core.js +0 -506
- package/dist/cjs/graphql/generated/2024.1/tada-env.js +0 -13141
- package/dist/cjs/graphql/generated/2024.1/tsconfig.tada.js +0 -11
- package/dist/cjs/graphql/generated/2024.4/tada-env.js +0 -13287
- package/dist/cjs/graphql/generated/2024.4/tsconfig.tada.js +0 -11
- package/dist/cjs/graphql/generated/latest/tada-env.js +0 -12925
- package/dist/cjs/graphql/generated/latest/tsconfig.tada.js +0 -11
- package/dist/cjs/graphql/generated/queries.js +0 -807
- package/dist/cjs/graphql/index.js +0 -25
- package/dist/cjs/graphql/schemas/2024.1/index.js +0 -28
- package/dist/cjs/graphql/schemas/2024.4/index.js +0 -28
- package/dist/cjs/graphql/schemas/latest/index.js +0 -28
- package/dist/cjs/graphql/types.js +0 -16
- package/dist/cjs/package.json +0 -5
- package/dist/cjs/w/local/.eslintrc.js +0 -15
- package/dist/cjs/w/messenger/.eslintrc.js +0 -15
- package/dist/cjs/zklogin/address.js +0 -93
- package/dist/cjs/zklogin/bcs.js +0 -41
- package/dist/cjs/zklogin/index.js +0 -45
- package/dist/cjs/zklogin/jwt-decode.js +0 -88
- package/dist/cjs/zklogin/jwt-utils.js +0 -128
- package/dist/cjs/zklogin/nonce.js +0 -60
- package/dist/cjs/zklogin/poseidon.js +0 -64
- package/dist/cjs/zklogin/publickey.js +0 -281
- package/dist/cjs/zklogin/signature.js +0 -57
- package/dist/cjs/zklogin/utils.js +0 -98
- package/dist/esm/graphql/client.js +0 -79
- package/dist/esm/graphql/core.js +0 -505
- package/dist/esm/graphql/generated/2024.1/tada-env.js +0 -13121
- package/dist/esm/graphql/generated/2024.1/tsconfig.tada.js +0 -16
- package/dist/esm/graphql/generated/2024.4/tada-env.js +0 -13267
- package/dist/esm/graphql/generated/2024.4/tsconfig.tada.js +0 -16
- package/dist/esm/graphql/generated/latest/tada-env.js +0 -12905
- package/dist/esm/graphql/generated/latest/tsconfig.tada.js +0 -16
- package/dist/esm/graphql/generated/queries.js +0 -788
- package/dist/esm/graphql/index.js +0 -8
- package/dist/esm/graphql/schemas/2024.1/index.js +0 -8
- package/dist/esm/graphql/schemas/2024.4/index.js +0 -8
- package/dist/esm/graphql/schemas/latest/index.js +0 -8
- package/dist/esm/graphql/types.js +0 -0
- package/dist/esm/package.json +0 -5
- package/dist/esm/w/local/.eslintrc.js +0 -23
- package/dist/esm/w/messenger/.eslintrc.js +0 -23
- package/dist/esm/zklogin/address.js +0 -78
- package/dist/esm/zklogin/bcs.js +0 -21
- package/dist/esm/zklogin/index.js +0 -38
- package/dist/esm/zklogin/jwt-decode.js +0 -68
- package/dist/esm/zklogin/jwt-utils.js +0 -108
- package/dist/esm/zklogin/nonce.js +0 -40
- package/dist/esm/zklogin/poseidon.js +0 -61
- package/dist/esm/zklogin/publickey.js +0 -265
- package/dist/esm/zklogin/signature.js +0 -37
- package/dist/esm/zklogin/utils.js +0 -78
- package/dist/tsconfig.esm.tsbuildinfo +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
package/dist/esm/w/call/util.js
CHANGED
|
@@ -1,646 +1,623 @@
|
|
|
1
|
+
// Copyright (c) Wowok.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
1
3
|
import { bcs } from "../../bcs/index.js";
|
|
2
|
-
import {
|
|
3
|
-
isValueTypeNumber,
|
|
4
|
-
OperatorType,
|
|
5
|
-
ValueType,
|
|
6
|
-
parseValueType
|
|
7
|
-
} from "../common.js";
|
|
4
|
+
import { isValueTypeNumber, OperatorType, ValueType, parseValueType, } from "../common.js";
|
|
8
5
|
import { ContextType, MAX_ENV_PERMISSION_GUARD_COUNT } from "../common.js";
|
|
9
6
|
import { W_ERROR, WErrors } from "../exception.js";
|
|
10
7
|
import { Config, GetAccountOrMark_Address } from "../local/index.js";
|
|
11
8
|
import { LocalMark } from "../local/local.js";
|
|
12
9
|
import { GUARDQUERY, getGuardQueryInfo } from "./guard-ins.js";
|
|
13
|
-
const getCallEnvAccount = async (env) => {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
10
|
+
export const getCallEnvAccount = async (env) => {
|
|
11
|
+
const acc = await GetAccountOrMark_Address({
|
|
12
|
+
name_or_address: env.account || "",
|
|
13
|
+
});
|
|
14
|
+
if (!acc) {
|
|
15
|
+
W_ERROR(WErrors.InvalidParam, `account ${env.account} not found`);
|
|
16
|
+
}
|
|
17
|
+
env.account = acc;
|
|
18
|
+
return acc;
|
|
22
19
|
};
|
|
23
20
|
function createSingleOperandNode(property, operand) {
|
|
24
|
-
|
|
25
|
-
|
|
21
|
+
const node = { type: property, node: operand };
|
|
22
|
+
return node;
|
|
26
23
|
}
|
|
27
|
-
const resolveCallEnv = async (env) => {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
}
|
|
44
|
-
env.permission_guard = [...guards];
|
|
45
|
-
if (env.permission_guard.length > MAX_ENV_PERMISSION_GUARD_COUNT) {
|
|
46
|
-
W_ERROR(
|
|
47
|
-
WErrors.InvalidParam,
|
|
48
|
-
`permission_guard length ${env.permission_guard.length} exceeds ${MAX_ENV_PERMISSION_GUARD_COUNT}`
|
|
49
|
-
);
|
|
24
|
+
export const resolveCallEnv = async (env) => {
|
|
25
|
+
env.network = await Config.Instance().network_get(env?.network);
|
|
26
|
+
const acc = await getCallEnvAccount(env);
|
|
27
|
+
// 去重处理
|
|
28
|
+
if (env?.permission_guard && env.permission_guard?.length > 0) {
|
|
29
|
+
const guards = await LocalMark.Instance().get_many_address_availables(env.permission_guard);
|
|
30
|
+
if (guards.length !== env.permission_guard.length) {
|
|
31
|
+
// 找出没有找到的 guard
|
|
32
|
+
const foundGuardSet = new Set(guards);
|
|
33
|
+
const notFoundGuards = env.permission_guard.filter((guard) => !foundGuardSet.has(guard));
|
|
34
|
+
W_ERROR(WErrors.InvalidParam, `permission_guard not found: ${notFoundGuards.join(", ")}`);
|
|
35
|
+
}
|
|
36
|
+
env.permission_guard = [...guards];
|
|
37
|
+
if (env.permission_guard.length > MAX_ENV_PERMISSION_GUARD_COUNT) {
|
|
38
|
+
W_ERROR(WErrors.InvalidParam, `permission_guard length ${env.permission_guard.length} exceeds ${MAX_ENV_PERMISSION_GUARD_COUNT}`);
|
|
39
|
+
}
|
|
50
40
|
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
41
|
+
if (env?.referrer) {
|
|
42
|
+
const r = await GetAccountOrMark_Address({
|
|
43
|
+
name_or_address: env.referrer || "",
|
|
44
|
+
});
|
|
45
|
+
if (r) {
|
|
46
|
+
env.referrer = r;
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
W_ERROR(WErrors.InvalidParam, `referrer ${env.referrer} not found`);
|
|
50
|
+
}
|
|
60
51
|
}
|
|
61
|
-
|
|
62
|
-
return acc;
|
|
52
|
+
return acc;
|
|
63
53
|
};
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
if (
|
|
69
|
-
|
|
54
|
+
// ================================================
|
|
55
|
+
// 从output和table恢复GuardNode的函数
|
|
56
|
+
// ================================================
|
|
57
|
+
export const checkType = (type, type_required, node) => {
|
|
58
|
+
if (type_required === "variable") {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
else if (type_required === "number") {
|
|
62
|
+
if (isValueTypeNumber(type) ||
|
|
63
|
+
type === ContextType.TypeClock ||
|
|
64
|
+
type === ValueType.Value) {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
70
67
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
68
|
+
else if (type_required === ValueType.Address) {
|
|
69
|
+
if (type === ContextType.TypeSigner ||
|
|
70
|
+
type === ContextType.TypeGuard ||
|
|
71
|
+
type === ValueType.Value) {
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
else if (type === ValueType.Value) {
|
|
76
|
+
// Value 是动态类型,可以匹配任何具体类型
|
|
77
|
+
return;
|
|
74
78
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
return;
|
|
79
|
-
} else if (type_required === "vec_number") {
|
|
80
|
-
if (type === ValueType.VecU8 || type === ValueType.VecU16 || type === ValueType.VecU32 || type === ValueType.VecU64 || type === ValueType.VecU128 || type === ValueType.VecU256) {
|
|
81
|
-
return;
|
|
79
|
+
else if (type_required === ValueType.Value) {
|
|
80
|
+
// 任何类型都可以赋值给 Value 类型
|
|
81
|
+
return;
|
|
82
82
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
83
|
+
else if (type_required === "vec_number") {
|
|
84
|
+
if (type === ValueType.VecU8 ||
|
|
85
|
+
type === ValueType.VecU16 ||
|
|
86
|
+
type === ValueType.VecU32 ||
|
|
87
|
+
type === ValueType.VecU64 ||
|
|
88
|
+
type === ValueType.VecU128 ||
|
|
89
|
+
type === ValueType.VecU256) {
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
else if (type_required === "vec") {
|
|
94
|
+
if (type === ValueType.VecBool ||
|
|
95
|
+
type === ValueType.VecAddress ||
|
|
96
|
+
type === ValueType.VecString ||
|
|
97
|
+
type === ValueType.VecU8 ||
|
|
98
|
+
type === ValueType.VecU16 ||
|
|
99
|
+
type === ValueType.VecU32 ||
|
|
100
|
+
type === ValueType.VecU64 ||
|
|
101
|
+
type === ValueType.VecU128 ||
|
|
102
|
+
type === ValueType.VecU256) {
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
if (type !== type_required) {
|
|
107
|
+
W_ERROR(WErrors.InvalidParam, `checkType: ${type} require type: ${type_required} with node: ${JSON.stringify(node)}`);
|
|
86
108
|
}
|
|
87
|
-
}
|
|
88
|
-
if (type !== type_required) {
|
|
89
|
-
W_ERROR(
|
|
90
|
-
WErrors.InvalidParam,
|
|
91
|
-
`checkType: ${type} require type: ${type_required} with node: ${JSON.stringify(node)}`
|
|
92
|
-
);
|
|
93
|
-
}
|
|
94
109
|
};
|
|
110
|
+
// 从链上获取数据,就不用再checkType
|
|
95
111
|
const parseNode = (parserState) => {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
return parseMultiOperandNode(parserState, "vec_contains_number");
|
|
221
|
-
case OperatorType.TypedValueVecIndexOf_Bool:
|
|
222
|
-
return parseTwoOperandNode(parserState, "vec_indexof_bool");
|
|
223
|
-
case OperatorType.TypedValueVecIndexOf_Address:
|
|
224
|
-
return parseTwoOperandNode(parserState, "vec_indexof_address");
|
|
225
|
-
case OperatorType.TypedValueVecIndexOf_String:
|
|
226
|
-
return parseTwoOperandNode(parserState, "vec_indexof_string");
|
|
227
|
-
case OperatorType.TypedValueVecIndexOf_StringNoCase:
|
|
228
|
-
return parseTwoOperandNode(
|
|
229
|
-
parserState,
|
|
230
|
-
"vec_indexof_string_nocase"
|
|
231
|
-
);
|
|
232
|
-
case OperatorType.TypedValueVecIndexOf_Number:
|
|
233
|
-
return parseTwoOperandNode(parserState, "vec_indexof_number");
|
|
234
|
-
case ContextType.TypeSigner:
|
|
235
|
-
return { type: "context", context: "Signer" };
|
|
236
|
-
case ContextType.TypeGuard:
|
|
237
|
-
return { type: "context", context: "Guard" };
|
|
238
|
-
case ContextType.TypeClock:
|
|
239
|
-
return { type: "context", context: "Clock" };
|
|
240
|
-
default:
|
|
241
|
-
throw new Error(`ParseGuardNode: Unknown opcode: ${opCode}`);
|
|
242
|
-
}
|
|
112
|
+
if (parserState.currentPosition >= parserState.output.length) {
|
|
113
|
+
W_ERROR(WErrors.InvalidParam, "parseNode: Unexpected end of output while parsing node");
|
|
114
|
+
}
|
|
115
|
+
const opCode = parserState.output[parserState.currentPosition];
|
|
116
|
+
parserState.currentPosition++;
|
|
117
|
+
switch (opCode) {
|
|
118
|
+
case ContextType.TypeConstant: // TYPE_CONSTANT
|
|
119
|
+
if (parserState.currentPosition >= parserState.output.length) {
|
|
120
|
+
W_ERROR(WErrors.InvalidParam, "parseNode: Missing identifier after TypeConstant opcode");
|
|
121
|
+
}
|
|
122
|
+
const identifierByte = parserState.output[parserState.currentPosition];
|
|
123
|
+
parserState.currentPosition++;
|
|
124
|
+
/*从guard数据恢复,不查也没问题
|
|
125
|
+
const tableItem = parserState.table.find(
|
|
126
|
+
(item) => item.identifier === identifierByte,
|
|
127
|
+
);
|
|
128
|
+
if (!tableItem) {
|
|
129
|
+
W_ERROR(
|
|
130
|
+
WErrors.InvalidParam,
|
|
131
|
+
`parseNode: Identifier ${identifierByte} not found in table`,
|
|
132
|
+
);
|
|
133
|
+
}*/
|
|
134
|
+
return { type: "identifier", identifier: identifierByte };
|
|
135
|
+
case OperatorType.TypeQuery: // QUERY TYPE
|
|
136
|
+
return parseQueryNode(parserState);
|
|
137
|
+
case OperatorType.TypeLogicAsU256GreaterEqual:
|
|
138
|
+
return parseMultiOperandNode(parserState, "logic_as_u256_greater_or_equal");
|
|
139
|
+
case OperatorType.TypeLogicAsU256LesserEqual:
|
|
140
|
+
return parseMultiOperandNode(parserState, "logic_as_u256_lesser_or_equal");
|
|
141
|
+
case OperatorType.TypeLogicAsU256Equal:
|
|
142
|
+
return parseMultiOperandNode(parserState, "logic_as_u256_equal");
|
|
143
|
+
case OperatorType.TypeLogicAsU256Greater:
|
|
144
|
+
return parseMultiOperandNode(parserState, "logic_as_u256_greater");
|
|
145
|
+
case OperatorType.TypeLogicAsU256Lesser:
|
|
146
|
+
return parseMultiOperandNode(parserState, "logic_as_u256_lesser");
|
|
147
|
+
case OperatorType.TypeLogicEqual:
|
|
148
|
+
return parseMultiOperandNode(parserState, "logic_equal");
|
|
149
|
+
case OperatorType.TypeLogicAnd:
|
|
150
|
+
return parseMultiOperandNode(parserState, "logic_and");
|
|
151
|
+
case OperatorType.TypeLogicOr:
|
|
152
|
+
return parseMultiOperandNode(parserState, "logic_or");
|
|
153
|
+
case OperatorType.TypeStringContains:
|
|
154
|
+
return parseMultiOperandNode(parserState, "logic_string_contains");
|
|
155
|
+
case OperatorType.TypeStringNocaseContains:
|
|
156
|
+
return parseMultiOperandNode(parserState, "logic_string_nocase_contains");
|
|
157
|
+
case OperatorType.TypeStringNocaseEqual:
|
|
158
|
+
return parseMultiOperandNode(parserState, "logic_string_nocase_equal");
|
|
159
|
+
case OperatorType.TypeNumberAdd:
|
|
160
|
+
return parseMultiOperandNode(parserState, "calc_number_add");
|
|
161
|
+
case OperatorType.TypeNumberSubtract:
|
|
162
|
+
return parseMultiOperandNode(parserState, "calc_number_subtract");
|
|
163
|
+
case OperatorType.TypeNumberMultiply:
|
|
164
|
+
return parseMultiOperandNode(parserState, "calc_number_multiply");
|
|
165
|
+
case OperatorType.TypeNumberDivide:
|
|
166
|
+
return parseMultiOperandNode(parserState, "calc_number_divide");
|
|
167
|
+
case OperatorType.TypeNumberMod:
|
|
168
|
+
return parseMultiOperandNode(parserState, "calc_number_mod");
|
|
169
|
+
case OperatorType.TypeLogicNot:
|
|
170
|
+
return parseSingleOperandNode(parserState, "logic_not");
|
|
171
|
+
case OperatorType.TypeStringLength:
|
|
172
|
+
return parseSingleOperandNode(parserState, "calc_string_length");
|
|
173
|
+
case OperatorType.TypeNumberAddress:
|
|
174
|
+
return parseSingleOperandNode(parserState, "convert_number_address");
|
|
175
|
+
case OperatorType.TypeAddressNumber:
|
|
176
|
+
return parseSingleOperandNode(parserState, "convert_address_number");
|
|
177
|
+
case OperatorType.TypeNumberString:
|
|
178
|
+
return parseSingleOperandNode(parserState, "convert_number_string");
|
|
179
|
+
case OperatorType.TypeStringNumber:
|
|
180
|
+
return parseSingleOperandNode(parserState, "convert_string_number");
|
|
181
|
+
/*case OperatorType.TypeStringLowercase:
|
|
182
|
+
return parseSingleOperandNode(
|
|
183
|
+
parserState,
|
|
184
|
+
"convert_string_lowercase",
|
|
185
|
+
);*/
|
|
186
|
+
case OperatorType.TypeSafeU8:
|
|
187
|
+
return parseSingleOperandNode(parserState, "convert_safe_u8");
|
|
188
|
+
case OperatorType.TypeSafeU16:
|
|
189
|
+
return parseSingleOperandNode(parserState, "convert_safe_u16");
|
|
190
|
+
case OperatorType.TypeSafeU32:
|
|
191
|
+
return parseSingleOperandNode(parserState, "convert_safe_u32");
|
|
192
|
+
case OperatorType.TypeSafeU64:
|
|
193
|
+
return parseSingleOperandNode(parserState, "convert_safe_u64");
|
|
194
|
+
case OperatorType.TypeSafeU128:
|
|
195
|
+
return parseSingleOperandNode(parserState, "convert_safe_u128");
|
|
196
|
+
case OperatorType.TypeSafeU256:
|
|
197
|
+
return parseSingleOperandNode(parserState, "convert_safe_u256");
|
|
198
|
+
case OperatorType.TypeStringIndexof:
|
|
199
|
+
return parseTwoOperandNode(parserState, "calc_string_indexof");
|
|
200
|
+
case OperatorType.TypeStringNocaseIndexof:
|
|
201
|
+
return parseTwoOperandNode(parserState, "calc_string_nocase_indexof");
|
|
202
|
+
// typedValue 操作
|
|
203
|
+
case OperatorType.TypedValueType:
|
|
204
|
+
return parseSingleOperandNode(parserState, "value_type");
|
|
205
|
+
case OperatorType.TypedValueVecLength:
|
|
206
|
+
return parseSingleOperandNode(parserState, "vec_length");
|
|
207
|
+
case OperatorType.TypedValueVecContains_Bool:
|
|
208
|
+
return parseMultiOperandNode(parserState, "vec_contains_bool");
|
|
209
|
+
case OperatorType.TypedValueVecContains_Address:
|
|
210
|
+
return parseMultiOperandNode(parserState, "vec_contains_address");
|
|
211
|
+
case OperatorType.TypedValueVecContains_String:
|
|
212
|
+
return parseMultiOperandNode(parserState, "vec_contains_string");
|
|
213
|
+
case OperatorType.TypedValueVecContains_StringNoCase:
|
|
214
|
+
return parseMultiOperandNode(parserState, "vec_contains_string_nocase");
|
|
215
|
+
case OperatorType.TypedValueVecContains_Number:
|
|
216
|
+
return parseMultiOperandNode(parserState, "vec_contains_number");
|
|
217
|
+
case OperatorType.TypedValueVecIndexOf_Bool:
|
|
218
|
+
return parseTwoOperandNode(parserState, "vec_indexof_bool");
|
|
219
|
+
case OperatorType.TypedValueVecIndexOf_Address:
|
|
220
|
+
return parseTwoOperandNode(parserState, "vec_indexof_address");
|
|
221
|
+
case OperatorType.TypedValueVecIndexOf_String:
|
|
222
|
+
return parseTwoOperandNode(parserState, "vec_indexof_string");
|
|
223
|
+
case OperatorType.TypedValueVecIndexOf_StringNoCase:
|
|
224
|
+
return parseTwoOperandNode(parserState, "vec_indexof_string_nocase");
|
|
225
|
+
case OperatorType.TypedValueVecIndexOf_Number:
|
|
226
|
+
return parseTwoOperandNode(parserState, "vec_indexof_number");
|
|
227
|
+
case ContextType.TypeSigner:
|
|
228
|
+
return { type: "context", context: "Signer" };
|
|
229
|
+
case ContextType.TypeGuard:
|
|
230
|
+
return { type: "context", context: "Guard" };
|
|
231
|
+
case ContextType.TypeClock:
|
|
232
|
+
return { type: "context", context: "Clock" };
|
|
233
|
+
default:
|
|
234
|
+
throw new Error(`ParseGuardNode: Unknown opcode: ${opCode}`);
|
|
235
|
+
}
|
|
243
236
|
};
|
|
244
237
|
const parseMultiOperandNode = (parserState, nodeProperty) => {
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
)
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
238
|
+
// For multi-operand operations, we need to read the operand count from the stream
|
|
239
|
+
if (parserState.currentPosition >= parserState.output.length) {
|
|
240
|
+
W_ERROR(WErrors.InvalidParam, "parseMultiOperandNode: Insufficient data for multi-operand operation");
|
|
241
|
+
}
|
|
242
|
+
// Read operand count (the next byte in the stream)
|
|
243
|
+
const operandCount = parserState.output[parserState.currentPosition];
|
|
244
|
+
parserState.currentPosition++;
|
|
245
|
+
// Parse operands in the order they appear in the stream
|
|
246
|
+
const operands = [];
|
|
247
|
+
// Standard multi-operand: all operands use same requiredType (parse in reverse order)
|
|
248
|
+
for (let i = 0; i < operandCount; i++) {
|
|
249
|
+
operands.unshift(parseNode(parserState));
|
|
250
|
+
}
|
|
251
|
+
const node = {
|
|
252
|
+
type: nodeProperty,
|
|
253
|
+
nodes: operands,
|
|
254
|
+
};
|
|
255
|
+
return node;
|
|
262
256
|
};
|
|
263
257
|
const parseSingleOperandNode = (parserState, nodeProperty) => {
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
nodeProperty,
|
|
267
|
-
operand
|
|
268
|
-
);
|
|
258
|
+
const operand = parseNode(parserState);
|
|
259
|
+
return createSingleOperandNode(nodeProperty, operand);
|
|
269
260
|
};
|
|
270
261
|
const parseTwoOperandNode = (parserState, nodeProperty) => {
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
return node;
|
|
262
|
+
// Read order byte (0 = forward, 1 = backward)
|
|
263
|
+
if (parserState.currentPosition >= parserState.output.length) {
|
|
264
|
+
W_ERROR(WErrors.InvalidParam, "parseTwoOperandNode: Missing order byte");
|
|
265
|
+
}
|
|
266
|
+
const orderByte = parserState.output[parserState.currentPosition];
|
|
267
|
+
parserState.currentPosition++;
|
|
268
|
+
const order = orderByte === 0 ? "forward" : "backward";
|
|
269
|
+
// 右侧节点在前
|
|
270
|
+
const nodeRight = parseNode(parserState);
|
|
271
|
+
const nodeLeft = parseNode(parserState);
|
|
272
|
+
const node = {
|
|
273
|
+
type: nodeProperty,
|
|
274
|
+
nodeLeft,
|
|
275
|
+
nodeRight,
|
|
276
|
+
order,
|
|
277
|
+
};
|
|
278
|
+
return node;
|
|
289
279
|
};
|
|
280
|
+
// Helper function to handle parsing of query nodes with their parameters
|
|
290
281
|
const parseQueryNode = (parserState) => {
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
"parseQueryNode: Missing witness byte after TypeQuery opcode"
|
|
295
|
-
);
|
|
296
|
-
}
|
|
297
|
-
const witnessByte = parserState.output[parserState.currentPosition];
|
|
298
|
-
parserState.currentPosition++;
|
|
299
|
-
if (parserState.currentPosition >= parserState.output.length) {
|
|
300
|
-
W_ERROR(
|
|
301
|
-
WErrors.InvalidParam,
|
|
302
|
-
"parseQueryNode: Missing object identifier after witness byte"
|
|
303
|
-
);
|
|
304
|
-
}
|
|
305
|
-
const objectIdentifier = parserState.output[parserState.currentPosition];
|
|
306
|
-
parserState.currentPosition++;
|
|
307
|
-
const remainingBytes = parserState.output.subarray(
|
|
308
|
-
parserState.currentPosition
|
|
309
|
-
);
|
|
310
|
-
if (remainingBytes.length < 2) {
|
|
311
|
-
W_ERROR(
|
|
312
|
-
WErrors.InvalidParam,
|
|
313
|
-
"parseQueryNode: Not enough bytes for query ID after object identifier"
|
|
314
|
-
);
|
|
315
|
-
}
|
|
316
|
-
const queryId = bcs.U16.parse(remainingBytes);
|
|
317
|
-
parserState.currentPosition += 2;
|
|
318
|
-
const query = GUARDQUERY.find((q) => q.id === queryId);
|
|
319
|
-
if (!query) {
|
|
320
|
-
W_ERROR(
|
|
321
|
-
WErrors.InvalidParam,
|
|
322
|
-
`parseQueryNode: Query with ID ${queryId} not found`
|
|
323
|
-
);
|
|
324
|
-
}
|
|
325
|
-
const queryInfo = getGuardQueryInfo(queryId);
|
|
326
|
-
if (!queryInfo) {
|
|
327
|
-
W_ERROR(
|
|
328
|
-
WErrors.InvalidParam,
|
|
329
|
-
`parseQueryNode: Query name not found for ID ${queryId}`
|
|
330
|
-
);
|
|
331
|
-
}
|
|
332
|
-
const parameters = [];
|
|
333
|
-
const paramTypes = queryInfo.parameters;
|
|
334
|
-
for (let i = paramTypes.length - 1; i >= 0; i--) {
|
|
335
|
-
parameters.unshift(parseNode(parserState));
|
|
336
|
-
}
|
|
337
|
-
const node = {
|
|
338
|
-
type: "query",
|
|
339
|
-
query: queryInfo.name,
|
|
340
|
-
object: {
|
|
341
|
-
identifier: objectIdentifier,
|
|
342
|
-
...witnessByte !== ContextType.TypeConstant ? { convert_witness: witnessByte } : {}
|
|
343
|
-
},
|
|
344
|
-
parameters
|
|
345
|
-
};
|
|
346
|
-
return node;
|
|
347
|
-
};
|
|
348
|
-
const restoreNodeFromOutput = (output, table) => {
|
|
349
|
-
try {
|
|
350
|
-
if (!output || output.length === 0) {
|
|
351
|
-
W_ERROR(
|
|
352
|
-
WErrors.InvalidParam,
|
|
353
|
-
"restoreNodeFromOutput: output is empty"
|
|
354
|
-
);
|
|
282
|
+
// Read the witness type (if present)
|
|
283
|
+
if (parserState.currentPosition >= parserState.output.length) {
|
|
284
|
+
W_ERROR(WErrors.InvalidParam, "parseQueryNode: Missing witness byte after TypeQuery opcode");
|
|
355
285
|
}
|
|
356
|
-
const
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
286
|
+
const witnessByte = parserState.output[parserState.currentPosition];
|
|
287
|
+
parserState.currentPosition++;
|
|
288
|
+
// Read the object identifier
|
|
289
|
+
if (parserState.currentPosition >= parserState.output.length) {
|
|
290
|
+
W_ERROR(WErrors.InvalidParam, "parseQueryNode: Missing object identifier after witness byte");
|
|
291
|
+
}
|
|
292
|
+
const objectIdentifier = parserState.output[parserState.currentPosition];
|
|
293
|
+
parserState.currentPosition++;
|
|
294
|
+
// Read the query ID (u16)
|
|
295
|
+
const remainingBytes = parserState.output.subarray(parserState.currentPosition);
|
|
296
|
+
if (remainingBytes.length < 2) {
|
|
297
|
+
W_ERROR(WErrors.InvalidParam, "parseQueryNode: Not enough bytes for query ID after object identifier");
|
|
298
|
+
}
|
|
299
|
+
// Use BCS deserialization to read the u16 query ID
|
|
300
|
+
const queryId = bcs.U16.parse(remainingBytes);
|
|
301
|
+
parserState.currentPosition += 2;
|
|
302
|
+
// Find the query definition
|
|
303
|
+
const query = GUARDQUERY.find((q) => q.id === queryId);
|
|
304
|
+
if (!query) {
|
|
305
|
+
W_ERROR(WErrors.InvalidParam, `parseQueryNode: Query with ID ${queryId} not found`);
|
|
306
|
+
}
|
|
307
|
+
// Get full query info using the name
|
|
308
|
+
const queryInfo = getGuardQueryInfo(queryId);
|
|
309
|
+
if (!queryInfo) {
|
|
310
|
+
W_ERROR(WErrors.InvalidParam, `parseQueryNode: Query name not found for ID ${queryId}`);
|
|
311
|
+
}
|
|
312
|
+
// Parse parameters in reverse order (as serialized by buildNode)
|
|
313
|
+
const parameters = [];
|
|
314
|
+
const paramTypes = queryInfo.parameters;
|
|
315
|
+
for (let i = paramTypes.length - 1; i >= 0; i--) {
|
|
316
|
+
parameters.unshift(parseNode(parserState));
|
|
317
|
+
}
|
|
318
|
+
const node = {
|
|
319
|
+
type: "query",
|
|
320
|
+
query: queryInfo.name,
|
|
321
|
+
object: {
|
|
322
|
+
identifier: objectIdentifier,
|
|
323
|
+
...(witnessByte !== ContextType.TypeConstant
|
|
324
|
+
? { convert_witness: witnessByte }
|
|
325
|
+
: {}),
|
|
326
|
+
},
|
|
327
|
+
parameters,
|
|
378
328
|
};
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
329
|
+
return node;
|
|
330
|
+
};
|
|
331
|
+
// Main function to restore GuardNode from output and table
|
|
332
|
+
// Uses a stack-based approach similar to the Rust implementation
|
|
333
|
+
export const restoreNodeFromOutput = (output, table) => {
|
|
334
|
+
try {
|
|
335
|
+
// Validate output format
|
|
336
|
+
if (!output || output.length === 0) {
|
|
337
|
+
W_ERROR(WErrors.InvalidParam, "restoreNodeFromOutput: output is empty");
|
|
386
338
|
}
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
break;
|
|
396
|
-
case OperatorType.TypeQuery: {
|
|
397
|
-
const witnessByte = readByte();
|
|
398
|
-
const identifier = readByte();
|
|
399
|
-
const queryId = readU16();
|
|
400
|
-
const queryInfo = getGuardQueryInfo(queryId);
|
|
401
|
-
if (!queryInfo) {
|
|
402
|
-
W_ERROR(
|
|
403
|
-
WErrors.InvalidParam,
|
|
404
|
-
`restoreNodeFromOutput: Query with ID ${queryId} not found`
|
|
405
|
-
);
|
|
406
|
-
}
|
|
407
|
-
const parameters = [];
|
|
408
|
-
for (let i = 0; i < queryInfo.parameters.length; i++) {
|
|
409
|
-
if (nodeStack.length === 0) {
|
|
410
|
-
W_ERROR(
|
|
411
|
-
WErrors.InvalidParam,
|
|
412
|
-
`restoreNodeFromOutput: Insufficient parameters for query ${queryInfo.name}`
|
|
413
|
-
);
|
|
339
|
+
// Use a stack to build the node tree, similar to Rust implementation
|
|
340
|
+
const nodeStack = [];
|
|
341
|
+
const rep_quote = new Map(); // rep - policies
|
|
342
|
+
let position = 0;
|
|
343
|
+
// Helper function to read a byte
|
|
344
|
+
const readByte = () => {
|
|
345
|
+
if (position >= output.length) {
|
|
346
|
+
W_ERROR(WErrors.InvalidParam, "readByte: Unexpected end of output");
|
|
414
347
|
}
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
const
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
348
|
+
return output[position++];
|
|
349
|
+
};
|
|
350
|
+
// Helper function to read a u16 (little-endian)
|
|
351
|
+
const readU16 = () => {
|
|
352
|
+
if (position + 2 > output.length) {
|
|
353
|
+
W_ERROR(WErrors.InvalidParam, "readU16: Insufficient bytes for u16");
|
|
354
|
+
}
|
|
355
|
+
const value = output[position] + output[position + 1] * 256;
|
|
356
|
+
position += 2;
|
|
357
|
+
return value;
|
|
358
|
+
};
|
|
359
|
+
// Process the input byte by byte, similar to Rust
|
|
360
|
+
while (position < output.length) {
|
|
361
|
+
const opCode = readByte();
|
|
362
|
+
switch (opCode) {
|
|
363
|
+
case ContextType.TypeConstant: {
|
|
364
|
+
// TYPE_CONSTANT (48)
|
|
365
|
+
const identifier = readByte();
|
|
366
|
+
nodeStack.push({ type: "identifier", identifier });
|
|
367
|
+
break;
|
|
368
|
+
}
|
|
369
|
+
case ContextType.TypeSigner: // TYPE_SIGNER (45)
|
|
370
|
+
nodeStack.push({ type: "context", context: "Signer" });
|
|
371
|
+
break;
|
|
372
|
+
case ContextType.TypeClock:
|
|
373
|
+
nodeStack.push({ type: "context", context: "Clock" });
|
|
374
|
+
break;
|
|
375
|
+
case ContextType.TypeGuard:
|
|
376
|
+
nodeStack.push({ type: "context", context: "Guard" });
|
|
377
|
+
break;
|
|
378
|
+
case OperatorType.TypeQuery: {
|
|
379
|
+
// TYPE_QUERY (40)
|
|
380
|
+
const witnessByte = readByte();
|
|
381
|
+
const identifier = readByte();
|
|
382
|
+
const queryId = readU16();
|
|
383
|
+
const queryInfo = getGuardQueryInfo(queryId);
|
|
384
|
+
if (!queryInfo) {
|
|
385
|
+
W_ERROR(WErrors.InvalidParam, `restoreNodeFromOutput: Query with ID ${queryId} not found`);
|
|
386
|
+
}
|
|
387
|
+
// Pop parameters from stack (in reverse order)
|
|
388
|
+
const parameters = [];
|
|
389
|
+
for (let i = 0; i < queryInfo.parameters.length; i++) {
|
|
390
|
+
if (nodeStack.length === 0) {
|
|
391
|
+
W_ERROR(WErrors.InvalidParam, `restoreNodeFromOutput: Insufficient parameters for query ${queryInfo.name}`);
|
|
392
|
+
}
|
|
393
|
+
parameters.unshift(nodeStack.pop());
|
|
394
|
+
}
|
|
395
|
+
if (queryInfo.id === 1167 &&
|
|
396
|
+
parameters[0].type === "identifier" && // 来自于table
|
|
397
|
+
parameters[0]?.identifier != null) {
|
|
398
|
+
const rep_item = table.find((item) => item.identifier === identifier &&
|
|
399
|
+
!item.b_submission);
|
|
400
|
+
const policy_item = table.find((item) => item.identifier ===
|
|
401
|
+
parameters[0].identifier &&
|
|
402
|
+
!item.b_submission);
|
|
403
|
+
const repItemValueType = rep_item
|
|
404
|
+
? parseValueType(rep_item.value_type)
|
|
405
|
+
: undefined;
|
|
406
|
+
const policyItemValueType = policy_item
|
|
407
|
+
? parseValueType(policy_item.value_type)
|
|
408
|
+
: undefined;
|
|
409
|
+
if (rep_item &&
|
|
410
|
+
policy_item &&
|
|
411
|
+
repItemValueType === ValueType.Address &&
|
|
412
|
+
policyItemValueType === ValueType.String) {
|
|
413
|
+
if (rep_quote.has(rep_item.value)) {
|
|
414
|
+
if (!rep_quote
|
|
415
|
+
.get(rep_item.value)
|
|
416
|
+
.includes(policy_item.value)) {
|
|
417
|
+
rep_quote
|
|
418
|
+
.get(rep_item.value)
|
|
419
|
+
.push(policy_item.value);
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
else {
|
|
423
|
+
rep_quote.set(rep_item.value, [
|
|
424
|
+
policy_item.value,
|
|
425
|
+
]);
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
}
|
|
429
|
+
nodeStack.push({
|
|
430
|
+
type: "query",
|
|
431
|
+
query: queryInfo.name,
|
|
432
|
+
object: {
|
|
433
|
+
identifier,
|
|
434
|
+
...(witnessByte !== ContextType.TypeConstant
|
|
435
|
+
? { convert_witness: witnessByte }
|
|
436
|
+
: {}),
|
|
437
|
+
},
|
|
438
|
+
parameters,
|
|
439
|
+
});
|
|
440
|
+
break;
|
|
441
|
+
}
|
|
442
|
+
case OperatorType.TypeLogicEqual:
|
|
443
|
+
case OperatorType.TypeLogicAnd:
|
|
444
|
+
case OperatorType.TypeLogicOr:
|
|
445
|
+
case OperatorType.TypeLogicAsU256GreaterEqual:
|
|
446
|
+
case OperatorType.TypeLogicAsU256LesserEqual:
|
|
447
|
+
case OperatorType.TypeLogicAsU256Equal:
|
|
448
|
+
case OperatorType.TypeLogicAsU256Greater:
|
|
449
|
+
case OperatorType.TypeLogicAsU256Lesser:
|
|
450
|
+
case OperatorType.TypeStringContains:
|
|
451
|
+
case OperatorType.TypeStringNocaseContains:
|
|
452
|
+
case OperatorType.TypeStringNocaseEqual:
|
|
453
|
+
case OperatorType.TypeNumberAdd:
|
|
454
|
+
case OperatorType.TypeNumberSubtract:
|
|
455
|
+
case OperatorType.TypeNumberMultiply:
|
|
456
|
+
case OperatorType.TypeNumberDivide:
|
|
457
|
+
case OperatorType.TypeNumberMod: {
|
|
458
|
+
const operandCount = readByte();
|
|
459
|
+
const operands = [];
|
|
460
|
+
// Pop operands from stack
|
|
461
|
+
// Serialization pushes children in reverse order (right to left)
|
|
462
|
+
// Popping gives us right to left, which matches original order
|
|
463
|
+
for (let i = 0; i < operandCount; i++) {
|
|
464
|
+
if (nodeStack.length === 0) {
|
|
465
|
+
W_ERROR(WErrors.InvalidParam, `restoreNodeFromOutput: Insufficient operands for multi-operand operation`);
|
|
466
|
+
}
|
|
467
|
+
operands.push(nodeStack.pop());
|
|
468
|
+
}
|
|
469
|
+
const nodeProperty = getNodePropertyFromOpCode(opCode);
|
|
470
|
+
nodeStack.push({
|
|
471
|
+
type: nodeProperty,
|
|
472
|
+
nodes: operands,
|
|
473
|
+
});
|
|
474
|
+
break;
|
|
431
475
|
}
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
476
|
+
case OperatorType.TypeLogicNot:
|
|
477
|
+
case OperatorType.TypeStringLength:
|
|
478
|
+
case OperatorType.TypeNumberAddress:
|
|
479
|
+
case OperatorType.TypeAddressNumber:
|
|
480
|
+
case OperatorType.TypeNumberString:
|
|
481
|
+
case OperatorType.TypeStringNumber:
|
|
482
|
+
case OperatorType.TypeSafeU8:
|
|
483
|
+
case OperatorType.TypeSafeU16:
|
|
484
|
+
case OperatorType.TypeSafeU32:
|
|
485
|
+
case OperatorType.TypeSafeU64:
|
|
486
|
+
case OperatorType.TypeSafeU128:
|
|
487
|
+
case OperatorType.TypeSafeU256:
|
|
488
|
+
case OperatorType.TypedValueType:
|
|
489
|
+
case OperatorType.TypedValueVecLength: {
|
|
490
|
+
if (nodeStack.length === 0) {
|
|
491
|
+
W_ERROR(WErrors.InvalidParam, `restoreNodeFromOutput: Insufficient operand for single-operand operation`);
|
|
492
|
+
}
|
|
493
|
+
const operand = nodeStack.pop();
|
|
494
|
+
const nodeProperty = getNodePropertyFromOpCode(opCode);
|
|
495
|
+
nodeStack.push({
|
|
496
|
+
type: nodeProperty,
|
|
497
|
+
node: operand,
|
|
498
|
+
});
|
|
499
|
+
break;
|
|
500
|
+
}
|
|
501
|
+
case OperatorType.TypeStringIndexof:
|
|
502
|
+
case OperatorType.TypeStringNocaseIndexof:
|
|
503
|
+
case OperatorType.TypedValueVecIndexOf_Bool:
|
|
504
|
+
case OperatorType.TypedValueVecIndexOf_Address:
|
|
505
|
+
case OperatorType.TypedValueVecIndexOf_String:
|
|
506
|
+
case OperatorType.TypedValueVecIndexOf_StringNoCase:
|
|
507
|
+
case OperatorType.TypedValueVecIndexOf_Number: {
|
|
508
|
+
const orderByte = readByte();
|
|
509
|
+
const order = orderByte === 0 ? "forward" : "backward";
|
|
510
|
+
if (nodeStack.length < 2) {
|
|
511
|
+
W_ERROR(WErrors.InvalidParam, `restoreNodeFromOutput: Insufficient operands for two-operand operation`);
|
|
512
|
+
}
|
|
513
|
+
// Pop in reverse order of serialization
|
|
514
|
+
const nodeLeft = nodeStack.pop();
|
|
515
|
+
const nodeRight = nodeStack.pop();
|
|
516
|
+
const nodeProperty = getNodePropertyFromOpCode(opCode);
|
|
517
|
+
nodeStack.push({
|
|
518
|
+
type: nodeProperty,
|
|
519
|
+
nodeLeft,
|
|
520
|
+
nodeRight,
|
|
521
|
+
order,
|
|
522
|
+
});
|
|
523
|
+
break;
|
|
524
|
+
}
|
|
525
|
+
default:
|
|
526
|
+
W_ERROR(WErrors.InvalidParam, `restoreNodeFromOutput: Unknown opcode ${opCode}`);
|
|
437
527
|
}
|
|
438
|
-
}
|
|
439
|
-
nodeStack.push({
|
|
440
|
-
type: "query",
|
|
441
|
-
query: queryInfo.name,
|
|
442
|
-
object: {
|
|
443
|
-
identifier,
|
|
444
|
-
...witnessByte !== ContextType.TypeConstant ? { convert_witness: witnessByte } : {}
|
|
445
|
-
},
|
|
446
|
-
parameters
|
|
447
|
-
});
|
|
448
|
-
break;
|
|
449
528
|
}
|
|
529
|
+
// The root node should be the only element left in the stack
|
|
530
|
+
if (nodeStack.length !== 1) {
|
|
531
|
+
W_ERROR(WErrors.InvalidParam, `restoreNodeFromOutput: Expected 1 node in stack, found ${nodeStack.length}`);
|
|
532
|
+
}
|
|
533
|
+
return {
|
|
534
|
+
root: nodeStack[0],
|
|
535
|
+
rep_quote,
|
|
536
|
+
};
|
|
537
|
+
}
|
|
538
|
+
catch (error) {
|
|
539
|
+
throw new Error(`restoreNodeFromOutput: Failed to restore GuardNode from output: ${error.message}`);
|
|
540
|
+
}
|
|
541
|
+
};
|
|
542
|
+
// Helper function to get node property from opcode
|
|
543
|
+
const getNodePropertyFromOpCode = (opCode) => {
|
|
544
|
+
switch (opCode) {
|
|
450
545
|
case OperatorType.TypeLogicEqual:
|
|
546
|
+
return "logic_equal";
|
|
451
547
|
case OperatorType.TypeLogicAnd:
|
|
548
|
+
return "logic_and";
|
|
452
549
|
case OperatorType.TypeLogicOr:
|
|
550
|
+
return "logic_or";
|
|
453
551
|
case OperatorType.TypeLogicAsU256GreaterEqual:
|
|
552
|
+
return "logic_as_u256_greater_or_equal";
|
|
454
553
|
case OperatorType.TypeLogicAsU256LesserEqual:
|
|
554
|
+
return "logic_as_u256_lesser_or_equal";
|
|
455
555
|
case OperatorType.TypeLogicAsU256Equal:
|
|
556
|
+
return "logic_as_u256_equal";
|
|
456
557
|
case OperatorType.TypeLogicAsU256Greater:
|
|
558
|
+
return "logic_as_u256_greater";
|
|
457
559
|
case OperatorType.TypeLogicAsU256Lesser:
|
|
560
|
+
return "logic_as_u256_lesser";
|
|
458
561
|
case OperatorType.TypeStringContains:
|
|
562
|
+
return "logic_string_contains";
|
|
459
563
|
case OperatorType.TypeStringNocaseContains:
|
|
564
|
+
return "logic_string_nocase_contains";
|
|
460
565
|
case OperatorType.TypeStringNocaseEqual:
|
|
566
|
+
return "logic_string_nocase_equal";
|
|
461
567
|
case OperatorType.TypeNumberAdd:
|
|
568
|
+
return "calc_number_add";
|
|
462
569
|
case OperatorType.TypeNumberSubtract:
|
|
570
|
+
return "calc_number_subtract";
|
|
463
571
|
case OperatorType.TypeNumberMultiply:
|
|
572
|
+
return "calc_number_multiply";
|
|
464
573
|
case OperatorType.TypeNumberDivide:
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
for (let i = 0; i < operandCount; i++) {
|
|
469
|
-
if (nodeStack.length === 0) {
|
|
470
|
-
W_ERROR(
|
|
471
|
-
WErrors.InvalidParam,
|
|
472
|
-
`restoreNodeFromOutput: Insufficient operands for multi-operand operation`
|
|
473
|
-
);
|
|
474
|
-
}
|
|
475
|
-
operands.push(nodeStack.pop());
|
|
476
|
-
}
|
|
477
|
-
const nodeProperty = getNodePropertyFromOpCode(opCode);
|
|
478
|
-
nodeStack.push({
|
|
479
|
-
type: nodeProperty,
|
|
480
|
-
nodes: operands
|
|
481
|
-
});
|
|
482
|
-
break;
|
|
483
|
-
}
|
|
574
|
+
return "calc_number_divide";
|
|
575
|
+
case OperatorType.TypeNumberMod:
|
|
576
|
+
return "calc_number_mod";
|
|
484
577
|
case OperatorType.TypeLogicNot:
|
|
578
|
+
return "logic_not";
|
|
485
579
|
case OperatorType.TypeStringLength:
|
|
580
|
+
return "calc_string_length";
|
|
486
581
|
case OperatorType.TypeNumberAddress:
|
|
582
|
+
return "convert_number_address";
|
|
487
583
|
case OperatorType.TypeAddressNumber:
|
|
584
|
+
return "convert_address_number";
|
|
488
585
|
case OperatorType.TypeNumberString:
|
|
586
|
+
return "convert_number_string";
|
|
489
587
|
case OperatorType.TypeStringNumber:
|
|
588
|
+
return "convert_string_number";
|
|
490
589
|
case OperatorType.TypeSafeU8:
|
|
590
|
+
return "convert_safe_u8";
|
|
491
591
|
case OperatorType.TypeSafeU16:
|
|
592
|
+
return "convert_safe_u16";
|
|
492
593
|
case OperatorType.TypeSafeU32:
|
|
594
|
+
return "convert_safe_u32";
|
|
493
595
|
case OperatorType.TypeSafeU64:
|
|
596
|
+
return "convert_safe_u64";
|
|
494
597
|
case OperatorType.TypeSafeU128:
|
|
598
|
+
return "convert_safe_u128";
|
|
495
599
|
case OperatorType.TypeSafeU256:
|
|
600
|
+
return "convert_safe_u256";
|
|
496
601
|
case OperatorType.TypedValueType:
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
WErrors.InvalidParam,
|
|
501
|
-
`restoreNodeFromOutput: Insufficient operand for single-operand operation`
|
|
502
|
-
);
|
|
503
|
-
}
|
|
504
|
-
const operand = nodeStack.pop();
|
|
505
|
-
const nodeProperty = getNodePropertyFromOpCode(opCode);
|
|
506
|
-
nodeStack.push({
|
|
507
|
-
type: nodeProperty,
|
|
508
|
-
node: operand
|
|
509
|
-
});
|
|
510
|
-
break;
|
|
511
|
-
}
|
|
602
|
+
return "value_type";
|
|
603
|
+
case OperatorType.TypedValueVecLength:
|
|
604
|
+
return "vec_length";
|
|
512
605
|
case OperatorType.TypeStringIndexof:
|
|
606
|
+
return "calc_string_indexof";
|
|
513
607
|
case OperatorType.TypeStringNocaseIndexof:
|
|
608
|
+
return "calc_string_nocase_indexof";
|
|
514
609
|
case OperatorType.TypedValueVecIndexOf_Bool:
|
|
610
|
+
return "vec_indexof_bool";
|
|
515
611
|
case OperatorType.TypedValueVecIndexOf_Address:
|
|
612
|
+
return "vec_indexof_address";
|
|
516
613
|
case OperatorType.TypedValueVecIndexOf_String:
|
|
614
|
+
return "vec_indexof_string";
|
|
517
615
|
case OperatorType.TypedValueVecIndexOf_StringNoCase:
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
if (nodeStack.length < 2) {
|
|
522
|
-
W_ERROR(
|
|
523
|
-
WErrors.InvalidParam,
|
|
524
|
-
`restoreNodeFromOutput: Insufficient operands for two-operand operation`
|
|
525
|
-
);
|
|
526
|
-
}
|
|
527
|
-
const nodeLeft = nodeStack.pop();
|
|
528
|
-
const nodeRight = nodeStack.pop();
|
|
529
|
-
const nodeProperty = getNodePropertyFromOpCode(opCode);
|
|
530
|
-
nodeStack.push({
|
|
531
|
-
type: nodeProperty,
|
|
532
|
-
nodeLeft,
|
|
533
|
-
nodeRight,
|
|
534
|
-
order
|
|
535
|
-
});
|
|
536
|
-
break;
|
|
537
|
-
}
|
|
616
|
+
return "vec_indexof_string_nocase";
|
|
617
|
+
case OperatorType.TypedValueVecIndexOf_Number:
|
|
618
|
+
return "vec_indexof_number";
|
|
538
619
|
default:
|
|
539
|
-
|
|
540
|
-
WErrors.InvalidParam,
|
|
541
|
-
`restoreNodeFromOutput: Unknown opcode ${opCode}`
|
|
542
|
-
);
|
|
543
|
-
}
|
|
544
|
-
}
|
|
545
|
-
if (nodeStack.length !== 1) {
|
|
546
|
-
W_ERROR(
|
|
547
|
-
WErrors.InvalidParam,
|
|
548
|
-
`restoreNodeFromOutput: Expected 1 node in stack, found ${nodeStack.length}`
|
|
549
|
-
);
|
|
620
|
+
return "unknown";
|
|
550
621
|
}
|
|
551
|
-
return {
|
|
552
|
-
root: nodeStack[0],
|
|
553
|
-
rep_quote
|
|
554
|
-
};
|
|
555
|
-
} catch (error) {
|
|
556
|
-
throw new Error(
|
|
557
|
-
`restoreNodeFromOutput: Failed to restore GuardNode from output: ${error.message}`
|
|
558
|
-
);
|
|
559
|
-
}
|
|
560
|
-
};
|
|
561
|
-
const getNodePropertyFromOpCode = (opCode) => {
|
|
562
|
-
switch (opCode) {
|
|
563
|
-
case OperatorType.TypeLogicEqual:
|
|
564
|
-
return "logic_equal";
|
|
565
|
-
case OperatorType.TypeLogicAnd:
|
|
566
|
-
return "logic_and";
|
|
567
|
-
case OperatorType.TypeLogicOr:
|
|
568
|
-
return "logic_or";
|
|
569
|
-
case OperatorType.TypeLogicAsU256GreaterEqual:
|
|
570
|
-
return "logic_as_u256_greater_or_equal";
|
|
571
|
-
case OperatorType.TypeLogicAsU256LesserEqual:
|
|
572
|
-
return "logic_as_u256_lesser_or_equal";
|
|
573
|
-
case OperatorType.TypeLogicAsU256Equal:
|
|
574
|
-
return "logic_as_u256_equal";
|
|
575
|
-
case OperatorType.TypeLogicAsU256Greater:
|
|
576
|
-
return "logic_as_u256_greater";
|
|
577
|
-
case OperatorType.TypeLogicAsU256Lesser:
|
|
578
|
-
return "logic_as_u256_lesser";
|
|
579
|
-
case OperatorType.TypeStringContains:
|
|
580
|
-
return "logic_string_contains";
|
|
581
|
-
case OperatorType.TypeStringNocaseContains:
|
|
582
|
-
return "logic_string_nocase_contains";
|
|
583
|
-
case OperatorType.TypeStringNocaseEqual:
|
|
584
|
-
return "logic_string_nocase_equal";
|
|
585
|
-
case OperatorType.TypeNumberAdd:
|
|
586
|
-
return "calc_number_add";
|
|
587
|
-
case OperatorType.TypeNumberSubtract:
|
|
588
|
-
return "calc_number_subtract";
|
|
589
|
-
case OperatorType.TypeNumberMultiply:
|
|
590
|
-
return "calc_number_multiply";
|
|
591
|
-
case OperatorType.TypeNumberDivide:
|
|
592
|
-
return "calc_number_divide";
|
|
593
|
-
case OperatorType.TypeNumberMod:
|
|
594
|
-
return "calc_number_mod";
|
|
595
|
-
case OperatorType.TypeLogicNot:
|
|
596
|
-
return "logic_not";
|
|
597
|
-
case OperatorType.TypeStringLength:
|
|
598
|
-
return "calc_string_length";
|
|
599
|
-
case OperatorType.TypeNumberAddress:
|
|
600
|
-
return "convert_number_address";
|
|
601
|
-
case OperatorType.TypeAddressNumber:
|
|
602
|
-
return "convert_address_number";
|
|
603
|
-
case OperatorType.TypeNumberString:
|
|
604
|
-
return "convert_number_string";
|
|
605
|
-
case OperatorType.TypeStringNumber:
|
|
606
|
-
return "convert_string_number";
|
|
607
|
-
case OperatorType.TypeSafeU8:
|
|
608
|
-
return "convert_safe_u8";
|
|
609
|
-
case OperatorType.TypeSafeU16:
|
|
610
|
-
return "convert_safe_u16";
|
|
611
|
-
case OperatorType.TypeSafeU32:
|
|
612
|
-
return "convert_safe_u32";
|
|
613
|
-
case OperatorType.TypeSafeU64:
|
|
614
|
-
return "convert_safe_u64";
|
|
615
|
-
case OperatorType.TypeSafeU128:
|
|
616
|
-
return "convert_safe_u128";
|
|
617
|
-
case OperatorType.TypeSafeU256:
|
|
618
|
-
return "convert_safe_u256";
|
|
619
|
-
case OperatorType.TypedValueType:
|
|
620
|
-
return "value_type";
|
|
621
|
-
case OperatorType.TypedValueVecLength:
|
|
622
|
-
return "vec_length";
|
|
623
|
-
case OperatorType.TypeStringIndexof:
|
|
624
|
-
return "calc_string_indexof";
|
|
625
|
-
case OperatorType.TypeStringNocaseIndexof:
|
|
626
|
-
return "calc_string_nocase_indexof";
|
|
627
|
-
case OperatorType.TypedValueVecIndexOf_Bool:
|
|
628
|
-
return "vec_indexof_bool";
|
|
629
|
-
case OperatorType.TypedValueVecIndexOf_Address:
|
|
630
|
-
return "vec_indexof_address";
|
|
631
|
-
case OperatorType.TypedValueVecIndexOf_String:
|
|
632
|
-
return "vec_indexof_string";
|
|
633
|
-
case OperatorType.TypedValueVecIndexOf_StringNoCase:
|
|
634
|
-
return "vec_indexof_string_nocase";
|
|
635
|
-
case OperatorType.TypedValueVecIndexOf_Number:
|
|
636
|
-
return "vec_indexof_number";
|
|
637
|
-
default:
|
|
638
|
-
return "unknown";
|
|
639
|
-
}
|
|
640
|
-
};
|
|
641
|
-
export {
|
|
642
|
-
checkType,
|
|
643
|
-
getCallEnvAccount,
|
|
644
|
-
resolveCallEnv,
|
|
645
|
-
restoreNodeFromOutput
|
|
646
622
|
};
|
|
623
|
+
//# sourceMappingURL=util.js.map
|