// ******************************************************* // ***************** Send Check ************************** // ******************************************************* async function sendCheck() { let net = getNet() const client = new xrpl.Client(net) await client.connect() results = `\n===Connected to ${net}.===\n===Sending check.===\n` resultField.value = results try { const wallet = xrpl.Wallet.fromSeed(accountSeedField.value) let check_amount = amountField.value if (currencyField.value != "XRP") { check_amount = { "currency": currencyField.value, "value": amountField.value, "issuer": wallet.address } } const send_check_tx = { "TransactionType": "CheckCreate", "Account": wallet.address, "SendMax": check_amount, "Destination": destinationField.value } const check_prepared = await client.autofill(send_check_tx) const check_signed = wallet.sign(check_prepared) results = '\n===Sending ' + amountField.value + ' ' + currencyField. value + ' to ' + destinationField.value + '.===\n' resultField.value += results const check_result = await client.submitAndWait(check_signed.tx_blob) if (check_result.result.meta.TransactionResult == "tesSUCCESS") { results += '===Transaction succeeded===\n\n' resultField.value += JSON.stringify(check_result.result, null, 2) xrpBalanceField.value = (await client.getXrpBalance(wallet.address)) } } catch (error) { results = `Error sending transaction: ${error}` resultField.value += results } finally { client.disconnect() } } // end of sendCheck() // ******************************************************* // ********************* Get Checks ********************** // ******************************************************* async function getChecks() { let net = getNet() const client = new xrpl.Client(net) await client.connect() let results = `\n===Connected to ${net}.===\n===Getting account checks.===\n\n` resultField.value = results try { const check_objects = await client.request({ "id": 5, "command": "account_objects", "account": accountAddressField.value, "ledger_index": "validated", "type": "check" }) resultField.value += JSON.stringify(check_objects.result, null, 2) } catch (error) { results = `Error getting checks: ${error}` resultField.value += results } finally { client.disconnect() } } // End of getChecks() // ******************************************************* // ******************** Cash Check ********************** // ******************************************************* async function cashCheck() { let net = getNet() const client = new xrpl.Client(net) await client.connect() results = `\n===Connected to ${net}.===\n===Cashing check.===\n` resultField.value = results try { const wallet = xrpl.Wallet.fromSeed(accountSeedField.value) let check_amount = amountField.value if (currencyField.value != "XRP") { check_amount = { "value": amountField.value, "currency": currencyField.value, "issuer": issuerField.value } } const cash_check_tx = { "TransactionType": "CheckCash", "Account": wallet.address, "Amount": check_amount, "CheckID": checkIdField.value } const cash_prepared = await client.autofill(cash_check_tx) const cash_signed = wallet.sign(cash_prepared) results = ' Receiving ' + amountField.value + ' ' + currencyField.value + '.\n' resultField.value += results const check_result = await client.submitAndWait(cash_signed.tx_blob) if (check_result.result.meta.TransactionResult == "tesSUCCESS") { results = '===Transaction succeeded===\n' + JSON.stringify(check_result.result, null, 2) resultField.value += results } xrpBalanceField.value = (await client.getXrpBalance(wallet.address)) } catch (error) { results = `Error sending transaction: ${error}` resultField.value += results } finally { client.disconnect() } } // end of cashCheck() // ******************************************************* // **************** Cancel Check ************************* // ******************************************************* async function cancelCheck() { let net = getNet() const client = new xrpl.Client(net) await client.connect() results = `\n===Connected to ${net}.===\n===Cancelling check.===\n` resultField.value = results try { const wallet = xrpl.Wallet.fromSeed(accountSeedField.value) const cancel_check_tx = { "TransactionType": "CheckCancel", "Account": wallet.address, "CheckID": checkIdField.value } const cancel_prepared = await client.autofill(cancel_check_tx) const cancel_signed = wallet.sign(cancel_prepared) const check_result = await client.submitAndWait(cancel_signed.tx_blob) if (check_result.result.meta.TransactionResult == "tesSUCCESS") { results += `===Transaction succeeded===\n${check_result.result.meta.TransactionResult}` resultField.value = results } xrpBalanceField.value = (await client.getXrpBalance(wallet.address)) } catch (error) { results = `Error sending transaction: ${error}` resultField.value += results } finally { client.disconnect() } } // end of cancelCheck()