From 7af34469f4d9277335bc2accf9b8169ec8c4f614 Mon Sep 17 00:00:00 2001 From: MuslemRahimi Date: Sat, 23 Nov 2024 17:24:58 +0100 Subject: [PATCH] ui fixes --- src/lib/components/AnalystCard.svelte | 2 +- src/lib/components/AnalystEstimate.svelte | 54 +++++++---- src/lib/components/CryptoProfileCard.svelte | 4 +- src/lib/components/DCF.svelte | 2 +- src/lib/components/DividendCard.svelte | 2 +- src/lib/components/ESGCard.svelte | 2 +- src/lib/components/ETFProfileCard.svelte | 4 +- src/lib/components/Footer.svelte | 2 +- src/lib/components/Markdown.svelte | 2 +- src/lib/components/OptionsData.svelte | 2 +- src/lib/components/RuleControl.svelte | 8 +- src/lib/components/Searchbar.svelte | 2 +- src/lib/components/ShareStatistics.svelte | 2 +- src/lib/components/SimilarETFCard.svelte | 2 +- src/lib/components/SimilarTickerCard.svelte | 2 +- src/lib/components/SkeletonLoading.svelte | 66 +++++++------ src/lib/components/TagSearchbar.svelte | 4 +- src/lib/components/TickerInfoCard.svelte | 4 +- src/lib/components/TopETFTickerHolder.svelte | 2 +- src/lib/components/TopHoldingCard.svelte | 2 +- src/lib/components/WatchListCard.svelte | 2 +- src/routes/+page.svelte | 6 +- src/routes/contact/+page.svelte | 2 +- src/routes/crypto/[tickerID]/+layout.svelte | 8 +- src/routes/crypto/[tickerID]/+page.svelte | 2 +- .../[tickerID]/congress-trading/+page.svelte | 10 +- .../crypto/[tickerID]/stats/+page.svelte | 4 +- src/routes/dividends-calendar/+page.svelte | 2 +- src/routes/earnings-calendar/+page.svelte | 2 +- src/routes/economic-calendar/+page.svelte | 2 +- src/routes/economic-indicator/+page.svelte | 2 +- src/routes/etf/[tickerID]/+layout.svelte | 2 +- .../etf/[tickerID]/holdings/+page.svelte | 2 +- .../etf/[tickerID]/insider/+page.svelte | 2 +- .../etf/[tickerID]/options/+page.svelte | 6 +- src/routes/etf/[tickerID]/stats/+page.svelte | 4 +- src/routes/heatmaps/+page.svelte | 4 +- src/routes/ipos/[slug]/+page.svelte | 2 +- src/routes/newsletter/+page.svelte | 2 +- src/routes/options-flow/+page.svelte | 6 +- src/routes/politicians/+page.svelte | 4 +- src/routes/stock-screener/+page.svelte | 10 +- src/routes/stocks/[tickerID]/+layout.svelte | 2 +- .../stocks/[tickerID]/financials/+page.svelte | 94 +++++++++--------- .../financials/balance-sheet/+page.svelte | 94 +++++++++--------- .../financials/cash-flow/+page.svelte | 96 +++++++++--------- .../[tickerID]/financials/ratios/+page.svelte | 92 +++++++++--------- .../stocks/[tickerID]/forecast/+page.svelte | 97 +++++++++++-------- .../[tickerID]/forecast/analyst/+page.svelte | 73 +++++++++++--- .../stocks/[tickerID]/insider/+page.svelte | 4 +- .../insider/congress-trading/+page.svelte | 2 +- .../stocks/[tickerID]/metrics/+page.svelte | 2 +- .../[tickerID]/metrics/[slug]/+page.svelte | 2 +- .../stocks/[tickerID]/options/+page.svelte | 6 +- src/routes/watchlist/stocks/+page.svelte | 2 +- 55 files changed, 442 insertions(+), 380 deletions(-) diff --git a/src/lib/components/AnalystCard.svelte b/src/lib/components/AnalystCard.svelte index 66feacb0..3703993b 100644 --- a/src/lib/components/AnalystCard.svelte +++ b/src/lib/components/AnalystCard.svelte @@ -49,7 +49,7 @@ : 'hidden'}" >
{/each} @@ -340,30 +340,42 @@ class="text-white text-sm sm:text-[1rem] text-end font-medium bg-[#09090B]" > {#if index === 0 || tableActualRevenue?.length === 0} - - + n/a {:else if item?.val === null} {#if tableForecastRevenue[index]?.val - tableForecastRevenue[index - 1]?.val > 0} - {( - ((tableForecastRevenue[index]?.val - - tableForecastRevenue[index - 1]?.val) / - Math.abs( - tableForecastRevenue[index - 1]?.val, - )) * - 100 - )?.toFixed(2)}%* + {(() => { + const previousVal = + tableForecastRevenue[index - 1]?.val ?? 0; + const currentVal = + tableForecastRevenue[index]?.val ?? 0; + const change = + ((currentVal - previousVal) / + Math.abs(previousVal)) * + 100; + return isFinite(change) + ? `${change.toFixed(2)}%*` + : "n/a"; + })()} {:else if tableForecastRevenue[index]?.val - tableForecastRevenue[index - 1]?.val < 0} - {( - ((tableForecastRevenue[index]?.val - - tableForecastRevenue[index - 1]?.val) / - Math.abs( - tableForecastRevenue[index - 1]?.val, - )) * - 100 - )?.toFixed(2)}%* + {(() => { + const previousVal = + tableForecastRevenue[index - 1]?.val ?? 0; + const currentVal = + tableForecastRevenue[index]?.val ?? 0; + const change = + ((currentVal - previousVal) / + Math.abs(previousVal)) * + 100; + return isFinite(change) + ? `${change.toFixed(2)}%*` + : "n/a"; + })()} + {:else} + n/a {/if} {:else if item?.val - tableActualRevenue[index - 1]?.val > 0} @@ -418,7 +430,7 @@ class="text-white text-sm sm:text-[1rem] text-end font-medium bg-[#09090B]" > {#if index === 0 || tableActualEPS?.length === 0} - - + n/a {:else if item?.val === null} {#if tableForecastEPS[index]?.val - tableForecastEPS[index - 1]?.val > 0} @@ -491,7 +503,7 @@ class="text-white text-sm sm:text-[1rem] text-end font-medium border-b border-[#27272A] bg-[#09090B]" > {item?.numOfAnalysts === (null || 0) - ? "-" + ? "n/a" : item?.numOfAnalysts} {/each} @@ -504,7 +516,7 @@ * This value depends on the forecast
-
+

Crypto Info

diff --git a/src/lib/components/DCF.svelte b/src/lib/components/DCF.svelte index da49c126..a629e74f 100644 --- a/src/lib/components/DCF.svelte +++ b/src/lib/components/DCF.svelte @@ -340,7 +340,7 @@ {#if Math?.abs(change) > 30}
-
+

ETF Info

diff --git a/src/lib/components/Footer.svelte b/src/lib/components/Footer.svelte index 95d9e94d..b2ef6a22 100644 --- a/src/lib/components/Footer.svelte +++ b/src/lib/components/Footer.svelte @@ -4,7 +4,7 @@