From 29c79c9638bd25b94f2683d2934bdad8ca9e11ca Mon Sep 17 00:00:00 2001 From: MuslemRahimi Date: Wed, 7 Aug 2024 19:55:20 +0200 Subject: [PATCH] sort by marketCap --- src/routes/market-mover/+page.svelte | 57 ++++++++++++++++++---------- 1 file changed, 38 insertions(+), 19 deletions(-) diff --git a/src/routes/market-mover/+page.svelte b/src/routes/market-mover/+page.svelte index 6c953532..300455ac 100644 --- a/src/routes/market-mover/+page.svelte +++ b/src/routes/market-mover/+page.svelte @@ -110,7 +110,7 @@ const sortByHighestChange = (tickerList) => { }); } - +/* const sortByLowestChange = (tickerList) => { return tickerList?.sort(function(a, b) { if(order === 'highToLow') @@ -136,6 +136,18 @@ const sortByVolume = (tickerList) => { }); } +*/ +const sortByMarketCap = (tickerList) => { + return tickerList?.sort(function(a, b) { + if(order === 'highToLow') + { + return b?.marketCap - a?.marketCap; + } + else { + return a?.marketCap - b?.marketCap; + } + }); +} function changeSection(state) { @@ -183,25 +195,29 @@ function selectTimeInterval(interval) { $: { - if(order) + if(order) + { + if(displaySection === 'gainer') { - if(displaySection === 'gainer') - { - gainerLoserActive = sortByHighestChange(outputList?.gainers[timePeriod]); - } - - else if(displaySection === 'loser') - { - gainerLoserActive = sortByHighestChange(outputList?.losers[timePeriod]); //sortByLowestChange(outputList?.losers[timePeriod]); - } - - else if(displaySection === 'active') - { - gainerLoserActive = sortByHighestChange(outputList?.active[timePeriod]); //sortByVolume(outputList?.active[timePeriod]); - } + gainerLoserActive = sortByHighestChange(outputList?.gainers[timePeriod]); + } + else if(displaySection === 'loser') + { + gainerLoserActive = sortByHighestChange(outputList?.losers[timePeriod]); + } + else if(displaySection === 'active') + { + gainerLoserActive = sortByHighestChange(outputList?.active[timePeriod]); + } + + // Add this condition for market cap sorting + if (sortBy === 'marketCap') { + gainerLoserActive = sortByMarketCap(gainerLoserActive); } } +} +let sortBy = 'change'; // Default sorting by change percentage let charNumber = 30; $: { @@ -368,12 +384,15 @@ $: { Company - changeOrder(order)} class="whitespace-nowrap cursor-pointer text-white font-semibold text-sm text-end"> + { sortBy = 'change'; changeOrder(order); }} class="whitespace-nowrap cursor-pointer text-white font-semibold text-sm text-end"> % Change - + Price - Market Cap + { sortBy = 'marketCap'; changeOrder(order); }} class="whitespace-nowrap cursor-pointer text-white font-semibold text-sm text-end"> + Market Cap + + Volume