diff --git a/src/lib/components/EarningsSurprise.svelte b/src/lib/components/EarningsSurprise.svelte
index 71744600..ba53183e 100644
--- a/src/lib/components/EarningsSurprise.svelte
+++ b/src/lib/components/EarningsSurprise.svelte
@@ -77,14 +77,16 @@
class="ml-[20px] sm:ml-[30px]"
style="color: #fff; line-height: 22px; margin-top:20px; margin-bottom: 15px; list-style-type: disc;"
>
- Revenue of {abbreviateNumber(rawData?.revenue, true)}
+ Revenue of {abbreviateNumber(rawData?.revenue, true)}
{rawData?.revenueSurprise > 0 ? "exceeds" : "misses"} estimates by {abbreviateNumber(
Math.abs(rawData?.revenueSurprise),
true,
)}, with
{revenueRatio}%
YoY {revenueRatio < 0 ? "decline" : "growth"}.
@@ -93,13 +95,13 @@
class="ml-[20px] sm:ml-[30px]"
style="color: #fff; line-height: 22px; margin-top:0px; margin-bottom: 15px; list-style-type: disc;"
>
- EPS of ${rawData?.eps}
- {rawData?.epsSurprise > 0 ? "exceeds" : "misses"} estimates by ${rawData?.epsSurprise?.toFixed(
+ EPS of {rawData?.eps}
+ {rawData?.epsSurprise > 0 ? "exceeds" : "misses"} estimates by {rawData?.epsSurprise?.toFixed(
2,
)}, with
{epsRatio}%
YoY {epsRatio < 0 ? "decline" : "growth"}.
diff --git a/src/lib/components/NextEarnings.svelte b/src/lib/components/NextEarnings.svelte
index c401109b..92f4380d 100644
--- a/src/lib/components/NextEarnings.svelte
+++ b/src/lib/components/NextEarnings.svelte
@@ -64,19 +64,20 @@
during market hours.
{/if}
Analysts project revenue of
- {abbreviateNumber(rawData?.revenueEst, true)},
- reflecting a
+ {abbreviateNumber(rawData?.revenueEst, true)}, reflecting a
0
+ ? "before:content-['+'] text-[#00FC50]"
: 'text-[#FF2F1F]'} ">{abbreviateNumber(revenueRatio)}%
YoY {revenueRatio > 0 ? "growth" : revenueRatio < 0 ? "shrinking" : ""} and
earnings per share of
- {rawData?.epsEst}, making a
+ {rawData?.epsEst}, making a
0
+ ? "before:content-['+'] text-[#00FC50]"
: 'text-[#FF2F1F]'} ">{epsRatio}%
{epsRatio > 0 ? "increase" : epsRatio < 0 ? "decrease" : ""} YoY.
diff --git a/src/lib/components/Sidecard.svelte b/src/lib/components/Sidecard.svelte
index 5ccb43fc..501fe8ac 100644
--- a/src/lib/components/Sidecard.svelte
+++ b/src/lib/components/Sidecard.svelte
@@ -23,6 +23,68 @@
let showFullText = false;
+ const sectorNavigation = [
+ {
+ title: "Financial Services",
+ link: "/list/financial-sector",
+ },
+ {
+ title: "Finance",
+ link: "/list/financial-sector",
+ },
+ {
+ title: "Healthcare",
+ link: "/list/healthcare-sector",
+ },
+ {
+ title: "Technology",
+ link: "/list/technology-sector",
+ },
+ {
+ title: "Industrials",
+ link: "/list/industrials-sector",
+ },
+ {
+ title: "Energy",
+ link: "/list/energy-sector",
+ },
+ {
+ title: "Utilities",
+ link: "/list/utilities-sector",
+ },
+ {
+ title: "Consumer Cyclical",
+ link: "/list/consumer-cyclical-sector",
+ },
+ {
+ title: "Real Estate",
+ link: "/list/real-estate-sector",
+ },
+ {
+ title: "Basic Materials",
+ link: "/list/basic-materials-sector",
+ },
+ {
+ title: "Communication Services",
+ link: "/list/communication-services-sector",
+ },
+ {
+ title: "Consumer Defensive",
+ link: "/list/consumer-defensive-sector",
+ },
+ ];
+
+ function getIndustryHref(industryName) {
+ // Replace spaces with hyphens
+ let formattedName = industryName?.replace(/ /g, "-");
+ // Replace "&" with "and"
+ formattedName = formattedName?.replace(/&/g, "and");
+ // Remove any extra hyphens (e.g., from consecutive spaces)
+ formattedName = formattedName?.replace(/-{2,}/g, "-");
+ // Convert to lowercase for consistency
+ return "/list/industry/" + formattedName?.toLowerCase();
+ }
+
$: {
if (
$stockTicker &&
@@ -88,7 +150,7 @@