diff options
| author | Adam Soltys <[email protected]> | 2025-01-15 15:37:19 -0800 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2025-01-15 15:37:19 -0800 |
| commit | 0a69cf4077363c56e6e5e1b8c8857c2d25e3986a (patch) | |
| tree | 70648825da0e86cdb76decf44023b71a696b3b36 /src/routes | |
| parent | 97f9c4f245fb90df5c8048ac5a9e62208e37c484 (diff) | |
| download | coinos-ui-0a69cf4077363c56e6e5e1b8c8857c2d25e3986a.tar.gz coinos-ui-0a69cf4077363c56e6e5e1b8c8857c2d25e3986a.zip | |
invoice type selection
Diffstat (limited to 'src/routes')
| -rw-r--r-- | src/routes/(app)/[username]/receive/+page.svelte | 30 | ||||
| -rw-r--r-- | src/routes/(app)/invoice/[id]/+page.svelte | 34 |
2 files changed, 51 insertions, 13 deletions
diff --git a/src/routes/(app)/[username]/receive/+page.svelte b/src/routes/(app)/[username]/receive/+page.svelte index e02d6651..887e9680 100644 --- a/src/routes/(app)/[username]/receive/+page.svelte +++ b/src/routes/(app)/[username]/receive/+page.svelte @@ -22,6 +22,7 @@ import InvoiceTypes from "$comp/InvoiceTypes.svelte"; import SetAmount from "$comp/SetAmount.svelte"; import SetMemo from "$comp/SetMemo.svelte"; + import SetType from "$comp/SetType.svelte"; import { t } from "$lib/translations"; import { goto, invalidate } from "$app/navigation"; import { page } from "$app/stores"; @@ -68,20 +69,24 @@ } }; + let settingType = $state(); + let toggleType = () => (settingType = !settingType); let setType = async (type, address_type) => { $showQr = true; - if (type === types.lightning && !amount) + if (type === types.lightning && !amount && typeof newAmount === "undefined") goto(`/${username}/receive`, { invalidateAll: true, noScroll: true }); else { + if (typeof newAmount !== "undefined") invoice.amount = newAmount; invoice.address_type = address_type; invoice.type = type; await update(); } + settingType = false; }; let setAmount = async (e) => { - e.preventDefault(); - e.stopPropagation(); + e?.preventDefault(); + e?.stopPropagation(); settingAmount = false; @@ -142,6 +147,10 @@ /> <InvoiceActions + bind:newAmount + {setAmount} + {toggleType} + {setType} {toggleAmount} {toggleMemo} {user} @@ -153,8 +162,6 @@ {txt} t={$t} /> - - <InvoiceTypes {aid} {invoice} {user} {type} {setType} t={$t} /> </div> <SetAmount @@ -170,3 +177,16 @@ /> <SetMemo bind:memo {settingMemo} {setMemo} {toggleMemo} t={$t} /> + +<SetType + {aid} + {invoice} + {user} + {type} + {settingType} + {setType} + {toggleType} + t={$t} + bind:newAmount + {setAmount} +/> diff --git a/src/routes/(app)/invoice/[id]/+page.svelte b/src/routes/(app)/invoice/[id]/+page.svelte index fdb180ef..4c5c3b50 100644 --- a/src/routes/(app)/invoice/[id]/+page.svelte +++ b/src/routes/(app)/invoice/[id]/+page.svelte @@ -20,9 +20,9 @@ import Avatar from "$comp/Avatar.svelte"; import InvoiceData from "$comp/InvoiceData.svelte"; import InvoiceActions from "$comp/InvoiceActions.svelte"; - import InvoiceTypes from "$comp/InvoiceTypes.svelte"; import SetAmount from "$comp/SetAmount.svelte"; import SetMemo from "$comp/SetMemo.svelte"; + import SetType from "$comp/SetType.svelte"; import { t } from "$lib/translations"; import { goto, invalidate } from "$app/navigation"; @@ -85,23 +85,28 @@ } }; - let setType = async (type) => { + let settingType = $state(); + let toggleType = () => (settingType = !settingType); + let setType = async (type, address_type) => { $showQr = true; - if (type === types.lightning && !amount) + if (type === types.lightning && !amount && typeof newAmount === "undefined") goto(`/${username}/receive`, { invalidateAll: true, noScroll: true }); else { + if (typeof newAmount !== "undefined") invoice.amount = newAmount; + invoice.address_type = address_type; invoice.type = type; await update(); } + settingType = false; }; let newAmount = $state(0); let settingAmount = $state(); - let toggleAmount = $state(() => (settingAmount = !settingAmount)); + let toggleAmount = () => (settingAmount = !settingAmount); let setAmount = async (e) => { - e.preventDefault(); - e.stopPropagation(); + e?.preventDefault(); + e?.stopPropagation(); settingAmount = false; @@ -153,6 +158,9 @@ /> <InvoiceActions + bind:newAmount + {setAmount} + {toggleType} {toggleAmount} {toggleMemo} {user} @@ -164,8 +172,6 @@ t={$t} bind:showQr={$showQr} /> - - <InvoiceTypes {aid} {invoice} {user} {type} {setType} t={$t} /> </div> <SetAmount @@ -182,3 +188,15 @@ /> <SetMemo bind:memo {settingMemo} {setMemo} {toggleMemo} t={$t} /> + +<SetType + bind:newAmount + {setAmount} + {invoice} + {user} + {type} + {settingType} + {setType} + {toggleType} + t={$t} +/> |
