@vultisig/core-mpc 0.9.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/CHANGELOG.md +17 -0
- package/dist/MpcServerType.d.ts +4 -0
- package/dist/MpcServerType.d.ts.map +1 -0
- package/dist/MpcServerType.js +7 -0
- package/dist/MpcServerType.js.map +1 -0
- package/dist/compression/getSevenZip.d.ts +2 -0
- package/dist/compression/getSevenZip.d.ts.map +1 -0
- package/dist/compression/getSevenZip.js +8 -0
- package/dist/compression/getSevenZip.js.map +1 -0
- package/dist/constants/defaultMpcRelayRoundTimeoutMs.d.ts +11 -0
- package/dist/constants/defaultMpcRelayRoundTimeoutMs.d.ts.map +1 -0
- package/dist/constants/defaultMpcRelayRoundTimeoutMs.js +11 -0
- package/dist/constants/defaultMpcRelayRoundTimeoutMs.js.map +1 -0
- package/dist/derSignature.d.ts +2 -0
- package/dist/derSignature.d.ts.map +1 -0
- package/dist/derSignature.js +28 -0
- package/dist/derSignature.js.map +1 -0
- package/dist/devices/MpcDevice.d.ts +6 -0
- package/dist/devices/MpcDevice.d.ts.map +1 -0
- package/dist/devices/MpcDevice.js +41 -0
- package/dist/devices/MpcDevice.js.map +1 -0
- package/dist/devices/localPartyId.d.ts +9 -0
- package/dist/devices/localPartyId.d.ts.map +1 -0
- package/dist/devices/localPartyId.js +16 -0
- package/dist/devices/localPartyId.js.map +1 -0
- package/dist/dkls/dkls.d.ts +50 -0
- package/dist/dkls/dkls.d.ts.map +1 -0
- package/dist/dkls/dkls.js +382 -0
- package/dist/dkls/dkls.js.map +1 -0
- package/dist/fast/api/checkVaultExistsOnServer.d.ts +3 -0
- package/dist/fast/api/checkVaultExistsOnServer.d.ts.map +1 -0
- package/dist/fast/api/checkVaultExistsOnServer.js +7 -0
- package/dist/fast/api/checkVaultExistsOnServer.js.map +1 -0
- package/dist/fast/api/getVaultFromServer.d.ts +9 -0
- package/dist/fast/api/getVaultFromServer.d.ts.map +1 -0
- package/dist/fast/api/getVaultFromServer.js +16 -0
- package/dist/fast/api/getVaultFromServer.js.map +1 -0
- package/dist/fast/api/keyImportWithServer.d.ts +14 -0
- package/dist/fast/api/keyImportWithServer.d.ts.map +1 -0
- package/dist/fast/api/keyImportWithServer.js +7 -0
- package/dist/fast/api/keyImportWithServer.js.map +1 -0
- package/dist/fast/api/migrateWithServer.d.ts +10 -0
- package/dist/fast/api/migrateWithServer.d.ts.map +1 -0
- package/dist/fast/api/migrateWithServer.js +7 -0
- package/dist/fast/api/migrateWithServer.js.map +1 -0
- package/dist/fast/api/mldsaWithServer.d.ts +12 -0
- package/dist/fast/api/mldsaWithServer.d.ts.map +1 -0
- package/dist/fast/api/mldsaWithServer.js +7 -0
- package/dist/fast/api/mldsaWithServer.js.map +1 -0
- package/dist/fast/api/resendVaultShare.d.ts +8 -0
- package/dist/fast/api/resendVaultShare.d.ts.map +1 -0
- package/dist/fast/api/resendVaultShare.js +7 -0
- package/dist/fast/api/resendVaultShare.js.map +1 -0
- package/dist/fast/api/reshareWithServer.d.ts +17 -0
- package/dist/fast/api/reshareWithServer.d.ts.map +1 -0
- package/dist/fast/api/reshareWithServer.js +7 -0
- package/dist/fast/api/reshareWithServer.js.map +1 -0
- package/dist/fast/api/setupVaultWithServer.d.ts +15 -0
- package/dist/fast/api/setupVaultWithServer.d.ts.map +1 -0
- package/dist/fast/api/setupVaultWithServer.js +7 -0
- package/dist/fast/api/setupVaultWithServer.js.map +1 -0
- package/dist/fast/api/signWithServer.d.ts +17 -0
- package/dist/fast/api/signWithServer.d.ts.map +1 -0
- package/dist/fast/api/signWithServer.js +7 -0
- package/dist/fast/api/signWithServer.js.map +1 -0
- package/dist/fast/api/verifyVaultEmailCode.d.ts +9 -0
- package/dist/fast/api/verifyVaultEmailCode.d.ts.map +1 -0
- package/dist/fast/api/verifyVaultEmailCode.js +6 -0
- package/dist/fast/api/verifyVaultEmailCode.js.map +1 -0
- package/dist/fast/config.d.ts +2 -0
- package/dist/fast/config.d.ts.map +1 -0
- package/dist/fast/config.js +3 -0
- package/dist/fast/config.js.map +1 -0
- package/dist/getKeygenThreshold.d.ts +2 -0
- package/dist/getKeygenThreshold.d.ts.map +1 -0
- package/dist/getKeygenThreshold.js +2 -0
- package/dist/getKeygenThreshold.js.map +1 -0
- package/dist/getMessageHash.d.ts +7 -0
- package/dist/getMessageHash.d.ts.map +1 -0
- package/dist/getMessageHash.js +12 -0
- package/dist/getMessageHash.js.map +1 -0
- package/dist/keygen/KeygenOperation.d.ts +11 -0
- package/dist/keygen/KeygenOperation.d.ts.map +1 -0
- package/dist/keygen/KeygenOperation.js +2 -0
- package/dist/keygen/KeygenOperation.js.map +1 -0
- package/dist/keygen/KeygenStep.d.ts +3 -0
- package/dist/keygen/KeygenStep.d.ts.map +1 -0
- package/dist/keygen/KeygenStep.js +2 -0
- package/dist/keygen/KeygenStep.js.map +1 -0
- package/dist/keygen/KeygenType.d.ts +5 -0
- package/dist/keygen/KeygenType.d.ts.map +1 -0
- package/dist/keygen/KeygenType.js +2 -0
- package/dist/keygen/KeygenType.js.map +1 -0
- package/dist/keygen/ReshareType.d.ts +2 -0
- package/dist/keygen/ReshareType.d.ts.map +1 -0
- package/dist/keygen/ReshareType.js +2 -0
- package/dist/keygen/ReshareType.js.map +1 -0
- package/dist/keygen/server/uploadPayloadToServer.d.ts +7 -0
- package/dist/keygen/server/uploadPayloadToServer.d.ts.map +1 -0
- package/dist/keygen/server/uploadPayloadToServer.js +12 -0
- package/dist/keygen/server/uploadPayloadToServer.js.map +1 -0
- package/dist/keygenComplete.d.ts +14 -0
- package/dist/keygenComplete.d.ts.map +1 -0
- package/dist/keygenComplete.js +22 -0
- package/dist/keygenComplete.js.map +1 -0
- package/dist/keysign/KeysignResult.d.ts +7 -0
- package/dist/keysign/KeysignResult.d.ts.map +1 -0
- package/dist/keysign/KeysignResult.js +2 -0
- package/dist/keysign/KeysignResult.js.map +1 -0
- package/dist/keysign/KeysignSignature.d.ts +8 -0
- package/dist/keysign/KeysignSignature.d.ts.map +1 -0
- package/dist/keysign/KeysignSignature.js +2 -0
- package/dist/keysign/KeysignSignature.js.map +1 -0
- package/dist/keysign/chainSpecific/FeeSettings.d.ts +12 -0
- package/dist/keysign/chainSpecific/FeeSettings.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/FeeSettings.js +6 -0
- package/dist/keysign/chainSpecific/FeeSettings.js.map +1 -0
- package/dist/keysign/chainSpecific/KeysignChainSpecific.d.ts +49 -0
- package/dist/keysign/chainSpecific/KeysignChainSpecific.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/KeysignChainSpecific.js +48 -0
- package/dist/keysign/chainSpecific/KeysignChainSpecific.js.map +1 -0
- package/dist/keysign/chainSpecific/index.d.ts +4 -0
- package/dist/keysign/chainSpecific/index.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/index.js +43 -0
- package/dist/keysign/chainSpecific/index.js.map +1 -0
- package/dist/keysign/chainSpecific/resolver.d.ts +38 -0
- package/dist/keysign/chainSpecific/resolver.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolver.js +2 -0
- package/dist/keysign/chainSpecific/resolver.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/bittensor/index.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/bittensor/index.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/bittensor/index.js +41 -0
- package/dist/keysign/chainSpecific/resolvers/bittensor/index.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/bittensor/refine.d.ts +9 -0
- package/dist/keysign/chainSpecific/resolvers/bittensor/refine.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/bittensor/refine.js +40 -0
- package/dist/keysign/chainSpecific/resolvers/bittensor/refine.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/cardano.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/cardano.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/cardano.js +21 -0
- package/dist/keysign/chainSpecific/resolvers/cardano.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/cosmos.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/cosmos.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/cosmos.js +23 -0
- package/dist/keysign/chainSpecific/resolvers/cosmos.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/evm.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/evm.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/evm.js +42 -0
- package/dist/keysign/chainSpecific/resolvers/evm.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/maya.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/maya.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/maya.js +14 -0
- package/dist/keysign/chainSpecific/resolvers/maya.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/polkadot/index.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/polkadot/index.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/polkadot/index.js +27 -0
- package/dist/keysign/chainSpecific/resolvers/polkadot/index.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/polkadot/refine.d.ts +11 -0
- package/dist/keysign/chainSpecific/resolvers/polkadot/refine.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/polkadot/refine.js +62 -0
- package/dist/keysign/chainSpecific/resolvers/polkadot/refine.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/ripple.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/ripple.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/ripple.js +39 -0
- package/dist/keysign/chainSpecific/resolvers/ripple.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/solana/index.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/solana/index.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/solana/index.js +41 -0
- package/dist/keysign/chainSpecific/resolvers/solana/index.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/solana/refine.d.ts +11 -0
- package/dist/keysign/chainSpecific/resolvers/solana/refine.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/solana/refine.js +54 -0
- package/dist/keysign/chainSpecific/resolvers/solana/refine.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/sui/index.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/sui/index.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/sui/index.js +28 -0
- package/dist/keysign/chainSpecific/resolvers/sui/index.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/sui/refine.d.ts +11 -0
- package/dist/keysign/chainSpecific/resolvers/sui/refine.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/sui/refine.js +37 -0
- package/dist/keysign/chainSpecific/resolvers/sui/refine.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/thor.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/thor.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/thor.js +19 -0
- package/dist/keysign/chainSpecific/resolvers/thor.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/ton/index.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/ton/index.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/ton/index.js +61 -0
- package/dist/keysign/chainSpecific/resolvers/ton/index.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/tron/fee.d.ts +9 -0
- package/dist/keysign/chainSpecific/resolvers/tron/fee.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/tron/fee.js +39 -0
- package/dist/keysign/chainSpecific/resolvers/tron/fee.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/tron/index.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/tron/index.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/tron/index.js +42 -0
- package/dist/keysign/chainSpecific/resolvers/tron/index.js.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/utxo.d.ts +3 -0
- package/dist/keysign/chainSpecific/resolvers/utxo.d.ts.map +1 -0
- package/dist/keysign/chainSpecific/resolvers/utxo.js +24 -0
- package/dist/keysign/chainSpecific/resolvers/utxo.js.map +1 -0
- package/dist/keysign/circleWithdraw/build.d.ts +15 -0
- package/dist/keysign/circleWithdraw/build.d.ts.map +1 -0
- package/dist/keysign/circleWithdraw/build.js +58 -0
- package/dist/keysign/circleWithdraw/build.js.map +1 -0
- package/dist/keysign/cosigner.d.ts +16 -0
- package/dist/keysign/cosigner.d.ts.map +1 -0
- package/dist/keysign/cosigner.js +202 -0
- package/dist/keysign/cosigner.js.map +1 -0
- package/dist/keysign/error.d.ts +7 -0
- package/dist/keysign/error.d.ts.map +1 -0
- package/dist/keysign/error.js +8 -0
- package/dist/keysign/error.js.map +1 -0
- package/dist/keysign/fee/index.d.ts +11 -0
- package/dist/keysign/fee/index.d.ts.map +1 -0
- package/dist/keysign/fee/index.js +32 -0
- package/dist/keysign/fee/index.js.map +1 -0
- package/dist/keysign/fee/resolver.d.ts +12 -0
- package/dist/keysign/fee/resolver.d.ts.map +1 -0
- package/dist/keysign/fee/resolver.js +2 -0
- package/dist/keysign/fee/resolver.js.map +1 -0
- package/dist/keysign/fee/resolvers/bittensor.d.ts +3 -0
- package/dist/keysign/fee/resolvers/bittensor.d.ts.map +1 -0
- package/dist/keysign/fee/resolvers/bittensor.js +7 -0
- package/dist/keysign/fee/resolvers/bittensor.js.map +1 -0
- package/dist/keysign/fee/resolvers/cardano.d.ts +3 -0
- package/dist/keysign/fee/resolvers/cardano.d.ts.map +1 -0
- package/dist/keysign/fee/resolvers/cardano.js +6 -0
- package/dist/keysign/fee/resolvers/cardano.js.map +1 -0
- package/dist/keysign/fee/resolvers/cosmos.d.ts +3 -0
- package/dist/keysign/fee/resolvers/cosmos.d.ts.map +1 -0
- package/dist/keysign/fee/resolvers/cosmos.js +49 -0
- package/dist/keysign/fee/resolvers/cosmos.js.map +1 -0
- package/dist/keysign/fee/resolvers/evm/getEvmFeeQuote.d.ts +16 -0
- package/dist/keysign/fee/resolvers/evm/getEvmFeeQuote.d.ts.map +1 -0
- package/dist/keysign/fee/resolvers/evm/getEvmFeeQuote.js +123 -0
- package/dist/keysign/fee/resolvers/evm/getEvmFeeQuote.js.map +1 -0
- package/dist/keysign/fee/resolvers/evm.d.ts +3 -0
- package/dist/keysign/fee/resolvers/evm.d.ts.map +1 -0
- package/dist/keysign/fee/resolvers/evm.js +6 -0
- package/dist/keysign/fee/resolvers/evm.js.map +1 -0
- package/dist/keysign/fee/resolvers/polkadot.d.ts +3 -0
- package/dist/keysign/fee/resolvers/polkadot.d.ts.map +1 -0
- package/dist/keysign/fee/resolvers/polkadot.js +7 -0
- package/dist/keysign/fee/resolvers/polkadot.js.map +1 -0
- package/dist/keysign/fee/resolvers/ripple.d.ts +3 -0
- package/dist/keysign/fee/resolvers/ripple.d.ts.map +1 -0
- package/dist/keysign/fee/resolvers/ripple.js +6 -0
- package/dist/keysign/fee/resolvers/ripple.js.map +1 -0
- package/dist/keysign/fee/resolvers/solana.d.ts +3 -0
- package/dist/keysign/fee/resolvers/solana.d.ts.map +1 -0
- package/dist/keysign/fee/resolvers/solana.js +6 -0
- package/dist/keysign/fee/resolvers/solana.js.map +1 -0
- package/dist/keysign/fee/resolvers/sui.d.ts +3 -0
- package/dist/keysign/fee/resolvers/sui.d.ts.map +1 -0
- package/dist/keysign/fee/resolvers/sui.js +6 -0
- package/dist/keysign/fee/resolvers/sui.js.map +1 -0
- package/dist/keysign/fee/resolvers/ton.d.ts +5 -0
- package/dist/keysign/fee/resolvers/ton.d.ts.map +1 -0
- package/dist/keysign/fee/resolvers/ton.js +8 -0
- package/dist/keysign/fee/resolvers/ton.js.map +1 -0
- package/dist/keysign/fee/resolvers/tron.d.ts +3 -0
- package/dist/keysign/fee/resolvers/tron.d.ts.map +1 -0
- package/dist/keysign/fee/resolvers/tron.js +6 -0
- package/dist/keysign/fee/resolvers/tron.js.map +1 -0
- package/dist/keysign/fee/resolvers/utxo.d.ts +3 -0
- package/dist/keysign/fee/resolvers/utxo.d.ts.map +1 -0
- package/dist/keysign/fee/resolvers/utxo.js +7 -0
- package/dist/keysign/fee/resolvers/utxo.js.map +1 -0
- package/dist/keysign/index.d.ts +17 -0
- package/dist/keysign/index.d.ts.map +1 -0
- package/dist/keysign/index.js +137 -0
- package/dist/keysign/index.js.map +1 -0
- package/dist/keysign/keysignPayload/KeysignMessagePayload.d.ts +15 -0
- package/dist/keysign/keysignPayload/KeysignMessagePayload.d.ts.map +1 -0
- package/dist/keysign/keysignPayload/KeysignMessagePayload.js +10 -0
- package/dist/keysign/keysignPayload/KeysignMessagePayload.js.map +1 -0
- package/dist/keysign/preSigningOutput/index.d.ts +25 -0
- package/dist/keysign/preSigningOutput/index.d.ts.map +1 -0
- package/dist/keysign/preSigningOutput/index.js +29 -0
- package/dist/keysign/preSigningOutput/index.js.map +1 -0
- package/dist/keysign/referral/build.d.ts +16 -0
- package/dist/keysign/referral/build.d.ts.map +1 -0
- package/dist/keysign/referral/build.js +34 -0
- package/dist/keysign/referral/build.js.map +1 -0
- package/dist/keysign/refine/amount.d.ts +12 -0
- package/dist/keysign/refine/amount.d.ts.map +1 -0
- package/dist/keysign/refine/amount.js +30 -0
- package/dist/keysign/refine/amount.js.map +1 -0
- package/dist/keysign/refine/utxo.d.ts +11 -0
- package/dist/keysign/refine/utxo.d.ts.map +1 -0
- package/dist/keysign/refine/utxo.js +80 -0
- package/dist/keysign/refine/utxo.js.map +1 -0
- package/dist/keysign/send/build.d.ts +19 -0
- package/dist/keysign/send/build.d.ts.map +1 -0
- package/dist/keysign/send/build.js +45 -0
- package/dist/keysign/send/build.js.map +1 -0
- package/dist/keysign/send/getSendFeeEstimate.d.ts +3 -0
- package/dist/keysign/send/getSendFeeEstimate.d.ts.map +1 -0
- package/dist/keysign/send/getSendFeeEstimate.js +11 -0
- package/dist/keysign/send/getSendFeeEstimate.js.map +1 -0
- package/dist/keysign/setupMessage/make.d.ts +11 -0
- package/dist/keysign/setupMessage/make.d.ts.map +1 -0
- package/dist/keysign/setupMessage/make.js +8 -0
- package/dist/keysign/setupMessage/make.js.map +1 -0
- package/dist/keysign/signingInputs/core.d.ts +17 -0
- package/dist/keysign/signingInputs/core.d.ts.map +1 -0
- package/dist/keysign/signingInputs/core.js +15 -0
- package/dist/keysign/signingInputs/core.js.map +1 -0
- package/dist/keysign/signingInputs/index.d.ts +11 -0
- package/dist/keysign/signingInputs/index.d.ts.map +1 -0
- package/dist/keysign/signingInputs/index.js +41 -0
- package/dist/keysign/signingInputs/index.js.map +1 -0
- package/dist/keysign/signingInputs/resolver.d.ts +15 -0
- package/dist/keysign/signingInputs/resolver.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolver.js +2 -0
- package/dist/keysign/signingInputs/resolver.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/bittensor.d.ts +12 -0
- package/dist/keysign/signingInputs/resolvers/bittensor.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/bittensor.js +51 -0
- package/dist/keysign/signingInputs/resolvers/bittensor.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/cardano.d.ts +3 -0
- package/dist/keysign/signingInputs/resolvers/cardano.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/cardano.js +28 -0
- package/dist/keysign/signingInputs/resolvers/cardano.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/cosmos/chainSpecific.d.ts +10 -0
- package/dist/keysign/signingInputs/resolvers/cosmos/chainSpecific.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/cosmos/chainSpecific.js +9 -0
- package/dist/keysign/signingInputs/resolvers/cosmos/chainSpecific.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/cosmos/coinAmount.d.ts +6 -0
- package/dist/keysign/signingInputs/resolvers/cosmos/coinAmount.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/cosmos/coinAmount.js +14 -0
- package/dist/keysign/signingInputs/resolvers/cosmos/coinAmount.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/cosmos/index.d.ts +3 -0
- package/dist/keysign/signingInputs/resolvers/cosmos/index.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/cosmos/index.js +338 -0
- package/dist/keysign/signingInputs/resolvers/cosmos/index.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/evm/erc20.d.ts +9 -0
- package/dist/keysign/signingInputs/resolvers/evm/erc20.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/evm/erc20.js +37 -0
- package/dist/keysign/signingInputs/resolvers/evm/erc20.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/evm/index.d.ts +3 -0
- package/dist/keysign/signingInputs/resolvers/evm/index.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/evm/index.js +143 -0
- package/dist/keysign/signingInputs/resolvers/evm/index.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/polkadot.d.ts +3 -0
- package/dist/keysign/signingInputs/resolvers/polkadot.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/polkadot.js +59 -0
- package/dist/keysign/signingInputs/resolvers/polkadot.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/ripple.d.ts +3 -0
- package/dist/keysign/signingInputs/resolvers/ripple.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/ripple.js +66 -0
- package/dist/keysign/signingInputs/resolvers/ripple.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/solana/index.d.ts +3 -0
- package/dist/keysign/signingInputs/resolvers/solana/index.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/solana/index.js +59 -0
- package/dist/keysign/signingInputs/resolvers/solana/index.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/solana/send.d.ts +9 -0
- package/dist/keysign/signingInputs/resolvers/solana/send.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/solana/send.js +69 -0
- package/dist/keysign/signingInputs/resolvers/solana/send.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/sui.d.ts +3 -0
- package/dist/keysign/signingInputs/resolvers/sui.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/sui.js +53 -0
- package/dist/keysign/signingInputs/resolvers/sui.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/ton/index.d.ts +3 -0
- package/dist/keysign/signingInputs/resolvers/ton/index.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/ton/index.js +34 -0
- package/dist/keysign/signingInputs/resolvers/ton/index.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/ton/jetton.d.ts +12 -0
- package/dist/keysign/signingInputs/resolvers/ton/jetton.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/ton/jetton.js +28 -0
- package/dist/keysign/signingInputs/resolvers/ton/jetton.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/ton/native.d.ts +10 -0
- package/dist/keysign/signingInputs/resolvers/ton/native.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/ton/native.js +20 -0
- package/dist/keysign/signingInputs/resolvers/ton/native.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/tron.d.ts +3 -0
- package/dist/keysign/signingInputs/resolvers/tron.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/tron.js +246 -0
- package/dist/keysign/signingInputs/resolvers/tron.js.map +1 -0
- package/dist/keysign/signingInputs/resolvers/utxo.d.ts +3 -0
- package/dist/keysign/signingInputs/resolvers/utxo.d.ts.map +1 -0
- package/dist/keysign/signingInputs/resolvers/utxo.js +79 -0
- package/dist/keysign/signingInputs/resolvers/utxo.js.map +1 -0
- package/dist/keysign/swap/KeysignSwapPayload.d.ts +20 -0
- package/dist/keysign/swap/KeysignSwapPayload.d.ts.map +1 -0
- package/dist/keysign/swap/KeysignSwapPayload.js +2 -0
- package/dist/keysign/swap/KeysignSwapPayload.js.map +1 -0
- package/dist/keysign/swap/build.d.ts +20 -0
- package/dist/keysign/swap/build.d.ts.map +1 -0
- package/dist/keysign/swap/build.js +149 -0
- package/dist/keysign/swap/build.js.map +1 -0
- package/dist/keysign/swap/getKeysignSwapPayload.d.ts +4 -0
- package/dist/keysign/swap/getKeysignSwapPayload.d.ts.map +1 -0
- package/dist/keysign/swap/getKeysignSwapPayload.js +20 -0
- package/dist/keysign/swap/getKeysignSwapPayload.js.map +1 -0
- package/dist/keysign/swap/getKeysignSwapProviderName.d.ts +3 -0
- package/dist/keysign/swap/getKeysignSwapProviderName.d.ts.map +1 -0
- package/dist/keysign/swap/getKeysignSwapProviderName.js +10 -0
- package/dist/keysign/swap/getKeysignSwapProviderName.js.map +1 -0
- package/dist/keysign/tw/getKeysignTwPublicKey.d.ts +3 -0
- package/dist/keysign/tw/getKeysignTwPublicKey.d.ts.map +1 -0
- package/dist/keysign/tw/getKeysignTwPublicKey.js +6 -0
- package/dist/keysign/tw/getKeysignTwPublicKey.js.map +1 -0
- package/dist/keysign/tw/toTwAddress.d.ts +10 -0
- package/dist/keysign/tw/toTwAddress.d.ts.map +1 -0
- package/dist/keysign/tw/toTwAddress.js +13 -0
- package/dist/keysign/tw/toTwAddress.js.map +1 -0
- package/dist/keysign/utils/getJoinKeysignUrl.d.ts +14 -0
- package/dist/keysign/utils/getJoinKeysignUrl.d.ts.map +1 -0
- package/dist/keysign/utils/getJoinKeysignUrl.js +84 -0
- package/dist/keysign/utils/getJoinKeysignUrl.js.map +1 -0
- package/dist/keysign/utils/getKeysignAmount.d.ts +3 -0
- package/dist/keysign/utils/getKeysignAmount.d.ts.map +1 -0
- package/dist/keysign/utils/getKeysignAmount.js +2 -0
- package/dist/keysign/utils/getKeysignAmount.js.map +1 -0
- package/dist/keysign/utils/getKeysignChain.d.ts +4 -0
- package/dist/keysign/utils/getKeysignChain.d.ts.map +1 -0
- package/dist/keysign/utils/getKeysignChain.js +3 -0
- package/dist/keysign/utils/getKeysignChain.js.map +1 -0
- package/dist/keysign/utils/getKeysignCoin.d.ts +5 -0
- package/dist/keysign/utils/getKeysignCoin.d.ts.map +1 -0
- package/dist/keysign/utils/getKeysignCoin.js +4 -0
- package/dist/keysign/utils/getKeysignCoin.js.map +1 -0
- package/dist/keysign/utils/resolvePolkadotToAddress.d.ts +9 -0
- package/dist/keysign/utils/resolvePolkadotToAddress.d.ts.map +1 -0
- package/dist/keysign/utils/resolvePolkadotToAddress.js +14 -0
- package/dist/keysign/utils/resolvePolkadotToAddress.js.map +1 -0
- package/dist/keysign/utxo/getKeysignUtxoInfo.d.ts +3 -0
- package/dist/keysign/utxo/getKeysignUtxoInfo.d.ts.map +1 -0
- package/dist/keysign/utxo/getKeysignUtxoInfo.js +13 -0
- package/dist/keysign/utxo/getKeysignUtxoInfo.js.map +1 -0
- package/dist/keysignComplete.d.ts +10 -0
- package/dist/keysignComplete.d.ts.map +1 -0
- package/dist/keysignComplete.js +9 -0
- package/dist/keysignComplete.js.map +1 -0
- package/dist/lib/initialize.d.ts +3 -0
- package/dist/lib/initialize.d.ts.map +1 -0
- package/dist/lib/initialize.js +11 -0
- package/dist/lib/initialize.js.map +1 -0
- package/dist/lib/keyshare.d.ts +10 -0
- package/dist/lib/keyshare.d.ts.map +1 -0
- package/dist/lib/keyshare.js +8 -0
- package/dist/lib/keyshare.js.map +1 -0
- package/dist/lib/signSession.d.ts +13 -0
- package/dist/lib/signSession.d.ts.map +1 -0
- package/dist/lib/signSession.js +12 -0
- package/dist/lib/signSession.js.map +1 -0
- package/dist/message/relay/delete.d.ts +10 -0
- package/dist/message/relay/delete.d.ts.map +1 -0
- package/dist/message/relay/delete.js +10 -0
- package/dist/message/relay/delete.js.map +1 -0
- package/dist/message/relay/get.d.ts +10 -0
- package/dist/message/relay/get.d.ts.map +1 -0
- package/dist/message/relay/get.js +9 -0
- package/dist/message/relay/get.js.map +1 -0
- package/dist/message/relay/index.d.ts +9 -0
- package/dist/message/relay/index.d.ts.map +1 -0
- package/dist/message/relay/index.js +2 -0
- package/dist/message/relay/index.js.map +1 -0
- package/dist/message/relay/send.d.ts +10 -0
- package/dist/message/relay/send.d.ts.map +1 -0
- package/dist/message/relay/send.js +10 -0
- package/dist/message/relay/send.js.map +1 -0
- package/dist/message/server.d.ts +3 -0
- package/dist/message/server.d.ts.map +1 -0
- package/dist/message/server.js +13 -0
- package/dist/message/server.js.map +1 -0
- package/dist/message/setup/ensure.d.ts +15 -0
- package/dist/message/setup/ensure.d.ts.map +1 -0
- package/dist/message/setup/ensure.js +33 -0
- package/dist/message/setup/ensure.js.map +1 -0
- package/dist/message/setup/get.d.ts +8 -0
- package/dist/message/setup/get.d.ts.map +1 -0
- package/dist/message/setup/get.js +15 -0
- package/dist/message/setup/get.js.map +1 -0
- package/dist/message/setup/upload.d.ts +9 -0
- package/dist/message/setup/upload.d.ts.map +1 -0
- package/dist/message/setup/upload.js +10 -0
- package/dist/message/setup/upload.js.map +1 -0
- package/dist/mldsa/initializeMldsa.d.ts +2 -0
- package/dist/mldsa/initializeMldsa.d.ts.map +1 -0
- package/dist/mldsa/initializeMldsa.js +6 -0
- package/dist/mldsa/initializeMldsa.js.map +1 -0
- package/dist/mldsa/mldsaKeygen.d.ts +26 -0
- package/dist/mldsa/mldsaKeygen.d.ts.map +1 -0
- package/dist/mldsa/mldsaKeygen.js +176 -0
- package/dist/mldsa/mldsaKeygen.js.map +1 -0
- package/dist/mldsa/mldsaKeysign.d.ts +37 -0
- package/dist/mldsa/mldsaKeysign.d.ts.map +1 -0
- package/dist/mldsa/mldsaKeysign.js +185 -0
- package/dist/mldsa/mldsaKeysign.js.map +1 -0
- package/dist/mpcLib.d.ts +6 -0
- package/dist/mpcLib.d.ts.map +1 -0
- package/dist/mpcLib.js +3 -0
- package/dist/mpcLib.js.map +1 -0
- package/dist/reshareCommittee.d.ts +11 -0
- package/dist/reshareCommittee.d.ts.map +1 -0
- package/dist/reshareCommittee.js +19 -0
- package/dist/reshareCommittee.js.map +1 -0
- package/dist/schnorr/schnorrKeygen.d.ts +47 -0
- package/dist/schnorr/schnorrKeygen.d.ts.map +1 -0
- package/dist/schnorr/schnorrKeygen.js +353 -0
- package/dist/schnorr/schnorrKeygen.js.map +1 -0
- package/dist/session/joinMpcSession.d.ts +8 -0
- package/dist/session/joinMpcSession.d.ts.map +1 -0
- package/dist/session/joinMpcSession.js +6 -0
- package/dist/session/joinMpcSession.js.map +1 -0
- package/dist/session/startMpcSession.d.ts +8 -0
- package/dist/session/startMpcSession.d.ts.map +1 -0
- package/dist/session/startMpcSession.js +6 -0
- package/dist/session/startMpcSession.js.map +1 -0
- package/dist/types/plugin/constraint_pb.d.ts +205 -0
- package/dist/types/plugin/constraint_pb.d.ts.map +1 -0
- package/dist/types/plugin/constraint_pb.js +84 -0
- package/dist/types/plugin/constraint_pb.js.map +1 -0
- package/dist/types/plugin/parameter_constraint_pb.d.ts +41 -0
- package/dist/types/plugin/parameter_constraint_pb.d.ts.map +1 -0
- package/dist/types/plugin/parameter_constraint_pb.js +15 -0
- package/dist/types/plugin/parameter_constraint_pb.js.map +1 -0
- package/dist/types/plugin/policy_pb.d.ts +370 -0
- package/dist/types/plugin/policy_pb.d.ts.map +1 -0
- package/dist/types/plugin/policy_pb.js +86 -0
- package/dist/types/plugin/policy_pb.js.map +1 -0
- package/dist/types/plugin/recipe_specification_pb.d.ts +305 -0
- package/dist/types/plugin/recipe_specification_pb.d.ts.map +1 -0
- package/dist/types/plugin/recipe_specification_pb.js +33 -0
- package/dist/types/plugin/recipe_specification_pb.js.map +1 -0
- package/dist/types/plugin/resource_pb.d.ts +133 -0
- package/dist/types/plugin/resource_pb.d.ts.map +1 -0
- package/dist/types/plugin/resource_pb.js +19 -0
- package/dist/types/plugin/resource_pb.js.map +1 -0
- package/dist/types/plugin/rule_pb.d.ts +281 -0
- package/dist/types/plugin/rule_pb.d.ts.map +1 -0
- package/dist/types/plugin/rule_pb.js +72 -0
- package/dist/types/plugin/rule_pb.js.map +1 -0
- package/dist/types/utils/commCoin.d.ts +10 -0
- package/dist/types/utils/commCoin.d.ts.map +1 -0
- package/dist/types/utils/commCoin.js +29 -0
- package/dist/types/utils/commCoin.js.map +1 -0
- package/dist/types/utils/commVault.d.ts +5 -0
- package/dist/types/utils/commVault.d.ts.map +1 -0
- package/dist/types/utils/commVault.js +148 -0
- package/dist/types/utils/commVault.js.map +1 -0
- package/dist/types/utils/libType.d.ts +12 -0
- package/dist/types/utils/libType.d.ts.map +1 -0
- package/dist/types/utils/libType.js +32 -0
- package/dist/types/utils/libType.js.map +1 -0
- package/dist/types/utils/tssType.d.ts +12 -0
- package/dist/types/utils/tssType.d.ts.map +1 -0
- package/dist/types/utils/tssType.js +36 -0
- package/dist/types/utils/tssType.js.map +1 -0
- package/dist/types/vultisig/keygen/v1/keygen_message_pb.d.ts +54 -0
- package/dist/types/vultisig/keygen/v1/keygen_message_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keygen/v1/keygen_message_pb.js +15 -0
- package/dist/types/vultisig/keygen/v1/keygen_message_pb.js.map +1 -0
- package/dist/types/vultisig/keygen/v1/lib_type_message_pb.d.ts +31 -0
- package/dist/types/vultisig/keygen/v1/lib_type_message_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keygen/v1/lib_type_message_pb.js +35 -0
- package/dist/types/vultisig/keygen/v1/lib_type_message_pb.js.map +1 -0
- package/dist/types/vultisig/keygen/v1/reshare_message_pb.d.ts +60 -0
- package/dist/types/vultisig/keygen/v1/reshare_message_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keygen/v1/reshare_message_pb.js +15 -0
- package/dist/types/vultisig/keygen/v1/reshare_message_pb.js.map +1 -0
- package/dist/types/vultisig/keygen/v1/single_keygen_message_pb.d.ts +55 -0
- package/dist/types/vultisig/keygen/v1/single_keygen_message_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keygen/v1/single_keygen_message_pb.js +23 -0
- package/dist/types/vultisig/keygen/v1/single_keygen_message_pb.js.map +1 -0
- package/dist/types/vultisig/keygen/v1/single_keygen_type_pb.d.ts +21 -0
- package/dist/types/vultisig/keygen/v1/single_keygen_type_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keygen/v1/single_keygen_type_pb.js +29 -0
- package/dist/types/vultisig/keygen/v1/single_keygen_type_pb.js.map +1 -0
- package/dist/types/vultisig/keysign/v1/1inch_swap_payload_pb.d.ts +98 -0
- package/dist/types/vultisig/keysign/v1/1inch_swap_payload_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keysign/v1/1inch_swap_payload_pb.js +25 -0
- package/dist/types/vultisig/keysign/v1/1inch_swap_payload_pb.js.map +1 -0
- package/dist/types/vultisig/keysign/v1/blockchain_specific_pb.d.ts +484 -0
- package/dist/types/vultisig/keysign/v1/blockchain_specific_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keysign/v1/blockchain_specific_pb.js +130 -0
- package/dist/types/vultisig/keysign/v1/blockchain_specific_pb.js.map +1 -0
- package/dist/types/vultisig/keysign/v1/coin_pb.d.ts +55 -0
- package/dist/types/vultisig/keysign/v1/coin_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keysign/v1/coin_pb.js +14 -0
- package/dist/types/vultisig/keysign/v1/coin_pb.js.map +1 -0
- package/dist/types/vultisig/keysign/v1/custom_message_payload_pb.d.ts +37 -0
- package/dist/types/vultisig/keysign/v1/custom_message_payload_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keysign/v1/custom_message_payload_pb.js +14 -0
- package/dist/types/vultisig/keysign/v1/custom_message_payload_pb.js.map +1 -0
- package/dist/types/vultisig/keysign/v1/erc20_approve_payload_pb.d.ts +25 -0
- package/dist/types/vultisig/keysign/v1/erc20_approve_payload_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keysign/v1/erc20_approve_payload_pb.js +14 -0
- package/dist/types/vultisig/keysign/v1/erc20_approve_payload_pb.js.map +1 -0
- package/dist/types/vultisig/keysign/v1/keysign_message_pb.d.ts +275 -0
- package/dist/types/vultisig/keysign/v1/keysign_message_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keysign/v1/keysign_message_pb.js +29 -0
- package/dist/types/vultisig/keysign/v1/keysign_message_pb.js.map +1 -0
- package/dist/types/vultisig/keysign/v1/kyberswap_swap_payload_pb.d.ts +94 -0
- package/dist/types/vultisig/keysign/v1/kyberswap_swap_payload_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keysign/v1/kyberswap_swap_payload_pb.js +25 -0
- package/dist/types/vultisig/keysign/v1/kyberswap_swap_payload_pb.js.map +1 -0
- package/dist/types/vultisig/keysign/v1/thorchain_swap_payload_pb.d.ts +70 -0
- package/dist/types/vultisig/keysign/v1/thorchain_swap_payload_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keysign/v1/thorchain_swap_payload_pb.js +15 -0
- package/dist/types/vultisig/keysign/v1/thorchain_swap_payload_pb.js.map +1 -0
- package/dist/types/vultisig/keysign/v1/tron_contract_payload_pb.d.ts +89 -0
- package/dist/types/vultisig/keysign/v1/tron_contract_payload_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keysign/v1/tron_contract_payload_pb.js +24 -0
- package/dist/types/vultisig/keysign/v1/tron_contract_payload_pb.js.map +1 -0
- package/dist/types/vultisig/keysign/v1/utxo_info_pb.d.ts +29 -0
- package/dist/types/vultisig/keysign/v1/utxo_info_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keysign/v1/utxo_info_pb.js +14 -0
- package/dist/types/vultisig/keysign/v1/utxo_info_pb.js.map +1 -0
- package/dist/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.d.ts +159 -0
- package/dist/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.d.ts.map +1 -0
- package/dist/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.js +44 -0
- package/dist/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.js.map +1 -0
- package/dist/types/vultisig/vault/v1/vault_container_pb.d.ts +35 -0
- package/dist/types/vultisig/vault/v1/vault_container_pb.d.ts.map +1 -0
- package/dist/types/vultisig/vault/v1/vault_container_pb.js +14 -0
- package/dist/types/vultisig/vault/v1/vault_container_pb.js.map +1 -0
- package/dist/types/vultisig/vault/v1/vault_pb.d.ts +109 -0
- package/dist/types/vultisig/vault/v1/vault_pb.d.ts.map +1 -0
- package/dist/types/vultisig/vault/v1/vault_pb.js +26 -0
- package/dist/types/vultisig/vault/v1/vault_pb.js.map +1 -0
- package/dist/utils/ed25519ScalarClamp.d.ts +2 -0
- package/dist/utils/ed25519ScalarClamp.d.ts.map +1 -0
- package/dist/utils/ed25519ScalarClamp.js +40 -0
- package/dist/utils/ed25519ScalarClamp.js.map +1 -0
- package/dist/utils/generateHexChainCode.d.ts +2 -0
- package/dist/utils/generateHexChainCode.d.ts.map +1 -0
- package/dist/utils/generateHexChainCode.js +3 -0
- package/dist/utils/generateHexChainCode.js.map +1 -0
- package/dist/utils/generateHexEncryptionKey.d.ts +2 -0
- package/dist/utils/generateHexEncryptionKey.d.ts.map +1 -0
- package/dist/utils/generateHexEncryptionKey.js +3 -0
- package/dist/utils/generateHexEncryptionKey.js.map +1 -0
- package/dist/vault/Vault.d.ts +32 -0
- package/dist/vault/Vault.d.ts.map +1 -0
- package/dist/vault/Vault.js +4 -0
- package/dist/vault/Vault.js.map +1 -0
- package/dist/vault/utils/vaultContainerFromString.d.ts +2 -0
- package/dist/vault/utils/vaultContainerFromString.d.ts.map +1 -0
- package/dist/vault/utils/vaultContainerFromString.js +6 -0
- package/dist/vault/utils/vaultContainerFromString.js.map +1 -0
- package/package.json +51 -0
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
import { Chain } from '@vultisig/core-chain/Chain';
|
|
2
|
+
import { cosmosFeeCoinDenom } from '@vultisig/core-chain/chains/cosmos/cosmosFeeCoinDenom';
|
|
3
|
+
import { getCosmosGasLimit } from '@vultisig/core-chain/chains/cosmos/cosmosGasLimitRecord';
|
|
4
|
+
import { getCosmosChainKind } from '@vultisig/core-chain/chains/cosmos/utils/getCosmosChainKind';
|
|
5
|
+
import { chainFeeCoin } from '@vultisig/core-chain/coin/chainFeeCoin';
|
|
6
|
+
import { areEqualCoins } from '@vultisig/core-chain/coin/Coin';
|
|
7
|
+
import { nativeSwapChainIds } from '@vultisig/core-chain/swap/native/NativeSwapChain';
|
|
8
|
+
import { TransactionType, } from '@vultisig/core-mpc/types/vultisig/keysign/v1/blockchain_specific_pb';
|
|
9
|
+
import { fromBase64 } from '@cosmjs/encoding';
|
|
10
|
+
import { shouldBePresent } from '@vultisig/lib-utils/assert/shouldBePresent';
|
|
11
|
+
import { matchRecordUnion } from '@vultisig/lib-utils/matchRecordUnion';
|
|
12
|
+
import { getRecordUnionValue } from '@vultisig/lib-utils/record/union/getRecordUnionValue';
|
|
13
|
+
import { TW } from '@trustwallet/wallet-core';
|
|
14
|
+
import { AuthInfo, TxBody } from 'cosmjs-types/cosmos/tx/v1beta1/tx';
|
|
15
|
+
import Long from 'long';
|
|
16
|
+
import { getKeysignSwapPayload } from '../../../swap/getKeysignSwapPayload.js';
|
|
17
|
+
import { getKeysignTwPublicKey } from '../../../tw/getKeysignTwPublicKey.js';
|
|
18
|
+
import { getTwChainId } from '@vultisig/core-chain/chains/evm/tx/tw/getTwChainId';
|
|
19
|
+
import { toTwAddress } from '../../../tw/toTwAddress.js';
|
|
20
|
+
import { getKeysignChain } from '../../../utils/getKeysignChain.js';
|
|
21
|
+
import { getKeysignCoin } from '../../../utils/getKeysignCoin.js';
|
|
22
|
+
import { getCosmosChainSpecific } from './chainSpecific.js';
|
|
23
|
+
import { getCosmosCoinAmount } from './coinAmount.js';
|
|
24
|
+
export const getCosmosSigningInputs = ({ keysignPayload, walletCore, }) => {
|
|
25
|
+
const chain = getKeysignChain(keysignPayload);
|
|
26
|
+
const coin = getKeysignCoin(keysignPayload);
|
|
27
|
+
const chainKind = getCosmosChainKind(chain);
|
|
28
|
+
const chainSpecific = getCosmosChainSpecific(chain, keysignPayload.blockchainSpecific);
|
|
29
|
+
const { memo, toAddress, signData } = keysignPayload;
|
|
30
|
+
const signAmino = signData.case === 'signAmino' ? signData.value : undefined;
|
|
31
|
+
const signDirect = signData.case === 'signDirect' ? signData.value : undefined;
|
|
32
|
+
const chainFeeDenom = cosmosFeeCoinDenom[chain];
|
|
33
|
+
const toChainFeeDenom = (denom) => chainFeeCoin[chain]?.ticker === denom ? chainFeeDenom : denom;
|
|
34
|
+
const { messages, txMemo } = matchRecordUnion(chainSpecific, {
|
|
35
|
+
ibcEnabled: ({ transactionType, ibcDenomTraces }) => {
|
|
36
|
+
if (signDirect) {
|
|
37
|
+
const bodyBytes = fromBase64(signDirect.bodyBytes);
|
|
38
|
+
const txBody = TxBody.decode(bodyBytes);
|
|
39
|
+
const authInfoBytes = fromBase64(signDirect.authInfoBytes);
|
|
40
|
+
const messages = [
|
|
41
|
+
TW.Cosmos.Proto.Message.create({
|
|
42
|
+
signDirectMessage: TW.Cosmos.Proto.Message.SignDirect.create({
|
|
43
|
+
bodyBytes: bodyBytes,
|
|
44
|
+
authInfoBytes,
|
|
45
|
+
}),
|
|
46
|
+
}),
|
|
47
|
+
];
|
|
48
|
+
return {
|
|
49
|
+
messages,
|
|
50
|
+
txMemo: txBody.memo || memo,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
if (signAmino) {
|
|
54
|
+
return {
|
|
55
|
+
messages: signAmino.msgs.map(msg => {
|
|
56
|
+
return TW.Cosmos.Proto.Message.create({
|
|
57
|
+
rawJsonMessage: {
|
|
58
|
+
type: msg.type,
|
|
59
|
+
value: msg.value,
|
|
60
|
+
},
|
|
61
|
+
});
|
|
62
|
+
}),
|
|
63
|
+
txMemo: memo,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
if (transactionType === TransactionType.IBC_TRANSFER) {
|
|
67
|
+
const memo = shouldBePresent(keysignPayload.memo);
|
|
68
|
+
const [, channel] = memo.split(':');
|
|
69
|
+
const timeoutTimestamp = Long.fromString(ibcDenomTraces?.latestBlock?.split('_')?.[1] || '0');
|
|
70
|
+
return {
|
|
71
|
+
messages: [
|
|
72
|
+
TW.Cosmos.Proto.Message.create({
|
|
73
|
+
transferTokensMessage: TW.Cosmos.Proto.Message.Transfer.create({
|
|
74
|
+
sourcePort: 'transfer',
|
|
75
|
+
sourceChannel: channel,
|
|
76
|
+
token: getCosmosCoinAmount(keysignPayload),
|
|
77
|
+
sender: coin.address,
|
|
78
|
+
receiver: toAddress,
|
|
79
|
+
timeoutHeight: {
|
|
80
|
+
revisionNumber: Long.fromString('0'),
|
|
81
|
+
revisionHeight: Long.fromString('0'),
|
|
82
|
+
},
|
|
83
|
+
timeoutTimestamp,
|
|
84
|
+
}),
|
|
85
|
+
}),
|
|
86
|
+
],
|
|
87
|
+
txMemo: memo,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
return {
|
|
91
|
+
messages: [
|
|
92
|
+
TW.Cosmos.Proto.Message.create({
|
|
93
|
+
sendCoinsMessage: TW.Cosmos.Proto.Message.Send.create({
|
|
94
|
+
fromAddress: coin.address,
|
|
95
|
+
toAddress,
|
|
96
|
+
amounts: [
|
|
97
|
+
TW.Cosmos.Proto.Amount.create(getCosmosCoinAmount(keysignPayload)),
|
|
98
|
+
],
|
|
99
|
+
}),
|
|
100
|
+
}),
|
|
101
|
+
],
|
|
102
|
+
txMemo: memo,
|
|
103
|
+
};
|
|
104
|
+
},
|
|
105
|
+
vaultBased: ({ isDeposit, ...rest }) => {
|
|
106
|
+
if (signDirect) {
|
|
107
|
+
const bodyBytes = fromBase64(signDirect.bodyBytes);
|
|
108
|
+
const txBody = TxBody.decode(bodyBytes);
|
|
109
|
+
const authInfoBytes = fromBase64(signDirect.authInfoBytes);
|
|
110
|
+
const messages = [
|
|
111
|
+
TW.Cosmos.Proto.Message.create({
|
|
112
|
+
signDirectMessage: TW.Cosmos.Proto.Message.SignDirect.create({
|
|
113
|
+
bodyBytes: bodyBytes,
|
|
114
|
+
authInfoBytes,
|
|
115
|
+
}),
|
|
116
|
+
}),
|
|
117
|
+
];
|
|
118
|
+
return {
|
|
119
|
+
messages,
|
|
120
|
+
txMemo: txBody.memo || memo,
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
if (signAmino) {
|
|
124
|
+
const msgs = signAmino.msgs;
|
|
125
|
+
const messages = msgs.map(msg => {
|
|
126
|
+
const message = TW.Cosmos.Proto.Message.create({
|
|
127
|
+
rawJsonMessage: {
|
|
128
|
+
type: msg.type,
|
|
129
|
+
value: msg.value,
|
|
130
|
+
},
|
|
131
|
+
});
|
|
132
|
+
return message;
|
|
133
|
+
});
|
|
134
|
+
return {
|
|
135
|
+
messages,
|
|
136
|
+
txMemo: memo,
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
const txType = rest.transactionType ??
|
|
140
|
+
TransactionType.UNSPECIFIED;
|
|
141
|
+
const fromAddress = toTwAddress({
|
|
142
|
+
address: coin.address,
|
|
143
|
+
walletCore,
|
|
144
|
+
chain,
|
|
145
|
+
});
|
|
146
|
+
// iOS sometimes attaches an EMPTY wasm payload for memo-based TCY flows.
|
|
147
|
+
const potentialContractPayload = keysignPayload.contractPayload?.case === 'wasmExecuteContractPayload'
|
|
148
|
+
? keysignPayload.contractPayload.value
|
|
149
|
+
: undefined;
|
|
150
|
+
const hasMeaningfulWasm = txType === TransactionType.GENERIC_CONTRACT &&
|
|
151
|
+
!!potentialContractPayload &&
|
|
152
|
+
!!potentialContractPayload.senderAddress?.trim() &&
|
|
153
|
+
!!potentialContractPayload.contractAddress?.trim() &&
|
|
154
|
+
!!potentialContractPayload.executeMsg?.trim();
|
|
155
|
+
if (hasMeaningfulWasm) {
|
|
156
|
+
return {
|
|
157
|
+
messages: [
|
|
158
|
+
TW.Cosmos.Proto.Message.create({
|
|
159
|
+
wasmExecuteContractGeneric: TW.Cosmos.Proto.Message.WasmExecuteContractGeneric.create({
|
|
160
|
+
senderAddress: potentialContractPayload.senderAddress,
|
|
161
|
+
contractAddress: potentialContractPayload.contractAddress,
|
|
162
|
+
executeMsg: potentialContractPayload.executeMsg,
|
|
163
|
+
coins: potentialContractPayload.coins ?? [],
|
|
164
|
+
}),
|
|
165
|
+
}),
|
|
166
|
+
],
|
|
167
|
+
txMemo: memo,
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
else if (memo && memo.startsWith('merge:')) {
|
|
171
|
+
const fullDenom = memo.toLowerCase().replace('merge:', '');
|
|
172
|
+
return {
|
|
173
|
+
messages: [
|
|
174
|
+
TW.Cosmos.Proto.Message.create({
|
|
175
|
+
wasmExecuteContractGeneric: TW.Cosmos.Proto.Message.WasmExecuteContractGeneric.create({
|
|
176
|
+
senderAddress: coin.address,
|
|
177
|
+
contractAddress: toAddress,
|
|
178
|
+
executeMsg: '{ "deposit": {} }',
|
|
179
|
+
coins: [
|
|
180
|
+
TW.Cosmos.Proto.Amount.create({
|
|
181
|
+
denom: fullDenom,
|
|
182
|
+
amount: keysignPayload.toAmount,
|
|
183
|
+
}),
|
|
184
|
+
],
|
|
185
|
+
}),
|
|
186
|
+
}),
|
|
187
|
+
],
|
|
188
|
+
txMemo: memo,
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
else if (memo?.startsWith('unmerge:')) {
|
|
192
|
+
const memoParts = memo.toLowerCase().split(':');
|
|
193
|
+
if (memoParts.length !== 3 || !memoParts[2]) {
|
|
194
|
+
throw new Error('Invalid unmerge memo format. Expected: unmerge:<denom>:<rawShares>');
|
|
195
|
+
}
|
|
196
|
+
const [, , rawShares] = memoParts;
|
|
197
|
+
return {
|
|
198
|
+
messages: [
|
|
199
|
+
TW.Cosmos.Proto.Message.create({
|
|
200
|
+
wasmExecuteContractGeneric: TW.Cosmos.Proto.Message.WasmExecuteContractGeneric.create({
|
|
201
|
+
senderAddress: coin.address,
|
|
202
|
+
contractAddress: toAddress,
|
|
203
|
+
executeMsg: `{ "withdraw": { "share_amount": "${rawShares}" } }`,
|
|
204
|
+
coins: [],
|
|
205
|
+
}),
|
|
206
|
+
}),
|
|
207
|
+
],
|
|
208
|
+
txMemo: memo,
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
const getSwapPayload = () => {
|
|
212
|
+
const swapPayload = getKeysignSwapPayload(keysignPayload);
|
|
213
|
+
if (!swapPayload) {
|
|
214
|
+
return null;
|
|
215
|
+
}
|
|
216
|
+
return getRecordUnionValue(swapPayload, 'native');
|
|
217
|
+
};
|
|
218
|
+
const swapPayload = getSwapPayload();
|
|
219
|
+
if (isDeposit ||
|
|
220
|
+
(swapPayload && coin.chain === chain && swapPayload.chain === chain)) {
|
|
221
|
+
const amountStr = isDeposit
|
|
222
|
+
? (keysignPayload.toAmount ?? '0')
|
|
223
|
+
: swapPayload.fromAmount;
|
|
224
|
+
const isPositive = +/^[0-9]+$/.test(amountStr) && BigInt(amountStr) > 0n;
|
|
225
|
+
const depositCoin = TW.Cosmos.Proto.THORChainCoin.create({
|
|
226
|
+
asset: TW.Cosmos.Proto.THORChainAsset.create({
|
|
227
|
+
chain: nativeSwapChainIds[chain],
|
|
228
|
+
symbol: coin.ticker,
|
|
229
|
+
ticker: coin.ticker,
|
|
230
|
+
synth: false,
|
|
231
|
+
}),
|
|
232
|
+
...(isPositive
|
|
233
|
+
? { amount: amountStr, decimals: new Long(coin.decimals) }
|
|
234
|
+
: {}),
|
|
235
|
+
});
|
|
236
|
+
return {
|
|
237
|
+
messages: [
|
|
238
|
+
TW.Cosmos.Proto.Message.create({
|
|
239
|
+
thorchainDepositMessage: TW.Cosmos.Proto.Message.THORChainDeposit.create({
|
|
240
|
+
signer: fromAddress,
|
|
241
|
+
memo,
|
|
242
|
+
coins: [depositCoin],
|
|
243
|
+
}),
|
|
244
|
+
}),
|
|
245
|
+
],
|
|
246
|
+
// That doesn't make sense, but iOS and Android have this logic.
|
|
247
|
+
txMemo: chain === Chain.MayaChain ? memo : swapPayload ? '' : memo,
|
|
248
|
+
};
|
|
249
|
+
}
|
|
250
|
+
return {
|
|
251
|
+
messages: [
|
|
252
|
+
TW.Cosmos.Proto.Message.create({
|
|
253
|
+
thorchainSendMessage: TW.Cosmos.Proto.Message.THORChainSend.create({
|
|
254
|
+
fromAddress,
|
|
255
|
+
amounts: [
|
|
256
|
+
TW.Cosmos.Proto.Amount.create(getCosmosCoinAmount(keysignPayload)),
|
|
257
|
+
],
|
|
258
|
+
toAddress: toTwAddress({
|
|
259
|
+
address: toAddress,
|
|
260
|
+
walletCore,
|
|
261
|
+
chain,
|
|
262
|
+
}),
|
|
263
|
+
}),
|
|
264
|
+
}),
|
|
265
|
+
],
|
|
266
|
+
txMemo: memo,
|
|
267
|
+
};
|
|
268
|
+
},
|
|
269
|
+
});
|
|
270
|
+
const getFee = () => {
|
|
271
|
+
if (signDirect) {
|
|
272
|
+
const authInfoBytes = fromBase64(signDirect.authInfoBytes);
|
|
273
|
+
const authInfo = AuthInfo.decode(authInfoBytes);
|
|
274
|
+
if (authInfo.fee) {
|
|
275
|
+
const amounts = authInfo.fee.amount.map(coin => TW.Cosmos.Proto.Amount.create({
|
|
276
|
+
denom: toChainFeeDenom(coin.denom),
|
|
277
|
+
amount: coin.amount,
|
|
278
|
+
}));
|
|
279
|
+
return TW.Cosmos.Proto.Fee.create({
|
|
280
|
+
gas: Long.fromString(authInfo.fee.gasLimit?.toString() ?? '0'),
|
|
281
|
+
amounts,
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
if (signAmino) {
|
|
286
|
+
const fee = TW.Cosmos.Proto.Fee.create({
|
|
287
|
+
gas: Long.fromString(signAmino.fee?.gas ?? '0'),
|
|
288
|
+
amounts: signAmino.fee?.amount?.map(coin => TW.Cosmos.Proto.Amount.create({
|
|
289
|
+
...coin,
|
|
290
|
+
denom: toChainFeeDenom(coin.denom),
|
|
291
|
+
})) ?? [],
|
|
292
|
+
});
|
|
293
|
+
return fee;
|
|
294
|
+
}
|
|
295
|
+
const getFeeAmounts = () => {
|
|
296
|
+
if (chainKind !== 'ibcEnabled')
|
|
297
|
+
return;
|
|
298
|
+
const { gas } = getRecordUnionValue(chainSpecific, 'ibcEnabled');
|
|
299
|
+
const amounts = [
|
|
300
|
+
TW.Cosmos.Proto.Amount.create({
|
|
301
|
+
amount: gas.toString(),
|
|
302
|
+
denom: chainFeeDenom,
|
|
303
|
+
}),
|
|
304
|
+
];
|
|
305
|
+
if (areEqualCoins(coin, { chain: Chain.TerraClassic, id: 'uusd' })) {
|
|
306
|
+
amounts.push(TW.Cosmos.Proto.Amount.create({
|
|
307
|
+
denom: coin.id,
|
|
308
|
+
amount: '1000000',
|
|
309
|
+
}));
|
|
310
|
+
}
|
|
311
|
+
return amounts;
|
|
312
|
+
};
|
|
313
|
+
return TW.Cosmos.Proto.Fee.create({
|
|
314
|
+
gas: Long.fromBigInt(getCosmosGasLimit(coin)),
|
|
315
|
+
amounts: getFeeAmounts(),
|
|
316
|
+
});
|
|
317
|
+
};
|
|
318
|
+
const { accountNumber, sequence } = getRecordUnionValue(chainSpecific);
|
|
319
|
+
const fee = getFee();
|
|
320
|
+
const publicKey = getKeysignTwPublicKey(keysignPayload);
|
|
321
|
+
const chainId = getTwChainId({ walletCore, chain });
|
|
322
|
+
const signingMode = signAmino
|
|
323
|
+
? TW.Cosmos.Proto.SigningMode.JSON
|
|
324
|
+
: TW.Cosmos.Proto.SigningMode.Protobuf;
|
|
325
|
+
const input = TW.Cosmos.Proto.SigningInput.create({
|
|
326
|
+
publicKey,
|
|
327
|
+
signingMode,
|
|
328
|
+
chainId,
|
|
329
|
+
accountNumber: new Long(Number(accountNumber)),
|
|
330
|
+
sequence: new Long(Number(sequence)),
|
|
331
|
+
mode: TW.Cosmos.Proto.BroadcastMode.SYNC,
|
|
332
|
+
memo: txMemo,
|
|
333
|
+
messages,
|
|
334
|
+
fee,
|
|
335
|
+
});
|
|
336
|
+
return [input];
|
|
337
|
+
};
|
|
338
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/cosmos/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { KeysignPayload } from '@vultisig/core-mpc/types/vultisig/keysign/v1/keysign_message_pb';
|
|
2
|
+
import { TW, WalletCore } from '@trustwallet/wallet-core';
|
|
3
|
+
type Input = {
|
|
4
|
+
keysignPayload: KeysignPayload;
|
|
5
|
+
walletCore: WalletCore;
|
|
6
|
+
};
|
|
7
|
+
export declare const getErc20ApproveSigningInput: ({ keysignPayload, walletCore, }: Input) => TW.Ethereum.Proto.SigningInput;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=erc20.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"erc20.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/evm/erc20.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,iEAAiE,CAAA;AAIhG,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAEzD,KAAK,KAAK,GAAG;IACX,cAAc,EAAE,cAAc,CAAA;IAC9B,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED,eAAO,MAAM,2BAA2B,GAAI,iCAGzC,KAAK,mCAuCP,CAAA"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { getEvmTwFeeFields } from '@vultisig/core-chain/chains/evm/tx/fee/tw/getEvmTwFeeFields';
|
|
2
|
+
import { getEvmTwChainId } from '@vultisig/core-chain/chains/evm/tx/tw/getEvmTwChainId';
|
|
3
|
+
import { getEvmTwNonce } from '@vultisig/core-chain/chains/evm/tx/tw/getEvmTwNonce';
|
|
4
|
+
import { shouldBePresent } from '@vultisig/lib-utils/assert/shouldBePresent';
|
|
5
|
+
import { bigIntToHex } from '@vultisig/lib-utils/bigint/bigIntToHex';
|
|
6
|
+
import { stripHexPrefix } from '@vultisig/lib-utils/hex/stripHexPrefix';
|
|
7
|
+
import { TW } from '@trustwallet/wallet-core';
|
|
8
|
+
export const getErc20ApproveSigningInput = ({ keysignPayload, walletCore, }) => {
|
|
9
|
+
const { amount, spender } = shouldBePresent(keysignPayload.erc20ApprovePayload);
|
|
10
|
+
const amountHex = Buffer.from(stripHexPrefix(bigIntToHex(BigInt(amount))), 'hex');
|
|
11
|
+
const coin = shouldBePresent(keysignPayload.coin);
|
|
12
|
+
const chain = coin.chain;
|
|
13
|
+
const { blockchainSpecific } = keysignPayload;
|
|
14
|
+
const evmSpecific = blockchainSpecific.value;
|
|
15
|
+
const { nonce, maxFeePerGasWei, priorityFee, gasLimit } = evmSpecific;
|
|
16
|
+
return TW.Ethereum.Proto.SigningInput.create({
|
|
17
|
+
transaction: {
|
|
18
|
+
erc20Approve: {
|
|
19
|
+
amount: amountHex,
|
|
20
|
+
spender,
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
chainId: getEvmTwChainId({
|
|
24
|
+
walletCore,
|
|
25
|
+
chain,
|
|
26
|
+
}),
|
|
27
|
+
nonce: getEvmTwNonce(nonce),
|
|
28
|
+
toAddress: shouldBePresent(keysignPayload.coin).contractAddress,
|
|
29
|
+
...getEvmTwFeeFields({
|
|
30
|
+
chain,
|
|
31
|
+
maxFeePerGasWei: BigInt(maxFeePerGasWei),
|
|
32
|
+
priorityFee: BigInt(priorityFee),
|
|
33
|
+
gasLimit: BigInt(gasLimit),
|
|
34
|
+
}),
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=erc20.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"erc20.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/evm/erc20.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,6DAA6D,CAAA;AAC/F,OAAO,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAA;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAA;AAGnF,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAA;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAA;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAA;AACvE,OAAO,EAAE,EAAE,EAAc,MAAM,0BAA0B,CAAA;AAOzD,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,EAC1C,cAAc,EACd,UAAU,GACJ,EAAE,EAAE;IACV,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,eAAe,CACzC,cAAc,CAAC,mBAAmB,CACnC,CAAA;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAC3B,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAC3C,KAAK,CACN,CAAA;IAED,MAAM,IAAI,GAAG,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IACjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAiB,CAAA;IAEpC,MAAM,EAAE,kBAAkB,EAAE,GAAG,cAAc,CAAA;IAE7C,MAAM,WAAW,GAAG,kBAAkB,CAAC,KAAyB,CAAA;IAEhE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAA;IAErE,OAAO,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC;QAC3C,WAAW,EAAE;YACX,YAAY,EAAE;gBACZ,MAAM,EAAE,SAAS;gBACjB,OAAO;aACR;SACF;QACD,OAAO,EAAE,eAAe,CAAC;YACvB,UAAU;YACV,KAAK;SACN,CAAC;QACF,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC;QAC3B,SAAS,EAAE,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,eAAe;QAC/D,GAAG,iBAAiB,CAAC;YACnB,KAAK;YACL,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC;YACxC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC;YAChC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;SAC3B,CAAC;KACH,CAAC,CAAA;AACJ,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/evm/index.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAMtD,eAAO,MAAM,mBAAmB,EAAE,qBAAqB,CAAC,KAAK,CAwK5D,CAAA"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { create } from '@bufbuild/protobuf';
|
|
2
|
+
import { getEvmTwFeeFields, } from '@vultisig/core-chain/chains/evm/tx/fee/tw/getEvmTwFeeFields';
|
|
3
|
+
import { incrementKeysignPayloadNonce } from '@vultisig/core-chain/chains/evm/tx/incrementKeysignPayloadNonce';
|
|
4
|
+
import { getEvmTwChainId } from '@vultisig/core-chain/chains/evm/tx/tw/getEvmTwChainId';
|
|
5
|
+
import { getEvmTwNonce } from '@vultisig/core-chain/chains/evm/tx/tw/getEvmTwNonce';
|
|
6
|
+
import { toEvmTwAmount } from '@vultisig/core-chain/chains/evm/tx/tw/toEvmTwAmount';
|
|
7
|
+
import { toEvmTxData } from '@vultisig/core-chain/chains/evm/tx/tw/toEvmTxData';
|
|
8
|
+
import { shouldBePresent } from '@vultisig/lib-utils/assert/shouldBePresent';
|
|
9
|
+
import { matchRecordUnion } from '@vultisig/lib-utils/matchRecordUnion';
|
|
10
|
+
import { maxBigInt } from '@vultisig/lib-utils/math/maxBigInt';
|
|
11
|
+
import { assertField } from '@vultisig/lib-utils/record/assertField';
|
|
12
|
+
import { TW } from '@trustwallet/wallet-core';
|
|
13
|
+
import { KeysignPayloadSchema } from '../../../../types/vultisig/keysign/v1/keysign_message_pb.js';
|
|
14
|
+
import { getBlockchainSpecificValue } from '../../../chainSpecific/KeysignChainSpecific.js';
|
|
15
|
+
import { getKeysignSwapPayload } from '../../../swap/getKeysignSwapPayload.js';
|
|
16
|
+
import { toTwAddress } from '../../../tw/toTwAddress.js';
|
|
17
|
+
import { getKeysignChain } from '../../../utils/getKeysignChain.js';
|
|
18
|
+
import { getErc20ApproveSigningInput } from './erc20.js';
|
|
19
|
+
const memoToTxData = (memo) => memo.startsWith('0x') ? toEvmTxData(memo) : Buffer.from(memo, 'utf8');
|
|
20
|
+
export const getEvmSigningInputs = ({ keysignPayload, walletCore, }) => {
|
|
21
|
+
const chain = getKeysignChain(keysignPayload);
|
|
22
|
+
const coin = assertField(keysignPayload, 'coin');
|
|
23
|
+
const { erc20ApprovePayload, ...restOfKeysignPayload } = keysignPayload;
|
|
24
|
+
if (erc20ApprovePayload) {
|
|
25
|
+
const approveSigningInput = getErc20ApproveSigningInput({
|
|
26
|
+
keysignPayload,
|
|
27
|
+
walletCore,
|
|
28
|
+
});
|
|
29
|
+
const restOfSigningInputs = getEvmSigningInputs({
|
|
30
|
+
keysignPayload: incrementKeysignPayloadNonce(create(KeysignPayloadSchema, restOfKeysignPayload)),
|
|
31
|
+
walletCore,
|
|
32
|
+
});
|
|
33
|
+
return [approveSigningInput, ...restOfSigningInputs];
|
|
34
|
+
}
|
|
35
|
+
const evmSpecific = getBlockchainSpecificValue(keysignPayload.blockchainSpecific, 'ethereumSpecific');
|
|
36
|
+
const { nonce } = evmSpecific;
|
|
37
|
+
const swapPayload = getKeysignSwapPayload(keysignPayload);
|
|
38
|
+
const getToAddress = () => {
|
|
39
|
+
if (swapPayload) {
|
|
40
|
+
return matchRecordUnion(swapPayload, {
|
|
41
|
+
native: ({ vaultAddress, routerAddress }) => coin.isNativeToken ? vaultAddress : shouldBePresent(routerAddress),
|
|
42
|
+
general: ({ quote }) => shouldBePresent(quote?.tx?.to),
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
if (coin.isNativeToken) {
|
|
46
|
+
return keysignPayload.toAddress;
|
|
47
|
+
}
|
|
48
|
+
return coin.contractAddress;
|
|
49
|
+
};
|
|
50
|
+
const getTransaction = () => {
|
|
51
|
+
if (swapPayload) {
|
|
52
|
+
return matchRecordUnion(swapPayload, {
|
|
53
|
+
native: ({ fromCoin, fromAmount, vaultAddress, expirationTime }) => {
|
|
54
|
+
const { isNativeToken } = shouldBePresent(fromCoin);
|
|
55
|
+
const memo = shouldBePresent(keysignPayload.memo);
|
|
56
|
+
if (isNativeToken) {
|
|
57
|
+
return {
|
|
58
|
+
transfer: TW.Ethereum.Proto.Transaction.Transfer.create({
|
|
59
|
+
amount: toEvmTwAmount(fromAmount),
|
|
60
|
+
data: memoToTxData(memo),
|
|
61
|
+
}),
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
const abiFunction = walletCore.EthereumAbiFunction.createWithString('depositWithExpiry');
|
|
65
|
+
abiFunction.addParamAddress(toTwAddress({
|
|
66
|
+
address: vaultAddress,
|
|
67
|
+
walletCore,
|
|
68
|
+
chain,
|
|
69
|
+
}), false);
|
|
70
|
+
abiFunction.addParamAddress(toTwAddress({
|
|
71
|
+
address: shouldBePresent(fromCoin?.contractAddress),
|
|
72
|
+
walletCore,
|
|
73
|
+
chain,
|
|
74
|
+
}), false);
|
|
75
|
+
abiFunction.addParamUInt256(toEvmTwAmount(fromAmount), false);
|
|
76
|
+
abiFunction.addParamString(memo, false);
|
|
77
|
+
abiFunction.addParamUInt256(toEvmTwAmount(expirationTime), false);
|
|
78
|
+
const data = walletCore.EthereumAbi.encode(abiFunction);
|
|
79
|
+
return {
|
|
80
|
+
contractGeneric: TW.Ethereum.Proto.Transaction.ContractGeneric.create({
|
|
81
|
+
amount: toEvmTwAmount(0),
|
|
82
|
+
data,
|
|
83
|
+
}),
|
|
84
|
+
};
|
|
85
|
+
},
|
|
86
|
+
general: ({ quote }) => {
|
|
87
|
+
const { data, value } = shouldBePresent(quote?.tx);
|
|
88
|
+
return {
|
|
89
|
+
contractGeneric: TW.Ethereum.Proto.Transaction.ContractGeneric.create({
|
|
90
|
+
amount: toEvmTwAmount(value),
|
|
91
|
+
data: toEvmTxData(data),
|
|
92
|
+
}),
|
|
93
|
+
};
|
|
94
|
+
},
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
const amount = toEvmTwAmount(keysignPayload.toAmount);
|
|
98
|
+
if (coin.isNativeToken) {
|
|
99
|
+
return {
|
|
100
|
+
transfer: TW.Ethereum.Proto.Transaction.Transfer.create({
|
|
101
|
+
amount,
|
|
102
|
+
data: keysignPayload.memo
|
|
103
|
+
? memoToTxData(shouldBePresent(keysignPayload.memo))
|
|
104
|
+
: undefined,
|
|
105
|
+
}),
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
return {
|
|
109
|
+
erc20Transfer: TW.Ethereum.Proto.Transaction.ERC20Transfer.create({
|
|
110
|
+
amount,
|
|
111
|
+
to: keysignPayload.toAddress,
|
|
112
|
+
}),
|
|
113
|
+
};
|
|
114
|
+
};
|
|
115
|
+
const getFeeFields = () => {
|
|
116
|
+
const input = {
|
|
117
|
+
chain,
|
|
118
|
+
maxFeePerGasWei: BigInt(evmSpecific.maxFeePerGasWei),
|
|
119
|
+
priorityFee: BigInt(evmSpecific.priorityFee),
|
|
120
|
+
gasLimit: BigInt(evmSpecific.gasLimit),
|
|
121
|
+
};
|
|
122
|
+
if (swapPayload && 'general' in swapPayload) {
|
|
123
|
+
const { gasPrice, gas } = shouldBePresent(swapPayload.general.quote?.tx);
|
|
124
|
+
input.maxFeePerGasWei = maxBigInt(BigInt(gasPrice), input.maxFeePerGasWei);
|
|
125
|
+
if (BigInt(gas) > input.gasLimit) {
|
|
126
|
+
input.gasLimit = BigInt(gas);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
return getEvmTwFeeFields(input);
|
|
130
|
+
};
|
|
131
|
+
const input = TW.Ethereum.Proto.SigningInput.create({
|
|
132
|
+
toAddress: getToAddress(),
|
|
133
|
+
transaction: TW.Ethereum.Proto.Transaction.create(getTransaction()),
|
|
134
|
+
chainId: getEvmTwChainId({
|
|
135
|
+
walletCore,
|
|
136
|
+
chain,
|
|
137
|
+
}),
|
|
138
|
+
nonce: getEvmTwNonce(nonce),
|
|
139
|
+
...getFeeFields(),
|
|
140
|
+
});
|
|
141
|
+
return [input];
|
|
142
|
+
};
|
|
143
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/evm/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polkadot.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/polkadot.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAEnD,eAAO,MAAM,wBAAwB,EAAE,qBAAqB,CAAC,UAAU,CA8EtE,CAAA"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { getCoinType } from '@vultisig/core-chain/coin/coinType';
|
|
2
|
+
import { bigIntToHex } from '@vultisig/lib-utils/bigint/bigIntToHex';
|
|
3
|
+
import { stripHexPrefix } from '@vultisig/lib-utils/hex/stripHexPrefix';
|
|
4
|
+
import { TW } from '@trustwallet/wallet-core';
|
|
5
|
+
import Long from 'long';
|
|
6
|
+
import { getBlockchainSpecificValue } from '../../chainSpecific/KeysignChainSpecific.js';
|
|
7
|
+
import { getKeysignChain } from '../../utils/getKeysignChain.js';
|
|
8
|
+
import { resolvePolkadotToAddress } from '../../utils/resolvePolkadotToAddress.js';
|
|
9
|
+
export const getPolkadotSigningInputs = ({ keysignPayload, walletCore, }) => {
|
|
10
|
+
const chain = getKeysignChain(keysignPayload);
|
|
11
|
+
const toAddress = resolvePolkadotToAddress({
|
|
12
|
+
keysignPayload,
|
|
13
|
+
walletCore,
|
|
14
|
+
});
|
|
15
|
+
const { recentBlockHash, nonce, currentBlockNumber, specVersion, transactionVersion, genesisHash, } = getBlockchainSpecificValue(keysignPayload.blockchainSpecific, 'polkadotSpecific');
|
|
16
|
+
// Amount: converted to hexadecimal, stripped of '0x'
|
|
17
|
+
const amountHex = Buffer.from(stripHexPrefix(bigIntToHex(BigInt(keysignPayload.toAmount))), 'hex');
|
|
18
|
+
const callIndices = TW.Polkadot.Proto.CallIndices.create({
|
|
19
|
+
custom: TW.Polkadot.Proto.CustomCallIndices.create({
|
|
20
|
+
moduleIndex: 10,
|
|
21
|
+
methodIndex: 0,
|
|
22
|
+
}),
|
|
23
|
+
});
|
|
24
|
+
const assetTransfer = TW.Polkadot.Proto.Balance.AssetTransfer.create({
|
|
25
|
+
callIndices,
|
|
26
|
+
toAddress,
|
|
27
|
+
value: new Uint8Array(amountHex),
|
|
28
|
+
assetId: 0,
|
|
29
|
+
feeAssetId: 0,
|
|
30
|
+
});
|
|
31
|
+
const balance = TW.Polkadot.Proto.Balance.create({
|
|
32
|
+
assetTransfer,
|
|
33
|
+
});
|
|
34
|
+
const nonceLong = nonce == BigInt(0) ? Long.ZERO : Long.fromString(nonce.toString());
|
|
35
|
+
const currentBlockNumberLong = Long.fromString(currentBlockNumber);
|
|
36
|
+
const periodLong = Long.fromString('64');
|
|
37
|
+
const era = TW.Polkadot.Proto.Era.create({
|
|
38
|
+
blockNumber: currentBlockNumberLong,
|
|
39
|
+
period: periodLong,
|
|
40
|
+
});
|
|
41
|
+
const coinType = getCoinType({
|
|
42
|
+
walletCore,
|
|
43
|
+
chain,
|
|
44
|
+
});
|
|
45
|
+
const hexToBytes = (hex) => new Uint8Array(Buffer.from(stripHexPrefix(hex), 'hex'));
|
|
46
|
+
const ss58Prefix = walletCore.CoinTypeExt.ss58Prefix(coinType);
|
|
47
|
+
const input = TW.Polkadot.Proto.SigningInput.create({
|
|
48
|
+
genesisHash: hexToBytes(genesisHash),
|
|
49
|
+
blockHash: hexToBytes(recentBlockHash),
|
|
50
|
+
nonce: nonceLong,
|
|
51
|
+
specVersion: specVersion,
|
|
52
|
+
transactionVersion: transactionVersion,
|
|
53
|
+
network: ss58Prefix,
|
|
54
|
+
era: era,
|
|
55
|
+
balanceCall: balance,
|
|
56
|
+
});
|
|
57
|
+
return [input];
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=polkadot.js.map
|