From 09a894e9ed378aa0248cc5ecf52395131cc0e532 Mon Sep 17 00:00:00 2001 From: Kirill Litvinov Date: Mon, 27 Nov 2023 19:49:03 +0500 Subject: [PATCH] swapInfo usd --- package-lock.json | 4 ++-- package.json | 2 +- src/services/Aggregator/schemas/swapInfoSchema.ts | 7 +++++++ src/services/Aggregator/ws/schemas/swapInfoSchema.ts | 9 ++++++++- src/types.ts | 7 +++++++ 5 files changed, 25 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index bfcfeb6..26e7112 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@orionprotocol/sdk", - "version": "0.20.23", + "version": "0.20.24", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@orionprotocol/sdk", - "version": "0.20.23", + "version": "0.20.24", "hasInstallScript": true, "license": "ISC", "dependencies": { diff --git a/package.json b/package.json index ed34454..04d614d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@orionprotocol/sdk", - "version": "0.20.23", + "version": "0.20.24-rc1", "description": "Orion Protocol SDK", "main": "./lib/index.cjs", "module": "./lib/index.js", diff --git a/src/services/Aggregator/schemas/swapInfoSchema.ts b/src/services/Aggregator/schemas/swapInfoSchema.ts index 76e963d..d29c82a 100644 --- a/src/services/Aggregator/schemas/swapInfoSchema.ts +++ b/src/services/Aggregator/schemas/swapInfoSchema.ts @@ -40,6 +40,13 @@ const swapInfoBase = z.object({ isThroughPoolOrCurve: z.boolean(), }).array(), assetNameMapping: z.record(z.string()).optional(), // address to ERC20 names + usd: z.object({ // USD info of this swap, nullable + aa: z.number(), // available amount in, USD + aao: z.number().optional(), // available amount out, USD + mo: z.number(), // market amount out, USD + mi: z.number().optional(), // market amount in, USD + d: z.number().optional(), // difference in available amount in/out (USD) and market amount out/in (USD) in percentage + }).optional(), }); const swapInfoByAmountIn = swapInfoBase.extend({ diff --git a/src/services/Aggregator/ws/schemas/swapInfoSchema.ts b/src/services/Aggregator/ws/schemas/swapInfoSchema.ts index aa79db8..a38e783 100644 --- a/src/services/Aggregator/ws/schemas/swapInfoSchema.ts +++ b/src/services/Aggregator/ws/schemas/swapInfoSchema.ts @@ -40,7 +40,14 @@ const swapInfoSchemaBase = baseMessageSchema.extend({ ai: z.string().toUpperCase(), // asset in ao: z.string().toUpperCase(), // asset out f: factorySchema, // factory - })) + })), + usd: z.object({ // USD info of this swap, nullable + aa: z.number(), // available amount in, USD + aao: z.number().optional(), // available amount out, USD + mo: z.number(), // market amount out, USD + mi: z.number().optional(), // market amount in, USD + d: z.number().optional(), // difference in available amount in/out (USD) and market amount out/in (USD) in percentage + }).optional(), }); const swapInfoSchemaByAmountIn = swapInfoSchemaBase.extend({ diff --git a/src/types.ts b/src/types.ts index ecc3568..39ab935 100644 --- a/src/types.ts +++ b/src/types.ts @@ -197,6 +197,13 @@ export type SwapInfoBase = { } | undefined alternatives: SwapInfoAlternative[] assetsNameMapping?: Partial> | undefined + usdInfo?: { + availableAmountIn: number + availableAmountOut?: number + marketAmountIn: number + marketAmountOut?: number + difference: number + } } export type SwapInfoByAmountIn = SwapInfoBase & {