Sfoglia il codice sorgente

Merge pull request #2281 from pyth-network/chore/cmc-decimal

chore: add cmc decimal representation
Connor Prussin 10 mesi fa
parent
commit
2b29c99379
1 ha cambiato i file con 8 aggiunte e 2 eliminazioni
  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),
+    );
   }
 }