aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/invoice.ts2
-rw-r--r--src/lib/parse.ts4
2 files changed, 4 insertions, 2 deletions
diff --git a/src/lib/invoice.ts b/src/lib/invoice.ts
index d7576e82..91a69d88 100644
--- a/src/lib/invoice.ts
+++ b/src/lib/invoice.ts
@@ -15,7 +15,7 @@ export default async ({ cookies, request }) => {
items: JSON.parse(form.get("items")),
memo: form.get("memo"),
memoPrompt: form.get("memoPrompt"),
- tip: parseInt(form.get("tip")) || 0,
+ tip: form.get("tip") ?? null,
type: form.get("type"),
prompt: form.get("prompt") === "true",
rate: parseFloat(form.get("rate")) || rates[form.get("currency")],
diff --git a/src/lib/parse.ts b/src/lib/parse.ts
index f6405e4a..b4bf837c 100644
--- a/src/lib/parse.ts
+++ b/src/lib/parse.ts
@@ -8,6 +8,7 @@ export default async (s, host) => {
if (!s) return;
let t = s.trim();
let amount;
+ let invoice;
let user;
if (t.startsWith("http")) redirect(307, t);
@@ -57,7 +58,6 @@ export default async (s, host) => {
t = params.get("lightning");
}
- let invoice;
if (t.toLowerCase().startsWith("ln")) {
try {
invoice = await get(`/invoice/${t}`);
@@ -71,6 +71,8 @@ export default async (s, host) => {
}
}
+ if (invoice) redirect(307, `/invoice/${invoice.id}`);
+
if (t.match(/^🥜([\uFE00-\uFE0F]|[\uE0100-\uE01EF]+)$/)) {
t = Array.from(t)
.slice(1)