xrpl 4.3.0-smartescrow.3 → 4.4.0-smartescrow.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 +2 -2
- package/build/xrpl-latest-min.js +3 -0
- package/build/xrpl-latest-min.js.map +1 -0
- package/build/xrpl-latest.js +1457 -1505
- package/build/xrpl-latest.js.map +1 -1
- package/dist/npm/Wallet/batchSigner.d.ts +8 -0
- package/dist/npm/Wallet/batchSigner.d.ts.map +1 -0
- package/dist/npm/Wallet/batchSigner.js +111 -0
- package/dist/npm/Wallet/batchSigner.js.map +1 -0
- package/dist/npm/Wallet/defaultFaucets.d.ts +3 -2
- package/dist/npm/Wallet/defaultFaucets.d.ts.map +1 -1
- package/dist/npm/Wallet/defaultFaucets.js +16 -15
- package/dist/npm/Wallet/defaultFaucets.js.map +1 -1
- package/dist/npm/Wallet/fundWallet.d.ts.map +1 -1
- package/dist/npm/Wallet/fundWallet.js +8 -16
- 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 +10 -4
- package/dist/npm/Wallet/index.js.map +1 -1
- package/dist/npm/Wallet/signer.d.ts.map +1 -1
- package/dist/npm/Wallet/signer.js +4 -20
- package/dist/npm/Wallet/signer.js.map +1 -1
- package/dist/npm/Wallet/utils.d.ts +9 -0
- package/dist/npm/Wallet/utils.d.ts.map +1 -0
- package/dist/npm/Wallet/utils.js +28 -0
- package/dist/npm/Wallet/utils.js.map +1 -0
- package/dist/npm/client/RequestManager.d.ts.map +1 -1
- package/dist/npm/client/RequestManager.js +3 -3
- package/dist/npm/client/RequestManager.js.map +1 -1
- package/dist/npm/client/connection.d.ts.map +1 -1
- package/dist/npm/client/connection.js.map +1 -1
- package/dist/npm/client/index.d.ts +3 -3
- package/dist/npm/client/index.d.ts.map +1 -1
- package/dist/npm/client/index.js +14 -14
- package/dist/npm/client/index.js.map +1 -1
- package/dist/npm/client/partialPayment.d.ts.map +1 -1
- package/dist/npm/client/partialPayment.js +2 -2
- package/dist/npm/client/partialPayment.js.map +1 -1
- package/dist/npm/models/common/index.d.ts +1 -0
- package/dist/npm/models/common/index.d.ts.map +1 -1
- package/dist/npm/models/ledger/AccountRoot.d.ts +1 -1
- package/dist/npm/models/ledger/AccountRoot.d.ts.map +1 -1
- package/dist/npm/models/ledger/Credential.d.ts +2 -2
- package/dist/npm/models/ledger/Credential.d.ts.map +1 -1
- package/dist/npm/models/ledger/LedgerEntry.d.ts +3 -2
- package/dist/npm/models/ledger/LedgerEntry.d.ts.map +1 -1
- package/dist/npm/models/ledger/Vault.d.ts +21 -0
- package/dist/npm/models/ledger/Vault.d.ts.map +1 -0
- package/dist/npm/models/ledger/Vault.js +3 -0
- package/dist/npm/models/ledger/Vault.js.map +1 -0
- package/dist/npm/models/ledger/XChainOwnedClaimID.d.ts +1 -2
- package/dist/npm/models/ledger/XChainOwnedClaimID.d.ts.map +1 -1
- package/dist/npm/models/ledger/index.d.ts +2 -1
- 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/baseMethod.d.ts +1 -0
- package/dist/npm/models/methods/baseMethod.d.ts.map +1 -1
- package/dist/npm/models/methods/index.d.ts +5 -4
- package/dist/npm/models/methods/index.d.ts.map +1 -1
- package/dist/npm/models/methods/vaultInfo.d.ts +46 -0
- package/dist/npm/models/methods/vaultInfo.d.ts.map +1 -0
- package/dist/npm/models/methods/vaultInfo.js +3 -0
- package/dist/npm/models/methods/vaultInfo.js.map +1 -0
- package/dist/npm/models/transactions/AMMBid.d.ts.map +1 -1
- package/dist/npm/models/transactions/AMMBid.js +7 -5
- package/dist/npm/models/transactions/AMMBid.js.map +1 -1
- package/dist/npm/models/transactions/AMMClawback.d.ts +2 -2
- package/dist/npm/models/transactions/AMMClawback.d.ts.map +1 -1
- package/dist/npm/models/transactions/AMMClawback.js +5 -6
- package/dist/npm/models/transactions/AMMClawback.js.map +1 -1
- package/dist/npm/models/transactions/AMMDelete.d.ts.map +1 -1
- package/dist/npm/models/transactions/AMMDelete.js +2 -2
- package/dist/npm/models/transactions/AMMDelete.js.map +1 -1
- package/dist/npm/models/transactions/AMMDeposit.d.ts +2 -2
- package/dist/npm/models/transactions/AMMDeposit.d.ts.map +1 -1
- package/dist/npm/models/transactions/AMMDeposit.js +3 -3
- package/dist/npm/models/transactions/AMMDeposit.js.map +1 -1
- package/dist/npm/models/transactions/AMMVote.d.ts.map +1 -1
- package/dist/npm/models/transactions/AMMVote.js +2 -2
- package/dist/npm/models/transactions/AMMVote.js.map +1 -1
- package/dist/npm/models/transactions/AMMWithdraw.d.ts +2 -2
- package/dist/npm/models/transactions/AMMWithdraw.d.ts.map +1 -1
- package/dist/npm/models/transactions/AMMWithdraw.js +3 -3
- package/dist/npm/models/transactions/AMMWithdraw.js.map +1 -1
- package/dist/npm/models/transactions/MPTokenAuthorize.d.ts +2 -2
- package/dist/npm/models/transactions/MPTokenAuthorize.d.ts.map +1 -1
- package/dist/npm/models/transactions/MPTokenIssuanceCreate.d.ts +2 -2
- package/dist/npm/models/transactions/MPTokenIssuanceCreate.d.ts.map +1 -1
- package/dist/npm/models/transactions/MPTokenIssuanceCreate.js +3 -3
- package/dist/npm/models/transactions/MPTokenIssuanceCreate.js.map +1 -1
- package/dist/npm/models/transactions/MPTokenIssuanceSet.d.ts +2 -2
- package/dist/npm/models/transactions/MPTokenIssuanceSet.d.ts.map +1 -1
- package/dist/npm/models/transactions/MPTokenIssuanceSet.js +4 -4
- package/dist/npm/models/transactions/MPTokenIssuanceSet.js.map +1 -1
- package/dist/npm/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
- package/dist/npm/models/transactions/NFTokenCancelOffer.js +1 -1
- package/dist/npm/models/transactions/NFTokenCancelOffer.js.map +1 -1
- package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts +2 -2
- package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
- package/dist/npm/models/transactions/NFTokenCreateOffer.js +6 -2
- package/dist/npm/models/transactions/NFTokenCreateOffer.js.map +1 -1
- package/dist/npm/models/transactions/NFTokenMint.d.ts +2 -2
- package/dist/npm/models/transactions/NFTokenMint.d.ts.map +1 -1
- package/dist/npm/models/transactions/XChainAddAccountCreateAttestation.js.map +1 -1
- package/dist/npm/models/transactions/XChainAddClaimAttestation.js.map +1 -1
- package/dist/npm/models/transactions/XChainClaim.js.map +1 -1
- package/dist/npm/models/transactions/XChainCommit.js.map +1 -1
- package/dist/npm/models/transactions/XChainModifyBridge.d.ts +2 -2
- package/dist/npm/models/transactions/XChainModifyBridge.d.ts.map +1 -1
- package/dist/npm/models/transactions/accountDelete.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/npm/models/transactions/batch.d.ts +39 -0
- package/dist/npm/models/transactions/batch.d.ts.map +1 -0
- package/dist/npm/models/transactions/batch.js +64 -0
- package/dist/npm/models/transactions/batch.js.map +1 -0
- package/dist/npm/models/transactions/checkCreate.d.ts.map +1 -1
- package/dist/npm/models/transactions/checkCreate.js +1 -2
- package/dist/npm/models/transactions/checkCreate.js.map +1 -1
- package/dist/npm/models/transactions/clawback.d.ts +2 -2
- package/dist/npm/models/transactions/clawback.d.ts.map +1 -1
- package/dist/npm/models/transactions/clawback.js +4 -6
- package/dist/npm/models/transactions/clawback.js.map +1 -1
- package/dist/npm/models/transactions/common.d.ts +30 -9
- package/dist/npm/models/transactions/common.d.ts.map +1 -1
- package/dist/npm/models/transactions/common.js +74 -36
- package/dist/npm/models/transactions/common.js.map +1 -1
- package/dist/npm/models/transactions/delegateSet.d.ts.map +1 -1
- package/dist/npm/models/transactions/delegateSet.js +1 -0
- package/dist/npm/models/transactions/delegateSet.js.map +1 -1
- package/dist/npm/models/transactions/depositPreauth.d.ts.map +1 -1
- package/dist/npm/models/transactions/depositPreauth.js.map +1 -1
- package/dist/npm/models/transactions/escrowFinish.d.ts.map +1 -1
- package/dist/npm/models/transactions/escrowFinish.js.map +1 -1
- package/dist/npm/models/transactions/index.d.ts +9 -2
- package/dist/npm/models/transactions/index.d.ts.map +1 -1
- package/dist/npm/models/transactions/index.js +4 -1
- package/dist/npm/models/transactions/index.js.map +1 -1
- package/dist/npm/models/transactions/metadata.d.ts +1 -0
- package/dist/npm/models/transactions/metadata.d.ts.map +1 -1
- package/dist/npm/models/transactions/offerCreate.d.ts +2 -2
- package/dist/npm/models/transactions/offerCreate.d.ts.map +1 -1
- package/dist/npm/models/transactions/oracleSet.d.ts.map +1 -1
- package/dist/npm/models/transactions/oracleSet.js +22 -21
- package/dist/npm/models/transactions/oracleSet.js.map +1 -1
- package/dist/npm/models/transactions/payment.d.ts +3 -2
- package/dist/npm/models/transactions/payment.d.ts.map +1 -1
- package/dist/npm/models/transactions/payment.js +9 -4
- package/dist/npm/models/transactions/payment.js.map +1 -1
- package/dist/npm/models/transactions/paymentChannelClaim.d.ts +2 -2
- package/dist/npm/models/transactions/paymentChannelClaim.d.ts.map +1 -1
- package/dist/npm/models/transactions/paymentChannelClaim.js.map +1 -1
- package/dist/npm/models/transactions/permissionedDomainSet.d.ts.map +1 -1
- package/dist/npm/models/transactions/permissionedDomainSet.js +1 -1
- package/dist/npm/models/transactions/permissionedDomainSet.js.map +1 -1
- package/dist/npm/models/transactions/signerListSet.d.ts.map +1 -1
- package/dist/npm/models/transactions/signerListSet.js +10 -16
- package/dist/npm/models/transactions/signerListSet.js.map +1 -1
- package/dist/npm/models/transactions/transaction.d.ts +8 -1
- package/dist/npm/models/transactions/transaction.d.ts.map +1 -1
- package/dist/npm/models/transactions/transaction.js +35 -35
- package/dist/npm/models/transactions/transaction.js.map +1 -1
- package/dist/npm/models/transactions/trustSet.d.ts +2 -2
- package/dist/npm/models/transactions/trustSet.d.ts.map +1 -1
- package/dist/npm/models/transactions/vaultClawback.d.ts +10 -0
- package/dist/npm/models/transactions/vaultClawback.d.ts.map +1 -0
- package/dist/npm/models/transactions/vaultClawback.js +12 -0
- package/dist/npm/models/transactions/vaultClawback.js.map +1 -0
- package/dist/npm/models/transactions/vaultCreate.d.ts +24 -0
- package/dist/npm/models/transactions/vaultCreate.d.ts.map +1 -0
- package/dist/npm/models/transactions/vaultCreate.js +51 -0
- package/dist/npm/models/transactions/vaultCreate.js.map +1 -0
- package/dist/npm/models/transactions/vaultDelete.d.ts +7 -0
- package/dist/npm/models/transactions/vaultDelete.d.ts.map +1 -0
- package/dist/npm/models/transactions/vaultDelete.js +10 -0
- package/dist/npm/models/transactions/vaultDelete.js.map +1 -0
- package/dist/npm/models/transactions/vaultDeposit.d.ts +9 -0
- package/dist/npm/models/transactions/vaultDeposit.d.ts.map +1 -0
- package/dist/npm/models/transactions/vaultDeposit.js +11 -0
- package/dist/npm/models/transactions/vaultDeposit.js.map +1 -0
- package/dist/npm/models/transactions/vaultSet.d.ts +10 -0
- package/dist/npm/models/transactions/vaultSet.d.ts.map +1 -0
- package/dist/npm/models/transactions/vaultSet.js +25 -0
- package/dist/npm/models/transactions/vaultSet.js.map +1 -0
- package/dist/npm/models/transactions/vaultWithdraw.d.ts +10 -0
- package/dist/npm/models/transactions/vaultWithdraw.d.ts.map +1 -0
- package/dist/npm/models/transactions/vaultWithdraw.js +12 -0
- package/dist/npm/models/transactions/vaultWithdraw.js.map +1 -0
- package/dist/npm/models/utils/flags.d.ts.map +1 -1
- package/dist/npm/models/utils/flags.js +26 -9
- package/dist/npm/models/utils/flags.js.map +1 -1
- package/dist/npm/models/utils/index.d.ts +2 -0
- package/dist/npm/models/utils/index.d.ts.map +1 -1
- package/dist/npm/models/utils/index.js +11 -1
- package/dist/npm/models/utils/index.js.map +1 -1
- package/dist/npm/snippets/tsconfig.tsbuildinfo +1 -1
- package/dist/npm/src/Wallet/batchSigner.d.ts +8 -0
- package/dist/npm/src/Wallet/batchSigner.d.ts.map +1 -0
- package/dist/npm/src/Wallet/batchSigner.js +111 -0
- package/dist/npm/src/Wallet/batchSigner.js.map +1 -0
- package/dist/npm/src/Wallet/defaultFaucets.d.ts +3 -2
- package/dist/npm/src/Wallet/defaultFaucets.d.ts.map +1 -1
- package/dist/npm/src/Wallet/defaultFaucets.js +16 -15
- package/dist/npm/src/Wallet/defaultFaucets.js.map +1 -1
- package/dist/npm/src/Wallet/fundWallet.d.ts.map +1 -1
- package/dist/npm/src/Wallet/fundWallet.js +8 -16
- 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 +10 -4
- package/dist/npm/src/Wallet/index.js.map +1 -1
- package/dist/npm/src/Wallet/signer.d.ts.map +1 -1
- package/dist/npm/src/Wallet/signer.js +4 -20
- package/dist/npm/src/Wallet/signer.js.map +1 -1
- package/dist/npm/src/Wallet/utils.d.ts +9 -0
- package/dist/npm/src/Wallet/utils.d.ts.map +1 -0
- package/dist/npm/src/Wallet/utils.js +28 -0
- package/dist/npm/src/Wallet/utils.js.map +1 -0
- package/dist/npm/src/client/RequestManager.d.ts.map +1 -1
- package/dist/npm/src/client/RequestManager.js +3 -3
- package/dist/npm/src/client/RequestManager.js.map +1 -1
- package/dist/npm/src/client/connection.d.ts.map +1 -1
- package/dist/npm/src/client/connection.js.map +1 -1
- package/dist/npm/src/client/index.d.ts +3 -3
- package/dist/npm/src/client/index.d.ts.map +1 -1
- package/dist/npm/src/client/index.js +14 -14
- package/dist/npm/src/client/index.js.map +1 -1
- package/dist/npm/src/client/partialPayment.d.ts.map +1 -1
- package/dist/npm/src/client/partialPayment.js +2 -2
- package/dist/npm/src/client/partialPayment.js.map +1 -1
- package/dist/npm/src/models/common/index.d.ts +1 -0
- package/dist/npm/src/models/common/index.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/AccountRoot.d.ts +1 -1
- package/dist/npm/src/models/ledger/AccountRoot.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/Credential.d.ts +2 -2
- package/dist/npm/src/models/ledger/Credential.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/LedgerEntry.d.ts +3 -2
- package/dist/npm/src/models/ledger/LedgerEntry.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/Vault.d.ts +21 -0
- package/dist/npm/src/models/ledger/Vault.d.ts.map +1 -0
- package/dist/npm/src/models/ledger/Vault.js +3 -0
- package/dist/npm/src/models/ledger/Vault.js.map +1 -0
- package/dist/npm/src/models/ledger/XChainOwnedClaimID.d.ts +1 -2
- package/dist/npm/src/models/ledger/XChainOwnedClaimID.d.ts.map +1 -1
- package/dist/npm/src/models/ledger/index.d.ts +2 -1
- 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/baseMethod.d.ts +1 -0
- package/dist/npm/src/models/methods/baseMethod.d.ts.map +1 -1
- package/dist/npm/src/models/methods/index.d.ts +5 -4
- package/dist/npm/src/models/methods/index.d.ts.map +1 -1
- package/dist/npm/src/models/methods/vaultInfo.d.ts +46 -0
- package/dist/npm/src/models/methods/vaultInfo.d.ts.map +1 -0
- package/dist/npm/src/models/methods/vaultInfo.js +3 -0
- package/dist/npm/src/models/methods/vaultInfo.js.map +1 -0
- package/dist/npm/src/models/transactions/AMMBid.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/AMMBid.js +7 -5
- package/dist/npm/src/models/transactions/AMMBid.js.map +1 -1
- package/dist/npm/src/models/transactions/AMMClawback.d.ts +2 -2
- package/dist/npm/src/models/transactions/AMMClawback.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/AMMClawback.js +5 -6
- package/dist/npm/src/models/transactions/AMMClawback.js.map +1 -1
- package/dist/npm/src/models/transactions/AMMDelete.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/AMMDelete.js +2 -2
- package/dist/npm/src/models/transactions/AMMDelete.js.map +1 -1
- package/dist/npm/src/models/transactions/AMMDeposit.d.ts +2 -2
- package/dist/npm/src/models/transactions/AMMDeposit.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/AMMDeposit.js +3 -3
- package/dist/npm/src/models/transactions/AMMDeposit.js.map +1 -1
- package/dist/npm/src/models/transactions/AMMVote.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/AMMVote.js +2 -2
- package/dist/npm/src/models/transactions/AMMVote.js.map +1 -1
- package/dist/npm/src/models/transactions/AMMWithdraw.d.ts +2 -2
- package/dist/npm/src/models/transactions/AMMWithdraw.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/AMMWithdraw.js +3 -3
- package/dist/npm/src/models/transactions/AMMWithdraw.js.map +1 -1
- package/dist/npm/src/models/transactions/MPTokenAuthorize.d.ts +2 -2
- package/dist/npm/src/models/transactions/MPTokenAuthorize.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.d.ts +2 -2
- package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.js +3 -3
- package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.js.map +1 -1
- package/dist/npm/src/models/transactions/MPTokenIssuanceSet.d.ts +2 -2
- package/dist/npm/src/models/transactions/MPTokenIssuanceSet.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/MPTokenIssuanceSet.js +4 -4
- package/dist/npm/src/models/transactions/MPTokenIssuanceSet.js.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenCancelOffer.js +1 -1
- package/dist/npm/src/models/transactions/NFTokenCancelOffer.js.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts +2 -2
- package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenCreateOffer.js +6 -2
- package/dist/npm/src/models/transactions/NFTokenCreateOffer.js.map +1 -1
- package/dist/npm/src/models/transactions/NFTokenMint.d.ts +2 -2
- package/dist/npm/src/models/transactions/NFTokenMint.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/XChainAddAccountCreateAttestation.js.map +1 -1
- package/dist/npm/src/models/transactions/XChainAddClaimAttestation.js.map +1 -1
- package/dist/npm/src/models/transactions/XChainClaim.js.map +1 -1
- package/dist/npm/src/models/transactions/XChainCommit.js.map +1 -1
- package/dist/npm/src/models/transactions/XChainModifyBridge.d.ts +2 -2
- package/dist/npm/src/models/transactions/XChainModifyBridge.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/accountDelete.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/npm/src/models/transactions/batch.d.ts +39 -0
- package/dist/npm/src/models/transactions/batch.d.ts.map +1 -0
- package/dist/npm/src/models/transactions/batch.js +64 -0
- package/dist/npm/src/models/transactions/batch.js.map +1 -0
- package/dist/npm/src/models/transactions/checkCreate.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/checkCreate.js +1 -2
- package/dist/npm/src/models/transactions/checkCreate.js.map +1 -1
- package/dist/npm/src/models/transactions/clawback.d.ts +2 -2
- package/dist/npm/src/models/transactions/clawback.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/clawback.js +4 -6
- package/dist/npm/src/models/transactions/clawback.js.map +1 -1
- package/dist/npm/src/models/transactions/common.d.ts +30 -9
- package/dist/npm/src/models/transactions/common.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/common.js +74 -36
- package/dist/npm/src/models/transactions/common.js.map +1 -1
- package/dist/npm/src/models/transactions/delegateSet.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/delegateSet.js +1 -0
- package/dist/npm/src/models/transactions/delegateSet.js.map +1 -1
- package/dist/npm/src/models/transactions/depositPreauth.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/depositPreauth.js.map +1 -1
- package/dist/npm/src/models/transactions/escrowFinish.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/escrowFinish.js.map +1 -1
- package/dist/npm/src/models/transactions/index.d.ts +9 -2
- package/dist/npm/src/models/transactions/index.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/index.js +4 -1
- package/dist/npm/src/models/transactions/index.js.map +1 -1
- package/dist/npm/src/models/transactions/metadata.d.ts +1 -0
- package/dist/npm/src/models/transactions/metadata.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/offerCreate.d.ts +2 -2
- package/dist/npm/src/models/transactions/offerCreate.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/oracleSet.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/oracleSet.js +22 -21
- package/dist/npm/src/models/transactions/oracleSet.js.map +1 -1
- package/dist/npm/src/models/transactions/payment.d.ts +3 -2
- package/dist/npm/src/models/transactions/payment.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/payment.js +9 -4
- package/dist/npm/src/models/transactions/payment.js.map +1 -1
- package/dist/npm/src/models/transactions/paymentChannelClaim.d.ts +2 -2
- package/dist/npm/src/models/transactions/paymentChannelClaim.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/paymentChannelClaim.js.map +1 -1
- package/dist/npm/src/models/transactions/permissionedDomainSet.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/permissionedDomainSet.js +1 -1
- package/dist/npm/src/models/transactions/permissionedDomainSet.js.map +1 -1
- package/dist/npm/src/models/transactions/signerListSet.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/signerListSet.js +10 -16
- package/dist/npm/src/models/transactions/signerListSet.js.map +1 -1
- package/dist/npm/src/models/transactions/transaction.d.ts +8 -1
- package/dist/npm/src/models/transactions/transaction.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/transaction.js +35 -35
- package/dist/npm/src/models/transactions/transaction.js.map +1 -1
- package/dist/npm/src/models/transactions/trustSet.d.ts +2 -2
- package/dist/npm/src/models/transactions/trustSet.d.ts.map +1 -1
- package/dist/npm/src/models/transactions/vaultClawback.d.ts +10 -0
- package/dist/npm/src/models/transactions/vaultClawback.d.ts.map +1 -0
- package/dist/npm/src/models/transactions/vaultClawback.js +12 -0
- package/dist/npm/src/models/transactions/vaultClawback.js.map +1 -0
- package/dist/npm/src/models/transactions/vaultCreate.d.ts +24 -0
- package/dist/npm/src/models/transactions/vaultCreate.d.ts.map +1 -0
- package/dist/npm/src/models/transactions/vaultCreate.js +51 -0
- package/dist/npm/src/models/transactions/vaultCreate.js.map +1 -0
- package/dist/npm/src/models/transactions/vaultDelete.d.ts +7 -0
- package/dist/npm/src/models/transactions/vaultDelete.d.ts.map +1 -0
- package/dist/npm/src/models/transactions/vaultDelete.js +10 -0
- package/dist/npm/src/models/transactions/vaultDelete.js.map +1 -0
- package/dist/npm/src/models/transactions/vaultDeposit.d.ts +9 -0
- package/dist/npm/src/models/transactions/vaultDeposit.d.ts.map +1 -0
- package/dist/npm/src/models/transactions/vaultDeposit.js +11 -0
- package/dist/npm/src/models/transactions/vaultDeposit.js.map +1 -0
- package/dist/npm/src/models/transactions/vaultSet.d.ts +10 -0
- package/dist/npm/src/models/transactions/vaultSet.d.ts.map +1 -0
- package/dist/npm/src/models/transactions/vaultSet.js +25 -0
- package/dist/npm/src/models/transactions/vaultSet.js.map +1 -0
- package/dist/npm/src/models/transactions/vaultWithdraw.d.ts +10 -0
- package/dist/npm/src/models/transactions/vaultWithdraw.d.ts.map +1 -0
- package/dist/npm/src/models/transactions/vaultWithdraw.js +12 -0
- package/dist/npm/src/models/transactions/vaultWithdraw.js.map +1 -0
- package/dist/npm/src/models/utils/flags.d.ts.map +1 -1
- package/dist/npm/src/models/utils/flags.js +26 -9
- package/dist/npm/src/models/utils/flags.js.map +1 -1
- package/dist/npm/src/models/utils/index.d.ts +2 -0
- package/dist/npm/src/models/utils/index.d.ts.map +1 -1
- package/dist/npm/src/models/utils/index.js +11 -1
- package/dist/npm/src/models/utils/index.js.map +1 -1
- package/dist/npm/src/sugar/autofill.d.ts +4 -2
- package/dist/npm/src/sugar/autofill.d.ts.map +1 -1
- package/dist/npm/src/sugar/autofill.js +109 -16
- package/dist/npm/src/sugar/autofill.js.map +1 -1
- package/dist/npm/src/sugar/submit.d.ts.map +1 -1
- package/dist/npm/src/sugar/submit.js.map +1 -1
- package/dist/npm/src/utils/hashes/hashLedger.d.ts.map +1 -1
- package/dist/npm/src/utils/hashes/hashLedger.js +4 -1
- package/dist/npm/src/utils/hashes/hashLedger.js.map +1 -1
- package/dist/npm/sugar/autofill.d.ts +4 -2
- package/dist/npm/sugar/autofill.d.ts.map +1 -1
- package/dist/npm/sugar/autofill.js +109 -16
- package/dist/npm/sugar/autofill.js.map +1 -1
- package/dist/npm/sugar/submit.d.ts.map +1 -1
- package/dist/npm/sugar/submit.js.map +1 -1
- package/dist/npm/utils/hashes/hashLedger.d.ts.map +1 -1
- package/dist/npm/utils/hashes/hashLedger.js +4 -1
- package/dist/npm/utils/hashes/hashLedger.js.map +1 -1
- package/package.json +7 -6
- package/src/Wallet/batchSigner.ts +198 -0
- package/src/Wallet/defaultFaucets.ts +20 -18
- package/src/Wallet/fundWallet.ts +17 -28
- package/src/Wallet/index.ts +9 -3
- package/src/Wallet/signer.ts +4 -39
- package/src/Wallet/utils.ts +58 -0
- package/src/client/RequestManager.ts +4 -1
- package/src/client/connection.ts +0 -1
- package/src/client/index.ts +50 -66
- package/src/client/partialPayment.ts +2 -4
- package/src/models/common/index.ts +2 -0
- package/src/models/ledger/AccountRoot.ts +1 -1
- package/src/models/ledger/Credential.ts +2 -2
- package/src/models/ledger/LedgerEntry.ts +3 -0
- package/src/models/ledger/Vault.ts +83 -0
- package/src/models/ledger/XChainOwnedClaimID.ts +1 -3
- package/src/models/ledger/index.ts +3 -1
- package/src/models/methods/baseMethod.ts +1 -0
- package/src/models/methods/index.ts +10 -0
- package/src/models/methods/vaultInfo.ts +193 -0
- package/src/models/transactions/AMMBid.ts +12 -21
- package/src/models/transactions/AMMClawback.ts +10 -13
- package/src/models/transactions/AMMDelete.ts +7 -3
- package/src/models/transactions/AMMDeposit.ts +6 -6
- package/src/models/transactions/AMMVote.ts +7 -3
- package/src/models/transactions/AMMWithdraw.ts +6 -6
- package/src/models/transactions/MPTokenAuthorize.ts +2 -2
- package/src/models/transactions/MPTokenIssuanceCreate.ts +6 -3
- package/src/models/transactions/MPTokenIssuanceSet.ts +3 -3
- package/src/models/transactions/NFTokenCancelOffer.ts +2 -2
- package/src/models/transactions/NFTokenCreateOffer.ts +10 -6
- package/src/models/transactions/NFTokenMint.ts +2 -2
- package/src/models/transactions/XChainAddAccountCreateAttestation.ts +2 -2
- package/src/models/transactions/XChainAddClaimAttestation.ts +2 -2
- package/src/models/transactions/XChainClaim.ts +1 -1
- package/src/models/transactions/XChainCommit.ts +1 -1
- package/src/models/transactions/XChainModifyBridge.ts +2 -2
- package/src/models/transactions/accountDelete.ts +1 -2
- package/src/models/transactions/accountSet.ts +2 -1
- package/src/models/transactions/batch.ts +151 -0
- package/src/models/transactions/checkCreate.ts +2 -6
- package/src/models/transactions/clawback.ts +9 -10
- package/src/models/transactions/common.ts +194 -69
- package/src/models/transactions/delegateSet.ts +1 -0
- package/src/models/transactions/depositPreauth.ts +2 -4
- package/src/models/transactions/escrowFinish.ts +1 -2
- package/src/models/transactions/index.ts +14 -3
- package/src/models/transactions/metadata.ts +2 -0
- package/src/models/transactions/offerCreate.ts +2 -2
- package/src/models/transactions/oracleSet.ts +88 -91
- package/src/models/transactions/payment.ts +21 -13
- package/src/models/transactions/paymentChannelClaim.ts +4 -4
- package/src/models/transactions/permissionedDomainSet.ts +3 -7
- package/src/models/transactions/signerListSet.ts +21 -21
- package/src/models/transactions/transaction.ts +61 -43
- package/src/models/transactions/trustSet.ts +2 -2
- package/src/models/transactions/vaultClawback.ts +55 -0
- package/src/models/transactions/vaultCreate.ts +142 -0
- package/src/models/transactions/vaultDelete.ts +32 -0
- package/src/models/transactions/vaultDeposit.ts +41 -0
- package/src/models/transactions/vaultSet.ts +71 -0
- package/src/models/transactions/vaultWithdraw.ts +50 -0
- package/src/models/utils/flags.ts +30 -10
- package/src/models/utils/index.ts +24 -0
- package/src/sugar/autofill.ts +165 -35
- package/src/sugar/submit.ts +1 -2
- package/src/utils/hashes/hashLedger.ts +5 -2
@@ -0,0 +1,142 @@
|
|
1
|
+
import { ValidationError } from '../../errors'
|
2
|
+
import { Currency } from '../common'
|
3
|
+
import { hasFlag, isHex } from '../utils'
|
4
|
+
|
5
|
+
import {
|
6
|
+
BaseTransaction,
|
7
|
+
validateBaseTransaction,
|
8
|
+
GlobalFlagsInterface,
|
9
|
+
validateOptionalField,
|
10
|
+
isNumber,
|
11
|
+
isCurrency,
|
12
|
+
validateRequiredField,
|
13
|
+
isString,
|
14
|
+
VAULT_DATA_MAX_BYTE_LENGTH,
|
15
|
+
XRPLNumber,
|
16
|
+
isXRPLNumber,
|
17
|
+
} from './common'
|
18
|
+
|
19
|
+
const META_MAX_BYTE_LENGTH = 1024
|
20
|
+
|
21
|
+
/**
|
22
|
+
* Enum representing withdrawal strategies for a Vault.
|
23
|
+
*/
|
24
|
+
export enum VaultWithdrawalPolicy {
|
25
|
+
vaultStrategyFirstComeFirstServe = 0x0001,
|
26
|
+
}
|
27
|
+
|
28
|
+
/**
|
29
|
+
* Enum representing values of {@link VaultCreate} transaction flags.
|
30
|
+
*
|
31
|
+
* @category Transaction Flags
|
32
|
+
*/
|
33
|
+
export enum VaultCreateFlags {
|
34
|
+
tfVaultPrivate = 0x00010000,
|
35
|
+
tfVaultShareNonTransferable = 0x00020000,
|
36
|
+
}
|
37
|
+
|
38
|
+
/**
|
39
|
+
* Map of flags to boolean values representing {@link VaultCreate} transaction
|
40
|
+
* flags.
|
41
|
+
*
|
42
|
+
* @category Transaction Flags
|
43
|
+
*/
|
44
|
+
export interface VaultCreateFlagsInterface extends GlobalFlagsInterface {
|
45
|
+
tfVaultPrivate?: boolean
|
46
|
+
tfVaultShareNonTransferable?: boolean
|
47
|
+
}
|
48
|
+
|
49
|
+
/**
|
50
|
+
* The VaultCreate transaction creates a new Vault object.
|
51
|
+
*
|
52
|
+
* @category Transaction Models
|
53
|
+
*/
|
54
|
+
export interface VaultCreate extends BaseTransaction {
|
55
|
+
TransactionType: 'VaultCreate'
|
56
|
+
|
57
|
+
/**
|
58
|
+
* The asset (XRP, IOU or MPT) of the Vault.
|
59
|
+
*/
|
60
|
+
Asset: Currency
|
61
|
+
|
62
|
+
/**
|
63
|
+
* Arbitrary Vault metadata, limited to 256 bytes.
|
64
|
+
*/
|
65
|
+
Data?: string
|
66
|
+
|
67
|
+
/**
|
68
|
+
* The maximum asset amount that can be held in a vault.
|
69
|
+
*/
|
70
|
+
AssetsMaximum?: XRPLNumber
|
71
|
+
|
72
|
+
/**
|
73
|
+
* Arbitrary metadata about the share MPT, in hex format, limited to 1024 bytes.
|
74
|
+
*/
|
75
|
+
MPTokenMetadata?: string
|
76
|
+
|
77
|
+
/**
|
78
|
+
* Indicates the withdrawal strategy used by the Vault.
|
79
|
+
*/
|
80
|
+
WithdrawalPolicy?: number
|
81
|
+
|
82
|
+
/**
|
83
|
+
* The PermissionedDomain object ID associated with the shares of this Vault.
|
84
|
+
*/
|
85
|
+
DomainID?: string
|
86
|
+
}
|
87
|
+
|
88
|
+
/**
|
89
|
+
* Verify the form and type of an {@link VaultCreate} at runtime.
|
90
|
+
*
|
91
|
+
* @param tx - A {@link VaultCreate} Transaction.
|
92
|
+
* @throws When the {@link VaultCreate} is malformed.
|
93
|
+
*/
|
94
|
+
// eslint-disable-next-line max-lines-per-function -- required to do all field validations
|
95
|
+
export function validateVaultCreate(tx: Record<string, unknown>): void {
|
96
|
+
validateBaseTransaction(tx)
|
97
|
+
|
98
|
+
validateRequiredField(tx, 'Asset', isCurrency)
|
99
|
+
validateOptionalField(tx, 'Data', isString)
|
100
|
+
validateOptionalField(tx, 'AssetsMaximum', isXRPLNumber)
|
101
|
+
validateOptionalField(tx, 'MPTokenMetadata', isString)
|
102
|
+
validateOptionalField(tx, 'WithdrawalPolicy', isNumber)
|
103
|
+
validateOptionalField(tx, 'DomainID', isString)
|
104
|
+
|
105
|
+
if (tx.Data !== undefined) {
|
106
|
+
const dataHex = tx.Data
|
107
|
+
if (!isHex(dataHex)) {
|
108
|
+
throw new ValidationError('VaultCreate: Data must be a valid hex string')
|
109
|
+
}
|
110
|
+
const dataByteLength = dataHex.length / 2
|
111
|
+
if (dataByteLength > VAULT_DATA_MAX_BYTE_LENGTH) {
|
112
|
+
throw new ValidationError(
|
113
|
+
`VaultCreate: Data exceeds ${VAULT_DATA_MAX_BYTE_LENGTH} bytes (actual: ${dataByteLength})`,
|
114
|
+
)
|
115
|
+
}
|
116
|
+
}
|
117
|
+
|
118
|
+
if (tx.MPTokenMetadata !== undefined) {
|
119
|
+
const metaHex = tx.MPTokenMetadata
|
120
|
+
if (!isHex(metaHex)) {
|
121
|
+
throw new ValidationError(
|
122
|
+
'VaultCreate: MPTokenMetadata must be a valid hex string',
|
123
|
+
)
|
124
|
+
}
|
125
|
+
const metaByteLength = metaHex.length / 2
|
126
|
+
if (metaByteLength > META_MAX_BYTE_LENGTH) {
|
127
|
+
throw new ValidationError(
|
128
|
+
`VaultCreate: MPTokenMetadata exceeds ${META_MAX_BYTE_LENGTH} bytes (actual: ${metaByteLength})`,
|
129
|
+
)
|
130
|
+
}
|
131
|
+
}
|
132
|
+
|
133
|
+
// If DomainID present, tfVaultPrivate must be set
|
134
|
+
if (
|
135
|
+
tx.DomainID !== undefined &&
|
136
|
+
!hasFlag(tx, VaultCreateFlags.tfVaultPrivate, 'tfVaultPrivate')
|
137
|
+
) {
|
138
|
+
throw new ValidationError(
|
139
|
+
'VaultCreate: Cannot set DomainID unless tfVaultPrivate flag is set.',
|
140
|
+
)
|
141
|
+
}
|
142
|
+
}
|
@@ -0,0 +1,32 @@
|
|
1
|
+
import {
|
2
|
+
BaseTransaction,
|
3
|
+
validateBaseTransaction,
|
4
|
+
validateRequiredField,
|
5
|
+
isString,
|
6
|
+
} from './common'
|
7
|
+
|
8
|
+
/**
|
9
|
+
* The VaultDelete transaction deletes an existing vault object.
|
10
|
+
*
|
11
|
+
* @category Transaction Models
|
12
|
+
*/
|
13
|
+
export interface VaultDelete extends BaseTransaction {
|
14
|
+
TransactionType: 'VaultDelete'
|
15
|
+
|
16
|
+
/**
|
17
|
+
* The ID of the vault to be deleted.
|
18
|
+
*/
|
19
|
+
VaultID: string
|
20
|
+
}
|
21
|
+
|
22
|
+
/**
|
23
|
+
* Verify the form and type of a {@link VaultDelete} at runtime.
|
24
|
+
*
|
25
|
+
* @param tx - A {@link VaultDelete} Transaction.
|
26
|
+
* @throws When the {@link VaultDelete} is malformed.
|
27
|
+
*/
|
28
|
+
export function validateVaultDelete(tx: Record<string, unknown>): void {
|
29
|
+
validateBaseTransaction(tx)
|
30
|
+
|
31
|
+
validateRequiredField(tx, 'VaultID', isString)
|
32
|
+
}
|
@@ -0,0 +1,41 @@
|
|
1
|
+
import { Amount } from '../common'
|
2
|
+
|
3
|
+
import {
|
4
|
+
BaseTransaction,
|
5
|
+
validateBaseTransaction,
|
6
|
+
validateRequiredField,
|
7
|
+
isString,
|
8
|
+
isAmount,
|
9
|
+
} from './common'
|
10
|
+
|
11
|
+
/**
|
12
|
+
* The VaultDeposit transaction adds liqudity in exchange for vault shares.
|
13
|
+
*
|
14
|
+
* @category Transaction Models
|
15
|
+
*/
|
16
|
+
export interface VaultDeposit extends BaseTransaction {
|
17
|
+
TransactionType: 'VaultDeposit'
|
18
|
+
|
19
|
+
/**
|
20
|
+
* The ID of the vault to which the assets are deposited.
|
21
|
+
*/
|
22
|
+
VaultID: string
|
23
|
+
|
24
|
+
/**
|
25
|
+
* Asset amount to deposit.
|
26
|
+
*/
|
27
|
+
Amount: Amount
|
28
|
+
}
|
29
|
+
|
30
|
+
/**
|
31
|
+
* Verify the form and type of a {@link VaultDeposit} at runtime.
|
32
|
+
*
|
33
|
+
* @param tx - A {@link VaultDeposit} Transaction.
|
34
|
+
* @throws When the {@link VaultDeposit} is malformed.
|
35
|
+
*/
|
36
|
+
export function validateVaultDeposit(tx: Record<string, unknown>): void {
|
37
|
+
validateBaseTransaction(tx)
|
38
|
+
|
39
|
+
validateRequiredField(tx, 'VaultID', isString)
|
40
|
+
validateRequiredField(tx, 'Amount', isAmount)
|
41
|
+
}
|
@@ -0,0 +1,71 @@
|
|
1
|
+
import { ValidationError } from '../../errors'
|
2
|
+
import { isHex } from '../utils'
|
3
|
+
|
4
|
+
import {
|
5
|
+
BaseTransaction,
|
6
|
+
validateBaseTransaction,
|
7
|
+
validateOptionalField,
|
8
|
+
validateRequiredField,
|
9
|
+
isString,
|
10
|
+
VAULT_DATA_MAX_BYTE_LENGTH,
|
11
|
+
XRPLNumber,
|
12
|
+
isXRPLNumber,
|
13
|
+
} from './common'
|
14
|
+
|
15
|
+
/**
|
16
|
+
* The VaultSet transaction modifies mutable fields on an existing Vault object.
|
17
|
+
*
|
18
|
+
* @category Transaction Models
|
19
|
+
*/
|
20
|
+
export interface VaultSet extends BaseTransaction {
|
21
|
+
TransactionType: 'VaultSet'
|
22
|
+
|
23
|
+
/**
|
24
|
+
* The ID of the Vault to be modified. Must be included when updating the Vault.
|
25
|
+
*/
|
26
|
+
VaultID: string
|
27
|
+
|
28
|
+
/**
|
29
|
+
* Arbitrary Vault metadata, limited to 256 bytes.
|
30
|
+
*/
|
31
|
+
Data?: string
|
32
|
+
|
33
|
+
/**
|
34
|
+
* The maximum asset amount that can be held in a vault. The value cannot be lower than the
|
35
|
+
* current AssetsTotal unless the value is 0.
|
36
|
+
*/
|
37
|
+
AssetsMaximum?: XRPLNumber
|
38
|
+
|
39
|
+
/**
|
40
|
+
* The PermissionedDomain object ID associated with the shares of this Vault.
|
41
|
+
*/
|
42
|
+
DomainID?: string
|
43
|
+
}
|
44
|
+
|
45
|
+
/**
|
46
|
+
* Verify the form and type of a {@link VaultSet} at runtime.
|
47
|
+
*
|
48
|
+
* @param tx - A {@link VaultSet} Transaction.
|
49
|
+
* @throws When the {@link VaultSet} is malformed.
|
50
|
+
*/
|
51
|
+
export function validateVaultSet(tx: Record<string, unknown>): void {
|
52
|
+
validateBaseTransaction(tx)
|
53
|
+
|
54
|
+
validateRequiredField(tx, 'VaultID', isString)
|
55
|
+
validateOptionalField(tx, 'Data', isString)
|
56
|
+
validateOptionalField(tx, 'AssetsMaximum', isXRPLNumber)
|
57
|
+
validateOptionalField(tx, 'DomainID', isString)
|
58
|
+
|
59
|
+
if (tx.Data !== undefined) {
|
60
|
+
const dataHex = tx.Data
|
61
|
+
if (!isHex(dataHex)) {
|
62
|
+
throw new ValidationError('VaultSet: Data must be a valid hex string')
|
63
|
+
}
|
64
|
+
const dataByteLength = dataHex.length / 2
|
65
|
+
if (dataByteLength > VAULT_DATA_MAX_BYTE_LENGTH) {
|
66
|
+
throw new ValidationError(
|
67
|
+
`VaultSet: Data exceeds ${VAULT_DATA_MAX_BYTE_LENGTH} bytes (actual: ${dataByteLength})`,
|
68
|
+
)
|
69
|
+
}
|
70
|
+
}
|
71
|
+
}
|
@@ -0,0 +1,50 @@
|
|
1
|
+
import { Amount } from '../common'
|
2
|
+
|
3
|
+
import {
|
4
|
+
BaseTransaction,
|
5
|
+
validateBaseTransaction,
|
6
|
+
validateRequiredField,
|
7
|
+
isString,
|
8
|
+
isAmount,
|
9
|
+
Account,
|
10
|
+
validateOptionalField,
|
11
|
+
isAccount,
|
12
|
+
} from './common'
|
13
|
+
|
14
|
+
/**
|
15
|
+
* The VaultWithdraw transaction withdraws assets in exchange for the vault's shares.
|
16
|
+
*
|
17
|
+
* @category Transaction Models
|
18
|
+
*/
|
19
|
+
export interface VaultWithdraw extends BaseTransaction {
|
20
|
+
TransactionType: 'VaultWithdraw'
|
21
|
+
|
22
|
+
/**
|
23
|
+
* The ID of the vault from which assets are withdrawn.
|
24
|
+
*/
|
25
|
+
VaultID: string
|
26
|
+
|
27
|
+
/**
|
28
|
+
* The exact amount of Vault asset to withdraw.
|
29
|
+
*/
|
30
|
+
Amount: Amount
|
31
|
+
|
32
|
+
/**
|
33
|
+
* An account to receive the assets. It must be able to receive the asset.
|
34
|
+
*/
|
35
|
+
Destination?: Account
|
36
|
+
}
|
37
|
+
|
38
|
+
/**
|
39
|
+
* Verify the form and type of a {@link VaultWithdraw} at runtime.
|
40
|
+
*
|
41
|
+
* @param tx - A {@link VaultWithdraw} Transaction.
|
42
|
+
* @throws When the {@link VaultWithdraw} is malformed.
|
43
|
+
*/
|
44
|
+
export function validateVaultWithdraw(tx: Record<string, unknown>): void {
|
45
|
+
validateBaseTransaction(tx)
|
46
|
+
|
47
|
+
validateRequiredField(tx, 'VaultID', isString)
|
48
|
+
validateRequiredField(tx, 'Amount', isAmount)
|
49
|
+
validateOptionalField(tx, 'Destination', isAccount)
|
50
|
+
}
|
@@ -8,6 +8,8 @@ import { AccountSetTfFlags } from '../transactions/accountSet'
|
|
8
8
|
import { AMMClawbackFlags } from '../transactions/AMMClawback'
|
9
9
|
import { AMMDepositFlags } from '../transactions/AMMDeposit'
|
10
10
|
import { AMMWithdrawFlags } from '../transactions/AMMWithdraw'
|
11
|
+
import { BatchFlags } from '../transactions/batch'
|
12
|
+
import { GlobalFlags } from '../transactions/common'
|
11
13
|
import { MPTokenAuthorizeFlags } from '../transactions/MPTokenAuthorize'
|
12
14
|
import { MPTokenIssuanceCreateFlags } from '../transactions/MPTokenIssuanceCreate'
|
13
15
|
import { MPTokenIssuanceSetFlags } from '../transactions/MPTokenIssuanceSet'
|
@@ -18,6 +20,7 @@ import { PaymentFlags } from '../transactions/payment'
|
|
18
20
|
import { PaymentChannelClaimFlags } from '../transactions/paymentChannelClaim'
|
19
21
|
import type { Transaction } from '../transactions/transaction'
|
20
22
|
import { TrustSetFlags } from '../transactions/trustSet'
|
23
|
+
import { VaultCreateFlags } from '../transactions/vaultCreate'
|
21
24
|
import { XChainModifyBridgeFlags } from '../transactions/XChainModifyBridge'
|
22
25
|
|
23
26
|
import { isFlagEnabled } from '.'
|
@@ -51,6 +54,7 @@ const txToFlag = {
|
|
51
54
|
AMMClawback: AMMClawbackFlags,
|
52
55
|
AMMDeposit: AMMDepositFlags,
|
53
56
|
AMMWithdraw: AMMWithdrawFlags,
|
57
|
+
Batch: BatchFlags,
|
54
58
|
MPTokenAuthorize: MPTokenAuthorizeFlags,
|
55
59
|
MPTokenIssuanceCreate: MPTokenIssuanceCreateFlags,
|
56
60
|
MPTokenIssuanceSet: MPTokenIssuanceSetFlags,
|
@@ -60,6 +64,7 @@ const txToFlag = {
|
|
60
64
|
PaymentChannelClaim: PaymentChannelClaimFlags,
|
61
65
|
Payment: PaymentFlags,
|
62
66
|
TrustSet: TrustSetFlags,
|
67
|
+
VaultCreate: VaultCreateFlags,
|
63
68
|
XChainModifyBridge: XChainModifyBridgeFlags,
|
64
69
|
}
|
65
70
|
|
@@ -97,27 +102,36 @@ export function setTransactionFlagsToNumber(tx: Transaction): void {
|
|
97
102
|
* @returns A numerical representation of a Transaction's Flags
|
98
103
|
*/
|
99
104
|
export function convertTxFlagsToNumber(tx: Transaction): number {
|
100
|
-
|
105
|
+
const txFlags = tx.Flags
|
106
|
+
if (txFlags == null) {
|
101
107
|
return 0
|
102
108
|
}
|
103
|
-
if (typeof
|
104
|
-
return
|
109
|
+
if (typeof txFlags === 'number') {
|
110
|
+
return txFlags
|
105
111
|
}
|
106
112
|
|
107
113
|
if (isTxToFlagKey(tx.TransactionType)) {
|
108
114
|
const flagEnum = txToFlag[tx.TransactionType]
|
109
|
-
return Object.keys(
|
110
|
-
if (flagEnum[flag] == null) {
|
111
|
-
throw new ValidationError(
|
112
|
-
`Invalid flag ${flag}. Valid flags are ${JSON.stringify(flagEnum)}`,
|
113
|
-
)
|
115
|
+
return Object.keys(txFlags).reduce((resultFlags, flag) => {
|
116
|
+
if (flagEnum[flag] == null && GlobalFlags[flag] == null) {
|
117
|
+
throw new ValidationError(`Invalid flag ${flag}.`)
|
114
118
|
}
|
115
119
|
|
116
|
-
return
|
120
|
+
return txFlags[flag]
|
121
|
+
? resultFlags | (flagEnum[flag] || GlobalFlags[flag])
|
122
|
+
: resultFlags
|
117
123
|
}, 0)
|
118
124
|
}
|
119
125
|
|
120
|
-
return
|
126
|
+
return Object.keys(txFlags).reduce((resultFlags, flag) => {
|
127
|
+
if (GlobalFlags[flag] == null) {
|
128
|
+
throw new ValidationError(
|
129
|
+
`Invalid flag ${flag}. Valid flags are ${JSON.stringify(GlobalFlags)}`,
|
130
|
+
)
|
131
|
+
}
|
132
|
+
|
133
|
+
return txFlags[flag] ? resultFlags | GlobalFlags[flag] : resultFlags
|
134
|
+
}, 0)
|
121
135
|
}
|
122
136
|
|
123
137
|
/**
|
@@ -146,5 +160,11 @@ export function parseTransactionFlags(tx: Transaction): object {
|
|
146
160
|
})
|
147
161
|
}
|
148
162
|
|
163
|
+
Object.values(GlobalFlags).forEach((flag) => {
|
164
|
+
if (typeof flag === 'string' && isFlagEnabled(flags, GlobalFlags[flag])) {
|
165
|
+
booleanFlagMap[flag] = true
|
166
|
+
}
|
167
|
+
})
|
168
|
+
|
149
169
|
return booleanFlagMap
|
150
170
|
}
|
@@ -1,3 +1,5 @@
|
|
1
|
+
import type { Transaction } from '../transactions'
|
2
|
+
|
1
3
|
const HEX_REGEX = /^[0-9A-Fa-f]+$/u
|
2
4
|
export const INTEGER_SANITY_CHECK = /^[0-9]+$/u
|
3
5
|
|
@@ -27,6 +29,28 @@ export function isFlagEnabled(Flags: number, checkFlag: number): boolean {
|
|
27
29
|
return (BigInt(checkFlag) & BigInt(Flags)) === BigInt(checkFlag)
|
28
30
|
}
|
29
31
|
|
32
|
+
/**
|
33
|
+
* Determines whether a transaction has a certain flag enabled.
|
34
|
+
*
|
35
|
+
* @param tx The transaction to check for the flag.
|
36
|
+
* @param flag The flag to check.
|
37
|
+
* @param flagName The name of the flag to check, used for object flags.
|
38
|
+
* @returns Whether `flag` is enabled on `tx`.
|
39
|
+
*/
|
40
|
+
export function hasFlag(
|
41
|
+
tx: Transaction | Record<string, unknown>,
|
42
|
+
flag: number,
|
43
|
+
flagName: string,
|
44
|
+
): boolean {
|
45
|
+
if (tx.Flags == null) {
|
46
|
+
return false
|
47
|
+
}
|
48
|
+
if (typeof tx.Flags === 'number') {
|
49
|
+
return isFlagEnabled(tx.Flags, flag)
|
50
|
+
}
|
51
|
+
return tx.Flags[flagName] === true
|
52
|
+
}
|
53
|
+
|
30
54
|
/**
|
31
55
|
* Check if string is in hex format.
|
32
56
|
*
|