xrpl 2.12.0 → 3.0.0-beta.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/README.md +114 -5
- package/build/xrpl-latest-min.js +1 -1
- package/build/xrpl-latest-min.js.map +1 -1
- package/build/xrpl-latest.js +18365 -75189
- package/build/xrpl-latest.js.map +1 -1
- package/dist/npm/Wallet/authorizeChannel.d.ts +3 -0
- package/dist/npm/Wallet/authorizeChannel.d.ts.map +1 -0
- package/dist/npm/Wallet/authorizeChannel.js +14 -0
- package/dist/npm/Wallet/authorizeChannel.js.map +1 -0
- package/dist/npm/Wallet/defaultFaucets.d.ts.map +1 -1
- package/dist/npm/Wallet/defaultFaucets.js +1 -4
- package/dist/npm/Wallet/defaultFaucets.js.map +1 -1
- package/dist/npm/Wallet/fundWallet.d.ts +17 -3
- package/dist/npm/Wallet/fundWallet.d.ts.map +1 -1
- package/dist/npm/Wallet/fundWallet.js +53 -78
- package/dist/npm/Wallet/fundWallet.js.map +1 -1
- package/dist/npm/Wallet/index.d.ts.map +1 -1
- package/dist/npm/Wallet/index.js +24 -23
- package/dist/npm/Wallet/index.js.map +1 -1
- package/dist/npm/Wallet/signer.d.ts +2 -4
- package/dist/npm/Wallet/signer.d.ts.map +1 -1
- package/dist/npm/Wallet/signer.js +17 -13
- package/dist/npm/Wallet/signer.js.map +1 -1
- package/dist/npm/Wallet/walletFromSecretNumbers.js +2 -2
- package/dist/npm/Wallet/walletFromSecretNumbers.js.map +1 -1
- package/dist/npm/client/RequestManager.d.ts +3 -2
- package/dist/npm/client/RequestManager.d.ts.map +1 -1
- package/dist/npm/client/RequestManager.js +25 -1
- package/dist/npm/client/RequestManager.js.map +1 -1
- package/dist/npm/client/connection.d.ts +8 -11
- package/dist/npm/client/connection.d.ts.map +1 -1
- package/dist/npm/client/connection.js +8 -54
- package/dist/npm/client/connection.js.map +1 -1
- package/dist/npm/client/index.d.ts +56 -78
- package/dist/npm/client/index.d.ts.map +1 -1
- package/dist/npm/client/index.js +155 -42
- package/dist/npm/client/index.js.map +1 -1
- package/dist/npm/client/partialPayment.d.ts +4 -2
- package/dist/npm/client/partialPayment.d.ts.map +1 -1
- package/dist/npm/client/partialPayment.js.map +1 -1
- package/dist/npm/errors.d.ts.map +1 -1
- package/dist/npm/errors.js +1 -2
- package/dist/npm/errors.js.map +1 -1
- package/dist/npm/index.d.ts +1 -1
- package/dist/npm/index.d.ts.map +1 -1
- package/dist/npm/index.js +1 -3
- package/dist/npm/index.js.map +1 -1
- package/dist/npm/models/ledger/AMM.d.ts +2 -4
- package/dist/npm/models/ledger/AMM.d.ts.map +1 -1
- package/dist/npm/models/ledger/AccountRoot.d.ts +2 -4
- package/dist/npm/models/ledger/AccountRoot.d.ts.map +1 -1
- package/dist/npm/models/ledger/AccountRoot.js +1 -1
- package/dist/npm/models/ledger/AccountRoot.js.map +1 -1
- package/dist/npm/models/ledger/Amendments.d.ts +2 -2
- package/dist/npm/models/ledger/Amendments.d.ts.map +1 -1
- package/dist/npm/models/ledger/BaseLedgerEntry.d.ts +9 -1
- package/dist/npm/models/ledger/BaseLedgerEntry.d.ts.map +1 -1
- package/dist/npm/models/ledger/Bridge.d.ts +2 -4
- package/dist/npm/models/ledger/Bridge.d.ts.map +1 -1
- package/dist/npm/models/ledger/Check.d.ts +2 -2
- package/dist/npm/models/ledger/Check.d.ts.map +1 -1
- package/dist/npm/models/ledger/DepositPreauth.d.ts +2 -4
- package/dist/npm/models/ledger/DepositPreauth.d.ts.map +1 -1
- package/dist/npm/models/ledger/DirectoryNode.d.ts +2 -2
- package/dist/npm/models/ledger/DirectoryNode.d.ts.map +1 -1
- package/dist/npm/models/ledger/Escrow.d.ts +2 -4
- package/dist/npm/models/ledger/Escrow.d.ts.map +1 -1
- package/dist/npm/models/ledger/FeeSettings.d.ts +2 -2
- package/dist/npm/models/ledger/FeeSettings.d.ts.map +1 -1
- package/dist/npm/models/ledger/Ledger.d.ts +3 -3
- package/dist/npm/models/ledger/Ledger.d.ts.map +1 -1
- package/dist/npm/models/ledger/LedgerEntry.d.ts +2 -1
- package/dist/npm/models/ledger/LedgerEntry.d.ts.map +1 -1
- package/dist/npm/models/ledger/LedgerHashes.d.ts +2 -2
- package/dist/npm/models/ledger/LedgerHashes.d.ts.map +1 -1
- package/dist/npm/models/ledger/NFTokenOffer.d.ts +2 -4
- package/dist/npm/models/ledger/NFTokenOffer.d.ts.map +1 -1
- package/dist/npm/models/ledger/NFTokenPage.d.ts +2 -4
- package/dist/npm/models/ledger/NFTokenPage.d.ts.map +1 -1
- package/dist/npm/models/ledger/NegativeUNL.d.ts +2 -2
- package/dist/npm/models/ledger/NegativeUNL.d.ts.map +1 -1
- package/dist/npm/models/ledger/Offer.d.ts +2 -4
- package/dist/npm/models/ledger/Offer.d.ts.map +1 -1
- package/dist/npm/models/ledger/Offer.js +1 -1
- package/dist/npm/models/ledger/Offer.js.map +1 -1
- package/dist/npm/models/ledger/PayChannel.d.ts +2 -4
- package/dist/npm/models/ledger/PayChannel.d.ts.map +1 -1
- package/dist/npm/models/ledger/RippleState.d.ts +2 -4
- package/dist/npm/models/ledger/RippleState.d.ts.map +1 -1
- package/dist/npm/models/ledger/RippleState.js +1 -1
- package/dist/npm/models/ledger/RippleState.js.map +1 -1
- package/dist/npm/models/ledger/SignerList.d.ts +2 -4
- package/dist/npm/models/ledger/SignerList.d.ts.map +1 -1
- package/dist/npm/models/ledger/SignerList.js +1 -1
- package/dist/npm/models/ledger/SignerList.js.map +1 -1
- package/dist/npm/models/ledger/Ticket.d.ts +2 -4
- package/dist/npm/models/ledger/Ticket.d.ts.map +1 -1
- package/dist/npm/models/ledger/XChainOwnedClaimID.d.ts +2 -4
- package/dist/npm/models/ledger/XChainOwnedClaimID.d.ts.map +1 -1
- package/dist/npm/models/ledger/XChainOwnedCreateAccountClaimID.d.ts +2 -4
- package/dist/npm/models/ledger/XChainOwnedCreateAccountClaimID.d.ts.map +1 -1
- package/dist/npm/models/ledger/index.d.ts +2 -2
- package/dist/npm/models/ledger/index.d.ts.map +1 -1
- package/dist/npm/models/ledger/index.js.map +1 -1
- package/dist/npm/models/methods/accountObjects.d.ts +4 -3
- package/dist/npm/models/methods/accountObjects.d.ts.map +1 -1
- package/dist/npm/models/methods/index.d.ts +12 -1
- package/dist/npm/models/methods/index.d.ts.map +1 -1
- package/dist/npm/models/methods/ledger.d.ts +37 -7
- package/dist/npm/models/methods/ledger.d.ts.map +1 -1
- package/dist/npm/models/methods/ledgerData.d.ts +2 -1
- package/dist/npm/models/methods/ledgerData.d.ts.map +1 -1
- package/dist/npm/models/methods/ledgerEntry.d.ts +2 -2
- package/dist/npm/models/methods/ledgerEntry.d.ts.map +1 -1
- package/dist/npm/models/methods/subscribe.d.ts +3 -0
- package/dist/npm/models/methods/subscribe.d.ts.map +1 -1
- package/dist/npm/models/methods/tx.d.ts +3 -2
- package/dist/npm/models/methods/tx.d.ts.map +1 -1
- package/dist/npm/models/transactions/AMMDeposit.js +1 -1
- package/dist/npm/models/transactions/AMMDeposit.js.map +1 -1
- package/dist/npm/models/transactions/AMMWithdraw.js +1 -1
- package/dist/npm/models/transactions/AMMWithdraw.js.map +1 -1
- package/dist/npm/models/transactions/NFTokenAcceptOffer.d.ts +4 -0
- package/dist/npm/models/transactions/NFTokenAcceptOffer.d.ts.map +1 -1
- package/dist/npm/models/transactions/NFTokenAcceptOffer.js.map +1 -1
- package/dist/npm/models/transactions/NFTokenBurn.d.ts +3 -3
- package/dist/npm/models/transactions/NFTokenBurn.d.ts.map +1 -1
- package/dist/npm/models/transactions/NFTokenBurn.js +2 -4
- package/dist/npm/models/transactions/NFTokenBurn.js.map +1 -1
- package/dist/npm/models/transactions/NFTokenCancelOffer.d.ts +4 -0
- package/dist/npm/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
- package/dist/npm/models/transactions/NFTokenCancelOffer.js.map +1 -1
- package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts +7 -3
- package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
- package/dist/npm/models/transactions/NFTokenCreateOffer.js +3 -1
- package/dist/npm/models/transactions/NFTokenCreateOffer.js.map +1 -1
- package/dist/npm/models/transactions/NFTokenMint.d.ts +6 -2
- package/dist/npm/models/transactions/NFTokenMint.d.ts.map +1 -1
- package/dist/npm/models/transactions/NFTokenMint.js +2 -1
- package/dist/npm/models/transactions/NFTokenMint.js.map +1 -1
- package/dist/npm/models/transactions/UNLModify.d.ts +2 -1
- package/dist/npm/models/transactions/UNLModify.d.ts.map +1 -1
- package/dist/npm/models/transactions/XChainAccountCreateCommit.d.ts +2 -2
- package/dist/npm/models/transactions/XChainAccountCreateCommit.d.ts.map +1 -1
- package/dist/npm/models/transactions/XChainAccountCreateCommit.js +1 -2
- package/dist/npm/models/transactions/XChainAccountCreateCommit.js.map +1 -1
- package/dist/npm/models/transactions/XChainAddAccountCreateAttestation.d.ts +5 -5
- package/dist/npm/models/transactions/XChainAddAccountCreateAttestation.d.ts.map +1 -1
- package/dist/npm/models/transactions/XChainAddAccountCreateAttestation.js +4 -4
- package/dist/npm/models/transactions/XChainAddAccountCreateAttestation.js.map +1 -1
- package/dist/npm/models/transactions/XChainAddClaimAttestation.d.ts +5 -5
- package/dist/npm/models/transactions/XChainAddClaimAttestation.d.ts.map +1 -1
- package/dist/npm/models/transactions/XChainAddClaimAttestation.js +4 -4
- package/dist/npm/models/transactions/XChainAddClaimAttestation.js.map +1 -1
- package/dist/npm/models/transactions/XChainClaim.d.ts +2 -2
- package/dist/npm/models/transactions/XChainClaim.d.ts.map +1 -1
- package/dist/npm/models/transactions/XChainClaim.js +1 -1
- package/dist/npm/models/transactions/XChainClaim.js.map +1 -1
- package/dist/npm/models/transactions/XChainCommit.d.ts +2 -2
- package/dist/npm/models/transactions/XChainCommit.d.ts.map +1 -1
- package/dist/npm/models/transactions/XChainCommit.js +1 -1
- package/dist/npm/models/transactions/XChainCommit.js.map +1 -1
- package/dist/npm/models/transactions/XChainCreateClaimID.d.ts +2 -2
- package/dist/npm/models/transactions/XChainCreateClaimID.d.ts.map +1 -1
- package/dist/npm/models/transactions/XChainCreateClaimID.js +1 -1
- package/dist/npm/models/transactions/XChainCreateClaimID.js.map +1 -1
- package/dist/npm/models/transactions/XChainModifyBridge.js +1 -1
- package/dist/npm/models/transactions/XChainModifyBridge.js.map +1 -1
- package/dist/npm/models/transactions/accountDelete.d.ts +2 -2
- package/dist/npm/models/transactions/accountDelete.d.ts.map +1 -1
- package/dist/npm/models/transactions/accountDelete.js +2 -11
- package/dist/npm/models/transactions/accountDelete.js.map +1 -1
- package/dist/npm/models/transactions/accountSet.d.ts +2 -2
- package/dist/npm/models/transactions/accountSet.d.ts.map +1 -1
- package/dist/npm/models/transactions/accountSet.js +3 -7
- package/dist/npm/models/transactions/accountSet.js.map +1 -1
- package/dist/npm/models/transactions/checkCreate.d.ts +2 -2
- package/dist/npm/models/transactions/checkCreate.d.ts.map +1 -1
- package/dist/npm/models/transactions/checkCreate.js +2 -10
- package/dist/npm/models/transactions/checkCreate.js.map +1 -1
- package/dist/npm/models/transactions/common.d.ts +3 -1
- package/dist/npm/models/transactions/common.d.ts.map +1 -1
- package/dist/npm/models/transactions/common.js +7 -1
- package/dist/npm/models/transactions/common.js.map +1 -1
- package/dist/npm/models/transactions/enableAmendment.js +1 -1
- package/dist/npm/models/transactions/enableAmendment.js.map +1 -1
- package/dist/npm/models/transactions/escrowCancel.d.ts +2 -2
- package/dist/npm/models/transactions/escrowCancel.d.ts.map +1 -1
- package/dist/npm/models/transactions/escrowCancel.js +1 -6
- package/dist/npm/models/transactions/escrowCancel.js.map +1 -1
- package/dist/npm/models/transactions/escrowCreate.d.ts +2 -2
- package/dist/npm/models/transactions/escrowCreate.d.ts.map +1 -1
- package/dist/npm/models/transactions/escrowCreate.js +2 -10
- package/dist/npm/models/transactions/escrowCreate.js.map +1 -1
- package/dist/npm/models/transactions/escrowFinish.d.ts +2 -2
- package/dist/npm/models/transactions/escrowFinish.d.ts.map +1 -1
- package/dist/npm/models/transactions/escrowFinish.js +1 -6
- package/dist/npm/models/transactions/escrowFinish.js.map +1 -1
- package/dist/npm/models/transactions/index.d.ts +1 -1
- package/dist/npm/models/transactions/index.d.ts.map +1 -1
- package/dist/npm/models/transactions/index.js.map +1 -1
- package/dist/npm/models/transactions/metadata.d.ts +9 -1
- package/dist/npm/models/transactions/metadata.d.ts.map +1 -1
- package/dist/npm/models/transactions/metadata.js.map +1 -1
- package/dist/npm/models/transactions/offerCreate.js +1 -1
- package/dist/npm/models/transactions/offerCreate.js.map +1 -1
- package/dist/npm/models/transactions/payment.d.ts +7 -2
- package/dist/npm/models/transactions/payment.d.ts.map +1 -1
- package/dist/npm/models/transactions/payment.js +3 -10
- package/dist/npm/models/transactions/payment.js.map +1 -1
- package/dist/npm/models/transactions/paymentChannelClaim.js +1 -1
- package/dist/npm/models/transactions/paymentChannelClaim.js.map +1 -1
- package/dist/npm/models/transactions/paymentChannelCreate.d.ts +2 -2
- package/dist/npm/models/transactions/paymentChannelCreate.d.ts.map +1 -1
- package/dist/npm/models/transactions/paymentChannelCreate.js +2 -10
- package/dist/npm/models/transactions/paymentChannelCreate.js.map +1 -1
- package/dist/npm/models/transactions/transaction.d.ts +8 -3
- package/dist/npm/models/transactions/transaction.d.ts.map +1 -1
- package/dist/npm/models/transactions/transaction.js.map +1 -1
- package/dist/npm/models/transactions/trustSet.js +1 -1
- package/dist/npm/models/transactions/trustSet.js.map +1 -1
- package/dist/npm/models/utils/flags.d.ts.map +1 -1
- package/dist/npm/models/utils/flags.js +17 -28
- package/dist/npm/models/utils/flags.js.map +1 -1
- package/dist/npm/snippets/src/bridgeTransfer.js +4 -3
- package/dist/npm/snippets/src/bridgeTransfer.js.map +1 -1
- package/dist/npm/snippets/src/getTransaction.js +1 -1
- package/dist/npm/snippets/src/getTransaction.js.map +1 -1
- package/dist/npm/snippets/src/paths.js +2 -3
- package/dist/npm/snippets/src/paths.js.map +1 -1
- package/dist/npm/snippets/tsconfig.tsbuildinfo +1 -0
- package/dist/npm/src/Wallet/authorizeChannel.d.ts +3 -0
- package/dist/npm/src/Wallet/authorizeChannel.d.ts.map +1 -0
- package/dist/npm/src/Wallet/authorizeChannel.js +14 -0
- package/dist/npm/src/Wallet/authorizeChannel.js.map +1 -0
- package/dist/npm/src/Wallet/defaultFaucets.d.ts.map +1 -1
- package/dist/npm/src/Wallet/defaultFaucets.js +1 -4
- package/dist/npm/src/Wallet/defaultFaucets.js.map +1 -1
- package/dist/npm/src/Wallet/fundWallet.d.ts +17 -3
- package/dist/npm/src/Wallet/fundWallet.d.ts.map +1 -1
- package/dist/npm/src/Wallet/fundWallet.js +53 -78
- package/dist/npm/src/Wallet/fundWallet.js.map +1 -1
- package/dist/npm/src/Wallet/index.d.ts.map +1 -1
- package/dist/npm/src/Wallet/index.js +24 -23
- package/dist/npm/src/Wallet/index.js.map +1 -1
- package/dist/npm/src/Wallet/signer.d.ts +2 -4
- package/dist/npm/src/Wallet/signer.d.ts.map +1 -1
- package/dist/npm/src/Wallet/signer.js +17 -13
- package/dist/npm/src/Wallet/signer.js.map +1 -1
- package/dist/npm/src/Wallet/walletFromSecretNumbers.js +2 -2
- package/dist/npm/src/Wallet/walletFromSecretNumbers.js.map +1 -1
- package/dist/npm/src/client/RequestManager.d.ts +3 -2
- package/dist/npm/src/client/RequestManager.d.ts.map +1 -1
- package/dist/npm/src/client/RequestManager.js +25 -1
- package/dist/npm/src/client/RequestManager.js.map +1 -1
- package/dist/npm/src/client/connection.d.ts +8 -11
- package/dist/npm/src/client/connection.d.ts.map +1 -1
- package/dist/npm/src/client/connection.js +8 -54
- package/dist/npm/src/client/connection.js.map +1 -1
- package/dist/npm/src/client/index.d.ts +56 -78
- package/dist/npm/src/client/index.d.ts.map +1 -1
- package/dist/npm/src/client/index.js +155 -42
- package/dist/npm/src/client/index.js.map +1 -1
- package/dist/npm/src/client/partialPayment.d.ts +4 -2
- package/dist/npm/src/client/partialPayment.d.ts.map +1 -1
- package/dist/npm/src/client/partialPayment.js.map +1 -1
- package/dist/npm/src/errors.d.ts.map +1 -1
- package/dist/npm/src/errors.js +1 -2
- package/dist/npm/src/errors.js.map +1 -1
- package/dist/npm/src/index.d.ts +1 -1
- package/dist/npm/src/index.d.ts.map +1 -1
- package/dist/npm/src/index.js +1 -3
- package/dist/npm/src/index.js.map +1 -1
- package/dist/npm/src/models/ledger/AMM.d.ts +2 -4
- package/dist/npm/src/models/ledger/AMM.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/AccountRoot.d.ts +2 -4
- package/dist/npm/src/models/ledger/AccountRoot.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/AccountRoot.js +1 -1
- package/dist/npm/src/models/ledger/AccountRoot.js.map +1 -1
- package/dist/npm/src/models/ledger/Amendments.d.ts +2 -2
- package/dist/npm/src/models/ledger/Amendments.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/BaseLedgerEntry.d.ts +9 -1
- package/dist/npm/src/models/ledger/BaseLedgerEntry.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/Bridge.d.ts +2 -4
- package/dist/npm/src/models/ledger/Bridge.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/Check.d.ts +2 -2
- package/dist/npm/src/models/ledger/Check.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/DepositPreauth.d.ts +2 -4
- package/dist/npm/src/models/ledger/DepositPreauth.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/DirectoryNode.d.ts +2 -2
- package/dist/npm/src/models/ledger/DirectoryNode.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/Escrow.d.ts +2 -4
- package/dist/npm/src/models/ledger/Escrow.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/FeeSettings.d.ts +2 -2
- package/dist/npm/src/models/ledger/FeeSettings.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/Ledger.d.ts +3 -3
- package/dist/npm/src/models/ledger/Ledger.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/LedgerEntry.d.ts +2 -1
- package/dist/npm/src/models/ledger/LedgerEntry.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/LedgerHashes.d.ts +2 -2
- package/dist/npm/src/models/ledger/LedgerHashes.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/NFTokenOffer.d.ts +2 -4
- package/dist/npm/src/models/ledger/NFTokenOffer.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/NFTokenPage.d.ts +2 -4
- package/dist/npm/src/models/ledger/NFTokenPage.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/NegativeUNL.d.ts +2 -2
- package/dist/npm/src/models/ledger/NegativeUNL.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/Offer.d.ts +2 -4
- package/dist/npm/src/models/ledger/Offer.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/Offer.js +1 -1
- package/dist/npm/src/models/ledger/Offer.js.map +1 -1
- package/dist/npm/src/models/ledger/PayChannel.d.ts +2 -4
- package/dist/npm/src/models/ledger/PayChannel.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/RippleState.d.ts +2 -4
- package/dist/npm/src/models/ledger/RippleState.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/RippleState.js +1 -1
- package/dist/npm/src/models/ledger/RippleState.js.map +1 -1
- package/dist/npm/src/models/ledger/SignerList.d.ts +2 -4
- package/dist/npm/src/models/ledger/SignerList.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/SignerList.js +1 -1
- package/dist/npm/src/models/ledger/SignerList.js.map +1 -1
- package/dist/npm/src/models/ledger/Ticket.d.ts +2 -4
- package/dist/npm/src/models/ledger/Ticket.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/XChainOwnedClaimID.d.ts +2 -4
- package/dist/npm/src/models/ledger/XChainOwnedClaimID.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/XChainOwnedCreateAccountClaimID.d.ts +2 -4
- package/dist/npm/src/models/ledger/XChainOwnedCreateAccountClaimID.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/index.d.ts +2 -2
- package/dist/npm/src/models/ledger/index.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/index.js.map +1 -1
- package/dist/npm/src/models/methods/accountObjects.d.ts +4 -3
- package/dist/npm/src/models/methods/accountObjects.d.ts.map +1 -1
- package/dist/npm/src/models/methods/index.d.ts +12 -1
- package/dist/npm/src/models/methods/index.d.ts.map +1 -1
- package/dist/npm/src/models/methods/ledger.d.ts +37 -7
- package/dist/npm/src/models/methods/ledger.d.ts.map +1 -1
- package/dist/npm/src/models/methods/ledgerData.d.ts +2 -1
- package/dist/npm/src/models/methods/ledgerData.d.ts.map +1 -1
- package/dist/npm/src/models/methods/ledgerEntry.d.ts +2 -2
- package/dist/npm/src/models/methods/ledgerEntry.d.ts.map +1 -1
- package/dist/npm/src/models/methods/subscribe.d.ts +3 -0
- package/dist/npm/src/models/methods/subscribe.d.ts.map +1 -1
- package/dist/npm/src/models/methods/tx.d.ts +3 -2
- package/dist/npm/src/models/methods/tx.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/AMMDeposit.js +1 -1
- package/dist/npm/src/models/transactions/AMMDeposit.js.map +1 -1
- package/dist/npm/src/models/transactions/AMMWithdraw.js +1 -1
- package/dist/npm/src/models/transactions/AMMWithdraw.js.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenAcceptOffer.d.ts +4 -0
- package/dist/npm/src/models/transactions/NFTokenAcceptOffer.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenAcceptOffer.js.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenBurn.d.ts +3 -3
- package/dist/npm/src/models/transactions/NFTokenBurn.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenBurn.js +2 -4
- package/dist/npm/src/models/transactions/NFTokenBurn.js.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenCancelOffer.d.ts +4 -0
- package/dist/npm/src/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenCancelOffer.js.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts +7 -3
- package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenCreateOffer.js +3 -1
- package/dist/npm/src/models/transactions/NFTokenCreateOffer.js.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenMint.d.ts +6 -2
- package/dist/npm/src/models/transactions/NFTokenMint.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenMint.js +2 -1
- package/dist/npm/src/models/transactions/NFTokenMint.js.map +1 -1
- package/dist/npm/src/models/transactions/UNLModify.d.ts +2 -1
- package/dist/npm/src/models/transactions/UNLModify.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/XChainAccountCreateCommit.d.ts +2 -2
- package/dist/npm/src/models/transactions/XChainAccountCreateCommit.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/XChainAccountCreateCommit.js +1 -2
- package/dist/npm/src/models/transactions/XChainAccountCreateCommit.js.map +1 -1
- package/dist/npm/src/models/transactions/XChainAddAccountCreateAttestation.d.ts +5 -5
- package/dist/npm/src/models/transactions/XChainAddAccountCreateAttestation.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/XChainAddAccountCreateAttestation.js +4 -4
- package/dist/npm/src/models/transactions/XChainAddAccountCreateAttestation.js.map +1 -1
- package/dist/npm/src/models/transactions/XChainAddClaimAttestation.d.ts +5 -5
- package/dist/npm/src/models/transactions/XChainAddClaimAttestation.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/XChainAddClaimAttestation.js +4 -4
- package/dist/npm/src/models/transactions/XChainAddClaimAttestation.js.map +1 -1
- package/dist/npm/src/models/transactions/XChainClaim.d.ts +2 -2
- package/dist/npm/src/models/transactions/XChainClaim.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/XChainClaim.js +1 -1
- package/dist/npm/src/models/transactions/XChainClaim.js.map +1 -1
- package/dist/npm/src/models/transactions/XChainCommit.d.ts +2 -2
- package/dist/npm/src/models/transactions/XChainCommit.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/XChainCommit.js +1 -1
- package/dist/npm/src/models/transactions/XChainCommit.js.map +1 -1
- package/dist/npm/src/models/transactions/XChainCreateClaimID.d.ts +2 -2
- package/dist/npm/src/models/transactions/XChainCreateClaimID.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/XChainCreateClaimID.js +1 -1
- package/dist/npm/src/models/transactions/XChainCreateClaimID.js.map +1 -1
- package/dist/npm/src/models/transactions/XChainModifyBridge.js +1 -1
- package/dist/npm/src/models/transactions/XChainModifyBridge.js.map +1 -1
- package/dist/npm/src/models/transactions/accountDelete.d.ts +2 -2
- package/dist/npm/src/models/transactions/accountDelete.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/accountDelete.js +2 -11
- package/dist/npm/src/models/transactions/accountDelete.js.map +1 -1
- package/dist/npm/src/models/transactions/accountSet.d.ts +2 -2
- package/dist/npm/src/models/transactions/accountSet.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/accountSet.js +3 -7
- package/dist/npm/src/models/transactions/accountSet.js.map +1 -1
- package/dist/npm/src/models/transactions/checkCreate.d.ts +2 -2
- package/dist/npm/src/models/transactions/checkCreate.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/checkCreate.js +2 -10
- package/dist/npm/src/models/transactions/checkCreate.js.map +1 -1
- package/dist/npm/src/models/transactions/common.d.ts +3 -1
- package/dist/npm/src/models/transactions/common.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/common.js +7 -1
- package/dist/npm/src/models/transactions/common.js.map +1 -1
- package/dist/npm/src/models/transactions/enableAmendment.js +1 -1
- package/dist/npm/src/models/transactions/enableAmendment.js.map +1 -1
- package/dist/npm/src/models/transactions/escrowCancel.d.ts +2 -2
- package/dist/npm/src/models/transactions/escrowCancel.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/escrowCancel.js +1 -6
- package/dist/npm/src/models/transactions/escrowCancel.js.map +1 -1
- package/dist/npm/src/models/transactions/escrowCreate.d.ts +2 -2
- package/dist/npm/src/models/transactions/escrowCreate.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/escrowCreate.js +2 -10
- package/dist/npm/src/models/transactions/escrowCreate.js.map +1 -1
- package/dist/npm/src/models/transactions/escrowFinish.d.ts +2 -2
- package/dist/npm/src/models/transactions/escrowFinish.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/escrowFinish.js +1 -6
- package/dist/npm/src/models/transactions/escrowFinish.js.map +1 -1
- package/dist/npm/src/models/transactions/index.d.ts +1 -1
- package/dist/npm/src/models/transactions/index.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/index.js.map +1 -1
- package/dist/npm/src/models/transactions/metadata.d.ts +9 -1
- package/dist/npm/src/models/transactions/metadata.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/metadata.js.map +1 -1
- package/dist/npm/src/models/transactions/offerCreate.js +1 -1
- package/dist/npm/src/models/transactions/offerCreate.js.map +1 -1
- package/dist/npm/src/models/transactions/payment.d.ts +7 -2
- package/dist/npm/src/models/transactions/payment.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/payment.js +3 -10
- package/dist/npm/src/models/transactions/payment.js.map +1 -1
- package/dist/npm/src/models/transactions/paymentChannelClaim.js +1 -1
- package/dist/npm/src/models/transactions/paymentChannelClaim.js.map +1 -1
- package/dist/npm/src/models/transactions/paymentChannelCreate.d.ts +2 -2
- package/dist/npm/src/models/transactions/paymentChannelCreate.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/paymentChannelCreate.js +2 -10
- package/dist/npm/src/models/transactions/paymentChannelCreate.js.map +1 -1
- package/dist/npm/src/models/transactions/transaction.d.ts +8 -3
- package/dist/npm/src/models/transactions/transaction.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/transaction.js.map +1 -1
- package/dist/npm/src/models/transactions/trustSet.js +1 -1
- package/dist/npm/src/models/transactions/trustSet.js.map +1 -1
- package/dist/npm/src/models/utils/flags.d.ts.map +1 -1
- package/dist/npm/src/models/utils/flags.js +17 -28
- package/dist/npm/src/models/utils/flags.js.map +1 -1
- package/dist/npm/src/sugar/autofill.d.ts +6 -2
- package/dist/npm/src/sugar/autofill.d.ts.map +1 -1
- package/dist/npm/src/sugar/autofill.js +9 -28
- package/dist/npm/src/sugar/autofill.js.map +1 -1
- package/dist/npm/src/sugar/balances.d.ts +2 -17
- package/dist/npm/src/sugar/balances.d.ts.map +1 -1
- package/dist/npm/src/sugar/balances.js +2 -60
- package/dist/npm/src/sugar/balances.js.map +1 -1
- package/dist/npm/src/sugar/getOrderbook.d.ts +19 -5
- package/dist/npm/src/sugar/getOrderbook.d.ts.map +1 -1
- package/dist/npm/src/sugar/getOrderbook.js +72 -53
- package/dist/npm/src/sugar/getOrderbook.js.map +1 -1
- package/dist/npm/src/sugar/index.d.ts +0 -4
- package/dist/npm/src/sugar/index.d.ts.map +1 -1
- package/dist/npm/src/sugar/index.js +0 -13
- package/dist/npm/src/sugar/index.js.map +1 -1
- package/dist/npm/src/sugar/submit.d.ts +6 -9
- package/dist/npm/src/sugar/submit.d.ts.map +1 -1
- package/dist/npm/src/sugar/submit.js +5 -22
- package/dist/npm/src/sugar/submit.js.map +1 -1
- package/dist/npm/src/utils/collections.d.ts +7 -0
- package/dist/npm/src/utils/collections.d.ts.map +1 -0
- package/dist/npm/src/utils/collections.js +22 -0
- package/dist/npm/src/utils/collections.js.map +1 -0
- package/dist/npm/src/utils/getBalanceChanges.d.ts.map +1 -1
- package/dist/npm/src/utils/getBalanceChanges.js +3 -4
- package/dist/npm/src/utils/getBalanceChanges.js.map +1 -1
- package/dist/npm/src/utils/getNFTokenID.d.ts.map +1 -1
- package/dist/npm/src/utils/getNFTokenID.js +8 -8
- package/dist/npm/src/utils/getNFTokenID.js.map +1 -1
- package/dist/npm/src/utils/hashes/SHAMap/node.js +1 -1
- package/dist/npm/src/utils/hashes/SHAMap/node.js.map +1 -1
- package/dist/npm/src/utils/hashes/hashLedger.d.ts +2 -1
- package/dist/npm/src/utils/hashes/hashLedger.d.ts.map +1 -1
- package/dist/npm/src/utils/hashes/hashLedger.js.map +1 -1
- package/dist/npm/src/utils/hashes/sha512Half.d.ts.map +1 -1
- package/dist/npm/src/utils/hashes/sha512Half.js +4 -7
- package/dist/npm/src/utils/hashes/sha512Half.js.map +1 -1
- package/dist/npm/sugar/autofill.d.ts +6 -2
- package/dist/npm/sugar/autofill.d.ts.map +1 -1
- package/dist/npm/sugar/autofill.js +9 -28
- package/dist/npm/sugar/autofill.js.map +1 -1
- package/dist/npm/sugar/balances.d.ts +2 -17
- package/dist/npm/sugar/balances.d.ts.map +1 -1
- package/dist/npm/sugar/balances.js +2 -60
- package/dist/npm/sugar/balances.js.map +1 -1
- package/dist/npm/sugar/getOrderbook.d.ts +19 -5
- package/dist/npm/sugar/getOrderbook.d.ts.map +1 -1
- package/dist/npm/sugar/getOrderbook.js +72 -53
- package/dist/npm/sugar/getOrderbook.js.map +1 -1
- package/dist/npm/sugar/index.d.ts +0 -4
- package/dist/npm/sugar/index.d.ts.map +1 -1
- package/dist/npm/sugar/index.js +0 -13
- package/dist/npm/sugar/index.js.map +1 -1
- package/dist/npm/sugar/submit.d.ts +6 -9
- package/dist/npm/sugar/submit.d.ts.map +1 -1
- package/dist/npm/sugar/submit.js +5 -22
- package/dist/npm/sugar/submit.js.map +1 -1
- package/dist/npm/utils/collections.d.ts +7 -0
- package/dist/npm/utils/collections.d.ts.map +1 -0
- package/dist/npm/utils/collections.js +22 -0
- package/dist/npm/utils/collections.js.map +1 -0
- package/dist/npm/utils/getBalanceChanges.d.ts.map +1 -1
- package/dist/npm/utils/getBalanceChanges.js +3 -4
- package/dist/npm/utils/getBalanceChanges.js.map +1 -1
- package/dist/npm/utils/getNFTokenID.d.ts.map +1 -1
- package/dist/npm/utils/getNFTokenID.js +8 -8
- package/dist/npm/utils/getNFTokenID.js.map +1 -1
- package/dist/npm/utils/hashes/SHAMap/node.js +1 -1
- package/dist/npm/utils/hashes/SHAMap/node.js.map +1 -1
- package/dist/npm/utils/hashes/hashLedger.d.ts +2 -1
- package/dist/npm/utils/hashes/hashLedger.d.ts.map +1 -1
- package/dist/npm/utils/hashes/hashLedger.js.map +1 -1
- package/dist/npm/utils/hashes/sha512Half.d.ts.map +1 -1
- package/dist/npm/utils/hashes/sha512Half.js +4 -7
- package/dist/npm/utils/hashes/sha512Half.js.map +1 -1
- package/package.json +32 -25
- package/src/Wallet/authorizeChannel.ts +26 -0
- package/src/Wallet/defaultFaucets.ts +0 -4
- package/src/Wallet/fundWallet.ts +151 -212
- package/src/Wallet/index.ts +28 -25
- package/src/Wallet/signer.ts +32 -43
- package/src/Wallet/walletFromSecretNumbers.ts +1 -1
- package/src/client/RequestManager.ts +40 -14
- package/src/client/connection.ts +20 -89
- package/src/client/index.ts +704 -269
- package/src/client/partialPayment.ts +20 -10
- package/src/errors.ts +1 -3
- package/src/index.ts +1 -3
- package/src/models/ledger/AMM.ts +2 -10
- package/src/models/ledger/AccountRoot.ts +2 -12
- package/src/models/ledger/Amendments.ts +4 -2
- package/src/models/ledger/BaseLedgerEntry.ts +25 -1
- package/src/models/ledger/Bridge.ts +2 -14
- package/src/models/ledger/Check.ts +2 -2
- package/src/models/ledger/DepositPreauth.ts +4 -12
- package/src/models/ledger/DirectoryNode.ts +4 -2
- package/src/models/ledger/Escrow.ts +2 -12
- package/src/models/ledger/FeeSettings.ts +2 -2
- package/src/models/ledger/Ledger.ts +10 -4
- package/src/models/ledger/LedgerEntry.ts +22 -1
- package/src/models/ledger/LedgerHashes.ts +4 -2
- package/src/models/ledger/NFTokenOffer.ts +2 -4
- package/src/models/ledger/NFTokenPage.ts +2 -4
- package/src/models/ledger/NegativeUNL.ts +4 -2
- package/src/models/ledger/Offer.ts +2 -12
- package/src/models/ledger/PayChannel.ts +2 -12
- package/src/models/ledger/RippleState.ts +2 -12
- package/src/models/ledger/SignerList.ts +2 -12
- package/src/models/ledger/Ticket.ts +2 -12
- package/src/models/ledger/XChainOwnedClaimID.ts +4 -12
- package/src/models/ledger/XChainOwnedCreateAccountClaimID.ts +3 -12
- package/src/models/ledger/index.ts +2 -1
- package/src/models/methods/accountObjects.ts +10 -44
- package/src/models/methods/index.ts +175 -0
- package/src/models/methods/ledger.ts +154 -20
- package/src/models/methods/ledgerData.ts +5 -1
- package/src/models/methods/ledgerEntry.ts +2 -2
- package/src/models/methods/subscribe.ts +36 -0
- package/src/models/methods/tx.ts +6 -3
- package/src/models/transactions/NFTokenAcceptOffer.ts +6 -0
- package/src/models/transactions/NFTokenBurn.ts +13 -9
- package/src/models/transactions/NFTokenCancelOffer.ts +6 -0
- package/src/models/transactions/NFTokenCreateOffer.ts +14 -2
- package/src/models/transactions/NFTokenMint.ts +17 -2
- package/src/models/transactions/UNLModify.ts +3 -1
- package/src/models/transactions/XChainAccountCreateCommit.ts +4 -4
- package/src/models/transactions/XChainAddAccountCreateAttestation.ts +10 -8
- package/src/models/transactions/XChainAddClaimAttestation.ts +10 -8
- package/src/models/transactions/XChainClaim.ts +4 -2
- package/src/models/transactions/XChainCommit.ts +4 -2
- package/src/models/transactions/XChainCreateClaimID.ts +4 -3
- package/src/models/transactions/accountDelete.ts +12 -18
- package/src/models/transactions/accountSet.ts +10 -11
- package/src/models/transactions/checkCreate.ts +8 -15
- package/src/models/transactions/common.ts +20 -1
- package/src/models/transactions/escrowCancel.ts +9 -9
- package/src/models/transactions/escrowCreate.ts +12 -16
- package/src/models/transactions/escrowFinish.ts +9 -9
- package/src/models/transactions/index.ts +6 -1
- package/src/models/transactions/metadata.ts +31 -1
- package/src/models/transactions/payment.ts +14 -14
- package/src/models/transactions/paymentChannelCreate.ts +12 -21
- package/src/models/transactions/transaction.ts +11 -4
- package/src/models/utils/flags.ts +18 -28
- package/src/sugar/autofill.ts +84 -88
- package/src/sugar/balances.ts +8 -116
- package/src/sugar/getOrderbook.ts +138 -61
- package/src/sugar/index.ts +0 -8
- package/src/sugar/submit.ts +114 -132
- package/src/utils/collections.ts +53 -0
- package/src/utils/getBalanceChanges.ts +2 -3
- package/src/utils/getNFTokenID.ts +18 -16
- package/src/utils/hashes/hashLedger.ts +4 -1
- package/src/utils/hashes/sha512Half.ts +4 -7
- package/dist/npm/client/BroadcastClient.d.ts +0 -7
- package/dist/npm/client/BroadcastClient.d.ts.map +0 -1
- package/dist/npm/client/BroadcastClient.js +0 -49
- package/dist/npm/client/BroadcastClient.js.map +0 -1
- package/dist/npm/client/WSWrapper.d.ts +0 -25
- package/dist/npm/client/WSWrapper.d.ts.map +0 -1
- package/dist/npm/client/WSWrapper.js +0 -44
- package/dist/npm/client/WSWrapper.js.map +0 -1
- package/dist/npm/src/client/BroadcastClient.d.ts +0 -7
- package/dist/npm/src/client/BroadcastClient.d.ts.map +0 -1
- package/dist/npm/src/client/BroadcastClient.js +0 -49
- package/dist/npm/src/client/BroadcastClient.js.map +0 -1
- package/dist/npm/src/client/WSWrapper.d.ts +0 -25
- package/dist/npm/src/client/WSWrapper.d.ts.map +0 -1
- package/dist/npm/src/client/WSWrapper.js +0 -44
- package/dist/npm/src/client/WSWrapper.js.map +0 -1
- package/dist/npm/src/sugar/getLedgerIndex.d.ts +0 -3
- package/dist/npm/src/sugar/getLedgerIndex.d.ts.map +0 -1
- package/dist/npm/src/sugar/getLedgerIndex.js +0 -22
- package/dist/npm/src/sugar/getLedgerIndex.js.map +0 -1
- package/dist/npm/sugar/getLedgerIndex.d.ts +0 -3
- package/dist/npm/sugar/getLedgerIndex.d.ts.map +0 -1
- package/dist/npm/sugar/getLedgerIndex.js +0 -22
- package/dist/npm/sugar/getLedgerIndex.js.map +0 -1
- package/src/client/BroadcastClient.ts +0 -84
- package/src/client/WSWrapper.ts +0 -106
- package/src/sugar/getLedgerIndex.ts +0 -15
package/src/Wallet/index.ts
CHANGED
@@ -1,7 +1,8 @@
|
|
1
|
+
import { HDKey } from '@scure/bip32'
|
2
|
+
import { mnemonicToSeedSync, validateMnemonic } from '@scure/bip39'
|
3
|
+
import { wordlist } from '@scure/bip39/wordlists/english'
|
4
|
+
import { bytesToHex } from '@xrplf/isomorphic/utils'
|
1
5
|
import BigNumber from 'bignumber.js'
|
2
|
-
import { fromSeed } from 'bip32'
|
3
|
-
import { mnemonicToSeedSync, validateMnemonic } from 'bip39'
|
4
|
-
import omitBy from 'lodash/omitBy'
|
5
6
|
import {
|
6
7
|
classicAddressToXAddress,
|
7
8
|
isValidXAddress,
|
@@ -9,7 +10,6 @@ import {
|
|
9
10
|
encodeSeed,
|
10
11
|
} from 'ripple-address-codec'
|
11
12
|
import {
|
12
|
-
decode,
|
13
13
|
encodeForSigning,
|
14
14
|
encodeForMultisigning,
|
15
15
|
encode,
|
@@ -18,7 +18,6 @@ import {
|
|
18
18
|
deriveAddress,
|
19
19
|
deriveKeypair,
|
20
20
|
generateSeed,
|
21
|
-
verify,
|
22
21
|
sign,
|
23
22
|
} from 'ripple-keypairs'
|
24
23
|
|
@@ -26,15 +25,28 @@ import ECDSA from '../ECDSA'
|
|
26
25
|
import { ValidationError } from '../errors'
|
27
26
|
import { Transaction, validate } from '../models/transactions'
|
28
27
|
import { ensureClassicAddress } from '../sugar/utils'
|
28
|
+
import { omitBy } from '../utils/collections'
|
29
29
|
import { hashSignedTx } from '../utils/hashes/hashLedger'
|
30
30
|
|
31
31
|
import { rfc1751MnemonicToKey } from './rfc1751'
|
32
|
+
import { verifySignature } from './signer'
|
32
33
|
|
33
34
|
const DEFAULT_ALGORITHM: ECDSA = ECDSA.ed25519
|
34
35
|
const DEFAULT_DERIVATION_PATH = "m/44'/144'/0'/0/0"
|
35
36
|
|
36
|
-
|
37
|
-
|
37
|
+
type ValidHDKey = HDKey & {
|
38
|
+
privateKey: Uint8Array
|
39
|
+
publicKey: Uint8Array
|
40
|
+
}
|
41
|
+
|
42
|
+
function validateKey(node: HDKey): asserts node is ValidHDKey {
|
43
|
+
if (!(node.privateKey instanceof Uint8Array)) {
|
44
|
+
throw new ValidationError('Unable to derive privateKey from mnemonic input')
|
45
|
+
}
|
46
|
+
|
47
|
+
if (!(node.publicKey instanceof Uint8Array)) {
|
48
|
+
throw new ValidationError('Unable to derive publicKey from mnemonic input')
|
49
|
+
}
|
38
50
|
}
|
39
51
|
|
40
52
|
/**
|
@@ -137,7 +149,7 @@ export class Wallet {
|
|
137
149
|
throw new ValidationError('Invalid cryptographic signing algorithm')
|
138
150
|
}
|
139
151
|
const seed = generateSeed({ algorithm })
|
140
|
-
return Wallet.fromSeed(seed)
|
152
|
+
return Wallet.fromSeed(seed, { algorithm })
|
141
153
|
}
|
142
154
|
|
143
155
|
/**
|
@@ -232,25 +244,21 @@ export class Wallet {
|
|
232
244
|
})
|
233
245
|
}
|
234
246
|
// Otherwise decode using bip39's mnemonic standard
|
235
|
-
if (!validateMnemonic(mnemonic)) {
|
247
|
+
if (!validateMnemonic(mnemonic, wordlist)) {
|
236
248
|
throw new ValidationError(
|
237
249
|
'Unable to parse the given mnemonic using bip39 encoding',
|
238
250
|
)
|
239
251
|
}
|
240
252
|
|
241
253
|
const seed = mnemonicToSeedSync(mnemonic)
|
242
|
-
const masterNode =
|
243
|
-
const node = masterNode.
|
254
|
+
const masterNode = HDKey.fromMasterSeed(seed)
|
255
|
+
const node = masterNode.derive(
|
244
256
|
opts.derivationPath ?? DEFAULT_DERIVATION_PATH,
|
245
257
|
)
|
246
|
-
|
247
|
-
throw new ValidationError(
|
248
|
-
'Unable to derive privateKey from mnemonic input',
|
249
|
-
)
|
250
|
-
}
|
258
|
+
validateKey(node)
|
251
259
|
|
252
|
-
const publicKey =
|
253
|
-
const privateKey =
|
260
|
+
const publicKey = bytesToHex(node.publicKey)
|
261
|
+
const privateKey = bytesToHex(node.privateKey)
|
254
262
|
return new Wallet(publicKey, `00${privateKey}`, {
|
255
263
|
masterAddress: opts.masterAddress,
|
256
264
|
})
|
@@ -434,15 +442,10 @@ export class Wallet {
|
|
434
442
|
*
|
435
443
|
* @param signedTransaction - A signed transaction (hex string of signTransaction result) to be verified offline.
|
436
444
|
* @returns Returns true if a signedTransaction is valid.
|
445
|
+
* @throws {Error} Transaction is missing a signature, TxnSignature
|
437
446
|
*/
|
438
447
|
public verifyTransaction(signedTransaction: Transaction | string): boolean {
|
439
|
-
|
440
|
-
typeof signedTransaction === 'string'
|
441
|
-
? decode(signedTransaction)
|
442
|
-
: signedTransaction
|
443
|
-
const messageHex: string = encodeForSigning(tx)
|
444
|
-
const signature = tx.TxnSignature
|
445
|
-
return verify(messageHex, signature, this.publicKey)
|
448
|
+
return verifySignature(signedTransaction, this.publicKey)
|
446
449
|
}
|
447
450
|
|
448
451
|
/**
|
package/src/Wallet/signer.ts
CHANGED
@@ -1,20 +1,12 @@
|
|
1
1
|
import { BigNumber } from 'bignumber.js'
|
2
|
-
import { flatMap } from 'lodash'
|
3
2
|
import { decodeAccountID } from 'ripple-address-codec'
|
4
|
-
import {
|
5
|
-
|
6
|
-
encode,
|
7
|
-
encodeForSigning,
|
8
|
-
encodeForSigningClaim,
|
9
|
-
} from 'ripple-binary-codec'
|
10
|
-
import { sign as signWithKeypair, verify } from 'ripple-keypairs'
|
3
|
+
import { decode, encode, encodeForSigning } from 'ripple-binary-codec'
|
4
|
+
import { verify } from 'ripple-keypairs'
|
11
5
|
|
12
6
|
import { ValidationError } from '../errors'
|
13
7
|
import { Signer } from '../models/common'
|
14
8
|
import { Transaction, validate } from '../models/transactions'
|
15
9
|
|
16
|
-
import { Wallet } from '.'
|
17
|
-
|
18
10
|
/**
|
19
11
|
* Takes several transactions with Signer fields (in object or blob form) and creates a
|
20
12
|
* single transaction with all Signers that then gets signed and returned.
|
@@ -62,42 +54,40 @@ function multisign(transactions: Array<Transaction | string>): string {
|
|
62
54
|
return encode(getTransactionWithAllSigners(decodedTransactions))
|
63
55
|
}
|
64
56
|
|
65
|
-
/**
|
66
|
-
* Creates a signature that can be used to redeem a specific amount of XRP from a payment channel.
|
67
|
-
*
|
68
|
-
* @param wallet - The account that will sign for this payment channel.
|
69
|
-
* @param channelId - An id for the payment channel to redeem XRP from.
|
70
|
-
* @param amount - The amount in drops to redeem.
|
71
|
-
* @returns A signature that can be used to redeem a specific amount of XRP from a payment channel.
|
72
|
-
* @category Utilities
|
73
|
-
*/
|
74
|
-
function authorizeChannel(
|
75
|
-
wallet: Wallet,
|
76
|
-
channelId: string,
|
77
|
-
amount: string,
|
78
|
-
): string {
|
79
|
-
const signingData = encodeForSigningClaim({
|
80
|
-
channel: channelId,
|
81
|
-
amount,
|
82
|
-
})
|
83
|
-
|
84
|
-
return signWithKeypair(signingData, wallet.privateKey)
|
85
|
-
}
|
86
|
-
|
87
57
|
/**
|
88
58
|
* Verifies that the given transaction has a valid signature based on public-key encryption.
|
89
59
|
*
|
90
60
|
* @param tx - A transaction to verify the signature of. (Can be in object or encoded string format).
|
61
|
+
* @param [publicKey] Specific public key to use to verify. If not specified the `SigningPublicKey` of tx will be used.
|
91
62
|
* @returns Returns true if tx has a valid signature, and returns false otherwise.
|
63
|
+
* @throws Error when transaction is missing TxnSignature
|
64
|
+
* @throws Error when publicKey is not provided and transaction is missing SigningPubKey
|
92
65
|
* @category Utilities
|
93
66
|
*/
|
94
|
-
function verifySignature(
|
67
|
+
function verifySignature(
|
68
|
+
tx: Transaction | string,
|
69
|
+
publicKey?: string,
|
70
|
+
): boolean {
|
95
71
|
const decodedTx: Transaction = getDecodedTransaction(tx)
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
72
|
+
let key = publicKey
|
73
|
+
|
74
|
+
// Need a SignedTransaction class where TxnSignature is not optional.
|
75
|
+
if (typeof decodedTx.TxnSignature !== 'string' || !decodedTx.TxnSignature) {
|
76
|
+
throw new Error('Transaction is missing a signature, TxnSignature')
|
77
|
+
}
|
78
|
+
|
79
|
+
if (!key) {
|
80
|
+
// Need a SignedTransaction class where TxnSignature is not optional.
|
81
|
+
if (
|
82
|
+
typeof decodedTx.SigningPubKey !== 'string' ||
|
83
|
+
!decodedTx.SigningPubKey
|
84
|
+
) {
|
85
|
+
throw new Error('Transaction is missing a public key, SigningPubKey')
|
86
|
+
}
|
87
|
+
key = decodedTx.SigningPubKey
|
88
|
+
}
|
89
|
+
|
90
|
+
return verify(encodeForSigning(decodedTx), decodedTx.TxnSignature, key)
|
101
91
|
}
|
102
92
|
|
103
93
|
/**
|
@@ -128,10 +118,9 @@ function getTransactionWithAllSigners(
|
|
128
118
|
transactions: Transaction[],
|
129
119
|
): Transaction {
|
130
120
|
// Signers must be sorted in the combined transaction - See compareSigners' documentation for more details
|
131
|
-
const sortedSigners: Signer[] =
|
132
|
-
|
133
|
-
(
|
134
|
-
).sort(compareSigners)
|
121
|
+
const sortedSigners: Signer[] = transactions
|
122
|
+
.flatMap((tx) => tx.Signers ?? [])
|
123
|
+
.sort(compareSigners)
|
135
124
|
|
136
125
|
return { ...transactions[0], Signers: sortedSigners }
|
137
126
|
}
|
@@ -170,4 +159,4 @@ function getDecodedTransaction(txOrBlob: Transaction | string): Transaction {
|
|
170
159
|
return decode(txOrBlob) as unknown as Transaction
|
171
160
|
}
|
172
161
|
|
173
|
-
export {
|
162
|
+
export { verifySignature, multisign }
|
@@ -4,9 +4,15 @@ import {
|
|
4
4
|
TimeoutError,
|
5
5
|
XrplError,
|
6
6
|
} from '../errors'
|
7
|
-
import { Response } from '../models/methods'
|
7
|
+
import { Response, RequestResponseMap } from '../models/methods'
|
8
8
|
import { BaseRequest, ErrorResponse } from '../models/methods/baseMethod'
|
9
9
|
|
10
|
+
interface PromiseEntry<T> {
|
11
|
+
resolve: (value: T | PromiseLike<T>) => void
|
12
|
+
reject: (value: Error) => void
|
13
|
+
timer: ReturnType<typeof setTimeout>
|
14
|
+
}
|
15
|
+
|
10
16
|
/**
|
11
17
|
* Manage all the requests made to the websocket, and their async responses
|
12
18
|
* that come in from the WebSocket. Responses come in over the WS connection
|
@@ -17,13 +23,31 @@ export default class RequestManager {
|
|
17
23
|
private nextId = 0
|
18
24
|
private readonly promisesAwaitingResponse = new Map<
|
19
25
|
string | number,
|
20
|
-
|
21
|
-
|
22
|
-
reject: (value: Error) => void
|
23
|
-
timer: ReturnType<typeof setTimeout>
|
24
|
-
}
|
26
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- Necessary and typed wrapper in addPromise method
|
27
|
+
PromiseEntry<any>
|
25
28
|
>()
|
26
29
|
|
30
|
+
/**
|
31
|
+
* Adds a promise to the collection of promises awaiting response. Handles typing with generics.
|
32
|
+
*
|
33
|
+
* @template T The generic type parameter representing the resolved value type.
|
34
|
+
* @param newId - The identifier for the new promise.
|
35
|
+
* @param timer - The timer associated with the promise.
|
36
|
+
* @returns A promise that resolves to the specified generic type.
|
37
|
+
*/
|
38
|
+
public async addPromise<R extends BaseRequest, T = RequestResponseMap<R>>(
|
39
|
+
newId: string | number,
|
40
|
+
timer: ReturnType<typeof setTimeout>,
|
41
|
+
): Promise<T> {
|
42
|
+
return new Promise<T>((resolve, reject) => {
|
43
|
+
this.promisesAwaitingResponse.set(newId, {
|
44
|
+
resolve,
|
45
|
+
reject,
|
46
|
+
timer,
|
47
|
+
})
|
48
|
+
})
|
49
|
+
}
|
50
|
+
|
27
51
|
/**
|
28
52
|
* Successfully resolves a request.
|
29
53
|
*
|
@@ -87,10 +111,10 @@ export default class RequestManager {
|
|
87
111
|
* @returns Request ID, new request form, and the promise for resolving the request.
|
88
112
|
* @throws XrplError if request with the same ID is already pending.
|
89
113
|
*/
|
90
|
-
public createRequest<
|
91
|
-
request:
|
114
|
+
public createRequest<R extends BaseRequest, T = RequestResponseMap<R>>(
|
115
|
+
request: R,
|
92
116
|
timeout: number,
|
93
|
-
): [string | number, string, Promise<
|
117
|
+
): [string | number, string, Promise<T>] {
|
94
118
|
let newId: string | number
|
95
119
|
if (request.id == null) {
|
96
120
|
newId = this.nextId
|
@@ -129,11 +153,13 @@ export default class RequestManager {
|
|
129
153
|
request,
|
130
154
|
)
|
131
155
|
}
|
132
|
-
const newPromise = new Promise<
|
133
|
-
(
|
134
|
-
|
135
|
-
|
136
|
-
|
156
|
+
const newPromise = new Promise<T>((resolve, reject) => {
|
157
|
+
this.promisesAwaitingResponse.set(newId, {
|
158
|
+
resolve,
|
159
|
+
reject,
|
160
|
+
timer,
|
161
|
+
})
|
162
|
+
})
|
137
163
|
|
138
164
|
return [newId, newRequest, newPromise]
|
139
165
|
}
|
package/src/client/connection.ts
CHANGED
@@ -1,9 +1,8 @@
|
|
1
1
|
/* eslint-disable max-lines -- Connection is a large file w/ lots of imports/exports */
|
2
|
-
import {
|
3
|
-
import { Agent } from 'http'
|
2
|
+
import type { Agent } from 'http'
|
4
3
|
|
5
|
-
import
|
6
|
-
import
|
4
|
+
import WebSocket, { ClientOptions } from '@xrplf/isomorphic/ws'
|
5
|
+
import { EventEmitter } from 'eventemitter3'
|
7
6
|
|
8
7
|
import {
|
9
8
|
DisconnectedError,
|
@@ -11,6 +10,7 @@ import {
|
|
11
10
|
ConnectionError,
|
12
11
|
XrplError,
|
13
12
|
} from '../errors'
|
13
|
+
import type { RequestResponseMap } from '../models'
|
14
14
|
import { BaseRequest } from '../models/methods/baseMethod'
|
15
15
|
|
16
16
|
import ConnectionManager from './ConnectionManager'
|
@@ -26,17 +26,11 @@ const CONNECTION_TIMEOUT = 5
|
|
26
26
|
*/
|
27
27
|
interface ConnectionOptions {
|
28
28
|
trace?: boolean | ((id: string, message: string) => void)
|
29
|
-
|
30
|
-
|
29
|
+
headers?: { [key: string]: string }
|
30
|
+
agent?: Agent
|
31
31
|
authorization?: string
|
32
|
-
trustedCertificates?: string[]
|
33
|
-
key?: string
|
34
|
-
passphrase?: string
|
35
|
-
certificate?: string
|
36
|
-
// request timeout
|
37
|
-
timeout: number
|
38
32
|
connectionTimeout: number
|
39
|
-
|
33
|
+
timeout: number
|
40
34
|
}
|
41
35
|
|
42
36
|
/**
|
@@ -55,52 +49,6 @@ export const INTENTIONAL_DISCONNECT_CODE = 4000
|
|
55
49
|
|
56
50
|
type WebsocketState = 0 | 1 | 2 | 3
|
57
51
|
|
58
|
-
function getAgent(url: string, config: ConnectionOptions): Agent | undefined {
|
59
|
-
if (config.proxy == null) {
|
60
|
-
return undefined
|
61
|
-
}
|
62
|
-
|
63
|
-
const parsedURL = new URL(url)
|
64
|
-
const parsedProxyURL = new URL(config.proxy)
|
65
|
-
|
66
|
-
const proxyOptions = omitBy(
|
67
|
-
{
|
68
|
-
secureEndpoint: parsedURL.protocol === 'wss:',
|
69
|
-
secureProxy: parsedProxyURL.protocol === 'https:',
|
70
|
-
auth: config.proxyAuthorization,
|
71
|
-
ca: config.trustedCertificates,
|
72
|
-
key: config.key,
|
73
|
-
passphrase: config.passphrase,
|
74
|
-
cert: config.certificate,
|
75
|
-
href: parsedProxyURL.href,
|
76
|
-
origin: parsedProxyURL.origin,
|
77
|
-
protocol: parsedProxyURL.protocol,
|
78
|
-
username: parsedProxyURL.username,
|
79
|
-
password: parsedProxyURL.password,
|
80
|
-
host: parsedProxyURL.host,
|
81
|
-
hostname: parsedProxyURL.hostname,
|
82
|
-
port: parsedProxyURL.port,
|
83
|
-
pathname: parsedProxyURL.pathname,
|
84
|
-
search: parsedProxyURL.search,
|
85
|
-
hash: parsedProxyURL.hash,
|
86
|
-
},
|
87
|
-
(value) => value == null,
|
88
|
-
)
|
89
|
-
|
90
|
-
let HttpsProxyAgent: new (opt: typeof proxyOptions) => Agent
|
91
|
-
try {
|
92
|
-
/* eslint-disable @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-require-imports,
|
93
|
-
node/global-require, global-require, -- Necessary for the `require` */
|
94
|
-
HttpsProxyAgent = require('https-proxy-agent')
|
95
|
-
/* eslint-enable @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-require-imports,
|
96
|
-
node/global-require, global-require, */
|
97
|
-
} catch (_error) {
|
98
|
-
throw new Error('"proxy" option is not supported in the browser')
|
99
|
-
}
|
100
|
-
|
101
|
-
return new HttpsProxyAgent(proxyOptions)
|
102
|
-
}
|
103
|
-
|
104
52
|
/**
|
105
53
|
* Create a new websocket given your URL and optional proxy/certificate
|
106
54
|
* configuration.
|
@@ -113,8 +61,9 @@ function createWebSocket(
|
|
113
61
|
url: string,
|
114
62
|
config: ConnectionOptions,
|
115
63
|
): WebSocket | null {
|
116
|
-
const options:
|
117
|
-
|
64
|
+
const options: ClientOptions = {
|
65
|
+
agent: config.agent,
|
66
|
+
}
|
118
67
|
if (config.headers) {
|
119
68
|
options.headers = config.headers
|
120
69
|
}
|
@@ -125,25 +74,8 @@ function createWebSocket(
|
|
125
74
|
Authorization: `Basic ${base64}`,
|
126
75
|
}
|
127
76
|
}
|
128
|
-
const
|
129
|
-
|
130
|
-
ca: config.trustedCertificates,
|
131
|
-
key: config.key,
|
132
|
-
passphrase: config.passphrase,
|
133
|
-
cert: config.certificate,
|
134
|
-
},
|
135
|
-
(value) => value == null,
|
136
|
-
)
|
137
|
-
const websocketOptions = { ...options, ...optionsOverrides }
|
138
|
-
const websocket = new WebSocket(url, websocketOptions)
|
139
|
-
/*
|
140
|
-
* we will have a listener for each outstanding request,
|
141
|
-
* so we have to raise the limit (the default is 10)
|
142
|
-
*/
|
143
|
-
if (typeof websocket.setMaxListeners === 'function') {
|
144
|
-
websocket.setMaxListeners(Infinity)
|
145
|
-
}
|
146
|
-
return websocket
|
77
|
+
const websocketOptions = { ...options }
|
78
|
+
return new WebSocket(url, websocketOptions)
|
147
79
|
}
|
148
80
|
|
149
81
|
/**
|
@@ -177,7 +109,7 @@ export class Connection extends EventEmitter {
|
|
177
109
|
private ws: WebSocket | null = null
|
178
110
|
// Typing necessary for Jest tests running in browser
|
179
111
|
private reconnectTimeoutID: null | ReturnType<typeof setTimeout> = null
|
180
|
-
// Typing necessary for Jest
|
112
|
+
// Typing necessary for Jest tests running in browser
|
181
113
|
private heartbeatIntervalID: null | ReturnType<typeof setTimeout> = null
|
182
114
|
private readonly retryConnectionBackoff = new ExponentialBackoff({
|
183
115
|
min: 100,
|
@@ -196,7 +128,6 @@ export class Connection extends EventEmitter {
|
|
196
128
|
*/
|
197
129
|
public constructor(url?: string, options: ConnectionUserOptions = {}) {
|
198
130
|
super()
|
199
|
-
this.setMaxListeners(Infinity)
|
200
131
|
this.url = url
|
201
132
|
this.config = {
|
202
133
|
timeout: TIMEOUT * 1000,
|
@@ -356,17 +287,17 @@ export class Connection extends EventEmitter {
|
|
356
287
|
* @returns The response from the rippled server.
|
357
288
|
* @throws NotConnectedError if the Connection isn't connected to a server.
|
358
289
|
*/
|
359
|
-
public async request<
|
360
|
-
request:
|
290
|
+
public async request<R extends BaseRequest, T = RequestResponseMap<R>>(
|
291
|
+
request: R,
|
361
292
|
timeout?: number,
|
362
|
-
): Promise<
|
293
|
+
): Promise<T> {
|
363
294
|
if (!this.shouldBeConnected || this.ws == null) {
|
364
295
|
throw new NotConnectedError(JSON.stringify(request), request)
|
365
296
|
}
|
366
|
-
const [id, message, responsePromise] = this.requestManager.createRequest
|
367
|
-
|
368
|
-
|
369
|
-
)
|
297
|
+
const [id, message, responsePromise] = this.requestManager.createRequest<
|
298
|
+
R,
|
299
|
+
T
|
300
|
+
>(request, timeout ?? this.config.timeout)
|
370
301
|
this.trace('send', message)
|
371
302
|
websocketSendAsync(this.ws, message).catch((error) => {
|
372
303
|
this.requestManager.reject(id, error)
|