aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2025-05-06 22:13:34 -0700
committerAdam Soltys <[email protected]>2025-05-06 22:13:34 -0700
commit37abfe39f9ffbd7f3d55b6f4248a329e3cf7c4f4 (patch)
tree84a5ea8e48b5c047f6a956658bdfae02f2d63b84 /src
parent82044b824495def206e74f46bd58b4351ec5a678 (diff)
downloadcoinos-ui-37abfe39f9ffbd7f3d55b6f4248a329e3cf7c4f4.tar.gz
coinos-ui-37abfe39f9ffbd7f3d55b6f4248a329e3cf7c4f4.zip
account for subtracted fees
Diffstat (limited to 'src')
-rw-r--r--src/routes/(app)/send/bitcoin/[address]/+page.svelte20
-rw-r--r--src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.server.ts5
-rw-r--r--src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.svelte4
3 files changed, 22 insertions, 7 deletions
diff --git a/src/routes/(app)/send/bitcoin/[address]/+page.svelte b/src/routes/(app)/send/bitcoin/[address]/+page.svelte
index 060473ec..154534a7 100644
--- a/src/routes/(app)/send/bitcoin/[address]/+page.svelte
+++ b/src/routes/(app)/send/bitcoin/[address]/+page.svelte
@@ -1,4 +1,5 @@
<script>
+ import { tick } from "svelte";
import { t } from "$lib/translations";
import Icon from "$comp/Icon.svelte";
import Numpad from "$comp/Numpad.svelte";
@@ -13,13 +14,18 @@
let { currency, username } = user;
let amount = $state(0);
- let submit = $state(), fiat = $state();
+ let a = $state(0);
+ let submit = $state(),
+ fiat = $state();
$effect(() => ($rate = data.rate));
+ $effect(() => (amount = a));
- let setMax = (e) => {
+ let setMax = async (e) => {
e.preventDefault();
fiat = false;
amount = balance;
+ await tick();
+ submit.click();
};
</script>
@@ -28,7 +34,8 @@
<div class="text-xl text-secondary break-all">{address}</div>
- <Numpad bind:amount bind:fiat {currency} {submit} bind:rate={$rate} />
+ <div>{amount}</div>
+ <Numpad bind:amount={a} bind:fiat {currency} {submit} bind:rate={$rate} />
<div class="flex justify-center gap-2">
<button
@@ -39,7 +46,12 @@
>
<form action={`/send/bitcoin/${address}/${amount}`} class="contents">
- <button use:focus bind:this={submit} type="submit" class="btn !w-auto grow btn-accent">
+ <button
+ use:focus
+ bind:this={submit}
+ type="submit"
+ class="btn !w-auto grow btn-accent"
+ >
{$t("payments.next")}
</button>
</form>
diff --git a/src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.server.ts b/src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.server.ts
index 5f20d1bd..ac883afd 100644
--- a/src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.server.ts
+++ b/src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.server.ts
@@ -11,8 +11,10 @@ export async function load({
const { user } = await parent();
const aid = cookies.get("aid") || user.id;
+ console.log("YO", amount, address, feeRate);
+
try {
- const { fee, fees, inputs, ourfee, hex } = await post(
+ const { fee, fees, inputs, ourfee, hex, subtract } = await post(
"/bitcoin/fee",
{ address, amount, feeRate, aid },
auth(cookies),
@@ -29,6 +31,7 @@ export async function load({
feeRate,
rate: rates[user.currency],
ourfee,
+ subtract,
hex,
inputs,
};
diff --git a/src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.svelte b/src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.svelte
index ad7a2da8..b86082f3 100644
--- a/src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.svelte
+++ b/src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.svelte
@@ -71,7 +71,7 @@
let toggle = () => (submitting = !submitting);
- let { account, amount, address, message, fee, fees, ourfee, hex, inputs } =
+ let { account, amount, address, message, fee, fees, subtract, ourfee, hex, inputs } =
$derived(data);
let { feeRate } = $state(data);
@@ -116,7 +116,7 @@
{:else}
<div class="text-xl text-secondary break-all">{address}</div>
- <Amount {amount} rate={$rate} {currency} />
+ <Amount amount={subtract ? amount - fee - ourfee : amount} rate={$rate} {currency} />
<div class="text-center">
<h2 class="text-secondary text-lg">{$t("payments.networkFee")}</h2>