Browse Source

chore: add cmc decimal representation

Guillermo Bescos 10 tháng trước cách đây
mục cha
commit
a7104a8f44
1 tập tin đã thay đổi với 8 bổ sung2 xóa
  1. 8 2
      apps/staking/src/app/api/v1/cmc/supply/route.ts

+ 8 - 2
apps/staking/src/app/api/v1/cmc/supply/route.ts

@@ -5,11 +5,13 @@ import type { NextRequest } from "next/server";
 import { z } from "zod";
 
 import { MAINNET_API_RPC } from "../../../../../config/server";
+import { tokensToString } from "../../../../../tokens";
 
 const querySchema = z.enum(["totalSupply", "circulatingSupply"]);
 
 export async function GET(req: NextRequest) {
   const isMainnet = req.nextUrl.searchParams.get("devnet") !== "true";
+  const asDecimal = req.nextUrl.searchParams.get("as_decimal") === "true";
   const stakingClient = new PythStakingClient({
     connection: new Connection(
       isMainnet && MAINNET_API_RPC !== undefined
@@ -34,9 +36,13 @@ export async function GET(req: NextRequest) {
 
   if (q === "circulatingSupply") {
     const circulatingSupply = await stakingClient.getCirculatingSupply();
-    return Response.json(Number(circulatingSupply));
+    return Response.json(
+      asDecimal ? tokensToString(circulatingSupply) : Number(circulatingSupply),
+    );
   } else {
     const pythMint = await stakingClient.getPythTokenMint();
-    return Response.json(Number(pythMint.supply));
+    return Response.json(
+      asDecimal ? tokensToString(pythMint.supply) : Number(pythMint.supply),
+    );
   }
 }