mirror of
https://github.com/aljazceru/cdk.git
synced 2025-12-24 16:14:54 +01:00
feat: js mint token exampe
This commit is contained in:
61
bindings/cdk-js/examples/mint_token.js
Normal file
61
bindings/cdk-js/examples/mint_token.js
Normal file
@@ -0,0 +1,61 @@
|
||||
const {
|
||||
loadWasmAsync,
|
||||
Wallet,
|
||||
CurrencyUnit
|
||||
} = require("../");
|
||||
|
||||
async function main() {
|
||||
await loadWasmAsync();
|
||||
let seed = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
let mint_url = "https://testnut.cashu.space";
|
||||
let currency = CurrencyUnit.Sat;
|
||||
|
||||
wallet = await new Wallet(seed, []);
|
||||
|
||||
await wallet.addMint(mint_url);
|
||||
await wallet.refreshMint(mint_url);
|
||||
|
||||
|
||||
|
||||
let amount = 10;
|
||||
|
||||
let quote = await wallet?.mintQuote($mint_url, BigInt(amount), currency);
|
||||
let quote_id = quote?.id;
|
||||
|
||||
let invoice = quote?.request;
|
||||
if (invoice != undefined) {
|
||||
data = invoice;
|
||||
}
|
||||
|
||||
let paid = false;
|
||||
while (paid == false) {
|
||||
let check_mint = await wallet?.mintQuoteStatus(mint_url, quote_id);
|
||||
if (check_mint?.paid == true) {
|
||||
paid = true;
|
||||
} else {
|
||||
await new Promise((r) => setTimeout(r, 2000));
|
||||
}
|
||||
|
||||
await wallet?.mint(
|
||||
mint_url,
|
||||
quote_id,
|
||||
undefined,
|
||||
undefined,
|
||||
undefined,
|
||||
);
|
||||
|
||||
let token = await wallet?.send(
|
||||
mint_url,
|
||||
currency,
|
||||
undefined,
|
||||
BigInt(amount) undefined,
|
||||
undefined,
|
||||
);
|
||||
|
||||
console.log(token);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
main();
|
||||
Reference in New Issue
Block a user