@@ -20,45 +20,52 @@ async function depositRlusd(seed, rlusdAmount = "0.5") {
20
20
console . log ( `🔢 Sequence: ${ sequence } ` ) ;
21
21
22
22
// Define RLUSD details 💲
23
- const currencyHex = "524C555344000000000000000000000000000000" ; // RLUSD in Hex
24
- const issuer = "rQhWct2fv4Vc4KRjRgMrxa8xPN9Zx9iLKV" ;
23
+ const RLUSD_CURRENCY = "524C555344000000000000000000000000000000" ; // RLUSD in Hex
24
+ const RLUSD_ISSUER = "rQhWct2fv4Vc4KRjRgMrxa8xPN9Zx9iLKV" ;
25
+
26
+ // Convert XRP amount to drops (to also deposit XRP)
27
+ const xrpAmount = "1" ; // 1 XRP to deposit as well
28
+ const xrpDrops = xrpl . xrpToDrops ( xrpAmount ) ; // Convert to drops
25
29
26
30
// Define the AMM deposit transaction 📥
31
+ // For single asset deposit, use Flags: 524288 and remove Amount2 -> only Amount
32
+ // For two asset deposit, use Flags: 1048576 and include both Amount and Amount2
27
33
const transaction = {
28
34
TransactionType : "AMMDeposit" ,
29
35
Account : wallet . address ,
30
- Amount : {
31
- currency : currencyHex ,
32
- issuer : issuer ,
33
- value : rlusdAmount ,
34
- } ,
35
- Asset : {
36
- currency : currencyHex ,
37
- issuer : issuer ,
38
- } ,
36
+ Asset : { currency : "XRP" } ,
39
37
Asset2 : {
40
- currency : "XRP" ,
38
+ currency : RLUSD_CURRENCY ,
39
+ issuer : RLUSD_ISSUER
41
40
} ,
42
- Flags : 1048576 , // tfSingleAsset 🚩 or tfTwoAsset if you want to deposit XRP to: 2097152
41
+ Amount : xrpDrops , // XRP amount in drops
42
+ Amount2 : {
43
+ currency : RLUSD_CURRENCY ,
44
+ issuer : RLUSD_ISSUER ,
45
+ value : rlusdAmount
46
+ } ,
47
+ Flags : 1048576 , // tfTwoAsset flag (to deposit both assets) or 524288 for single asset
43
48
Fee : "10" ,
44
49
Sequence : sequence ,
45
50
} ;
46
51
47
- console . log ( "\n💰 === Depositing RLUSD to AMM ===" ) ;
52
+ console . log ( "\n💰 === Depositing RLUSD + XRP to AMM ===" ) ;
48
53
console . log ( `📌 Account: ${ wallet . address } ` ) ;
49
54
console . log ( `💵 RLUSD Amount: ${ rlusdAmount } RLUSD` ) ;
55
+ console . log ( `💎 XRP Amount: ${ xrpAmount } XRP` ) ;
50
56
51
57
try {
52
58
// Prepare and sign transaction ✍️
53
59
const prepared = await client . autofill ( transaction ) ;
54
60
const signed = wallet . sign ( prepared ) ;
55
61
console . log ( "🔏 Transaction signed" ) ;
62
+
56
63
// Submit transaction to XRPL 🔄
57
64
const response = await client . submitAndWait ( signed . tx_blob ) ;
58
65
59
66
if ( response . result . meta . TransactionResult === "tesSUCCESS" ) {
60
67
console . log ( "\n🎉 Deposit successful!" ) ;
61
- console . log ( `🔗 Transaction hash: ${ response . result . tx_json . hash } ` ) ;
68
+ console . log ( `🔗 Transaction hash: ${ response . result . hash } ` ) ;
62
69
return response ;
63
70
} else {
64
71
console . log ( "\n❌ Deposit failed" ) ;
@@ -76,7 +83,7 @@ async function depositRlusd(seed, rlusdAmount = "0.5") {
76
83
}
77
84
78
85
( async ( ) => {
79
- const seed = "sEd71CfChR48xigRKg5AJcarEcgFMPk" ;
86
+ const seed = "sEd71CfChR48xigRKg5AJcarEcgFMPk" ; // rMQpZ8VS2vWNqfLjLzMgJG6n4igMAYBJPQ
80
87
const rlusdAmount = "0.5" ;
81
88
try {
82
89
await depositRlusd ( seed , rlusdAmount ) ;
0 commit comments