xrp-tx 0.1.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/dist/errors.d.ts +20 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +27 -0
- package/dist/errors.js.map +1 -0
- package/dist/groups/account.d.ts +15 -0
- package/dist/groups/account.d.ts.map +1 -0
- package/dist/groups/account.js +17 -0
- package/dist/groups/account.js.map +1 -0
- package/dist/groups/amm.d.ts +7 -0
- package/dist/groups/amm.d.ts.map +1 -0
- package/dist/groups/amm.js +7 -0
- package/dist/groups/amm.js.map +1 -0
- package/dist/groups/credential.d.ts +7 -0
- package/dist/groups/credential.d.ts.map +1 -0
- package/dist/groups/credential.js +7 -0
- package/dist/groups/credential.js.map +1 -0
- package/dist/groups/loan.d.ts +7 -0
- package/dist/groups/loan.d.ts.map +1 -0
- package/dist/groups/loan.js +7 -0
- package/dist/groups/loan.js.map +1 -0
- package/dist/groups/offer.d.ts +9 -0
- package/dist/groups/offer.d.ts.map +1 -0
- package/dist/groups/offer.js +9 -0
- package/dist/groups/offer.js.map +1 -0
- package/dist/groups/oracle.d.ts +7 -0
- package/dist/groups/oracle.d.ts.map +1 -0
- package/dist/groups/oracle.js +7 -0
- package/dist/groups/oracle.js.map +1 -0
- package/dist/groups/payment.d.ts +27 -0
- package/dist/groups/payment.d.ts.map +1 -0
- package/dist/groups/payment.js +23 -0
- package/dist/groups/payment.js.map +1 -0
- package/dist/groups/permissioned-domain.d.ts +7 -0
- package/dist/groups/permissioned-domain.d.ts.map +1 -0
- package/dist/groups/permissioned-domain.js +7 -0
- package/dist/groups/permissioned-domain.js.map +1 -0
- package/dist/groups/token.d.ts +15 -0
- package/dist/groups/token.d.ts.map +1 -0
- package/dist/groups/token.js +10 -0
- package/dist/groups/token.js.map +1 -0
- package/dist/groups/vault.d.ts +7 -0
- package/dist/groups/vault.d.ts.map +1 -0
- package/dist/groups/vault.js +7 -0
- package/dist/groups/vault.js.map +1 -0
- package/dist/groups/xchain.d.ts +7 -0
- package/dist/groups/xchain.d.ts.map +1 -0
- package/dist/groups/xchain.js +7 -0
- package/dist/groups/xchain.js.map +1 -0
- package/dist/index.d.ts +86 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +63 -0
- package/dist/index.js.map +1 -0
- package/dist/registry.d.ts +17 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +95 -0
- package/dist/registry.js.map +1 -0
- package/dist/transaction.d.ts +179 -0
- package/dist/transaction.d.ts.map +1 -0
- package/dist/transaction.js +205 -0
- package/dist/transaction.js.map +1 -0
- package/dist/transactions/account-delete.d.ts +20 -0
- package/dist/transactions/account-delete.d.ts.map +1 -0
- package/dist/transactions/account-delete.js +24 -0
- package/dist/transactions/account-delete.js.map +1 -0
- package/dist/transactions/account-set.d.ts +34 -0
- package/dist/transactions/account-set.d.ts.map +1 -0
- package/dist/transactions/account-set.js +59 -0
- package/dist/transactions/account-set.js.map +1 -0
- package/dist/transactions/check-cancel.d.ts +16 -0
- package/dist/transactions/check-cancel.d.ts.map +1 -0
- package/dist/transactions/check-cancel.js +18 -0
- package/dist/transactions/check-cancel.js.map +1 -0
- package/dist/transactions/check-cash.d.ts +21 -0
- package/dist/transactions/check-cash.d.ts.map +1 -0
- package/dist/transactions/check-cash.js +29 -0
- package/dist/transactions/check-cash.js.map +1 -0
- package/dist/transactions/check-create.d.ts +27 -0
- package/dist/transactions/check-create.d.ts.map +1 -0
- package/dist/transactions/check-create.js +35 -0
- package/dist/transactions/check-create.js.map +1 -0
- package/dist/transactions/clawback.d.ts +20 -0
- package/dist/transactions/clawback.d.ts.map +1 -0
- package/dist/transactions/clawback.js +20 -0
- package/dist/transactions/clawback.js.map +1 -0
- package/dist/transactions/delegate-set.d.ts +18 -0
- package/dist/transactions/delegate-set.d.ts.map +1 -0
- package/dist/transactions/delegate-set.js +22 -0
- package/dist/transactions/delegate-set.js.map +1 -0
- package/dist/transactions/deposit-preauth.d.ts +18 -0
- package/dist/transactions/deposit-preauth.d.ts.map +1 -0
- package/dist/transactions/deposit-preauth.js +26 -0
- package/dist/transactions/deposit-preauth.js.map +1 -0
- package/dist/transactions/did-delete.d.ts +13 -0
- package/dist/transactions/did-delete.d.ts.map +1 -0
- package/dist/transactions/did-delete.js +9 -0
- package/dist/transactions/did-delete.js.map +1 -0
- package/dist/transactions/did-set.d.ts +20 -0
- package/dist/transactions/did-set.d.ts.map +1 -0
- package/dist/transactions/did-set.js +24 -0
- package/dist/transactions/did-set.js.map +1 -0
- package/dist/transactions/escrow-cancel.d.ts +18 -0
- package/dist/transactions/escrow-cancel.d.ts.map +1 -0
- package/dist/transactions/escrow-cancel.js +22 -0
- package/dist/transactions/escrow-cancel.js.map +1 -0
- package/dist/transactions/escrow-create.d.ts +29 -0
- package/dist/transactions/escrow-create.d.ts.map +1 -0
- package/dist/transactions/escrow-create.js +40 -0
- package/dist/transactions/escrow-create.js.map +1 -0
- package/dist/transactions/escrow-finish.d.ts +22 -0
- package/dist/transactions/escrow-finish.d.ts.map +1 -0
- package/dist/transactions/escrow-finish.js +29 -0
- package/dist/transactions/escrow-finish.js.map +1 -0
- package/dist/transactions/mptoken-authorize.d.ts +22 -0
- package/dist/transactions/mptoken-authorize.d.ts.map +1 -0
- package/dist/transactions/mptoken-authorize.js +24 -0
- package/dist/transactions/mptoken-authorize.js.map +1 -0
- package/dist/transactions/mptoken-issuance-create.d.ts +23 -0
- package/dist/transactions/mptoken-issuance-create.d.ts.map +1 -0
- package/dist/transactions/mptoken-issuance-create.js +29 -0
- package/dist/transactions/mptoken-issuance-create.js.map +1 -0
- package/dist/transactions/mptoken-issuance-destroy.d.ts +17 -0
- package/dist/transactions/mptoken-issuance-destroy.d.ts.map +1 -0
- package/dist/transactions/mptoken-issuance-destroy.js +19 -0
- package/dist/transactions/mptoken-issuance-destroy.js.map +1 -0
- package/dist/transactions/mptoken-issuance-set.d.ts +19 -0
- package/dist/transactions/mptoken-issuance-set.d.ts.map +1 -0
- package/dist/transactions/mptoken-issuance-set.js +24 -0
- package/dist/transactions/mptoken-issuance-set.js.map +1 -0
- package/dist/transactions/nftoken-accept-offer.d.ts +22 -0
- package/dist/transactions/nftoken-accept-offer.d.ts.map +1 -0
- package/dist/transactions/nftoken-accept-offer.js +28 -0
- package/dist/transactions/nftoken-accept-offer.js.map +1 -0
- package/dist/transactions/nftoken-burn.d.ts +19 -0
- package/dist/transactions/nftoken-burn.d.ts.map +1 -0
- package/dist/transactions/nftoken-burn.js +24 -0
- package/dist/transactions/nftoken-burn.js.map +1 -0
- package/dist/transactions/nftoken-cancel-offer.d.ts +17 -0
- package/dist/transactions/nftoken-cancel-offer.d.ts.map +1 -0
- package/dist/transactions/nftoken-cancel-offer.js +21 -0
- package/dist/transactions/nftoken-cancel-offer.js.map +1 -0
- package/dist/transactions/nftoken-create-offer.d.ts +29 -0
- package/dist/transactions/nftoken-create-offer.d.ts.map +1 -0
- package/dist/transactions/nftoken-create-offer.js +34 -0
- package/dist/transactions/nftoken-create-offer.js.map +1 -0
- package/dist/transactions/nftoken-mint.d.ts +26 -0
- package/dist/transactions/nftoken-mint.d.ts.map +1 -0
- package/dist/transactions/nftoken-mint.js +34 -0
- package/dist/transactions/nftoken-mint.js.map +1 -0
- package/dist/transactions/nftoken-modify.d.ts +21 -0
- package/dist/transactions/nftoken-modify.d.ts.map +1 -0
- package/dist/transactions/nftoken-modify.js +27 -0
- package/dist/transactions/nftoken-modify.js.map +1 -0
- package/dist/transactions/offer-cancel.d.ts +16 -0
- package/dist/transactions/offer-cancel.d.ts.map +1 -0
- package/dist/transactions/offer-cancel.js +19 -0
- package/dist/transactions/offer-cancel.js.map +1 -0
- package/dist/transactions/offer-create.d.ts +29 -0
- package/dist/transactions/offer-create.d.ts.map +1 -0
- package/dist/transactions/offer-create.js +47 -0
- package/dist/transactions/offer-create.js.map +1 -0
- package/dist/transactions/payment-channel-claim.d.ts +28 -0
- package/dist/transactions/payment-channel-claim.d.ts.map +1 -0
- package/dist/transactions/payment-channel-claim.js +31 -0
- package/dist/transactions/payment-channel-claim.js.map +1 -0
- package/dist/transactions/payment-channel-create.d.ts +29 -0
- package/dist/transactions/payment-channel-create.d.ts.map +1 -0
- package/dist/transactions/payment-channel-create.js +40 -0
- package/dist/transactions/payment-channel-create.js.map +1 -0
- package/dist/transactions/payment-channel-fund.d.ts +21 -0
- package/dist/transactions/payment-channel-fund.d.ts.map +1 -0
- package/dist/transactions/payment-channel-fund.js +26 -0
- package/dist/transactions/payment-channel-fund.js.map +1 -0
- package/dist/transactions/payment.d.ts +42 -0
- package/dist/transactions/payment.d.ts.map +1 -0
- package/dist/transactions/payment.js +66 -0
- package/dist/transactions/payment.js.map +1 -0
- package/dist/transactions/set-regular-key.d.ts +16 -0
- package/dist/transactions/set-regular-key.d.ts.map +1 -0
- package/dist/transactions/set-regular-key.js +19 -0
- package/dist/transactions/set-regular-key.js.map +1 -0
- package/dist/transactions/signer-list-set.d.ts +19 -0
- package/dist/transactions/signer-list-set.d.ts.map +1 -0
- package/dist/transactions/signer-list-set.js +35 -0
- package/dist/transactions/signer-list-set.js.map +1 -0
- package/dist/transactions/ticket-create.d.ts +16 -0
- package/dist/transactions/ticket-create.d.ts.map +1 -0
- package/dist/transactions/ticket-create.js +18 -0
- package/dist/transactions/ticket-create.js.map +1 -0
- package/dist/transactions/trust-set.d.ts +25 -0
- package/dist/transactions/trust-set.d.ts.map +1 -0
- package/dist/transactions/trust-set.js +29 -0
- package/dist/transactions/trust-set.js.map +1 -0
- package/dist/types/amounts.d.ts +49 -0
- package/dist/types/amounts.d.ts.map +1 -0
- package/dist/types/amounts.js +8 -0
- package/dist/types/amounts.js.map +1 -0
- package/dist/types/base.d.ts +96 -0
- package/dist/types/base.d.ts.map +1 -0
- package/dist/types/base.js +2 -0
- package/dist/types/base.js.map +1 -0
- package/dist/types/common.d.ts +81 -0
- package/dist/types/common.d.ts.map +1 -0
- package/dist/types/common.js +5 -0
- package/dist/types/common.js.map +1 -0
- package/dist/types/flags.d.ts +180 -0
- package/dist/types/flags.d.ts.map +1 -0
- package/dist/types/flags.js +132 -0
- package/dist/types/flags.js.map +1 -0
- package/dist/types/index.d.ts +10 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/transaction-types.d.ts +7 -0
- package/dist/types/transaction-types.d.ts.map +1 -0
- package/dist/types/transaction-types.js +2 -0
- package/dist/types/transaction-types.js.map +1 -0
- package/dist/validation/base.d.ts +8 -0
- package/dist/validation/base.d.ts.map +1 -0
- package/dist/validation/base.js +79 -0
- package/dist/validation/base.js.map +1 -0
- package/dist/validation/helpers.d.ts +42 -0
- package/dist/validation/helpers.d.ts.map +1 -0
- package/dist/validation/helpers.js +154 -0
- package/dist/validation/helpers.js.map +1 -0
- package/dist/validation/index.d.ts +3 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +3 -0
- package/dist/validation/index.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Flag enums and interfaces for all XRPL transaction types.
|
|
3
|
+
*
|
|
4
|
+
* Each transaction type that supports flags gets:
|
|
5
|
+
* 1. A numeric enum for bitwise flag values
|
|
6
|
+
* 2. A boolean-map interface for developer-friendly usage
|
|
7
|
+
*/
|
|
8
|
+
// ─── Global ──────────────────────────────────────────────────────────
|
|
9
|
+
export var GlobalFlags;
|
|
10
|
+
(function (GlobalFlags) {
|
|
11
|
+
GlobalFlags[GlobalFlags["tfInnerBatchTxn"] = 1073741824] = "tfInnerBatchTxn";
|
|
12
|
+
})(GlobalFlags || (GlobalFlags = {}));
|
|
13
|
+
// ─── Payment ─────────────────────────────────────────────────────────
|
|
14
|
+
export var PaymentFlags;
|
|
15
|
+
(function (PaymentFlags) {
|
|
16
|
+
PaymentFlags[PaymentFlags["tfNoRippleDirect"] = 65536] = "tfNoRippleDirect";
|
|
17
|
+
PaymentFlags[PaymentFlags["tfPartialPayment"] = 131072] = "tfPartialPayment";
|
|
18
|
+
PaymentFlags[PaymentFlags["tfLimitQuality"] = 262144] = "tfLimitQuality";
|
|
19
|
+
})(PaymentFlags || (PaymentFlags = {}));
|
|
20
|
+
// ─── AccountSet ──────────────────────────────────────────────────────
|
|
21
|
+
export var AccountSetAsfFlags;
|
|
22
|
+
(function (AccountSetAsfFlags) {
|
|
23
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfRequireDest"] = 1] = "asfRequireDest";
|
|
24
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfRequireAuth"] = 2] = "asfRequireAuth";
|
|
25
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfDisallowXRP"] = 3] = "asfDisallowXRP";
|
|
26
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfDisableMaster"] = 4] = "asfDisableMaster";
|
|
27
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfAccountTxnID"] = 5] = "asfAccountTxnID";
|
|
28
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfNoFreeze"] = 6] = "asfNoFreeze";
|
|
29
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfGlobalFreeze"] = 7] = "asfGlobalFreeze";
|
|
30
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfDefaultRipple"] = 8] = "asfDefaultRipple";
|
|
31
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfDepositAuth"] = 9] = "asfDepositAuth";
|
|
32
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfAuthorizedNFTokenMinter"] = 10] = "asfAuthorizedNFTokenMinter";
|
|
33
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfDisallowIncomingNFTokenOffer"] = 12] = "asfDisallowIncomingNFTokenOffer";
|
|
34
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfDisallowIncomingCheck"] = 13] = "asfDisallowIncomingCheck";
|
|
35
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfDisallowIncomingPayChan"] = 14] = "asfDisallowIncomingPayChan";
|
|
36
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfDisallowIncomingTrustline"] = 15] = "asfDisallowIncomingTrustline";
|
|
37
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfAllowTrustLineClawback"] = 16] = "asfAllowTrustLineClawback";
|
|
38
|
+
AccountSetAsfFlags[AccountSetAsfFlags["asfAllowTrustLineLocking"] = 17] = "asfAllowTrustLineLocking";
|
|
39
|
+
})(AccountSetAsfFlags || (AccountSetAsfFlags = {}));
|
|
40
|
+
export var AccountSetTfFlags;
|
|
41
|
+
(function (AccountSetTfFlags) {
|
|
42
|
+
AccountSetTfFlags[AccountSetTfFlags["tfRequireDestTag"] = 65536] = "tfRequireDestTag";
|
|
43
|
+
AccountSetTfFlags[AccountSetTfFlags["tfOptionalDestTag"] = 131072] = "tfOptionalDestTag";
|
|
44
|
+
AccountSetTfFlags[AccountSetTfFlags["tfRequireAuth"] = 262144] = "tfRequireAuth";
|
|
45
|
+
AccountSetTfFlags[AccountSetTfFlags["tfOptionalAuth"] = 524288] = "tfOptionalAuth";
|
|
46
|
+
AccountSetTfFlags[AccountSetTfFlags["tfDisallowXRP"] = 1048576] = "tfDisallowXRP";
|
|
47
|
+
AccountSetTfFlags[AccountSetTfFlags["tfAllowXRP"] = 2097152] = "tfAllowXRP";
|
|
48
|
+
})(AccountSetTfFlags || (AccountSetTfFlags = {}));
|
|
49
|
+
// ─── TrustSet ────────────────────────────────────────────────────────
|
|
50
|
+
export var TrustSetFlags;
|
|
51
|
+
(function (TrustSetFlags) {
|
|
52
|
+
TrustSetFlags[TrustSetFlags["tfSetfAuth"] = 65536] = "tfSetfAuth";
|
|
53
|
+
TrustSetFlags[TrustSetFlags["tfSetNoRipple"] = 131072] = "tfSetNoRipple";
|
|
54
|
+
TrustSetFlags[TrustSetFlags["tfClearNoRipple"] = 262144] = "tfClearNoRipple";
|
|
55
|
+
TrustSetFlags[TrustSetFlags["tfSetFreeze"] = 1048576] = "tfSetFreeze";
|
|
56
|
+
TrustSetFlags[TrustSetFlags["tfClearFreeze"] = 2097152] = "tfClearFreeze";
|
|
57
|
+
TrustSetFlags[TrustSetFlags["tfSetDeepFreeze"] = 4194304] = "tfSetDeepFreeze";
|
|
58
|
+
TrustSetFlags[TrustSetFlags["tfClearDeepFreeze"] = 8388608] = "tfClearDeepFreeze";
|
|
59
|
+
})(TrustSetFlags || (TrustSetFlags = {}));
|
|
60
|
+
// ─── OfferCreate ─────────────────────────────────────────────────────
|
|
61
|
+
export var OfferCreateFlags;
|
|
62
|
+
(function (OfferCreateFlags) {
|
|
63
|
+
OfferCreateFlags[OfferCreateFlags["tfPassive"] = 65536] = "tfPassive";
|
|
64
|
+
OfferCreateFlags[OfferCreateFlags["tfImmediateOrCancel"] = 131072] = "tfImmediateOrCancel";
|
|
65
|
+
OfferCreateFlags[OfferCreateFlags["tfFillOrKill"] = 262144] = "tfFillOrKill";
|
|
66
|
+
OfferCreateFlags[OfferCreateFlags["tfSell"] = 524288] = "tfSell";
|
|
67
|
+
OfferCreateFlags[OfferCreateFlags["tfHybrid"] = 1048576] = "tfHybrid";
|
|
68
|
+
})(OfferCreateFlags || (OfferCreateFlags = {}));
|
|
69
|
+
// ─── NFTokenMint ─────────────────────────────────────────────────────
|
|
70
|
+
export var NFTokenMintFlags;
|
|
71
|
+
(function (NFTokenMintFlags) {
|
|
72
|
+
NFTokenMintFlags[NFTokenMintFlags["tfBurnable"] = 1] = "tfBurnable";
|
|
73
|
+
NFTokenMintFlags[NFTokenMintFlags["tfOnlyXRP"] = 2] = "tfOnlyXRP";
|
|
74
|
+
NFTokenMintFlags[NFTokenMintFlags["tfTrustLine"] = 4] = "tfTrustLine";
|
|
75
|
+
NFTokenMintFlags[NFTokenMintFlags["tfTransferable"] = 8] = "tfTransferable";
|
|
76
|
+
})(NFTokenMintFlags || (NFTokenMintFlags = {}));
|
|
77
|
+
// ─── NFTokenCreateOffer ──────────────────────────────────────────────
|
|
78
|
+
export var NFTokenCreateOfferFlags;
|
|
79
|
+
(function (NFTokenCreateOfferFlags) {
|
|
80
|
+
NFTokenCreateOfferFlags[NFTokenCreateOfferFlags["tfSellNFToken"] = 1] = "tfSellNFToken";
|
|
81
|
+
})(NFTokenCreateOfferFlags || (NFTokenCreateOfferFlags = {}));
|
|
82
|
+
// ─── PaymentChannelClaim ─────────────────────────────────────────────
|
|
83
|
+
export var PaymentChannelClaimFlags;
|
|
84
|
+
(function (PaymentChannelClaimFlags) {
|
|
85
|
+
PaymentChannelClaimFlags[PaymentChannelClaimFlags["tfRenew"] = 65536] = "tfRenew";
|
|
86
|
+
PaymentChannelClaimFlags[PaymentChannelClaimFlags["tfClose"] = 131072] = "tfClose";
|
|
87
|
+
})(PaymentChannelClaimFlags || (PaymentChannelClaimFlags = {}));
|
|
88
|
+
// ─── AMMDeposit ──────────────────────────────────────────────────────
|
|
89
|
+
export var AMMDepositFlags;
|
|
90
|
+
(function (AMMDepositFlags) {
|
|
91
|
+
AMMDepositFlags[AMMDepositFlags["tfLPToken"] = 65536] = "tfLPToken";
|
|
92
|
+
AMMDepositFlags[AMMDepositFlags["tfSingleAsset"] = 524288] = "tfSingleAsset";
|
|
93
|
+
AMMDepositFlags[AMMDepositFlags["tfTwoAsset"] = 1048576] = "tfTwoAsset";
|
|
94
|
+
AMMDepositFlags[AMMDepositFlags["tfOneAssetLPToken"] = 2097152] = "tfOneAssetLPToken";
|
|
95
|
+
AMMDepositFlags[AMMDepositFlags["tfLimitLPToken"] = 4194304] = "tfLimitLPToken";
|
|
96
|
+
AMMDepositFlags[AMMDepositFlags["tfTwoAssetIfEmpty"] = 8388608] = "tfTwoAssetIfEmpty";
|
|
97
|
+
})(AMMDepositFlags || (AMMDepositFlags = {}));
|
|
98
|
+
// ─── AMMWithdraw ─────────────────────────────────────────────────────
|
|
99
|
+
export var AMMWithdrawFlags;
|
|
100
|
+
(function (AMMWithdrawFlags) {
|
|
101
|
+
AMMWithdrawFlags[AMMWithdrawFlags["tfLPToken"] = 65536] = "tfLPToken";
|
|
102
|
+
AMMWithdrawFlags[AMMWithdrawFlags["tfWithdrawAll"] = 131072] = "tfWithdrawAll";
|
|
103
|
+
AMMWithdrawFlags[AMMWithdrawFlags["tfOneAssetWithdrawAll"] = 262144] = "tfOneAssetWithdrawAll";
|
|
104
|
+
AMMWithdrawFlags[AMMWithdrawFlags["tfSingleAsset"] = 524288] = "tfSingleAsset";
|
|
105
|
+
AMMWithdrawFlags[AMMWithdrawFlags["tfTwoAsset"] = 1048576] = "tfTwoAsset";
|
|
106
|
+
AMMWithdrawFlags[AMMWithdrawFlags["tfOneAssetLPToken"] = 2097152] = "tfOneAssetLPToken";
|
|
107
|
+
AMMWithdrawFlags[AMMWithdrawFlags["tfLimitLPToken"] = 4194304] = "tfLimitLPToken";
|
|
108
|
+
})(AMMWithdrawFlags || (AMMWithdrawFlags = {}));
|
|
109
|
+
// ─── MPTokenAuthorize ────────────────────────────────────────────────
|
|
110
|
+
export var MPTokenAuthorizeFlags;
|
|
111
|
+
(function (MPTokenAuthorizeFlags) {
|
|
112
|
+
MPTokenAuthorizeFlags[MPTokenAuthorizeFlags["tfMPTUnauthorize"] = 1] = "tfMPTUnauthorize";
|
|
113
|
+
})(MPTokenAuthorizeFlags || (MPTokenAuthorizeFlags = {}));
|
|
114
|
+
// ─── Clawback ────────────────────────────────────────────────────────
|
|
115
|
+
export var ClawbackFlags;
|
|
116
|
+
(function (ClawbackFlags) {
|
|
117
|
+
ClawbackFlags[ClawbackFlags["tfClawTwoAssets"] = 1] = "tfClawTwoAssets";
|
|
118
|
+
})(ClawbackFlags || (ClawbackFlags = {}));
|
|
119
|
+
// ─── XChainModifyBridge ──────────────────────────────────────────────
|
|
120
|
+
export var XChainModifyBridgeFlags;
|
|
121
|
+
(function (XChainModifyBridgeFlags) {
|
|
122
|
+
XChainModifyBridgeFlags[XChainModifyBridgeFlags["tfClearAccountCreateAmount"] = 65536] = "tfClearAccountCreateAmount";
|
|
123
|
+
})(XChainModifyBridgeFlags || (XChainModifyBridgeFlags = {}));
|
|
124
|
+
// ─── Batch ───────────────────────────────────────────────────────────
|
|
125
|
+
export var BatchFlags;
|
|
126
|
+
(function (BatchFlags) {
|
|
127
|
+
BatchFlags[BatchFlags["tfAllOrNothing"] = 1] = "tfAllOrNothing";
|
|
128
|
+
BatchFlags[BatchFlags["tfOnlyOne"] = 2] = "tfOnlyOne";
|
|
129
|
+
BatchFlags[BatchFlags["tfUntilFailure"] = 4] = "tfUntilFailure";
|
|
130
|
+
BatchFlags[BatchFlags["tfIndependent"] = 8] = "tfIndependent";
|
|
131
|
+
})(BatchFlags || (BatchFlags = {}));
|
|
132
|
+
//# sourceMappingURL=flags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flags.js","sourceRoot":"","sources":["../../src/types/flags.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type barrel — re-exports all type definitions.
|
|
3
|
+
*/
|
|
4
|
+
export type { Amount, IssuedCurrencyAmount, MPTAmount, ClawbackAmount, IssuedCurrency, Currency, } from './amounts.js';
|
|
5
|
+
export type { Memo, Signer, PathStep, Path, XChainBridge, AuthorizeCredential, SignerEntry, OracleDataSeries, } from './common.js';
|
|
6
|
+
export type { BaseTransactionFields, PreparedTransactionFields, SignedTransactionFields, } from './base.js';
|
|
7
|
+
export type { TransactionType } from './transaction-types.js';
|
|
8
|
+
export { GlobalFlags, PaymentFlags, AccountSetAsfFlags, AccountSetTfFlags, TrustSetFlags, OfferCreateFlags, NFTokenMintFlags, NFTokenCreateOfferFlags, PaymentChannelClaimFlags, AMMDepositFlags, AMMWithdrawFlags, MPTokenAuthorizeFlags, ClawbackFlags, XChainModifyBridgeFlags, BatchFlags, } from './flags.js';
|
|
9
|
+
export type { GlobalFlagsInterface, PaymentFlagsInterface, AccountSetFlagsInterface, TrustSetFlagsInterface, OfferCreateFlagsInterface, NFTokenMintFlagsInterface, NFTokenCreateOfferFlagsInterface, PaymentChannelClaimFlagsInterface, AMMDepositFlagsInterface, AMMWithdrawFlagsInterface, MPTokenAuthorizeFlagsInterface, ClawbackFlagsInterface, XChainModifyBridgeFlagsInterface, BatchFlagsInterface, } from './flags.js';
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,YAAY,EACV,MAAM,EACN,oBAAoB,EACpB,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,GACT,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,qBAAqB,EACrB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,WAAW,CAAC;AAEnB,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EACL,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EACb,uBAAuB,EACvB,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,gCAAgC,EAChC,iCAAiC,EACjC,wBAAwB,EACxB,yBAAyB,EACzB,8BAA8B,EAC9B,sBAAsB,EACtB,gCAAgC,EAChC,mBAAmB,GACpB,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { GlobalFlags, PaymentFlags, AccountSetAsfFlags, AccountSetTfFlags, TrustSetFlags, OfferCreateFlags, NFTokenMintFlags, NFTokenCreateOfferFlags, PaymentChannelClaimFlags, AMMDepositFlags, AMMWithdrawFlags, MPTokenAuthorizeFlags, ClawbackFlags, XChainModifyBridgeFlags, BatchFlags, } from './flags.js';
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AA+BA,OAAO,EACL,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EACb,uBAAuB,EACvB,UAAU,GACX,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* All XRPL transaction type strings as a discriminated union.
|
|
3
|
+
*
|
|
4
|
+
* This is the single source of truth for valid TransactionType values.
|
|
5
|
+
*/
|
|
6
|
+
export type TransactionType = 'AccountDelete' | 'AccountSet' | 'SetRegularKey' | 'SignerListSet' | 'DelegateSet' | 'DepositPreauth' | 'TicketCreate' | 'Clawback' | 'Payment' | 'CheckCreate' | 'CheckCash' | 'CheckCancel' | 'EscrowCreate' | 'EscrowFinish' | 'EscrowCancel' | 'PaymentChannelCreate' | 'PaymentChannelFund' | 'PaymentChannelClaim' | 'OfferCreate' | 'OfferCancel' | 'TrustSet' | 'NFTokenMint' | 'NFTokenBurn' | 'NFTokenCreateOffer' | 'NFTokenCancelOffer' | 'NFTokenAcceptOffer' | 'NFTokenModify' | 'MPTokenAuthorize' | 'MPTokenIssuanceCreate' | 'MPTokenIssuanceDestroy' | 'MPTokenIssuanceSet' | 'AMMCreate' | 'AMMDeposit' | 'AMMWithdraw' | 'AMMVote' | 'AMMBid' | 'AMMClawback' | 'AMMDelete' | 'XChainCreateBridge' | 'XChainModifyBridge' | 'XChainCommit' | 'XChainClaim' | 'XChainAccountCreateCommit' | 'XChainCreateClaimID' | 'XChainAddClaimAttestation' | 'XChainAddAccountCreateAttestation' | 'VaultCreate' | 'VaultDeposit' | 'VaultWithdraw' | 'VaultSet' | 'VaultDelete' | 'VaultClawback' | 'LoanSet' | 'LoanDelete' | 'LoanManage' | 'LoanPay' | 'LoanBrokerSet' | 'LoanBrokerDelete' | 'LoanBrokerCoverClawback' | 'LoanBrokerCoverDeposit' | 'LoanBrokerCoverWithdraw' | 'CredentialCreate' | 'CredentialAccept' | 'CredentialDelete' | 'OracleSet' | 'OracleDelete' | 'DIDSet' | 'DIDDelete' | 'PermissionedDomainSet' | 'PermissionedDomainDelete' | 'Batch';
|
|
7
|
+
//# sourceMappingURL=transaction-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction-types.d.ts","sourceRoot":"","sources":["../../src/types/transaction-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAEvB,eAAe,GACf,YAAY,GACZ,eAAe,GACf,eAAe,GACf,aAAa,GACb,gBAAgB,GAChB,cAAc,GACd,UAAU,GAGV,SAAS,GACT,aAAa,GACb,WAAW,GACX,aAAa,GACb,cAAc,GACd,cAAc,GACd,cAAc,GACd,sBAAsB,GACtB,oBAAoB,GACpB,qBAAqB,GAGrB,aAAa,GACb,aAAa,GAGb,UAAU,GAGV,aAAa,GACb,aAAa,GACb,oBAAoB,GACpB,oBAAoB,GACpB,oBAAoB,GACpB,eAAe,GAGf,kBAAkB,GAClB,uBAAuB,GACvB,wBAAwB,GACxB,oBAAoB,GAGpB,WAAW,GACX,YAAY,GACZ,aAAa,GACb,SAAS,GACT,QAAQ,GACR,aAAa,GACb,WAAW,GAGX,oBAAoB,GACpB,oBAAoB,GACpB,cAAc,GACd,aAAa,GACb,2BAA2B,GAC3B,qBAAqB,GACrB,2BAA2B,GAC3B,mCAAmC,GAGnC,aAAa,GACb,cAAc,GACd,eAAe,GACf,UAAU,GACV,aAAa,GACb,eAAe,GAGf,SAAS,GACT,YAAY,GACZ,YAAY,GACZ,SAAS,GACT,eAAe,GACf,kBAAkB,GAClB,yBAAyB,GACzB,wBAAwB,GACxB,yBAAyB,GAGzB,kBAAkB,GAClB,kBAAkB,GAClB,kBAAkB,GAGlB,WAAW,GACX,cAAc,GAGd,QAAQ,GACR,WAAW,GAGX,uBAAuB,GACvB,0BAA0B,GAG1B,OAAO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction-types.js","sourceRoot":"","sources":["../../src/types/transaction-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validate the common fields of a transaction object.
|
|
3
|
+
*
|
|
4
|
+
* @param tx - A record to validate as a base transaction.
|
|
5
|
+
* @throws ValidationError when required fields are missing or invalid.
|
|
6
|
+
*/
|
|
7
|
+
export declare function validateBaseTransaction(tx: Record<string, unknown>): void;
|
|
8
|
+
//# sourceMappingURL=base.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/validation/base.ts"],"names":[],"mappings":"AAgBA;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAkFzE"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base transaction validation.
|
|
3
|
+
*
|
|
4
|
+
* Validates the common fields present on every XRPL transaction.
|
|
5
|
+
*/
|
|
6
|
+
import { ValidationError } from '../errors.js';
|
|
7
|
+
import { isRecord, isString, isNumber, isArray, isAccount, isMemo, isSigner, } from './helpers.js';
|
|
8
|
+
/**
|
|
9
|
+
* Validate the common fields of a transaction object.
|
|
10
|
+
*
|
|
11
|
+
* @param tx - A record to validate as a base transaction.
|
|
12
|
+
* @throws ValidationError when required fields are missing or invalid.
|
|
13
|
+
*/
|
|
14
|
+
export function validateBaseTransaction(tx) {
|
|
15
|
+
if (!isRecord(tx)) {
|
|
16
|
+
throw new ValidationError('Transaction: expected a valid object');
|
|
17
|
+
}
|
|
18
|
+
if (tx['TransactionType'] === undefined) {
|
|
19
|
+
throw new ValidationError('Transaction: missing field TransactionType');
|
|
20
|
+
}
|
|
21
|
+
if (!isString(tx['TransactionType'])) {
|
|
22
|
+
throw new ValidationError('Transaction: TransactionType must be a string');
|
|
23
|
+
}
|
|
24
|
+
if (tx['Account'] === undefined) {
|
|
25
|
+
throw new ValidationError('Transaction: missing field Account');
|
|
26
|
+
}
|
|
27
|
+
if (!isString(tx['Account'])) {
|
|
28
|
+
throw new ValidationError('Transaction: Account must be a string');
|
|
29
|
+
}
|
|
30
|
+
// Optional field validations
|
|
31
|
+
if (tx['Fee'] !== undefined && !isString(tx['Fee'])) {
|
|
32
|
+
throw new ValidationError('Transaction: Fee must be a string');
|
|
33
|
+
}
|
|
34
|
+
if (tx['Sequence'] !== undefined && !isNumber(tx['Sequence'])) {
|
|
35
|
+
throw new ValidationError('Transaction: Sequence must be a number');
|
|
36
|
+
}
|
|
37
|
+
if (tx['AccountTxnID'] !== undefined && !isString(tx['AccountTxnID'])) {
|
|
38
|
+
throw new ValidationError('Transaction: AccountTxnID must be a string');
|
|
39
|
+
}
|
|
40
|
+
if (tx['LastLedgerSequence'] !== undefined && !isNumber(tx['LastLedgerSequence'])) {
|
|
41
|
+
throw new ValidationError('Transaction: LastLedgerSequence must be a number');
|
|
42
|
+
}
|
|
43
|
+
if (tx['Memos'] !== undefined) {
|
|
44
|
+
const memos = tx['Memos'];
|
|
45
|
+
if (!isArray(memos) || !memos.every(isMemo)) {
|
|
46
|
+
throw new ValidationError('Transaction: invalid Memos');
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
if (tx['Signers'] !== undefined) {
|
|
50
|
+
const signers = tx['Signers'];
|
|
51
|
+
if (!isArray(signers) || signers.length === 0 || !signers.every(isSigner)) {
|
|
52
|
+
throw new ValidationError('Transaction: invalid Signers');
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
if (tx['SourceTag'] !== undefined && !isNumber(tx['SourceTag'])) {
|
|
56
|
+
throw new ValidationError('Transaction: SourceTag must be a number');
|
|
57
|
+
}
|
|
58
|
+
if (tx['SigningPubKey'] !== undefined && !isString(tx['SigningPubKey'])) {
|
|
59
|
+
throw new ValidationError('Transaction: SigningPubKey must be a string');
|
|
60
|
+
}
|
|
61
|
+
if (tx['TicketSequence'] !== undefined && !isNumber(tx['TicketSequence'])) {
|
|
62
|
+
throw new ValidationError('Transaction: TicketSequence must be a number');
|
|
63
|
+
}
|
|
64
|
+
if (tx['TxnSignature'] !== undefined && !isString(tx['TxnSignature'])) {
|
|
65
|
+
throw new ValidationError('Transaction: TxnSignature must be a string');
|
|
66
|
+
}
|
|
67
|
+
if (tx['NetworkID'] !== undefined && !isNumber(tx['NetworkID'])) {
|
|
68
|
+
throw new ValidationError('Transaction: NetworkID must be a number');
|
|
69
|
+
}
|
|
70
|
+
if (tx['Delegate'] !== undefined) {
|
|
71
|
+
if (!isAccount(tx['Delegate'])) {
|
|
72
|
+
throw new ValidationError('Transaction: invalid Delegate');
|
|
73
|
+
}
|
|
74
|
+
if (tx['Delegate'] === tx['Account']) {
|
|
75
|
+
throw new ValidationError('Transaction: Account and Delegate addresses cannot be the same');
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/validation/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zero-dependency runtime validation helpers.
|
|
3
|
+
*
|
|
4
|
+
* These replace the validators from xrpl.js that depend on
|
|
5
|
+
* ripple-address-codec and ripple-binary-codec.
|
|
6
|
+
*/
|
|
7
|
+
import type { Amount, IssuedCurrencyAmount, MPTAmount, Currency, IssuedCurrency, ClawbackAmount } from '../types/amounts.js';
|
|
8
|
+
import type { Memo, Signer, Path, XChainBridge, AuthorizeCredential } from '../types/common.js';
|
|
9
|
+
export declare function isRecord(value: unknown): value is Record<string, unknown>;
|
|
10
|
+
export declare function isString(value: unknown): value is string;
|
|
11
|
+
export declare function isNumber(value: unknown): value is number;
|
|
12
|
+
export declare function isArray<T = unknown>(value: unknown): value is T[];
|
|
13
|
+
export declare function isHex(value: string): boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Check if a string looks like a valid XRPL classic or X-address.
|
|
16
|
+
* This is a format-only check (no base58 checksum verification).
|
|
17
|
+
*/
|
|
18
|
+
export declare function isAccount(value: unknown): value is string;
|
|
19
|
+
export declare function isIssuedCurrencyAmount(value: unknown): value is IssuedCurrencyAmount;
|
|
20
|
+
export declare function isMPTAmount(value: unknown): value is MPTAmount;
|
|
21
|
+
export declare function isAmount(value: unknown): value is Amount;
|
|
22
|
+
export declare function isClawbackAmount(value: unknown): value is ClawbackAmount;
|
|
23
|
+
export declare function isIssuedCurrency(value: unknown): value is IssuedCurrency;
|
|
24
|
+
export declare function isCurrency(value: unknown): value is Currency;
|
|
25
|
+
export declare function isMemo(value: unknown): value is Memo;
|
|
26
|
+
export declare function isSigner(value: unknown): value is Signer;
|
|
27
|
+
export declare function isPathStep(value: unknown): value is {
|
|
28
|
+
account?: string;
|
|
29
|
+
currency?: string;
|
|
30
|
+
issuer?: string;
|
|
31
|
+
};
|
|
32
|
+
export declare function isPath(value: unknown): value is Path;
|
|
33
|
+
export declare function isPaths(value: unknown): value is Path[];
|
|
34
|
+
export declare function isXChainBridge(value: unknown): value is XChainBridge;
|
|
35
|
+
export declare function isAuthorizeCredential(value: unknown): value is AuthorizeCredential;
|
|
36
|
+
export declare function isDomainID(value: unknown): value is string;
|
|
37
|
+
export declare function isLedgerEntryId(value: unknown): value is string;
|
|
38
|
+
/**
|
|
39
|
+
* Check if a specific bit flag is enabled in a numeric flags value.
|
|
40
|
+
*/
|
|
41
|
+
export declare function isFlagEnabled(flags: number, flag: number): boolean;
|
|
42
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/validation/helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EACV,MAAM,EACN,oBAAoB,EACpB,SAAS,EACT,QAAQ,EACR,cAAc,EACd,cAAc,EACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAIhG,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAExD;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAExD;AAED,wBAAgB,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,CAAC,EAAE,CAEjE;AAMD,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE5C;AAUD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAKzD;AAID,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,oBAAoB,CAQ/B;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,SAAS,CAO9D;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAExD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAExE;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAQxE;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,QAAQ,CAO5D;AAID,wBAAgB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,IAAI,CAepD;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAUxD;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,OAAO,GACb,KAAK,IAAI;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAWnE;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,IAAI,CAGpD;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,IAAI,EAAE,CAGvD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CASpE;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,mBAAmB,CAU9B;AAMD,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAE1D;AAMD,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAI/D;AAID;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAElE"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
// ─── Primitives ──────────────────────────────────────────────────────
|
|
2
|
+
export function isRecord(value) {
|
|
3
|
+
return value !== null && typeof value === 'object' && !Array.isArray(value);
|
|
4
|
+
}
|
|
5
|
+
export function isString(value) {
|
|
6
|
+
return typeof value === 'string';
|
|
7
|
+
}
|
|
8
|
+
export function isNumber(value) {
|
|
9
|
+
return typeof value === 'number';
|
|
10
|
+
}
|
|
11
|
+
export function isArray(value) {
|
|
12
|
+
return value != null && Array.isArray(value);
|
|
13
|
+
}
|
|
14
|
+
// ─── Hex ─────────────────────────────────────────────────────────────
|
|
15
|
+
const HEX_REGEX = /^[0-9A-Fa-f]+$/u;
|
|
16
|
+
export function isHex(value) {
|
|
17
|
+
return HEX_REGEX.test(value);
|
|
18
|
+
}
|
|
19
|
+
// ─── Account address ─────────────────────────────────────────────────
|
|
20
|
+
// Lightweight check — validates format without full base58 checksum.
|
|
21
|
+
// For a zero-dependency package this is the pragmatic trade-off.
|
|
22
|
+
// Full address validation can be done via the xrpl integration layer.
|
|
23
|
+
const CLASSIC_ADDRESS_REGEX = /^r[1-9A-HJ-NP-Za-km-z]{24,34}$/u;
|
|
24
|
+
const X_ADDRESS_REGEX = /^X[1-9A-HJ-NP-Za-km-z]{46}$/u;
|
|
25
|
+
/**
|
|
26
|
+
* Check if a string looks like a valid XRPL classic or X-address.
|
|
27
|
+
* This is a format-only check (no base58 checksum verification).
|
|
28
|
+
*/
|
|
29
|
+
export function isAccount(value) {
|
|
30
|
+
return (isString(value) &&
|
|
31
|
+
(CLASSIC_ADDRESS_REGEX.test(value) || X_ADDRESS_REGEX.test(value)));
|
|
32
|
+
}
|
|
33
|
+
// ─── Amount types ────────────────────────────────────────────────────
|
|
34
|
+
export function isIssuedCurrencyAmount(value) {
|
|
35
|
+
return (isRecord(value) &&
|
|
36
|
+
Object.keys(value).length === 3 &&
|
|
37
|
+
isString(value['currency']) &&
|
|
38
|
+
isString(value['issuer']) &&
|
|
39
|
+
isString(value['value']));
|
|
40
|
+
}
|
|
41
|
+
export function isMPTAmount(value) {
|
|
42
|
+
return (isRecord(value) &&
|
|
43
|
+
Object.keys(value).length === 2 &&
|
|
44
|
+
isString(value['mpt_issuance_id']) &&
|
|
45
|
+
isString(value['value']));
|
|
46
|
+
}
|
|
47
|
+
export function isAmount(value) {
|
|
48
|
+
return isString(value) || isIssuedCurrencyAmount(value) || isMPTAmount(value);
|
|
49
|
+
}
|
|
50
|
+
export function isClawbackAmount(value) {
|
|
51
|
+
return isIssuedCurrencyAmount(value) || isMPTAmount(value);
|
|
52
|
+
}
|
|
53
|
+
export function isIssuedCurrency(value) {
|
|
54
|
+
return (isRecord(value) &&
|
|
55
|
+
((Object.keys(value).length === 2 &&
|
|
56
|
+
isString(value['currency']) &&
|
|
57
|
+
isString(value['issuer'])) ||
|
|
58
|
+
(Object.keys(value).length === 1 && value['currency'] === 'XRP')));
|
|
59
|
+
}
|
|
60
|
+
export function isCurrency(value) {
|
|
61
|
+
return (isRecord(value) &&
|
|
62
|
+
(isIssuedCurrency(value) ||
|
|
63
|
+
(Object.keys(value).length === 1 && value['currency'] === 'XRP') ||
|
|
64
|
+
(Object.keys(value).length === 1 && isString(value['mpt_issuance_id']))));
|
|
65
|
+
}
|
|
66
|
+
// ─── Supporting types ────────────────────────────────────────────────
|
|
67
|
+
export function isMemo(value) {
|
|
68
|
+
if (!isRecord(value))
|
|
69
|
+
return false;
|
|
70
|
+
const memo = value['Memo'];
|
|
71
|
+
if (!isRecord(memo))
|
|
72
|
+
return false;
|
|
73
|
+
const keys = Object.keys(memo);
|
|
74
|
+
if (keys.length < 1 || keys.length > 3)
|
|
75
|
+
return false;
|
|
76
|
+
const validKeys = ['MemoData', 'MemoType', 'MemoFormat'];
|
|
77
|
+
if (!keys.every((k) => validKeys.includes(k)))
|
|
78
|
+
return false;
|
|
79
|
+
if (memo['MemoData'] != null && !(isString(memo['MemoData']) && isHex(memo['MemoData'])))
|
|
80
|
+
return false;
|
|
81
|
+
if (memo['MemoType'] != null && !(isString(memo['MemoType']) && isHex(memo['MemoType'])))
|
|
82
|
+
return false;
|
|
83
|
+
if (memo['MemoFormat'] != null && !(isString(memo['MemoFormat']) && isHex(memo['MemoFormat'])))
|
|
84
|
+
return false;
|
|
85
|
+
return true;
|
|
86
|
+
}
|
|
87
|
+
export function isSigner(value) {
|
|
88
|
+
if (!isRecord(value))
|
|
89
|
+
return false;
|
|
90
|
+
const signer = value['Signer'];
|
|
91
|
+
if (!isRecord(signer))
|
|
92
|
+
return false;
|
|
93
|
+
return (Object.keys(signer).length === 3 &&
|
|
94
|
+
isString(signer['Account']) &&
|
|
95
|
+
isString(signer['TxnSignature']) &&
|
|
96
|
+
isString(signer['SigningPubKey']));
|
|
97
|
+
}
|
|
98
|
+
export function isPathStep(value) {
|
|
99
|
+
if (!isRecord(value))
|
|
100
|
+
return false;
|
|
101
|
+
if (value['account'] !== undefined && !isString(value['account']))
|
|
102
|
+
return false;
|
|
103
|
+
if (value['currency'] !== undefined && !isString(value['currency']))
|
|
104
|
+
return false;
|
|
105
|
+
if (value['issuer'] !== undefined && !isString(value['issuer']))
|
|
106
|
+
return false;
|
|
107
|
+
// At least one field must be present
|
|
108
|
+
return (value['account'] !== undefined ||
|
|
109
|
+
value['currency'] !== undefined ||
|
|
110
|
+
value['issuer'] !== undefined);
|
|
111
|
+
}
|
|
112
|
+
export function isPath(value) {
|
|
113
|
+
if (!isArray(value) || value.length === 0)
|
|
114
|
+
return false;
|
|
115
|
+
return value.every(isPathStep);
|
|
116
|
+
}
|
|
117
|
+
export function isPaths(value) {
|
|
118
|
+
if (!isArray(value) || value.length === 0)
|
|
119
|
+
return false;
|
|
120
|
+
return value.every(isPath);
|
|
121
|
+
}
|
|
122
|
+
export function isXChainBridge(value) {
|
|
123
|
+
return (isRecord(value) &&
|
|
124
|
+
Object.keys(value).length === 4 &&
|
|
125
|
+
isString(value['LockingChainDoor']) &&
|
|
126
|
+
isIssuedCurrency(value['LockingChainIssue']) &&
|
|
127
|
+
isString(value['IssuingChainDoor']) &&
|
|
128
|
+
isIssuedCurrency(value['IssuingChainIssue']));
|
|
129
|
+
}
|
|
130
|
+
export function isAuthorizeCredential(value) {
|
|
131
|
+
return (isRecord(value) &&
|
|
132
|
+
isRecord(value['Credential']) &&
|
|
133
|
+
Object.keys(value).length === 1 &&
|
|
134
|
+
isString(value['Credential']['Issuer']) &&
|
|
135
|
+
isString(value['Credential']['CredentialType']));
|
|
136
|
+
}
|
|
137
|
+
// ─── Domain ID ───────────────────────────────────────────────────────
|
|
138
|
+
const DOMAIN_ID_LENGTH = 64;
|
|
139
|
+
export function isDomainID(value) {
|
|
140
|
+
return isString(value) && value.length === DOMAIN_ID_LENGTH && isHex(value);
|
|
141
|
+
}
|
|
142
|
+
// ─── Ledger entry ID ─────────────────────────────────────────────────
|
|
143
|
+
const LEDGER_ENTRY_ID_LENGTH = 64;
|
|
144
|
+
export function isLedgerEntryId(value) {
|
|
145
|
+
return (isString(value) && isHex(value) && value.length === LEDGER_ENTRY_ID_LENGTH);
|
|
146
|
+
}
|
|
147
|
+
// ─── Flag helpers ────────────────────────────────────────────────────
|
|
148
|
+
/**
|
|
149
|
+
* Check if a specific bit flag is enabled in a numeric flags value.
|
|
150
|
+
*/
|
|
151
|
+
export function isFlagEnabled(flags, flag) {
|
|
152
|
+
return (flags & flag) === flag;
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/validation/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { validateBaseTransaction } from './base.js';
|
|
2
|
+
export { isRecord, isString, isNumber, isArray, isHex, isAccount, isAmount, isIssuedCurrencyAmount, isMPTAmount, isClawbackAmount, isIssuedCurrency, isCurrency, isMemo, isSigner, isPathStep, isPath, isPaths, isXChainBridge, isAuthorizeCredential, isDomainID, isLedgerEntryId, isFlagEnabled, } from './helpers.js';
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/validation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,KAAK,EACL,SAAS,EACT,QAAQ,EACR,sBAAsB,EACtB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,MAAM,EACN,QAAQ,EACR,UAAU,EACV,MAAM,EACN,OAAO,EACP,cAAc,EACd,qBAAqB,EACrB,UAAU,EACV,eAAe,EACf,aAAa,GACd,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { validateBaseTransaction } from './base.js';
|
|
2
|
+
export { isRecord, isString, isNumber, isArray, isHex, isAccount, isAmount, isIssuedCurrencyAmount, isMPTAmount, isClawbackAmount, isIssuedCurrency, isCurrency, isMemo, isSigner, isPathStep, isPath, isPaths, isXChainBridge, isAuthorizeCredential, isDomainID, isLedgerEntryId, isFlagEnabled, } from './helpers.js';
|
|
3
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,KAAK,EACL,SAAS,EACT,QAAQ,EACR,sBAAsB,EACtB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,MAAM,EACN,QAAQ,EACR,UAAU,EACV,MAAM,EACN,OAAO,EACP,cAAc,EACd,qBAAqB,EACrB,UAAU,EACV,eAAe,EACf,aAAa,GACd,MAAM,cAAc,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "xrp-tx",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "A standalone, zero-dependency transaction builder for the XRP Ledger",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"types": "./dist/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"import": "./dist/index.js",
|
|
11
|
+
"types": "./dist/index.d.ts"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"dist",
|
|
16
|
+
"README.md",
|
|
17
|
+
"LICENSE"
|
|
18
|
+
],
|
|
19
|
+
"scripts": {
|
|
20
|
+
"build": "tsc",
|
|
21
|
+
"test": "node --experimental-vm-modules node_modules/.bin/vitest run",
|
|
22
|
+
"test:watch": "node --experimental-vm-modules node_modules/.bin/vitest",
|
|
23
|
+
"clean": "rm -rf dist",
|
|
24
|
+
"prepublishOnly": "npm run clean && npm run build"
|
|
25
|
+
},
|
|
26
|
+
"keywords": [
|
|
27
|
+
"xrp",
|
|
28
|
+
"xrpl",
|
|
29
|
+
"transaction",
|
|
30
|
+
"builder",
|
|
31
|
+
"ripple",
|
|
32
|
+
"ledger",
|
|
33
|
+
"blockchain",
|
|
34
|
+
"crypto"
|
|
35
|
+
],
|
|
36
|
+
"author": "Jonathan Dobson",
|
|
37
|
+
"license": "MIT",
|
|
38
|
+
"devDependencies": {
|
|
39
|
+
"typescript": "^6.0.3",
|
|
40
|
+
"vitest": "^3.2.1"
|
|
41
|
+
},
|
|
42
|
+
"engines": {
|
|
43
|
+
"node": ">=20.0.0"
|
|
44
|
+
},
|
|
45
|
+
"repository": {
|
|
46
|
+
"type": "git",
|
|
47
|
+
"url": "git+https://github.com/Jonathan-Dobson/xrp-tx.git"
|
|
48
|
+
},
|
|
49
|
+
"bugs": {
|
|
50
|
+
"url": "https://github.com/Jonathan-Dobson/xrp-tx/issues"
|
|
51
|
+
},
|
|
52
|
+
"homepage": "https://github.com/Jonathan-Dobson/xrp-tx#readme"
|
|
53
|
+
|
|
54
|
+
}
|