Skip to content

Commit

Permalink
update Circulating Supply, Total Supply chart
Browse files Browse the repository at this point in the history
  • Loading branch information
ngvtuan committed May 22, 2024
1 parent 0e9175d commit 9e58375
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 5 deletions.
28 changes: 25 additions & 3 deletions src/components/Summary/Summary.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ import { ISocketData } from '@utils/types/ISocketData';
import { getCurrencyName } from '@utils/appInfo';
import useNetwork from '@hooks/useNetwork';
import { translate } from '@utils/helpers/i18n';
import { getMinMax } from '@utils/helpers/statisticsLib';
import { getMinMax, checkValidateData } from '@utils/helpers/statisticsLib';

import * as Styles from './Summary.styles';
import { LineChart } from './LineChart';
Expand Down Expand Up @@ -172,6 +172,28 @@ const Summary: React.FC = () => {
};
};

const transformSupplyChartData = (key: string) => {
const dataX = [];
const dataY = [];
if (summaryChartData) {
const items = summaryChartData[key as keyof ISummaryChartStats] as TSummaryChartProps[];
if (items.length) {
for (let i = 0; i < items.length; i += 1) {
dataX.push(new Date(items[i].time).toLocaleString());
dataY.push(Number(items[i].value) < 0 ? 0 : Number(items[i].value));
}
if (checkValidateData(items[items.length - 1]?.time)) {
dataX.push(new Date().toLocaleString());
dataY.push(dataY[dataY.length - 1]);
}
}
}
return {
dataX,
dataY,
};
};

const transformNetworkChartData = (key: string) => {
const dataX = [];
const dataY = [];
Expand Down Expand Up @@ -201,13 +223,13 @@ const Summary: React.FC = () => {

switch (key) {
case 'circulatingSupply':
parseChartData = transformChartData(key);
parseChartData = transformSupplyChartData(key);
dataX = parseChartData?.dataX;
dataY = parseChartData?.dataY;
offset = 0;
break;
case 'coinSupply':
parseChartData = transformChartData(key);
parseChartData = transformSupplyChartData(key);
dataX = parseChartData?.dataX;
dataY = parseChartData?.dataY;
offset = 0;
Expand Down
5 changes: 3 additions & 2 deletions src/utils/helpers/statisticsLib.ts
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ export const makeDownloadFileName = (currencyName: string | number, title: strin
return `${currencyName}_${imageTitle}_${dateTime}`;
};

const checkValidateData = (timestamp: number) => {
export const checkValidateData = (timestamp: number) => {
if (!timestamp) {
return null;
}
Expand Down Expand Up @@ -545,7 +545,8 @@ export function transformTotalSupplyDataChart(
const dataX: string[] = [];
const dataY: number[] = [];
for (let i = 0; i < trans.length; i += 1) {
dataY.push(Number(trans[i].coinSupply) - trans[i].totalBurnedPSL);
const value = Number(trans[i].coinSupply) - trans[i].totalBurnedPSL;
dataY.push(value < 0 ? 0 : value);
dataX.push(new Date(trans[i].timestamp).toLocaleString());
}
if (period === '24h' && checkValidateData(trans[trans.length - 1]?.timestamp)) {
Expand Down

0 comments on commit 9e58375

Please sign in to comment.