aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2023-01-13 23:49:59 -0800
committerAdam Soltys <[email protected]>2023-01-13 23:49:59 -0800
commitb1ad12734eeafc36a07bd76f649a98ae9ade5723 (patch)
treec8721da657a75160c55aaf6bc7cc573669cb52dd /src
parent277b921ab2a97ac170f980c3c916ab1488318f2f (diff)
downloadcoinos-ui-b1ad12734eeafc36a07bd76f649a98ae9ade5723.tar.gz
coinos-ui-b1ad12734eeafc36a07bd76f649a98ae9ade5723.zip
payments migration
Diffstat (limited to 'src')
-rw-r--r--src/components/AppHeader.svelte4
-rw-r--r--src/components/Invoice.svelte4
-rw-r--r--src/components/Request.svelte4
-rw-r--r--src/lib/socket.js1
-rw-r--r--src/lib/store.js1
-rw-r--r--src/lib/utils.js2
-rw-r--r--src/locales/de.json2
-rw-r--r--src/locales/en.json6
-rw-r--r--src/locales/es.json2
-rw-r--r--src/locales/pt.json2
-rw-r--r--src/routes/(app)/[username]/(profile)/+layout.svelte2
-rw-r--r--src/routes/(app)/[username]/(profile)/messages/+page.svelte4
-rw-r--r--src/routes/(app)/[username]/dashboard/+page.svelte4
-rw-r--r--src/routes/(app)/[username]/payments/[...page]/+page.server.js (renamed from src/routes/(app)/[username]/transactions/[...page]/+page.server.js)4
-rw-r--r--src/routes/(app)/[username]/payments/[...page]/+page.svelte (renamed from src/routes/(app)/[username]/transactions/[...page]/+page.svelte)36
-rw-r--r--src/routes/(app)/[username]/receive/[...param]/+page.svelte7
-rw-r--r--src/routes/(app)/[username]/request/+page.svelte6
-rw-r--r--src/routes/(app)/[username]/request/[id]/+page.svelte6
-rw-r--r--src/routes/(app)/invoice/[id]/+layout.server.js5
-rw-r--r--src/routes/(app)/invoice/[id]/+page.svelte3
-rw-r--r--src/routes/(app)/invoice/[id]/paid/+page.svelte3
-rw-r--r--src/routes/(app)/invoice/[id]/tip/+page.svelte10
-rw-r--r--src/routes/(app)/ln/[lnurl]/+page.svelte2
-rw-r--r--src/routes/(app)/redeem/[redeemcode]/+page.server.js2
-rw-r--r--src/routes/(app)/send/[...text]/+page.svelte2
-rw-r--r--src/routes/(app)/send/[uuid=uuid]/+page.svelte8
-rw-r--r--src/routes/(app)/send/bitcoin/[address]/[...amount]/+page.svelte4
-rw-r--r--src/routes/(app)/send/lightning/[payreq]/+page.svelte6
-rw-r--r--src/routes/(app)/send/user/[username]/[...amount]/+page.svelte2
-rw-r--r--src/routes/(app)/send/voucher/+page.svelte2
-rw-r--r--src/routes/(app)/sent/+page.server.js6
-rw-r--r--src/routes/(app)/sent/+page.svelte8
-rw-r--r--src/routes/(app)/tx/[id]/+page.svelte10
-rw-r--r--src/routes/(app)/voucher/[redeemcode]/+page.server.js2
34 files changed, 78 insertions, 94 deletions
diff --git a/src/components/AppHeader.svelte b/src/components/AppHeader.svelte
index 03767238..59537ffa 100644
--- a/src/components/AppHeader.svelte
+++ b/src/components/AppHeader.svelte
@@ -51,10 +51,10 @@
><Icon icon="numpad" style="mx-auto w-6 md:w-8" />
</button>
</a>
- <a href={`/${user.username}/transactions`}>
+ <a href={`/${user.username}/payments`}>
<button
class="bg-white p-2 rounded-full w-12 h-12 md:w-16 md:h-16 drop-shadow-xl border border-black/10 {$page
- .url.pathname === `/${user.username}/transactions`
+ .url.pathname === `/${user.username}/payments`
? 'opacity-100'
: 'opacity-70 hover:opacity-80'} relative"
><Icon icon="clock" style="mx-auto w-6 md:w-8" />
diff --git a/src/components/Invoice.svelte b/src/components/Invoice.svelte
index 5eb4790c..a8d9cfc6 100644
--- a/src/components/Invoice.svelte
+++ b/src/components/Invoice.svelte
@@ -14,7 +14,7 @@
<Avatar user={$invoice.user.username} size={12} />
<h1 class="my-auto">
<b>{$invoice.user.username}</b>
- {$t('transactions.isRequesting')}
+ {$t('payments.isRequesting')}
<b>{f(($invoice.amount * $invoice.rate) / sats, $invoice.currency)}</b>
{sat($invoice.amount)}
</h1>
@@ -23,7 +23,7 @@
<div class="mx-auto my-auto flex gap-2">
<a href={`/invoice/${$invoice.id}/tip`}>
<button class="rounded-full border py-2 px-4 font-bold hover:opacity-80 w-32">
- {$t('transactions.pay')}
+ {$t('payments.pay')}
</button>
</a>
</div>
diff --git a/src/components/Request.svelte b/src/components/Request.svelte
index ab0b886a..44f8516d 100644
--- a/src/components/Request.svelte
+++ b/src/components/Request.svelte
@@ -18,14 +18,14 @@
<Avatar user={$request.requester} size={12} />
<h1 class="my-auto">
<b>{$request.requester.username}</b>
- {$t('transactions.readyToPay')}
+ {$t('payments.readyToPay')}
</h1>
</div>
</div>
<div class="mx-auto my-auto flex gap-2">
<a href={`/${user.username}/receive/${$request.id}`}>
<button class="rounded-full border py-2 px-4 font-bold hover:opacity-80 w-32">
- {$t('transactions.invoice')}
+ {$t('payments.invoice')}
</button>
</a>
</div>
diff --git a/src/lib/socket.js b/src/lib/socket.js
index aba2f965..755c87e4 100644
--- a/src/lib/socket.js
+++ b/src/lib/socket.js
@@ -1,7 +1,6 @@
import { get } from 'svelte/store';
import {
events as $events,
- invoices,
invoice,
request,
newPayment,
diff --git a/src/lib/store.js b/src/lib/store.js
index 7383716d..e4d017b8 100644
--- a/src/lib/store.js
+++ b/src/lib/store.js
@@ -38,7 +38,6 @@ export const rate = writable();
export const user = writable();
export const selectedRate = writable();
export const token = persistSession('token');
-export const invoices = writable({});
export const newPayment = persistLocal('newPayment');
export const colorTheme = writable('from-primary to-gradient');
export const avatarUpload = writable();
diff --git a/src/lib/utils.js b/src/lib/utils.js
index c1ec5e5b..f2d78ee8 100644
--- a/src/lib/utils.js
+++ b/src/lib/utils.js
@@ -86,7 +86,7 @@ export let protectedRoutes = [
/customers/,
/dashboard/,
/settings/,
- /transactions/,
+ /payments/,
/\/ln\//,
/request/
];
diff --git a/src/locales/de.json b/src/locales/de.json
index 2262dea3..9f0c245e 100644
--- a/src/locales/de.json
+++ b/src/locales/de.json
@@ -243,7 +243,7 @@
"send": "Senden"
}
},
- "transactions": {
+ "payments": {
"header": "Transaktionen",
"AMOUNT": "GESAMTBETRAG",
"TYPE": "TYP",
diff --git a/src/locales/en.json b/src/locales/en.json
index ec89d1c4..86504df5 100644
--- a/src/locales/en.json
+++ b/src/locales/en.json
@@ -257,12 +257,12 @@
"send": "Send"
}
},
- "transactions": {
+ "payments": {
"amount": "Amount",
"date": "Date",
"id": "Transaction ID",
"details": "Transaction Details",
- "header": "Transactions",
+ "header": "Payments",
"preimage": "Preimage",
"type": "Type",
"time": "Time",
@@ -292,7 +292,7 @@
"isRequesting": "is requesting",
"invoiceFrom": "Invoice from",
"awaiting": "Awaiting",
- "tapAnywhere": "Tap anywhere",
+ "tapAnywhere": "Tap anywhere to continue",
"from": "from",
"redeem": "Redeem",
"redeemed": "Redeemed",
diff --git a/src/locales/es.json b/src/locales/es.json
index 5043243e..e151ec1a 100644
--- a/src/locales/es.json
+++ b/src/locales/es.json
@@ -241,7 +241,7 @@
"send": "Enviar"
}
},
- "transactions": {
+ "payments": {
"header": "Historial de transacciones",
"AMOUNT": "MONTO",
"TYPE": "TIPO",
diff --git a/src/locales/pt.json b/src/locales/pt.json
index 72f9ef34..117a5101 100644
--- a/src/locales/pt.json
+++ b/src/locales/pt.json
@@ -243,7 +243,7 @@
"send": "Send"
}
},
- "transactions": {
+ "payments": {
"header": "Transactions",
"AMOUNT": "AMOUNT",
"TYPE": "TYPE",
diff --git a/src/routes/(app)/[username]/(profile)/+layout.svelte b/src/routes/(app)/[username]/(profile)/+layout.svelte
index d76ff065..6528d688 100644
--- a/src/routes/(app)/[username]/(profile)/+layout.svelte
+++ b/src/routes/(app)/[username]/(profile)/+layout.svelte
@@ -118,7 +118,7 @@
<!-- <button class="rounded-full border py-3 px-6 font-bold hover:opacity-80 flex w-60"> -->
<!-- <div class="mx-auto flex"> -->
<!-- <Icon icon="support" style="mr-1" /> -->
- <!-- <div>{$t('transactions.requestAnInvoice')}</div> -->
+ <!-- <div>{$t('payments.requestAnInvoice')}</div> -->
<!-- </div> -->
<!-- </button> -->
<!-- </a> -->
diff --git a/src/routes/(app)/[username]/(profile)/messages/+page.svelte b/src/routes/(app)/[username]/(profile)/messages/+page.svelte
index fd12c6bf..47228015 100644
--- a/src/routes/(app)/[username]/(profile)/messages/+page.svelte
+++ b/src/routes/(app)/[username]/(profile)/messages/+page.svelte
@@ -77,7 +77,7 @@
<div class="container max-w-lg px-4 mx-auto mt-10 space-y-5">
<h1 class="px-3 md:px-0 text-center text-3xl md:text-4xl font-semibold">
- {$t('transactions.sendMessage')}
+ {$t('payments.sendMessage')}
</h1>
<div class="max-h-[calc(50vh)] overflow-y-scroll p-4" bind:this={pane}>
@@ -105,7 +105,7 @@
<input
use:focus
name="message"
- placeholder={$t('transactions.sendMessage')}
+ placeholder={$t('payments.sendMessage')}
class="w-full p-4 border rounded-xl"
bind:value={message}
bind:this={input}
diff --git a/src/routes/(app)/[username]/dashboard/+page.svelte b/src/routes/(app)/[username]/dashboard/+page.svelte
index 86ec5c0e..3779ab2f 100644
--- a/src/routes/(app)/[username]/dashboard/+page.svelte
+++ b/src/routes/(app)/[username]/dashboard/+page.svelte
@@ -103,7 +103,7 @@
<!-- <div class="flex"> -->
<!-- <Avatar user={recipient} size={20} /> -->
<!-- <div class="my-auto text-left"> -->
- <!-- <p class="text-secondary">{$t('transactions.invoiceFrom')}</p> -->
+ <!-- <p class="text-secondary">{$t('payments.invoiceFrom')}</p> -->
<!-- <p class="ml-1 text-lg break-words">{recipient.username}</p> -->
<!-- </div> -->
<!-- </div> -->
@@ -111,7 +111,7 @@
<!-- <div class="flex"> -->
<!-- <Avatar user={requester} size={20} /> -->
<!-- <div class="my-auto text-left"> -->
- <!-- <p class="text-secondary">{$t('transactions.awaiting')}</p> -->
+ <!-- <p class="text-secondary">{$t('payments.awaiting')}</p> -->
<!-- <p class="ml-1 text-lg break-words">{requester.username}</p> -->
<!-- </div> -->
<!-- </div> -->
diff --git a/src/routes/(app)/[username]/transactions/[...page]/+page.server.js b/src/routes/(app)/[username]/payments/[...page]/+page.server.js
index 6883dfa9..6ced265d 100644
--- a/src/routes/(app)/[username]/transactions/[...page]/+page.server.js
+++ b/src/routes/(app)/[username]/payments/[...page]/+page.server.js
@@ -17,8 +17,8 @@ export async function load({ cookies, params, request }) {
let url = `/payments?v2=true&start=${start * 1000}&limit=${limit}&offset=${offset}`;
if (end) url += `&end=${end * 1000}`;
- let { total, transactions } = await get(url, auth(cookies));
+ let { total, payments } = await get(url, auth(cookies));
let pages = new Array(Math.ceil(total / limit));
- return { total, transactions, page, pages, start, end };
+ return { total, payments, page, pages, start, end };
}
diff --git a/src/routes/(app)/[username]/transactions/[...page]/+page.svelte b/src/routes/(app)/[username]/payments/[...page]/+page.svelte
index 89207134..4348eb72 100644
--- a/src/routes/(app)/[username]/transactions/[...page]/+page.svelte
+++ b/src/routes/(app)/[username]/payments/[...page]/+page.svelte
@@ -20,10 +20,10 @@
};
let presets = [
- { title: $t('transactions.day'), start: sub(new Date(), { days: 1 }), end: null },
- { title: $t('transactions.week'), start: sub(new Date(), { days: 7 }), end: null },
- { title: $t('transactions.month'), start: sub(new Date(), { months: 1 }), end: null },
- { title: $t('transactions.all'), start: sub(new Date(), { years: 5 }), end: null }
+ { title: $t('payments.day'), start: sub(new Date(), { days: 1 }), end: null },
+ { title: $t('payments.week'), start: sub(new Date(), { days: 7 }), end: null },
+ { title: $t('payments.month'), start: sub(new Date(), { months: 1 }), end: null },
+ { title: $t('payments.all'), start: sub(new Date(), { years: 5 }), end: null }
];
$: selection = start
@@ -32,9 +32,9 @@
let p,
total,
- transactions = [],
+ payments = [],
pages = [];
- $: data && ({ page: p, pages, start, end, total, transactions: $txns } = data);
+ $: data && ({ page: p, pages, start, end, total, payments: $txns } = data);
$: $page && ($newPayment = false);
$: $newPayment && invalidate(`/users/${user.username}`);
@@ -50,7 +50,7 @@
'\n' +
$txns.map((r) => keys.map((k) => `"${r[k]}"`).join(',')).join('\n');
- const filename = 'transactions.csv';
+ const filename = 'payments.csv';
let blob = new Blob([csv], { type: 'text/csv;charset=utf-8;' });
if (navigator.msSaveBlob) {
navigator.msSaveBlob(blob, filename);
@@ -71,7 +71,7 @@
<div class="mt-24 mb-20">
<h1 class="px-3 md:px-0 text-center text-3xl md:text-4xl font-semibold mb-10">
- {$t('transactions.header')}
+ {$t('payments.header')}
</h1>
<div class="container w-full mx-auto text-lg px-4 max-w-xl space-y-5">
@@ -80,7 +80,7 @@
{#each presets as { start, end, title }, i}
<a
class:active={selection === i}
- href={`/${user.username}/transactions/${getUnixTime(start) + '/'}1`}
+ href={`/${user.username}/payments/${getUnixTime(start) + '/'}1`}
>
<button
class="text-sm md:text-lg rounded-full border py-2 px-4 hover:opacity-80 min-w-[72px]"
@@ -152,16 +152,10 @@
</a>
{:else}
<div class="text-secondary flex">
- {#if tx.network === 'lightning'}
- <div class="text-3xl">⚡️</div>
- {:else}
- <div class="my-auto mr-1">
- <img src="/images/bitcoin.svg" class="w-12 border-4 border-transparent" />
- </div>
- {/if}
+ <div class="text-3xl">⚡️</div>
<div class="my-auto">
- {tx.amount > 0 ? (tx.confirmed ? 'Received' : 'Pending') : 'Sent'}
+ {tx.amount > 0 ? 'Received' : 'Sent'}
</div>
</div>
{/if}
@@ -169,16 +163,16 @@
<div class="text-secondary text-right text-sm my-auto">
<div>
- {format(parseISO(tx.createdAt), 'h:mm aaa')}
+ {format(new Date(tx.created_at), 'h:mm aaa')}
</div>
<div>
- {format(parseISO(tx.createdAt), 'MMM d')}
+ {format(new Date(tx.created_at), 'MMM d')}
</div>
</div>
</div>
</a>
{:else}
- <p class="text-secondary text-lg text-center">{$t('transactions.empty')}</p>
+ <p class="text-secondary text-lg text-center">{$t('payments.empty')}</p>
{/each}
</div>
<button
@@ -186,7 +180,7 @@
on:click={csv}
>
<Icon icon="save" style="opacity-50 mr-2 my-auto" />
- <div class="my-auto">{$t('transactions.export')}</div>
+ <div class="my-auto">{$t('payments.export')}</div>
</button>
</div>
</div>
diff --git a/src/routes/(app)/[username]/receive/[...param]/+page.svelte b/src/routes/(app)/[username]/receive/[...param]/+page.svelte
index 4559f00c..18d6b21e 100644
--- a/src/routes/(app)/[username]/receive/[...param]/+page.svelte
+++ b/src/routes/(app)/[username]/receive/[...param]/+page.svelte
@@ -3,7 +3,7 @@
import { t } from '$lib/translations';
import { enhance } from '$app/forms';
import { page } from '$app/stores';
- import { invoices, requestRedirect } from '$lib/store';
+ import { requestRedirect } from '$lib/store';
import { browser } from '$app/environment';
import { goto } from '$app/navigation';
@@ -19,9 +19,6 @@
let { currency, username } = data.subject;
let { user } = data;
-
- $: paid = browser && form && Object.values($invoices).find((inv) => inv.amount === form.amount);
- $: paid && goto(`/invoice/${paid.id}/paid`);
</script>
<form method="POST" class="flex justify-center items-center mt-24 mb-3 px-3" use:enhance>
@@ -43,7 +40,7 @@
class="bg-black text-white rounded-xl w-full h-[48px] flex justify-center items-center font-semibold
opacity-100 hover:opacity-80"
>
- {amount ? $t('transactions.next') : $t('transactions.sendersChoice')}
+ {amount ? $t('payments.next') : $t('payments.sendersChoice')}
</button>
</div>
</form>
diff --git a/src/routes/(app)/[username]/request/+page.svelte b/src/routes/(app)/[username]/request/+page.svelte
index fb3d0599..305cc8fb 100644
--- a/src/routes/(app)/[username]/request/+page.svelte
+++ b/src/routes/(app)/[username]/request/+page.svelte
@@ -16,7 +16,7 @@
<div class="container max-w-lg px-4 mx-auto mt-10 space-y-5">
<h1 class="px-3 md:px-0 text-center text-3xl md:text-4xl font-semibold">
- {$t('transactions.requestAnInvoice')}
+ {$t('payments.requestAnInvoice')}
</h1>
<form action="?/create" method="POST" use:enhance class="space-y-5">
@@ -25,7 +25,7 @@
<textarea
name="memo"
- placeholder={$t('transactions.describeOrder')}
+ placeholder={$t('payments.describeOrder')}
class="w-full p-4 border rounded-xl h-48"
/>
@@ -34,7 +34,7 @@
type="submit"
class="bg-black text-white border rounded-full px-6 py-2 font-bold mx-auto"
>
- {$t('transactions.submit')}
+ {$t('payments.submit')}
</button>
</div>
</form>
diff --git a/src/routes/(app)/[username]/request/[id]/+page.svelte b/src/routes/(app)/[username]/request/[id]/+page.svelte
index 356fd95a..b061886e 100644
--- a/src/routes/(app)/[username]/request/[id]/+page.svelte
+++ b/src/routes/(app)/[username]/request/[id]/+page.svelte
@@ -21,7 +21,7 @@
<div class="text-center mb-8 space-y-5">
{#if request.recipient_id === user.id}
<p class="text-5xl break-words">
- <span class="text-xl md:text-2xl">{$t('transactions.sentInvoiceTo')}</span>
+ <span class="text-xl md:text-2xl">{$t('payments.sentInvoiceTo')}</span>
</p>
<div class="flex p-1 gap-2 justify-center">
<Avatar user={request.requester} size={20} />
@@ -35,7 +35,7 @@
</div>
{:else}
<p class="text-5xl break-words">
- <span class="text-xl md:text-2xl">{$t('transactions.sentRequestTo')}</span>
+ <span class="text-xl md:text-2xl">{$t('payments.sentRequestTo')}</span>
</p>
<div class="flex p-1 gap-2 justify-center">
<Avatar user={request.recipient} size={20} />
@@ -49,4 +49,4 @@
<div class="opacity-0 w-screen h-screen fixed top-0 left-0 z-50" />
</a>
-<div class="fixed bottom-10 w-full text-center">{$t('transactions.tapAnywhere')}</div>
+<div class="fixed bottom-10 w-full text-center">{$t('payments.tapAnywhere')}</div>
diff --git a/src/routes/(app)/invoice/[id]/+layout.server.js b/src/routes/(app)/invoice/[id]/+layout.server.js
index adcea6df..78d8481e 100644
--- a/src/routes/(app)/invoice/[id]/+layout.server.js
+++ b/src/routes/(app)/invoice/[id]/+layout.server.js
@@ -7,14 +7,13 @@ export async function load({ depends, params, url }) {
let { id } = params;
let invoice = await get(`/invoice?id=${id}`);
- let { amount, received, pending } = invoice;
+ let { amount, received } = invoice;
amount = parseInt(amount);
- let paid = (!amount && (received || pending)) || (amount > 0 && received + pending >= amount);
+ let paid = (!amount && received) || (amount > 0 && received >= amount);
if (paid && !url.pathname.endsWith('paid')) throw redirect(307, `/invoice/${id}/paid`);
let sm = Qr.drawImg(invoice.text, { size: 300 });
- // let lg = Qr.drawImg(invoice.text, { size: 1200 });
return { id, invoice, sm, lg: sm };
}
diff --git a/src/routes/(app)/invoice/[id]/+page.svelte b/src/routes/(app)/invoice/[id]/+page.svelte
index db491c66..28ff27c0 100644
--- a/src/routes/(app)/invoice/[id]/+page.svelte
+++ b/src/routes/(app)/invoice/[id]/+page.svelte
@@ -3,9 +3,8 @@
import { back, copy, f, get, sat, reverseFormat, s, sats } from '$lib/utils';
import { tick, onMount, onDestroy } from 'svelte';
import { browser } from '$app/environment';
- import { invoices, last } from '$lib/store';
+ import { last } from '$lib/store';
import { Avatar, Icon, Heart, Image, Qr } from '$comp';
- import { goto } from '$app/navigation';
import { t } from '$lib/translations';
import screenfull from 'screenfull';
diff --git a/src/routes/(app)/invoice/[id]/paid/+page.svelte b/src/routes/(app)/invoice/[id]/paid/+page.svelte
index 2ce414e2..2ccbc971 100644
--- a/src/routes/(app)/invoice/[id]/paid/+page.svelte
+++ b/src/routes/(app)/invoice/[id]/paid/+page.svelte
@@ -6,7 +6,6 @@
import { t } from '$lib/translations';
import { f, s, sat, sats } from '$lib/utils';
import { goto } from '$app/navigation';
- import { invoices } from '$lib/store';
export let data;
let amount, currency, rate, received, pending, tip, user, id;
@@ -60,4 +59,4 @@
<div class="opacity-0 w-screen h-screen fixed top-0 left-0 z-50" />
</a>
-<div class="fixed bottom-10 w-full text-center">{$t('transactions.tapAnywhere')}</div>
+<div class="fixed bottom-10 w-full text-center">{$t('payments.tapAnywhere')}</div>
diff --git a/src/routes/(app)/invoice/[id]/tip/+page.svelte b/src/routes/(app)/invoice/[id]/tip/+page.svelte
index 625248a0..308720ab 100644
--- a/src/routes/(app)/invoice/[id]/tip/+page.svelte
+++ b/src/routes/(app)/invoice/[id]/tip/+page.svelte
@@ -1,7 +1,7 @@
<script>
import { onMount } from 'svelte';
import { browser } from '$app/environment';
- import { invoice as inv, invoices, request } from '$lib/store';
+ import { invoice as inv, request } from '$lib/store';
import { back, copy, f, sat, get, reverseFormat, s, sats } from '$lib/utils';
import { Icon } from '$comp';
import { goto } from '$app/navigation';
@@ -100,14 +100,6 @@
$: tip = Math.round((amount / 100) * tipPercent);
- $invoices[id] = { amount, id, network, rate, received, text, tip, username };
-
- $: browser &&
- ($invoices[id]?.amount > 0
- ? $invoices[id]?.received >= $invoices[id]?.amount
- : $invoices[id]?.received) &&
- goto(($invoices[id].memo === 'launch' && '/launch/purchase') || `/invoice/${id}/paid`);
-
$: amountFiat = parseFloat(((amount * rate) / sats).toFixed(2));
$: tipAmount = ((tip * rate) / sats).toFixed(2);
diff --git a/src/routes/(app)/ln/[lnurl]/+page.svelte b/src/routes/(app)/ln/[lnurl]/+page.svelte
index 8fb915e8..15edeaef 100644
--- a/src/routes/(app)/ln/[lnurl]/+page.svelte
+++ b/src/routes/(app)/ln/[lnurl]/+page.svelte
@@ -39,7 +39,7 @@
{#if loading}
<Spinner />
{:else}
- {$t('transactions.send')}
+ {$t('payments.send')}
{/if}
</button>
</div>
diff --git a/src/routes/(app)/redeem/[redeemcode]/+page.server.js b/src/routes/(app)/redeem/[redeemcode]/+page.server.js
index b3795acb..4f685d68 100644
--- a/src/routes/(app)/redeem/[redeemcode]/+page.server.js
+++ b/src/routes/(app)/redeem/[redeemcode]/+page.server.js
@@ -10,7 +10,7 @@ export async function load({ cookies, locals, params }) {
} catch (e) {
throw redirect(307, '/');
}
- throw redirect(307, `/${user.username}/transactions`);
+ throw redirect(307, `/${user.username}/payments`);
}
throw redirect(307, '/login');
diff --git a/src/routes/(app)/send/[...text]/+page.svelte b/src/routes/(app)/send/[...text]/+page.svelte
index 95f47c89..92ee7a33 100644
--- a/src/routes/(app)/send/[...text]/+page.svelte
+++ b/src/routes/(app)/send/[...text]/+page.svelte
@@ -32,7 +32,7 @@
<AppHeader {data} />
<div class="container px-4 max-w-lg mx-auto space-y-5 mt-20">
<h1 class="px-3 md:px-0 text-center text-3xl md:text-4xl font-semibold">
- {$t('transactions.send')}
+ {$t('payments.send')}
</h1>
<form method="POST" use:enhance>
diff --git a/src/routes/(app)/send/[uuid=uuid]/+page.svelte b/src/routes/(app)/send/[uuid=uuid]/+page.svelte
index 40636f35..27837bca 100644
--- a/src/routes/(app)/send/[uuid=uuid]/+page.svelte
+++ b/src/routes/(app)/send/[uuid=uuid]/+page.svelte
@@ -47,13 +47,13 @@
{#if amount}
<div class="text-center mb-8">
<h1 class="text-xl md:text-2xl text-secondary mb-2">
- {$t('transactions.send')}
+ {$t('payments.send')}
</h1>
<p class="text-6xl break-words mb-4">
{fiat ? f(amountFiat, currency) : '⚡️' + s(amount)}
</p>
- <h1 class="text-xl md:text-2xl text-secondary mb-2">{$t('transactions.to')}</h1>
+ <h1 class="text-xl md:text-2xl text-secondary mb-2">{$t('payments.to')}</h1>
<div class="flex p-1 gap-2 justify-center">
<Avatar user={recipient} size={'20'} />
@@ -81,7 +81,7 @@
{#if loading}
<Spinner />
{:else}
- {$t('transactions.send')}
+ {$t('payments.send')}
{/if}
</button>
{:else}
@@ -90,7 +90,7 @@
class="opacity-100 hover:opacity-80'} rounded-2xl border py-3 font-bold mx-auto mt-2 bg-black text-white px-4 w-24"
on:click={setAmount}
>
- {$t('transactions.next')}
+ {$t('payments.next')}
</button>
{/if}
</div>
diff --git a/src/routes/(app)/send/bitcoin/[address]/[...amount]/+page.svelte b/src/routes/(app)/send/bitcoin/[address]/[...amount]/+page.svelte
index f2643918..2165e896 100644
--- a/src/routes/(app)/send/bitcoin/[address]/[...amount]/+page.svelte
+++ b/src/routes/(app)/send/bitcoin/[address]/[...amount]/+page.svelte
@@ -33,7 +33,7 @@
<div class="container px-4 mt-20 max-w-xl mx-auto">
<div class="text-center mb-8">
- <h1 class="text-3xl md:text-4xl font-semibold mb-2">{$t('transactions.sendTo')}</h1>
+ <h1 class="text-3xl md:text-4xl font-semibold mb-2">{$t('payments.sendTo')}</h1>
<p class="text-lg text-secondary">{address}</p>
</div>
<Numpad bind:amount {currency} />
@@ -51,7 +51,7 @@
{#if loading}
<Spinner />
{:else}
- {$t('transactions.send')}
+ {$t('payments.send')}
{/if}
</button>
</div>
diff --git a/src/routes/(app)/send/lightning/[payreq]/+page.svelte b/src/routes/(app)/send/lightning/[payreq]/+page.svelte
index bba2ea45..6fff5665 100644
--- a/src/routes/(app)/send/lightning/[payreq]/+page.svelte
+++ b/src/routes/(app)/send/lightning/[payreq]/+page.svelte
@@ -38,11 +38,11 @@
<div class="container px-4 mt-20 max-w-xl mx-auto">
{#if amount}
<div class="text-center mb-8">
- <h1 class="text-xl md:text-2xl text-secondary mb-2">{$t('transactions.send')}</h1>
+ <h1 class="text-xl md:text-2xl text-secondary mb-2">{$t('payments.send')}</h1>
<p class="text-6xl break-words mb-4">
{s(amount)} <span class="text-xl md:text-2xl text-secondary">sats</span>
</p>
- <h1 class="text-xl md:text-2xl text-secondary mb-2">{$t('transactions.to')}</h1>
+ <h1 class="text-xl md:text-2xl text-secondary mb-2">{$t('payments.to')}</h1>
<p class="text-6xl break-words">{alias}</p>
</div>
@@ -61,7 +61,7 @@
{#if loading}
<Spinner />
{:else}
- {$t('transactions.send')}
+ {$t('payments.send')}
{/if}
</button>
</div>
diff --git a/src/routes/(app)/send/user/[username]/[...amount]/+page.svelte b/src/routes/(app)/send/user/[username]/[...amount]/+page.svelte
index 641c30e1..4cb8cfce 100644
--- a/src/routes/(app)/send/user/[username]/[...amount]/+page.svelte
+++ b/src/routes/(app)/send/user/[username]/[...amount]/+page.svelte
@@ -87,7 +87,7 @@
{#if loading}
<Spinner />
{:else}
- {$t('transactions.send')}
+ {$t('payments.send')}
{/if}
</button>
{:else}
diff --git a/src/routes/(app)/send/voucher/+page.svelte b/src/routes/(app)/send/voucher/+page.svelte
index 3f45a368..0020adc3 100644
--- a/src/routes/(app)/send/voucher/+page.svelte
+++ b/src/routes/(app)/send/voucher/+page.svelte
@@ -46,7 +46,7 @@
{#if loading}
<Spinner />
{:else}
- {$t('transactions.send')}
+ {$t('payments.send')}
{/if}
</button>
</div>
diff --git a/src/routes/(app)/sent/+page.server.js b/src/routes/(app)/sent/+page.server.js
new file mode 100644
index 00000000..fb35e367
--- /dev/null
+++ b/src/routes/(app)/sent/+page.server.js
@@ -0,0 +1,6 @@
+import { get, auth } from '$lib/utils';
+
+export let load = async ({ cookies }) => {
+ let { payments } = await get('/payments', auth(cookies));
+ return { payments }
+}
diff --git a/src/routes/(app)/sent/+page.svelte b/src/routes/(app)/sent/+page.svelte
index 047efc86..2168a517 100644
--- a/src/routes/(app)/sent/+page.svelte
+++ b/src/routes/(app)/sent/+page.svelte
@@ -6,9 +6,9 @@
import { t } from '$lib/translations';
export let data;
- let { user } = data;
+ let { payments, user } = data;
- let payment = user.payments[0];
+ let payment = payments[0]
let { amount, rate } = payment;
amount = Math.abs(amount);
@@ -28,8 +28,8 @@
<h3 class="text-secondary md:text-lg mb-6 mt-1">{sat(amount)}</h3>
</div>
-<a href={`/${user.username}/transactions`}>
+<a href={`/${user.username}/payments`}>
<div class="opacity-0 w-screen h-screen fixed top-0 left-0 z-50" />
</a>
-<div class="fixed bottom-10 w-full text-center">{$t('transactions.tapAnywhere')}</div>
+<div class="fixed bottom-10 w-full text-center">{$t('payments.tapAnywhere')}</div>
diff --git a/src/routes/(app)/tx/[id]/+page.svelte b/src/routes/(app)/tx/[id]/+page.svelte
index fc793916..63e45f17 100644
--- a/src/routes/(app)/tx/[id]/+page.svelte
+++ b/src/routes/(app)/tx/[id]/+page.svelte
@@ -18,11 +18,11 @@
<div class="container mx-auto max-w-lg px-4 space-y-2 sm:space-y-5 break-all">
<h1 class="px-3 md:px-0 text-center text-3xl md:text-4xl font-semibold mb-10">
- {$t(amount < 0 ? 'transactions.sent' : 'transactions.received')}
+ {$t(amount < 0 ? 'payments.sent' : 'payments.received')}
</h1>
<div>
- <div class="font-bold">{$t('transactions.amount')}</div>
+ <div class="font-bold">{$t('payments.amount')}</div>
<div class="text-xl">
{f(fiat, currency)}
<span class="text-secondary">⚡️{`${s(Math.abs(amount) + fee)}`}</span>
@@ -30,7 +30,7 @@
</div>
<div>
- <div class="font-bold">{$t('transactions.date')}</div>
+ <div class="font-bold">{$t('payments.date')}</div>
<div>
{format(parseISO(createdAt), 'MMMM d')},
{format(parseISO(createdAt), 'h:mm aaa')}
@@ -39,14 +39,14 @@
{#if network === 'lightning'}
<div>
- <div class="font-bold">{$t('transactions.preimage')}</div>
+ <div class="font-bold">{$t('payments.preimage')}</div>
<div>
{preimage}
</div>
</div>
{:else}
<div>
- <div class="font-bold">{$t('transactions.id')}</div>
+ <div class="font-bold">{$t('payments.id')}</div>
<div class="flex">
<div>
<a href={`${expl}/tx/${hash}`} target="_blank" class="text-blue-600">{hash}</a>
diff --git a/src/routes/(app)/voucher/[redeemcode]/+page.server.js b/src/routes/(app)/voucher/[redeemcode]/+page.server.js
index 27c8a8c1..fbbec7bc 100644
--- a/src/routes/(app)/voucher/[redeemcode]/+page.server.js
+++ b/src/routes/(app)/voucher/[redeemcode]/+page.server.js
@@ -16,7 +16,7 @@ export const actions = {
if (user) {
await post('/redeem', params, auth(cookies));
- throw redirect(307, `/${user.username}/transactions`);
+ throw redirect(307, `/${user.username}/payments`);
}
throw redirect(307, '/register');