From 530edc3b460f7e8b09a8fad8b0544ded0d68dc39 Mon Sep 17 00:00:00 2001 From: Demid Date: Mon, 23 Jan 2023 12:02:14 +0300 Subject: [PATCH] added leverage and position status --- package.json | 2 +- src/constants/positionStatuses.ts | 9 +++++++++ .../OrionAggregator/ws/schemas/cfdBalancesSchema.ts | 5 +++++ src/types.ts | 4 ++++ 4 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 src/constants/positionStatuses.ts diff --git a/package.json b/package.json index e3b59d6..fa92ac3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@orionprotocol/sdk", - "version": "0.16.0-rc.22", + "version": "0.16.0-rc.23", "description": "Orion Protocol SDK", "main": "./lib/esm/index.js", "module": "./lib/esm/index.js", diff --git a/src/constants/positionStatuses.ts b/src/constants/positionStatuses.ts new file mode 100644 index 0000000..a4b0abe --- /dev/null +++ b/src/constants/positionStatuses.ts @@ -0,0 +1,9 @@ +const positionStatuses = [ + 'SHORT', + 'LONG', + 'CLOSED', + 'LIQUIDATED', + 'NOT_OPEN', +] as const; + +export default positionStatuses; diff --git a/src/services/OrionAggregator/ws/schemas/cfdBalancesSchema.ts b/src/services/OrionAggregator/ws/schemas/cfdBalancesSchema.ts index 78b0fcb..c8c228c 100644 --- a/src/services/OrionAggregator/ws/schemas/cfdBalancesSchema.ts +++ b/src/services/OrionAggregator/ws/schemas/cfdBalancesSchema.ts @@ -1,4 +1,5 @@ import { z } from 'zod'; +import positionStatuses from "../../../../constants/positionStatuses"; const cfdBalanceSchema = z .object({ @@ -17,6 +18,8 @@ const cfdBalanceSchema = z awb: z.string(), mli: z.string(), msi: z.string(), + l: z.string(), + s: z.enum(positionStatuses), }) .transform((obj) => ({ instrument: obj.i, @@ -34,6 +37,8 @@ const cfdBalanceSchema = z availableWithdrawBalance: obj.awb, maxAvailableLong: obj.mli, maxAvailableShort: obj.msi, + leverage: obj.l, + status: obj.s, })); const cfdBalancesSchema = z.array(cfdBalanceSchema); diff --git a/src/types.ts b/src/types.ts index 32b910c..e46ecc4 100644 --- a/src/types.ts +++ b/src/types.ts @@ -42,6 +42,8 @@ export type CFDBalance = { availableWithdrawBalance: string, maxAvailableLong: string, maxAvailableShort: string, + leverage: string, + status: PositionStatus, } export interface Order { @@ -233,3 +235,5 @@ export enum HistoryTransactionStatus { APPROVING = 'Approving', CANCELLED = 'Cancelled', } + +export type PositionStatus = 'SHORT' | 'LONG' | 'CLOSED' | 'LIQUIDATED' | 'NOT_OPEN';