From fc8e4ec0b8ad1656c041e498d28a76b7ad3524d2 Mon Sep 17 00:00:00 2001 From: MuslemRahimi Date: Wed, 6 Nov 2024 22:01:28 +0100 Subject: [PATCH] refactor code --- src/routes/+layout.svelte | 4 +- src/routes/+page.svelte | 2 +- src/routes/market-mover/+layout.server.ts | 20 +- src/routes/market-mover/+layout.svelte | 4 +- .../market-mover/{ => [slug]}/+page.svelte | 647 +++++++++--------- src/routes/market-mover/active/+page.svelte | 315 --------- src/routes/market-mover/losers/+page.svelte | 315 --------- src/routes/sitemap.xml/+server.ts | 6 +- 8 files changed, 343 insertions(+), 970 deletions(-) rename src/routes/market-mover/{ => [slug]}/+page.svelte (88%) delete mode 100644 src/routes/market-mover/active/+page.svelte delete mode 100644 src/routes/market-mover/losers/+page.svelte diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index aaa777e8..4148fb4d 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -402,7 +402,7 @@ const handleTwitchMessage = (event) => { class="w-full bg-[#141417] hover:bg-[#141417]" > Market Mover @@ -988,7 +988,7 @@ const handleTwitchMessage = (event) => { >Stock Screener Market Mover diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index df7d45ea..0e27a4dd 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -237,7 +237,7 @@
{marketStatus === 0 diff --git a/src/routes/market-mover/+layout.server.ts b/src/routes/market-mover/+layout.server.ts index 61d2b1db..60c1f517 100644 --- a/src/routes/market-mover/+layout.server.ts +++ b/src/routes/market-mover/+layout.server.ts @@ -1,4 +1,4 @@ -export const load = async ({ locals }) => { +export const load = async ({ locals, params }) => { const { apiURL, apiKey } = locals; const getMarketMover = async () => { @@ -14,22 +14,12 @@ export const load = async ({ locals }) => { return output; }; - /* - const getMiniPlotsIndex = async () => { - const response = await fetch(apiURL + "/mini-plots-index", { - method: "GET", - headers: { - "Content-Type": "application/json", - "X-API-KEY": apiKey, - }, - }); - - const output = await response.json(); - - return output; + const getParams = async () => { + return params.slug; }; - */ + return { getMarketMover: await getMarketMover(), + getParams: await getParams(), }; }; diff --git a/src/routes/market-mover/+layout.svelte b/src/routes/market-mover/+layout.svelte index b8c40111..ae203f3e 100644 --- a/src/routes/market-mover/+layout.svelte +++ b/src/routes/market-mover/+layout.svelte @@ -8,7 +8,7 @@ const tabs = [ { title: "Gainers", - path: "/market-mover", + path: "/market-mover/gainers", }, { title: "Losers", @@ -31,7 +31,7 @@ let activeIdx = 0; // Subscribe to the $page store to reactively update the activeIdx based on the URL - $: if ($page.url.pathname === "/market-mover") { + $: if ($page.url.pathname === "/market-mover/gainers") { activeIdx = 0; } else if ($page.url.pathname.startsWith("/market-mover/losers")) { activeIdx = 1; diff --git a/src/routes/market-mover/+page.svelte b/src/routes/market-mover/[slug]/+page.svelte similarity index 88% rename from src/routes/market-mover/+page.svelte rename to src/routes/market-mover/[slug]/+page.svelte index 7ae2888b..e0a38b65 100644 --- a/src/routes/market-mover/+page.svelte +++ b/src/routes/market-mover/[slug]/+page.svelte @@ -1,319 +1,328 @@ - - - - - - - {$numberOfUnreadNotification > 0 ? `(${$numberOfUnreadNotification})` : ""} Today's - Top Stock Gainers · stocknear - - - - - - - - - - - - - - - - -
-
-
-
- - - - -
-
-
-

- {displayTitle[timePeriod]} -

- -
- - {lastTradingDay} -
-
-
- -
- - - - - - {#each stockList as item} - - - - - - - - - - - - - - - {/each} - -
- {item?.rank} - - - {item?.symbol} - - - {item?.name?.length > charNumber - ? item?.name?.slice(0, charNumber) + "..." - : item?.name} - - {#if item?.changesPercentage >= 0} - +{item?.changesPercentage >= 1000 - ? abbreviateNumber(item?.changesPercentage) - : item?.changesPercentage?.toFixed(2)}% - {:else} - {item?.changesPercentage <= -1000 - ? abbreviateNumber(item?.changesPercentage) - : item?.changesPercentage?.toFixed(2)}% - - {/if} - - {item?.price?.toFixed(2)} - - {item?.marketCap !== null - ? abbreviateNumber(item?.marketCap) - : "-"} - - {item?.volume !== null - ? abbreviateNumber(item?.volume) - : "-"} -
-
-
-
-
-
-
+ + + + + + + {$numberOfUnreadNotification > 0 ? `(${$numberOfUnreadNotification})` : ""} Today's + Top Stock {title} · stocknear + + + + + + + + + + + + + + + + +
+
+
+
+ + + + +
+
+
+

+ {displayTitle[timePeriod]?.replace("title", title)} +

+ +
+ + {lastTradingDay} +
+
+
+ +
+ + + + + + {#each stockList as item} + + + + + + + + + + + + + + + {/each} + +
+ {item?.rank} + + + {item?.symbol} + + + {item?.name?.length > charNumber + ? item?.name?.slice(0, charNumber) + "..." + : item?.name} + + {#if item?.changesPercentage >= 0} + +{item?.changesPercentage >= 1000 + ? abbreviateNumber(item?.changesPercentage) + : item?.changesPercentage?.toFixed(2)}% + {:else} + {item?.changesPercentage <= -1000 + ? abbreviateNumber(item?.changesPercentage) + : item?.changesPercentage?.toFixed(2)}% + + {/if} + + {item?.price?.toFixed(2)} + + {item?.marketCap !== null + ? abbreviateNumber(item?.marketCap) + : "-"} + + {item?.volume !== null + ? abbreviateNumber(item?.volume) + : "-"} +
+
+
+
+
+
+
diff --git a/src/routes/market-mover/active/+page.svelte b/src/routes/market-mover/active/+page.svelte deleted file mode 100644 index 3bc49ef2..00000000 --- a/src/routes/market-mover/active/+page.svelte +++ /dev/null @@ -1,315 +0,0 @@ - - - - - - - {$numberOfUnreadNotification > 0 ? `(${$numberOfUnreadNotification})` : ""} - Top Stock Active · stocknear - - - - - - - - - - - - - - - - -
-
-
-
- - - - -
-
-
-

- {displayTitle[timePeriod]} -

- -
- - {lastTradingDay} -
-
-
- -
- - - - - - {#each stockList as item} - - - - - - - - - - - - - - - {/each} - -
- {item?.rank} - - - {item?.symbol} - - - {item?.name?.length > charNumber - ? item?.name?.slice(0, charNumber) + "..." - : item?.name} - - {#if item?.changesPercentage >= 0} - +{item?.changesPercentage >= 1000 - ? abbreviateNumber(item?.changesPercentage) - : item?.changesPercentage?.toFixed(2)}% - {:else} - {item?.changesPercentage <= -1000 - ? abbreviateNumber(item?.changesPercentage) - : item?.changesPercentage?.toFixed(2)}% - - {/if} - - {item?.price?.toFixed(2)} - - {item?.marketCap !== null - ? abbreviateNumber(item?.marketCap) - : "-"} - - {item?.volume !== null - ? abbreviateNumber(item?.volume) - : "-"} -
-
-
-
-
-
-
diff --git a/src/routes/market-mover/losers/+page.svelte b/src/routes/market-mover/losers/+page.svelte deleted file mode 100644 index f49b33d9..00000000 --- a/src/routes/market-mover/losers/+page.svelte +++ /dev/null @@ -1,315 +0,0 @@ - - - - - - - {$numberOfUnreadNotification > 0 ? `(${$numberOfUnreadNotification})` : ""} - Top Stock Losers · stocknear - - - - - - - - - - - - - - - - -
-
-
-
- - - - -
-
-
-

- {displayTitle[timePeriod]} -

- -
- - {lastTradingDay} -
-
-
- -
- - - - - - {#each stockList as item} - - - - - - - - - - - - - - - {/each} - -
- {item?.rank} - - - {item?.symbol} - - - {item?.name?.length > charNumber - ? item?.name?.slice(0, charNumber) + "..." - : item?.name} - - {#if item?.changesPercentage >= 0} - +{item?.changesPercentage >= 1000 - ? abbreviateNumber(item?.changesPercentage) - : item?.changesPercentage?.toFixed(2)}% - {:else} - {item?.changesPercentage <= -1000 - ? abbreviateNumber(item?.changesPercentage) - : item?.changesPercentage?.toFixed(2)}% - - {/if} - - {item?.price?.toFixed(2)} - - {item?.marketCap !== null - ? abbreviateNumber(item?.marketCap) - : "-"} - - {item?.volume !== null - ? abbreviateNumber(item?.volume) - : "-"} -
-
-
-
-
-
-
diff --git a/src/routes/sitemap.xml/+server.ts b/src/routes/sitemap.xml/+server.ts index 0a6db8e6..2435004f 100644 --- a/src/routes/sitemap.xml/+server.ts +++ b/src/routes/sitemap.xml/+server.ts @@ -66,7 +66,11 @@ const pages = [ { title: "/economic-calendar" }, { title: "/dividends-calendar" }, { title: "/stock-splits-calendar" }, - { title: "/market-mover" }, + { title: "/market-mover/gainers" }, + { title: "/market-mover/losers" }, + { title: "/market-mover/active" }, + { title: "/market-mover/premarket" }, + { title: "/market-mover/afterhours" }, { title: "/community" }, { title: "/community/create-post" }, { title: "/hedge-funds" },