import { parseBolt11 } from "applesauce-core/helpers/bolt11"; import { Tokens } from "../helpers/regexp.js"; import { findAndReplace } from "../nast/find-and-replace.js"; /** Finds and creates lightning invoice nodes in the tree */ export function lightningInvoices() { return (tree) => { findAndReplace(tree, [ [ Tokens.lightning, (_, $1) => { try { const invoice = $1; const parsed = parseBolt11(invoice); return { type: "lightning", invoice, parsed, }; } catch (error) { } return false; }, ], ]); }; }