@kynesyslabs/demosdk 2.9.0 → 2.10.0
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/build/abstraction/CoinFinder.js +19 -23
- package/build/abstraction/CoinFinder.js.map +1 -1
- package/build/abstraction/EvmCoinFinder.js +48 -89
- package/build/abstraction/EvmCoinFinder.js.map +1 -1
- package/build/abstraction/Identities.d.ts +28 -1
- package/build/abstraction/Identities.js +58 -24
- package/build/abstraction/Identities.js.map +1 -1
- package/build/abstraction/index.js +4 -9
- package/build/abstraction/index.js.map +1 -1
- package/build/abstraction/providers/AbstractionProviders.js +1 -3
- package/build/abstraction/providers/AbstractionProviders.js.map +1 -1
- package/build/abstraction/providers/CoinAddresses.js +4 -7
- package/build/abstraction/providers/CoinAddresses.js.map +1 -1
- package/build/abstraction/providers/Providers.js +13 -18
- package/build/abstraction/providers/Providers.js.map +1 -1
- package/build/abstraction/providers/evm/ankr.js +8 -14
- package/build/abstraction/providers/evm/ankr.js.map +1 -1
- package/build/abstraction/providers/evm/arbitrum.js +4 -10
- package/build/abstraction/providers/evm/arbitrum.js.map +1 -1
- package/build/abstraction/providers/evm/bsc.js +4 -10
- package/build/abstraction/providers/evm/bsc.js.map +1 -1
- package/build/abstraction/providers/evm/ethereum.js +5 -11
- package/build/abstraction/providers/evm/ethereum.js.map +1 -1
- package/build/abstraction/providers/evm/index.js +4 -14
- package/build/abstraction/providers/evm/index.js.map +1 -1
- package/build/abstraction/providers/evm/optimism.js +4 -10
- package/build/abstraction/providers/evm/optimism.js.map +1 -1
- package/build/abstraction/providers/index.js +2 -7
- package/build/abstraction/providers/index.js.map +1 -1
- package/build/abstraction/providers/non-evm/bitcoin.js +4 -10
- package/build/abstraction/providers/non-evm/bitcoin.js.map +1 -1
- package/build/abstraction/providers/non-evm/index.js +4 -14
- package/build/abstraction/providers/non-evm/index.js.map +1 -1
- package/build/abstraction/providers/non-evm/multiversx.js +4 -10
- package/build/abstraction/providers/non-evm/multiversx.js.map +1 -1
- package/build/abstraction/providers/non-evm/solana.js +7 -13
- package/build/abstraction/providers/non-evm/solana.js.map +1 -1
- package/build/abstraction/providers/non-evm/xrp.js +4 -10
- package/build/abstraction/providers/non-evm/xrp.js.map +1 -1
- package/build/abstraction/types/UDResolution.js +1 -2
- package/build/abstraction/types/UDResolution.js.map +1 -1
- package/build/bridge/index.js +12 -33
- package/build/bridge/index.js.map +1 -1
- package/build/bridge/nativeBridge.js +16 -19
- package/build/bridge/nativeBridge.js.map +1 -1
- package/build/bridge/nativeBridgeTypes.js +6 -9
- package/build/bridge/nativeBridgeTypes.js.map +1 -1
- package/build/bridge/rubicBridge.js +1 -4
- package/build/bridge/rubicBridge.js.map +1 -1
- package/build/contracts/ContractDeployer.js +6 -43
- package/build/contracts/ContractDeployer.js.map +1 -1
- package/build/contracts/ContractFactory.js +8 -13
- package/build/contracts/ContractFactory.js.map +1 -1
- package/build/contracts/ContractInstance.js +3 -7
- package/build/contracts/ContractInstance.js.map +1 -1
- package/build/contracts/ContractInteractor.js +4 -41
- package/build/contracts/ContractInteractor.js.map +1 -1
- package/build/contracts/index.js +4 -12
- package/build/contracts/index.js.map +1 -1
- package/build/contracts/templates/TemplateRegistry.js +3 -7
- package/build/contracts/templates/TemplateRegistry.js.map +1 -1
- package/build/contracts/templates/TemplateValidator.js +1 -5
- package/build/contracts/templates/TemplateValidator.js.map +1 -1
- package/build/contracts/types/ContractABI.js +1 -2
- package/build/contracts/types/ContractABI.js.map +1 -1
- package/build/contracts/types/TypedContract.js +1 -2
- package/build/contracts/types/TypedContract.js.map +1 -1
- package/build/d402/client/D402Client.js +4 -41
- package/build/d402/client/D402Client.js.map +1 -1
- package/build/d402/client/index.js +1 -5
- package/build/d402/client/index.js.map +1 -1
- package/build/d402/client/types.js +1 -2
- package/build/d402/client/types.js.map +1 -1
- package/build/d402/index.js +2 -20
- package/build/d402/index.js.map +1 -1
- package/build/d402/server/D402Server.js +1 -5
- package/build/d402/server/D402Server.js.map +1 -1
- package/build/d402/server/index.js +2 -7
- package/build/d402/server/index.js.map +1 -1
- package/build/d402/server/middleware.js +3 -6
- package/build/d402/server/middleware.js.map +1 -1
- package/build/d402/server/types.js +1 -2
- package/build/d402/server/types.js.map +1 -1
- package/build/demoswork/executor/index.js +1 -4
- package/build/demoswork/executor/index.js.map +1 -1
- package/build/demoswork/executor/stepexecutor.js +2 -6
- package/build/demoswork/executor/stepexecutor.js.map +1 -1
- package/build/demoswork/index.js +8 -25
- package/build/demoswork/index.js.map +1 -1
- package/build/demoswork/operations/baseoperation.js +2 -6
- package/build/demoswork/operations/baseoperation.js.map +1 -1
- package/build/demoswork/operations/conditional/condition.js +7 -11
- package/build/demoswork/operations/conditional/condition.js.map +1 -1
- package/build/demoswork/operations/conditional/index.js +9 -13
- package/build/demoswork/operations/conditional/index.js.map +1 -1
- package/build/demoswork/operations/index.js +5 -9
- package/build/demoswork/operations/index.js.map +1 -1
- package/build/demoswork/utils/createTestWorkScript.js +22 -28
- package/build/demoswork/utils/createTestWorkScript.js.map +1 -1
- package/build/demoswork/utils/index.js +3 -8
- package/build/demoswork/utils/index.js.map +1 -1
- package/build/demoswork/validator/index.js +3 -6
- package/build/demoswork/validator/index.js.map +1 -1
- package/build/demoswork/validator/steps.validator.js +3 -6
- package/build/demoswork/validator/steps.validator.js.map +1 -1
- package/build/demoswork/work.js +6 -11
- package/build/demoswork/work.js.map +1 -1
- package/build/demoswork/workstep.js +16 -26
- package/build/demoswork/workstep.js.map +1 -1
- package/build/encryption/Cryptography.js +36 -71
- package/build/encryption/Cryptography.js.map +1 -1
- package/build/encryption/FHE/index.js +3 -9
- package/build/encryption/FHE/index.js.map +1 -1
- package/build/encryption/Hashing.js +8 -15
- package/build/encryption/Hashing.js.map +1 -1
- package/build/encryption/PQC/enigma.js +22 -59
- package/build/encryption/PQC/enigma.js.map +1 -1
- package/build/encryption/PQC/falconts/falcon.js +3 -6
- package/build/encryption/PQC/falconts/falcon.js.map +1 -1
- package/build/encryption/PQC/falconts/index.js +3 -15
- package/build/encryption/PQC/falconts/index.js.map +1 -1
- package/build/encryption/PQC/falconts/mnemonic.js +9 -15
- package/build/encryption/PQC/falconts/mnemonic.js.map +1 -1
- package/build/encryption/PQC/falconts/wordlist.js +1 -4
- package/build/encryption/PQC/falconts/wordlist.js.map +1 -1
- package/build/encryption/PQC/utils.js +2 -7
- package/build/encryption/PQC/utils.js.map +1 -1
- package/build/encryption/index.js +7 -50
- package/build/encryption/index.js.map +1 -1
- package/build/encryption/unifiedCrypto.js +23 -63
- package/build/encryption/unifiedCrypto.js.map +1 -1
- package/build/encryption/zK/identity/CommitmentService.js +5 -10
- package/build/encryption/zK/identity/CommitmentService.js.map +1 -1
- package/build/encryption/zK/identity/ProofGenerator.js +3 -40
- package/build/encryption/zK/identity/ProofGenerator.js.map +1 -1
- package/build/encryption/zK/identity/ZKIdentity.js +3 -40
- package/build/encryption/zK/identity/ZKIdentity.js.map +1 -1
- package/build/encryption/zK/identity/index.js +3 -40
- package/build/encryption/zK/identity/index.js.map +1 -1
- package/build/encryption/zK/index.js +2 -38
- package/build/encryption/zK/index.js.map +1 -1
- package/build/encryption/zK/interactive/index.js +4 -12
- package/build/encryption/zK/interactive/index.js.map +1 -1
- package/build/encryption/zK/primer.js +7 -13
- package/build/encryption/zK/primer.js.map +1 -1
- package/build/escrow/EscrowQueries.js +1 -5
- package/build/escrow/EscrowQueries.js.map +1 -1
- package/build/escrow/EscrowTransaction.js +8 -45
- package/build/escrow/EscrowTransaction.js.map +1 -1
- package/build/escrow/index.js +2 -7
- package/build/escrow/index.js.map +1 -1
- package/build/index.js +18 -54
- package/build/index.js.map +1 -1
- package/build/instant_messaging/index.js +13 -17
- package/build/instant_messaging/index.js.map +1 -1
- package/build/ipfs/IPFSOperations.js +5 -9
- package/build/ipfs/IPFSOperations.js.map +1 -1
- package/build/ipfs/index.js +1 -6
- package/build/ipfs/index.js.map +1 -1
- package/build/keyserver/KeyServerClient.js +10 -14
- package/build/keyserver/KeyServerClient.js.map +1 -1
- package/build/keyserver/errors.js +1 -5
- package/build/keyserver/errors.js.map +1 -1
- package/build/keyserver/index.js +3 -10
- package/build/keyserver/index.js.map +1 -1
- package/build/keyserver/types.js +1 -2
- package/build/keyserver/types.js.map +1 -1
- package/build/keyserver/verification.js +4 -8
- package/build/keyserver/verification.js.map +1 -1
- package/build/l2ps/index.js +2 -8
- package/build/l2ps/index.js.map +1 -1
- package/build/l2ps/l2ps.js +6 -41
- package/build/l2ps/l2ps.js.map +1 -1
- package/build/multichain/core/aptos.js +40 -77
- package/build/multichain/core/aptos.js.map +1 -1
- package/build/multichain/core/btc.js +22 -62
- package/build/multichain/core/btc.js.map +1 -1
- package/build/multichain/core/evm.js +24 -61
- package/build/multichain/core/evm.js.map +1 -1
- package/build/multichain/core/ibc.js +34 -71
- package/build/multichain/core/ibc.js.map +1 -1
- package/build/multichain/core/index.js +12 -28
- package/build/multichain/core/index.js.map +1 -1
- package/build/multichain/core/multiversx.js +34 -41
- package/build/multichain/core/multiversx.js.map +1 -1
- package/build/multichain/core/near.js +44 -84
- package/build/multichain/core/near.js.map +1 -1
- package/build/multichain/core/solana.js +51 -91
- package/build/multichain/core/solana.js.map +1 -1
- package/build/multichain/core/ten.js +11 -48
- package/build/multichain/core/ten.js.map +1 -1
- package/build/multichain/core/ton.d.ts +1 -1
- package/build/multichain/core/ton.js +30 -37
- package/build/multichain/core/ton.js.map +1 -1
- package/build/multichain/core/tron.js +34 -41
- package/build/multichain/core/tron.js.map +1 -1
- package/build/multichain/core/types/SolanaPhantomProvider.js +1 -2
- package/build/multichain/core/types/SolanaPhantomProvider.js.map +1 -1
- package/build/multichain/core/types/defaultChain.js +1 -5
- package/build/multichain/core/types/defaultChain.js.map +1 -1
- package/build/multichain/core/types/interfaces.js +2 -5
- package/build/multichain/core/types/interfaces.js.map +1 -1
- package/build/multichain/core/utils.js +1 -4
- package/build/multichain/core/utils.js.map +1 -1
- package/build/multichain/core/xrp.js +17 -22
- package/build/multichain/core/xrp.js.map +1 -1
- package/build/multichain/index.js +3 -39
- package/build/multichain/index.js.map +1 -1
- package/build/multichain/localsdk/aptos.js +11 -15
- package/build/multichain/localsdk/aptos.js.map +1 -1
- package/build/multichain/localsdk/btc.js +10 -50
- package/build/multichain/localsdk/btc.js.map +1 -1
- package/build/multichain/localsdk/evm.js +6 -10
- package/build/multichain/localsdk/evm.js.map +1 -1
- package/build/multichain/localsdk/ibc.js +5 -9
- package/build/multichain/localsdk/ibc.js.map +1 -1
- package/build/multichain/localsdk/index.js +10 -23
- package/build/multichain/localsdk/index.js.map +1 -1
- package/build/multichain/localsdk/multiversx.js +12 -16
- package/build/multichain/localsdk/multiversx.js.map +1 -1
- package/build/multichain/localsdk/near.js +9 -13
- package/build/multichain/localsdk/near.js.map +1 -1
- package/build/multichain/localsdk/solana.js +5 -9
- package/build/multichain/localsdk/solana.js.map +1 -1
- package/build/multichain/localsdk/ten.js +8 -45
- package/build/multichain/localsdk/ten.js.map +1 -1
- package/build/multichain/localsdk/ton.js +9 -13
- package/build/multichain/localsdk/ton.js.map +1 -1
- package/build/multichain/localsdk/tron.js +2 -6
- package/build/multichain/localsdk/tron.js.map +1 -1
- package/build/multichain/localsdk/xrp.js +6 -43
- package/build/multichain/localsdk/xrp.js.map +1 -1
- package/build/multichain/websdk/aptos.js +1 -5
- package/build/multichain/websdk/aptos.js.map +1 -1
- package/build/multichain/websdk/btc.js +2 -6
- package/build/multichain/websdk/btc.js.map +1 -1
- package/build/multichain/websdk/evm.js +2 -6
- package/build/multichain/websdk/evm.js.map +1 -1
- package/build/multichain/websdk/ibc.js +2 -6
- package/build/multichain/websdk/ibc.js.map +1 -1
- package/build/multichain/websdk/index.js +9 -21
- package/build/multichain/websdk/index.js.map +1 -1
- package/build/multichain/websdk/multiversx.js +9 -13
- package/build/multichain/websdk/multiversx.js.map +1 -1
- package/build/multichain/websdk/near.js +2 -6
- package/build/multichain/websdk/near.js.map +1 -1
- package/build/multichain/websdk/solana.js +10 -18
- package/build/multichain/websdk/solana.js.map +1 -1
- package/build/multichain/websdk/ton.js +2 -6
- package/build/multichain/websdk/ton.js.map +1 -1
- package/build/multichain/websdk/xrp.js +2 -6
- package/build/multichain/websdk/xrp.js.map +1 -1
- package/build/storage/StorageProgram.js +11 -18
- package/build/storage/StorageProgram.js.map +1 -1
- package/build/storage/index.js +2 -10
- package/build/storage/index.js.map +1 -1
- package/build/tlsnotary/TLSNotary.js +11 -52
- package/build/tlsnotary/TLSNotary.js.map +1 -1
- package/build/tlsnotary/TLSNotaryService.js +21 -25
- package/build/tlsnotary/TLSNotaryService.js.map +1 -1
- package/build/tlsnotary/auto-init.js +11 -17
- package/build/tlsnotary/auto-init.js.map +1 -1
- package/build/tlsnotary/helpers.js +1 -4
- package/build/tlsnotary/helpers.js.map +1 -1
- package/build/tlsnotary/index.js +8 -25
- package/build/tlsnotary/index.js.map +1 -1
- package/build/tlsnotary/service.js +2 -7
- package/build/tlsnotary/service.js.map +1 -1
- package/build/tlsnotary/types.js +1 -2
- package/build/tlsnotary/types.js.map +1 -1
- package/build/tlsnotary/webpack.js +10 -52
- package/build/tlsnotary/webpack.js.map +1 -1
- package/build/tlsnotary/worker.js +5 -40
- package/build/tlsnotary/worker.js.map +1 -1
- package/build/types/abstraction/index.d.ts +64 -1
- package/build/types/abstraction/index.js +1 -2
- package/build/types/abstraction/index.js.map +1 -1
- package/build/types/blockchain/Confirmation.js +1 -4
- package/build/types/blockchain/Confirmation.js.map +1 -1
- package/build/types/blockchain/CustomCharges.js +2 -6
- package/build/types/blockchain/CustomCharges.js.map +1 -1
- package/build/types/blockchain/GCREdit.d.ts +1 -1
- package/build/types/blockchain/GCREdit.js +1 -2
- package/build/types/blockchain/GCREdit.js.map +1 -1
- package/build/types/blockchain/ISignature.js +1 -2
- package/build/types/blockchain/Transaction.js +1 -17
- package/build/types/blockchain/Transaction.js.map +1 -1
- package/build/types/blockchain/TransactionSubtypes/ContractCallTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/ContractDeployTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/CrosschainTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/D402PaymentTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/DemosworkTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/EscrowTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/IPFSTransaction.js +5 -12
- package/build/types/blockchain/TransactionSubtypes/IPFSTransaction.js.map +1 -1
- package/build/types/blockchain/TransactionSubtypes/IdentityTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/InstantMessagingTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/L2PSHashTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/L2PSTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/NativeBridgeTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/NativeTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/StorageProgramTransaction.js +4 -10
- package/build/types/blockchain/TransactionSubtypes/StorageProgramTransaction.js.map +1 -1
- package/build/types/blockchain/TransactionSubtypes/StorageTransaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/Web2Transaction.js +1 -2
- package/build/types/blockchain/TransactionSubtypes/index.js +16 -32
- package/build/types/blockchain/TransactionSubtypes/index.js.map +1 -1
- package/build/types/blockchain/TransactionSubtypes/utils.js +2 -6
- package/build/types/blockchain/TransactionSubtypes/utils.js.map +1 -1
- package/build/types/blockchain/TxFee.js +1 -2
- package/build/types/blockchain/ValidityData.js +1 -5
- package/build/types/blockchain/ValidityData.js.map +1 -1
- package/build/types/blockchain/WalletTypes.js +1 -2
- package/build/types/blockchain/address.js +1 -2
- package/build/types/blockchain/addressInfo.js +1 -2
- package/build/types/blockchain/blocks.js +1 -2
- package/build/types/blockchain/blocks.js.map +1 -1
- package/build/types/blockchain/encryptedTransaction.js +1 -2
- package/build/types/blockchain/genesisTypes.js +1 -2
- package/build/types/blockchain/genesisTypes.js.map +1 -1
- package/build/types/blockchain/identities.js +1 -2
- package/build/types/blockchain/identities.js.map +1 -1
- package/build/types/blockchain/rawTransaction.js +1 -2
- package/build/types/blockchain/rawTransaction.js.map +1 -1
- package/build/types/blockchain/statusNative.js +1 -2
- package/build/types/blockchain/statusProperties.js +1 -2
- package/build/types/bridge/bridgeTradePayload.js +1 -2
- package/build/types/bridge/constants.js +3 -6
- package/build/types/bridge/constants.js.map +1 -1
- package/build/types/communication/demosWork.js +1 -2
- package/build/types/communication/rpc.js +1 -4
- package/build/types/communication/rpc.js.map +1 -1
- package/build/types/communication/transmit.js +1 -2
- package/build/types/communication/transmit.js.map +1 -1
- package/build/types/cryptography.js +1 -2
- package/build/types/demoswork/datatypes.js +2 -5
- package/build/types/demoswork/datatypes.js.map +1 -1
- package/build/types/demoswork/index.js +1 -2
- package/build/types/demoswork/operations.js +1 -2
- package/build/types/demoswork/steps.js +4 -7
- package/build/types/demoswork/steps.js.map +1 -1
- package/build/types/gls/Operation.js +1 -2
- package/build/types/gls/StateChange.js +1 -2
- package/build/types/gls/StateChange.js.map +1 -1
- package/build/types/gls/account.js +1 -2
- package/build/types/index.js +10 -30
- package/build/types/index.js.map +1 -1
- package/build/types/instantMessaging/index.js +1 -2
- package/build/types/native/INativePayload.js +1 -2
- package/build/types/native/INativePayload.js.map +1 -1
- package/build/types/native/index.js +1 -17
- package/build/types/native/index.js.map +1 -1
- package/build/types/network/ExecutionResult.js +1 -2
- package/build/types/network/SecurityTypes.js +1 -2
- package/build/types/peers/Peer.js +1 -2
- package/build/types/peers/Peer.js.map +1 -1
- package/build/types/web2/discord.js +1 -2
- package/build/types/web2/index.js +2 -5
- package/build/types/web2/index.js.map +1 -1
- package/build/types/web2/telegram.js +1 -2
- package/build/types/web2/telegram.js.map +1 -1
- package/build/types/web2/twitter.js +1 -2
- package/build/types/xm/apiTools.js +1 -2
- package/build/types/xm/index.js +1 -2
- package/build/utils/dataManipulation.js +5 -12
- package/build/utils/dataManipulation.js.map +1 -1
- package/build/utils/getRemoteIP.js +3 -9
- package/build/utils/getRemoteIP.js.map +1 -1
- package/build/utils/index.js +4 -44
- package/build/utils/index.js.map +1 -1
- package/build/utils/pprint.js +3 -9
- package/build/utils/pprint.js.map +1 -1
- package/build/utils/uint8Serialize.js +2 -6
- package/build/utils/uint8Serialize.js.map +1 -1
- package/build/wallet/Wallet.js +11 -46
- package/build/wallet/Wallet.js.map +1 -1
- package/build/wallet/index.js +1 -37
- package/build/wallet/index.js.map +1 -1
- package/build/wallet/passkeys/passkeys.js +9 -16
- package/build/wallet/passkeys/passkeys.js.map +1 -1
- package/build/websdk/DemosContracts.d.ts +1 -1
- package/build/websdk/DemosContracts.js +9 -13
- package/build/websdk/DemosContracts.js.map +1 -1
- package/build/websdk/DemosTransactions.js +33 -69
- package/build/websdk/DemosTransactions.js.map +1 -1
- package/build/websdk/DemosWebAuth.js +17 -24
- package/build/websdk/DemosWebAuth.js.map +1 -1
- package/build/websdk/GCRGeneration.js +31 -19
- package/build/websdk/GCRGeneration.js.map +1 -1
- package/build/websdk/Web2Calls.js +14 -18
- package/build/websdk/Web2Calls.js.map +1 -1
- package/build/websdk/XMTransactions.js +8 -13
- package/build/websdk/XMTransactions.js.map +1 -1
- package/build/websdk/bridge.js +1 -5
- package/build/websdk/bridge.js.map +1 -1
- package/build/websdk/demos.js +2 -5
- package/build/websdk/demos.js.map +1 -1
- package/build/websdk/demosclass.js +55 -95
- package/build/websdk/demosclass.js.map +1 -1
- package/build/websdk/examples/tryWeb2.js +4 -6
- package/build/websdk/examples/tryWeb2.js.map +1 -1
- package/build/websdk/index.js +14 -69
- package/build/websdk/index.js.map +1 -1
- package/build/websdk/rsa.js +17 -24
- package/build/websdk/rsa.js.map +1 -1
- package/build/websdk/types/IBuffer.js +1 -2
- package/build/websdk/types/KeyPair.js +1 -2
- package/build/websdk/utils/bufferizer.js +1 -4
- package/build/websdk/utils/bufferizer.js.map +1 -1
- package/build/websdk/utils/canonicalJson.js +3 -8
- package/build/websdk/utils/canonicalJson.js.map +1 -1
- package/build/websdk/utils/forge_converter.js +4 -7
- package/build/websdk/utils/forge_converter.js.map +1 -1
- package/build/websdk/utils/required.js +2 -6
- package/build/websdk/utils/required.js.map +1 -1
- package/build/websdk/utils/sha256.js +1 -4
- package/build/websdk/utils/sha256.js.map +1 -1
- package/build/websdk/utils/skeletons.js +3 -8
- package/build/websdk/utils/skeletons.js.map +1 -1
- package/package.json +2 -1
|
@@ -1,15 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const sdk_core_1 = require("@multiversx/sdk-core");
|
|
8
|
-
const sdk_network_providers_1 = require("@multiversx/sdk-network-providers");
|
|
9
|
-
const sdk_wallet_1 = require("@multiversx/sdk-wallet");
|
|
10
|
-
const bech32_1 = __importDefault(require("bech32"));
|
|
11
|
-
const core_1 = require("./");
|
|
12
|
-
class MULTIVERSX extends core_1.DefaultChain {
|
|
1
|
+
import { Account, Address, GasEstimator, TokenTransfer, TransferTransactionsFactory, UserVerifier, } from "@multiversx/sdk-core";
|
|
2
|
+
import { ApiNetworkProvider } from "@multiversx/sdk-network-providers";
|
|
3
|
+
import { UserSigner, UserSecretKey } from "@multiversx/sdk-wallet";
|
|
4
|
+
import bech32 from 'bech32';
|
|
5
|
+
import { DefaultChain, required, } from "./index.js";
|
|
6
|
+
export class MULTIVERSX extends DefaultChain {
|
|
13
7
|
constructor(rpc_url) {
|
|
14
8
|
super(rpc_url);
|
|
15
9
|
this.chainId = "";
|
|
@@ -20,10 +14,10 @@ class MULTIVERSX extends core_1.DefaultChain {
|
|
|
20
14
|
}
|
|
21
15
|
setRPC(rpc_url) {
|
|
22
16
|
this.rpc_url = rpc_url;
|
|
23
|
-
this.provider = new
|
|
17
|
+
this.provider = new ApiNetworkProvider(this.rpc_url);
|
|
24
18
|
}
|
|
25
19
|
async connect() {
|
|
26
|
-
|
|
20
|
+
required(this.provider, "Provider not connected");
|
|
27
21
|
try {
|
|
28
22
|
const networkConfig = await this.provider.getNetworkConfig();
|
|
29
23
|
this.chainId = networkConfig.ChainID;
|
|
@@ -43,7 +37,7 @@ class MULTIVERSX extends core_1.DefaultChain {
|
|
|
43
37
|
catch (error) {
|
|
44
38
|
throw new Error("Failed to load the wallet. Invalid KeyFile!");
|
|
45
39
|
}
|
|
46
|
-
return
|
|
40
|
+
return UserSigner.fromWallet(keyFile, password);
|
|
47
41
|
}
|
|
48
42
|
async connectWallet(privateKey, options) {
|
|
49
43
|
// INFO: This method is overriden in the web sdk
|
|
@@ -51,8 +45,8 @@ class MULTIVERSX extends core_1.DefaultChain {
|
|
|
51
45
|
// Check if privateKey is a raw hex string (64 hex characters)
|
|
52
46
|
const isRawHexKey = /^[0-9a-fA-F]{64}$/.test(privateKey);
|
|
53
47
|
if (isRawHexKey) {
|
|
54
|
-
const secretKey =
|
|
55
|
-
this.wallet = new
|
|
48
|
+
const secretKey = UserSecretKey.fromString(privateKey);
|
|
49
|
+
this.wallet = new UserSigner(secretKey);
|
|
56
50
|
}
|
|
57
51
|
else {
|
|
58
52
|
this.wallet = await this.connectKeyFileWallet(privateKey, options?.password ?? '');
|
|
@@ -61,43 +55,43 @@ class MULTIVERSX extends core_1.DefaultChain {
|
|
|
61
55
|
}
|
|
62
56
|
getAddress() {
|
|
63
57
|
// INFO: method is overriden in the web sdk
|
|
64
|
-
|
|
58
|
+
required(this.wallet, "Wallet not connected");
|
|
65
59
|
return this.wallet.getAddress().bech32();
|
|
66
60
|
}
|
|
67
61
|
// SECTION: ReadsIntegrated
|
|
68
62
|
async getBalance(address) {
|
|
69
|
-
|
|
70
|
-
const Iaddress = new
|
|
63
|
+
required(address, "address is required to get the balance");
|
|
64
|
+
const Iaddress = new Address(address);
|
|
71
65
|
const account = await this.provider.getAccount(Iaddress);
|
|
72
66
|
return account.balance.toString();
|
|
73
67
|
}
|
|
74
68
|
async getTokenBalance(token_id) {
|
|
75
|
-
|
|
76
|
-
|
|
69
|
+
required(this.provider);
|
|
70
|
+
required(this.wallet);
|
|
77
71
|
const walletAddress = this.getAddress();
|
|
78
|
-
const address = new
|
|
72
|
+
const address = new Address(walletAddress);
|
|
79
73
|
const token = await this.provider.getFungibleTokenOfAccount(address, token_id);
|
|
80
74
|
return token.balance.toNumber();
|
|
81
75
|
}
|
|
82
76
|
async getNFTs() {
|
|
83
|
-
|
|
84
|
-
|
|
77
|
+
required(this.provider);
|
|
78
|
+
required(this.wallet);
|
|
85
79
|
const address = this.getAddress();
|
|
86
|
-
const account = new
|
|
80
|
+
const account = new Address(address);
|
|
87
81
|
return this.provider.getNonFungibleTokensOfAccount(account);
|
|
88
82
|
}
|
|
89
83
|
async signMessage(message, options) {
|
|
90
|
-
|
|
84
|
+
required(this.wallet || options?.privateKey, "Wallet not connected");
|
|
91
85
|
let wallet = this.wallet;
|
|
92
86
|
const signedMessage = wallet.sign(Buffer.from(message));
|
|
93
87
|
const signedMessageString = (await signedMessage).toString('hex');
|
|
94
88
|
return signedMessageString;
|
|
95
89
|
}
|
|
96
90
|
async verifyMessage(message, signature, publicKey) {
|
|
97
|
-
const decodedAddress =
|
|
98
|
-
const publicKeyBuffer = Buffer.from(
|
|
99
|
-
const address = new
|
|
100
|
-
const userVerifier =
|
|
91
|
+
const decodedAddress = bech32.decode(publicKey);
|
|
92
|
+
const publicKeyBuffer = Buffer.from(bech32.fromWords(decodedAddress.words));
|
|
93
|
+
const address = new Address(publicKeyBuffer);
|
|
94
|
+
const userVerifier = UserVerifier.fromAddress(address);
|
|
101
95
|
const isVerified = userVerifier.verify(Buffer.from(message), Buffer.from(signature, 'hex'));
|
|
102
96
|
return isVerified;
|
|
103
97
|
}
|
|
@@ -111,11 +105,11 @@ class MULTIVERSX extends core_1.DefaultChain {
|
|
|
111
105
|
return txs[0];
|
|
112
106
|
}
|
|
113
107
|
async addTxNonces(transactions) {
|
|
114
|
-
|
|
108
|
+
required(this.provider, "Provider not connected");
|
|
115
109
|
// INFO: Retrieve account on network to get nonce
|
|
116
110
|
const senderBech32 = this.getAddress();
|
|
117
|
-
const senderAddress = new
|
|
118
|
-
const account = new
|
|
111
|
+
const senderAddress = new Address(senderBech32);
|
|
112
|
+
const account = new Account(senderAddress);
|
|
119
113
|
const senderOnNetwork = await this.provider.getAccount(senderAddress);
|
|
120
114
|
account.update(senderOnNetwork);
|
|
121
115
|
// INFO: Local nonce management
|
|
@@ -133,7 +127,7 @@ class MULTIVERSX extends core_1.DefaultChain {
|
|
|
133
127
|
* @returns The signed transactions as an array of plain objects
|
|
134
128
|
*/
|
|
135
129
|
async signTransactions(transactions, options) {
|
|
136
|
-
|
|
130
|
+
required(this.wallet || options?.privateKey, "Wallet not connected");
|
|
137
131
|
// INFO: Override wallet connection
|
|
138
132
|
if (options?.privateKey) {
|
|
139
133
|
await this.connectWallet(options.privateKey, {
|
|
@@ -156,13 +150,13 @@ class MULTIVERSX extends core_1.DefaultChain {
|
|
|
156
150
|
return txs[0];
|
|
157
151
|
}
|
|
158
152
|
async preparePays(payments) {
|
|
159
|
-
|
|
153
|
+
required(this.wallet);
|
|
160
154
|
const sender = this.getAddress();
|
|
161
|
-
const senderAddress = new
|
|
155
|
+
const senderAddress = new Address(sender);
|
|
162
156
|
const transactions = payments.map(payment => {
|
|
163
|
-
const transfer =
|
|
164
|
-
const receiverAddress = new
|
|
165
|
-
const factory = new
|
|
157
|
+
const transfer = TokenTransfer.egldFromAmount(payment.amount);
|
|
158
|
+
const receiverAddress = new Address(payment.address);
|
|
159
|
+
const factory = new TransferTransactionsFactory(new GasEstimator());
|
|
166
160
|
return factory.createEGLDTransfer({
|
|
167
161
|
value: transfer,
|
|
168
162
|
sender: senderAddress,
|
|
@@ -177,5 +171,4 @@ class MULTIVERSX extends core_1.DefaultChain {
|
|
|
177
171
|
throw new Error("Method not implemented.");
|
|
178
172
|
}
|
|
179
173
|
}
|
|
180
|
-
exports.MULTIVERSX = MULTIVERSX;
|
|
181
174
|
//# sourceMappingURL=multiversx.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multiversx.js","sourceRoot":"","sources":["../../../../src/multichain/core/multiversx.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"multiversx.js","sourceRoot":"","sources":["../../../../src/multichain/core/multiversx.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,59 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.NEAR = void 0;
|
|
40
|
-
const near_api_js_1 = require("near-api-js");
|
|
41
|
-
const big_integer_1 = __importDefault(require("big-integer"));
|
|
42
|
-
const websdk_1 = require("../../websdk");
|
|
43
|
-
const defaultChain_1 = require("./types/defaultChain");
|
|
44
|
-
const transaction_1 = require("near-api-js/lib/transaction");
|
|
45
|
-
const utils_1 = require("@near-js/utils");
|
|
46
|
-
const bip39 = __importStar(require("@scure/bip39"));
|
|
47
|
-
const bytes_1 = require("@project-serum/anchor/dist/cjs/utils/bytes");
|
|
48
|
-
const tweetnacl_1 = __importDefault(require("tweetnacl"));
|
|
49
|
-
const tweetnacl_util_1 = require("tweetnacl-util");
|
|
50
|
-
const ed25519_hd_key_1 = require("ed25519-hd-key");
|
|
1
|
+
import { InMemorySigner, KeyPair, Near, transactions as actions, utils, } from "near-api-js";
|
|
2
|
+
import bigInt from "big-integer";
|
|
3
|
+
import { _required as required } from "../../websdk/index.js";
|
|
4
|
+
import { DefaultChain } from "./types/defaultChain.js";
|
|
5
|
+
import { Transaction } from "near-api-js/lib/transaction";
|
|
6
|
+
import { baseDecode, parseNearAmount } from "@near-js/utils";
|
|
7
|
+
import * as bip39 from "@scure/bip39";
|
|
8
|
+
import { bs58 } from "@project-serum/anchor/dist/cjs/utils/bytes";
|
|
9
|
+
import nacl from "tweetnacl";
|
|
10
|
+
import { decodeUTF8 } from "tweetnacl-util";
|
|
11
|
+
import { derivePath } from "ed25519-hd-key";
|
|
51
12
|
// NEAR BIP44 derivation path (coin type 397)
|
|
52
13
|
const NEAR_DERIVATION_PATH = "m/44'/397'/0'";
|
|
53
|
-
class NEAR extends
|
|
14
|
+
export class NEAR extends DefaultChain {
|
|
54
15
|
constructor(rpc_url, networkId = "testnet") {
|
|
55
16
|
super(rpc_url);
|
|
56
|
-
this.actions =
|
|
17
|
+
this.actions = actions;
|
|
57
18
|
this.name = "near";
|
|
58
19
|
this.networkId = networkId;
|
|
59
20
|
this.setRpc(rpc_url, networkId);
|
|
@@ -68,7 +29,7 @@ class NEAR extends defaultChain_1.DefaultChain {
|
|
|
68
29
|
setRpc(rpc_url, networkId = "testnet") {
|
|
69
30
|
this.rpc_url = rpc_url;
|
|
70
31
|
this.networkId = networkId;
|
|
71
|
-
this.provider = new
|
|
32
|
+
this.provider = new Near({
|
|
72
33
|
networkId: this.networkId,
|
|
73
34
|
nodeUrl: this.rpc_url,
|
|
74
35
|
});
|
|
@@ -93,26 +54,26 @@ class NEAR extends defaultChain_1.DefaultChain {
|
|
|
93
54
|
return balance.total;
|
|
94
55
|
}
|
|
95
56
|
async connectWallet(privateKey, options) {
|
|
96
|
-
(
|
|
57
|
+
required(options && options.accountId, "AccountId is required");
|
|
97
58
|
const seed = bip39.mnemonicToSeedSync(privateKey);
|
|
98
59
|
const seedHex = Buffer.from(seed).toString('hex');
|
|
99
|
-
const { key: derivedKey } =
|
|
100
|
-
const base58PrivateKey =
|
|
101
|
-
this.wallet =
|
|
60
|
+
const { key: derivedKey } = derivePath(NEAR_DERIVATION_PATH, seedHex);
|
|
61
|
+
const base58PrivateKey = bs58.encode(derivedKey);
|
|
62
|
+
this.wallet = KeyPair.fromString(`ed25519:${base58PrivateKey}`);
|
|
102
63
|
this.accountId = options.accountId;
|
|
103
64
|
this.networkId = options?.networkId;
|
|
104
|
-
this.signer = await
|
|
65
|
+
this.signer = await InMemorySigner.fromKeyPair(this.networkId, this.accountId, this.wallet);
|
|
105
66
|
return this.wallet;
|
|
106
67
|
}
|
|
107
68
|
async preparePays(payments, options) {
|
|
108
|
-
(
|
|
109
|
-
(
|
|
69
|
+
required(this.wallet, "Wallet not connected");
|
|
70
|
+
required(this.accountId, "AccountId is required");
|
|
110
71
|
const txs = payments.map(payment => {
|
|
111
|
-
const parsed =
|
|
72
|
+
const parsed = parseNearAmount(payment.amount);
|
|
112
73
|
const amount = parseFloat(parsed);
|
|
113
|
-
const tx = new
|
|
74
|
+
const tx = new Transaction({
|
|
114
75
|
receiverId: payment.address,
|
|
115
|
-
actions: [
|
|
76
|
+
actions: [actions.transfer(bigInt(amount))],
|
|
116
77
|
signerId: this.accountId,
|
|
117
78
|
publicKey: this.wallet.getPublicKey(),
|
|
118
79
|
});
|
|
@@ -121,8 +82,8 @@ class NEAR extends defaultChain_1.DefaultChain {
|
|
|
121
82
|
return await this.signTransactions(txs);
|
|
122
83
|
}
|
|
123
84
|
async signTransactions(txs, options) {
|
|
124
|
-
(
|
|
125
|
-
(
|
|
85
|
+
required(this.signer, "Wallet not connected");
|
|
86
|
+
required(this.accountId, "AccountId is required");
|
|
126
87
|
const publicKey = this.wallet.getPublicKey().toString();
|
|
127
88
|
const account = await this.provider.account(this.accountId);
|
|
128
89
|
const info = await account.getAccessKeys();
|
|
@@ -137,10 +98,10 @@ class NEAR extends defaultChain_1.DefaultChain {
|
|
|
137
98
|
});
|
|
138
99
|
const lastBlockHash = block.header.hash;
|
|
139
100
|
return Promise.all(txs.map(async (tx) => {
|
|
140
|
-
currentNonce = (
|
|
101
|
+
currentNonce = bigInt(currentNonce).add(1);
|
|
141
102
|
tx.nonce = currentNonce;
|
|
142
|
-
tx.blockHash =
|
|
143
|
-
const res = await
|
|
103
|
+
tx.blockHash = baseDecode(lastBlockHash);
|
|
104
|
+
const res = await actions.signTransaction(tx, this.signer, this.accountId, this.networkId);
|
|
144
105
|
// INFO: The `signTransaction` method returns an array with the hash and the signed tx
|
|
145
106
|
// We return the signed tx
|
|
146
107
|
return res[1].encode();
|
|
@@ -155,9 +116,9 @@ class NEAR extends defaultChain_1.DefaultChain {
|
|
|
155
116
|
return txs[0];
|
|
156
117
|
}
|
|
157
118
|
getEmptyTransaction() {
|
|
158
|
-
(
|
|
159
|
-
(
|
|
160
|
-
return new
|
|
119
|
+
required(this.accountId, "AccountId is required");
|
|
120
|
+
required(this.wallet, "Wallet not connected");
|
|
121
|
+
return new Transaction({
|
|
161
122
|
receiverId: "",
|
|
162
123
|
actions: [],
|
|
163
124
|
nonce: null,
|
|
@@ -174,13 +135,13 @@ class NEAR extends defaultChain_1.DefaultChain {
|
|
|
174
135
|
* @returns The signed transaction for creating the new account on Near, and its key pair
|
|
175
136
|
*/
|
|
176
137
|
async createAccount(accountId, amount, options) {
|
|
177
|
-
const newAccountKey =
|
|
138
|
+
const newAccountKey = KeyPair.fromRandom(options?.curve || "ed25519");
|
|
178
139
|
const tx = this.getEmptyTransaction();
|
|
179
140
|
tx.receiverId = accountId;
|
|
180
141
|
tx.actions = [
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
142
|
+
actions.createAccount(),
|
|
143
|
+
actions.transfer(bigInt(parseNearAmount(amount))),
|
|
144
|
+
actions.addKey(newAccountKey.getPublicKey(), actions.fullAccessKey()),
|
|
184
145
|
];
|
|
185
146
|
const signedTx = await this.signTransaction(tx);
|
|
186
147
|
return {
|
|
@@ -191,28 +152,27 @@ class NEAR extends defaultChain_1.DefaultChain {
|
|
|
191
152
|
async deleteAccount(beneficiallyId) {
|
|
192
153
|
const tx = this.getEmptyTransaction();
|
|
193
154
|
tx.receiverId = beneficiallyId;
|
|
194
|
-
tx.actions = [
|
|
155
|
+
tx.actions = [actions.deleteAccount(beneficiallyId)];
|
|
195
156
|
return await this.signTransaction(tx);
|
|
196
157
|
}
|
|
197
158
|
// INFO Signing a message
|
|
198
159
|
async signMessage(message, options) {
|
|
199
|
-
(
|
|
160
|
+
required(this.wallet || options?.privateKey, "Wallet not connected");
|
|
200
161
|
let wallet = this.wallet;
|
|
201
|
-
const messageBytes =
|
|
162
|
+
const messageBytes = decodeUTF8(message);
|
|
202
163
|
const signature = wallet.sign(messageBytes);
|
|
203
|
-
const signatureString =
|
|
164
|
+
const signatureString = utils.serialize.base_encode(signature.signature);
|
|
204
165
|
return signatureString;
|
|
205
166
|
}
|
|
206
167
|
// INFO Verifying a message
|
|
207
168
|
async verifyMessage(message, signature, publicKey) {
|
|
208
|
-
const signatureDecoded =
|
|
209
|
-
const publicKeyObject =
|
|
169
|
+
const signatureDecoded = utils.serialize.base_decode(signature);
|
|
170
|
+
const publicKeyObject = utils.key_pair.PublicKey.from(publicKey);
|
|
210
171
|
const publicKeyRaw = Object.values(publicKeyObject.ed25519Key.data);
|
|
211
172
|
const publicKeyDecoded = new Uint8Array(publicKeyRaw);
|
|
212
|
-
const messageBytes =
|
|
213
|
-
const isValid =
|
|
173
|
+
const messageBytes = decodeUTF8(message);
|
|
174
|
+
const isValid = nacl.sign.detached.verify(messageBytes, signatureDecoded, publicKeyDecoded);
|
|
214
175
|
return isValid;
|
|
215
176
|
}
|
|
216
177
|
}
|
|
217
|
-
exports.NEAR = NEAR;
|
|
218
178
|
//# sourceMappingURL=near.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"near.js","sourceRoot":"","sources":["../../../../src/multichain/core/near.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"near.js","sourceRoot":"","sources":["../../../../src/multichain/core/near.ts"],"names":[],"mappings":"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"}
|