aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2023-04-04 15:36:56 -0700
committerAdam Soltys <[email protected]>2023-04-04 15:36:56 -0700
commit6ba8c50a19069e3c17e0878924e5195cdbd03fac (patch)
treecd6d88a2e69880605bc018d5ab32a4b3011cbdfb /src
parent75ecc996fea4146310f44651b4bd01d9556713eb (diff)
downloadcoinos-ui-6ba8c50a19069e3c17e0878924e5195cdbd03fac.tar.gz
coinos-ui-6ba8c50a19069e3c17e0878924e5195cdbd03fac.zip
persist rate
Diffstat (limited to 'src')
-rw-r--r--src/lib/store.js2
-rw-r--r--src/routes/(app)/[username]/(profile)/+layout.svelte2
-rw-r--r--src/routes/(app)/[username]/(profile)/+page.svelte3
-rw-r--r--src/routes/(app)/[username]/invoice/[hash]/+layout.server.js2
4 files changed, 5 insertions, 4 deletions
diff --git a/src/lib/store.js b/src/lib/store.js
index 86405e39..ce984b17 100644
--- a/src/lib/store.js
+++ b/src/lib/store.js
@@ -32,7 +32,7 @@ const persistLocal = (key, defaultValue) => {
return s;
};
-export const animatedRate = writable(0);
+export const animatedRate = persistLocal('rate', 0);
export const avatar = writable();
export const banner = writable();
export const colorTheme = writable('from-primary to-gradient');
diff --git a/src/routes/(app)/[username]/(profile)/+layout.svelte b/src/routes/(app)/[username]/(profile)/+layout.svelte
index 3d814668..df9b9ad8 100644
--- a/src/routes/(app)/[username]/(profile)/+layout.svelte
+++ b/src/routes/(app)/[username]/(profile)/+layout.svelte
@@ -137,7 +137,7 @@
</div>
</div>
-{#if currency && $animatedRate}
+{#if currency && !isNaN($animatedRate)}
<div class="flex fixed w-full px-4 bg-white py-2 bottom-0 bg-opacity-90 tabular-nums">
<div class="text-secondary flex mr-auto">
<div class="flex mr-1">
diff --git a/src/routes/(app)/[username]/(profile)/+page.svelte b/src/routes/(app)/[username]/(profile)/+page.svelte
index ab519245..11a1bebf 100644
--- a/src/routes/(app)/[username]/(profile)/+page.svelte
+++ b/src/routes/(app)/[username]/(profile)/+page.svelte
@@ -62,12 +62,15 @@
clearInterval(i);
let r = ((rates[user.currency] / rates['USD']) * n).toFixed(2);
+
+ if (!r || isNaN(r)) return;
if (!o) o = r;
let t = 0;
let d = o - r;
i = setInterval(() => {
+ if (!r) return;
$animatedRate = (o - d * ease(t / 100)).toFixed(2);
if (t > 80) (o = r) && clearInterval(i);
t++;
diff --git a/src/routes/(app)/[username]/invoice/[hash]/+layout.server.js b/src/routes/(app)/[username]/invoice/[hash]/+layout.server.js
index ce7bdcbf..875c4e11 100644
--- a/src/routes/(app)/[username]/invoice/[hash]/+layout.server.js
+++ b/src/routes/(app)/[username]/invoice/[hash]/+layout.server.js
@@ -15,8 +15,6 @@ export async function load({ depends, params, url, parent }) {
let { amount, pending, received } = invoice;
amount = parseInt(amount);
- console.log('PENDING', pending);
-
let paid = (!amount && received) || (amount > 0 && (pending >= amount || received >= amount));
if (paid && !url.pathname.endsWith('paid'))
throw redirect(307, `/${params.username}/invoice/${hash}/paid`);