@reyaxyz/common 0.174.0 → 0.175.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -48,7 +48,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
48
48
  };
49
49
  var _a;
50
50
  Object.defineProperty(exports, "__esModule", { value: true });
51
- exports.executeTransaction = exports.estimateGasFromTxAndChainId = exports.estimateGas = void 0;
51
+ exports.decodeError = exports.executeTransaction = exports.estimateGasWithoutHardcoding = exports.estimateGasFromTxAndChainId = exports.estimateGas = void 0;
52
52
  var ethers_1 = require("ethers");
53
53
  var types_1 = require("../types");
54
54
  var contractAddresses_1 = require("./contractAddresses");
@@ -136,9 +136,51 @@ function estimateGasFromTxAndChainId(chainId, tx) {
136
136
  });
137
137
  }
138
138
  exports.estimateGasFromTxAndChainId = estimateGasFromTxAndChainId;
139
+ function estimateGasWithoutHardcoding(signer, data, value, chainId, targetContract) {
140
+ return __awaiter(this, void 0, void 0, function () {
141
+ var accountAddress, contractAddress, tx, gasLimit, provider, estimation, error_3, decodedError, reason, maxPriorityFeePerGas, maxFeePerGas;
142
+ return __generator(this, function (_a) {
143
+ switch (_a.label) {
144
+ case 0: return [4 /*yield*/, signer.getAddress()];
145
+ case 1:
146
+ accountAddress = _a.sent();
147
+ contractAddress = Object.values(contractAddresses_1.ContractType).includes(targetContract)
148
+ ? (0, contractAddresses_1.getAddress)(chainId, targetContract)
149
+ : targetContract;
150
+ tx = __assign({ from: accountAddress, to: contractAddress, data: data }, (value && value !== '0' ? { value: value } : {}));
151
+ gasLimit = BigInt('5000000');
152
+ _a.label = 2;
153
+ case 2:
154
+ _a.trys.push([2, 4, , 6]);
155
+ provider = ethers_1.ethers.getDefaultProvider(reyaChainIdRPCMapper[chainId]);
156
+ return [4 /*yield*/, provider.estimateGas(tx)];
157
+ case 3:
158
+ estimation = _a.sent();
159
+ gasLimit = addGasBuffer(estimation);
160
+ return [3 /*break*/, 6];
161
+ case 4:
162
+ error_3 = _a.sent();
163
+ return [4 /*yield*/, errorDecoder.decode(error_3)];
164
+ case 5:
165
+ decodedError = _a.sent();
166
+ reason = customReasonMapper(decodedError);
167
+ console.error("Error simulating transaction account address ".concat(accountAddress, " reason ").concat(decodedError === null || decodedError === void 0 ? void 0 : decodedError.name, " ").concat(decodedError, " ").concat(error_3));
168
+ throw new Error(reason);
169
+ case 6:
170
+ if (Object.values(types_1.ReyaChainId).includes(chainId)) {
171
+ maxPriorityFeePerGas = BigInt('0');
172
+ maxFeePerGas = BigInt('100000000');
173
+ return [2 /*return*/, __assign(__assign({}, tx), { gasLimit: gasLimit, maxPriorityFeePerGas: maxPriorityFeePerGas, maxFeePerGas: maxFeePerGas })];
174
+ }
175
+ return [2 /*return*/, __assign(__assign({}, tx), { gasLimit: gasLimit })];
176
+ }
177
+ });
178
+ });
179
+ }
180
+ exports.estimateGasWithoutHardcoding = estimateGasWithoutHardcoding;
139
181
  function estimateGasExternalChains(signer, data, value, chainId, targetContract) {
140
182
  return __awaiter(this, void 0, void 0, function () {
141
- var accountAddress, contractAddress, tx, gasLimit, gasEstimate, error_3, decodedError, reason, maxPriorityFeePerGas, maxFeePerGas;
183
+ var accountAddress, contractAddress, tx, gasLimit, gasEstimate, error_4, decodedError, reason, maxPriorityFeePerGas, maxFeePerGas;
142
184
  return __generator(this, function (_a) {
143
185
  switch (_a.label) {
144
186
  case 0: return [4 /*yield*/, signer.getAddress()];
@@ -158,12 +200,12 @@ function estimateGasExternalChains(signer, data, value, chainId, targetContract)
158
200
  gasLimit = (0, txHelpers_1.getGasBuffer)(gasEstimate);
159
201
  return [3 /*break*/, 6];
160
202
  case 4:
161
- error_3 = _a.sent();
162
- return [4 /*yield*/, errorDecoder.decode(error_3)];
203
+ error_4 = _a.sent();
204
+ return [4 /*yield*/, errorDecoder.decode(error_4)];
163
205
  case 5:
164
206
  decodedError = _a.sent();
165
207
  reason = customReasonMapper(decodedError);
166
- console.error("Error simulating external transaction account address ".concat(accountAddress, " reason ").concat(decodedError === null || decodedError === void 0 ? void 0 : decodedError.name, " ").concat(decodedError, " ").concat(error_3));
208
+ console.error("Error simulating external transaction account address ".concat(accountAddress, " reason ").concat(decodedError === null || decodedError === void 0 ? void 0 : decodedError.name, " ").concat(decodedError, " ").concat(error_4));
167
209
  throw new Error(reason);
168
210
  case 6:
169
211
  if (Object.values(types_1.ReyaChainId).includes(chainId)) {
@@ -178,7 +220,7 @@ function estimateGasExternalChains(signer, data, value, chainId, targetContract)
178
220
  }
179
221
  function executeTransaction(signer, data, value, chainId, targetContract) {
180
222
  return __awaiter(this, void 0, void 0, function () {
181
- var txData, txResponse, txReceipt, error_4;
223
+ var txData, txResponse, txReceipt, error_5;
182
224
  return __generator(this, function (_a) {
183
225
  switch (_a.label) {
184
226
  case 0: return [4 /*yield*/, estimateGasExternalChains(signer, data, value, chainId, targetContract)];
@@ -195,8 +237,8 @@ function executeTransaction(signer, data, value, chainId, targetContract) {
195
237
  txReceipt = _a.sent();
196
238
  return [2 /*return*/, txReceipt];
197
239
  case 5:
198
- error_4 = _a.sent();
199
- console.warn(error_4);
240
+ error_5 = _a.sent();
241
+ console.warn(error_5);
200
242
  throw new Error('Transaction Execution Error');
201
243
  case 6: return [2 /*return*/];
202
244
  }
@@ -225,4 +267,20 @@ var customReasonMapper = function (_a) {
225
267
  function addGasBuffer(estimation) {
226
268
  return (estimation * BigInt(120)) / BigInt(100);
227
269
  }
270
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
271
+ function decodeError(returnData) {
272
+ return __awaiter(this, void 0, void 0, function () {
273
+ var decodedError, reason;
274
+ return __generator(this, function (_a) {
275
+ switch (_a.label) {
276
+ case 0: return [4 /*yield*/, errorDecoder.decode(returnData)];
277
+ case 1:
278
+ decodedError = _a.sent();
279
+ reason = customReasonMapper(decodedError);
280
+ return [2 /*return*/, reason];
281
+ }
282
+ });
283
+ });
284
+ }
285
+ exports.decodeError = decodeError;
228
286
  //# sourceMappingURL=executeTransaction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"executeTransaction.js","sourceRoot":"/","sources":["transactions/executeTransaction.ts"],"names":[],"mappings":"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","sourcesContent":["import { ethers, JsonRpcSigner, Signer } from 'ethers';\nimport { MoneyInOutChainId, ReyaChainId } from '../types';\nimport { ContractType, getAddress } from './contractAddresses';\nimport { abi } from './abis/Errors.json';\nimport { ErrorDecoder } from 'ethers-decode-error';\nimport type { DecodedError } from 'ethers-decode-error';\nimport { getGasBuffer } from './txHelpers';\nimport { getPublicRpcUrlsOrThrow } from '../utils';\n\nconst reyaChainIdRPCMapper: { [key: number]: string } = {\n [ReyaChainId.reyaNetwork]: 'https://rpc.reya.network',\n [ReyaChainId.reyaCronos]: 'https://rpc.reya-cronos.gelato.digital',\n};\n\nexport type Transaction = {\n from: string;\n to: string;\n data: string;\n value?: string;\n};\nconst errorDecoder = ErrorDecoder.create([abi]);\n\nexport async function estimateGas(\n signer: Signer | JsonRpcSigner,\n data: string,\n value: string,\n chainId: number,\n targetContract: ContractType | string,\n): Promise<\n Transaction & {\n gasLimit: bigint;\n maxPriorityFeePerGas?: bigint;\n maxFeePerGas?: bigint;\n }\n> {\n const accountAddress = await signer.getAddress();\n\n const contractAddress = Object.values(ContractType).includes(\n targetContract as ContractType,\n )\n ? getAddress(chainId, targetContract as ContractType)\n : targetContract;\n const tx = {\n from: accountAddress, // @todo Update with relayer address\n to: contractAddress,\n data,\n ...(value && value !== '0' ? { value: value } : {}),\n };\n\n const gasLimit: bigint = BigInt('5000000'); // hardcode to 5m gas limit if fails to get estimate\n\n try {\n const provider = ethers.getDefaultProvider(reyaChainIdRPCMapper[chainId]);\n await provider.call(tx);\n } catch (error) {\n const decodedError = await errorDecoder.decode(error);\n const reason = customReasonMapper(decodedError);\n console.error(\n `Error simulating transaction account address ${accountAddress} reason ${decodedError?.name} ${decodedError} ${error}`,\n );\n throw new Error(reason);\n }\n\n if (Object.values(ReyaChainId).includes(chainId as ReyaChainId)) {\n const maxPriorityFeePerGas: bigint = BigInt('0');\n const maxFeePerGas: bigint = BigInt('100000000');\n return { ...tx, gasLimit, maxPriorityFeePerGas, maxFeePerGas };\n }\n\n return { ...tx, gasLimit };\n}\n\nexport async function estimateGasFromTxAndChainId(\n chainId: ReyaChainId | MoneyInOutChainId,\n tx: ethers.TransactionRequest,\n): Promise<bigint> {\n const rpcUrls = getPublicRpcUrlsOrThrow(chainId);\n let lastError = null;\n\n for (const url of rpcUrls) {\n try {\n const provider = new ethers.JsonRpcProvider(url);\n const estimation = await provider.estimateGas(tx);\n return addGasBuffer(estimation);\n } catch (error) {\n lastError = error;\n }\n }\n\n throw new Error('All RPC URLs failed; last error: ' + lastError);\n}\n\nasync function estimateGasExternalChains(\n signer: Signer | JsonRpcSigner,\n data: string,\n value: string,\n chainId: number,\n targetContract: ContractType | string,\n): Promise<\n Transaction & {\n gasLimit: bigint;\n maxPriorityFeePerGas?: bigint;\n maxFeePerGas?: bigint;\n }\n> {\n const accountAddress = await signer.getAddress();\n\n const contractAddress = Object.values(ContractType).includes(\n targetContract as ContractType,\n )\n ? getAddress(chainId, targetContract as ContractType)\n : targetContract;\n const tx = {\n from: accountAddress,\n to: contractAddress,\n data,\n ...(value && value !== '0' ? { value: value } : {}),\n };\n\n let gasLimit: bigint = BigInt('5000000'); // hardcode to 5m gas limit if fails to get estimate\n\n try {\n const gasEstimate = await signer.estimateGas(tx);\n gasLimit = getGasBuffer(gasEstimate);\n } catch (error) {\n const decodedError = await errorDecoder.decode(error);\n const reason = customReasonMapper(decodedError);\n console.error(\n `Error simulating external transaction account address ${accountAddress} reason ${decodedError?.name} ${decodedError} ${error}`,\n );\n throw new Error(reason);\n }\n\n if (Object.values(ReyaChainId).includes(chainId as ReyaChainId)) {\n const maxPriorityFeePerGas: bigint = BigInt('0');\n const maxFeePerGas: bigint = BigInt('100000000');\n return { ...tx, gasLimit, maxPriorityFeePerGas, maxFeePerGas };\n }\n\n return { ...tx, gasLimit };\n}\nexport async function executeTransaction(\n signer: Signer | JsonRpcSigner,\n data: string,\n value: string,\n chainId: number,\n targetContract: ContractType | string,\n) {\n const txData = await estimateGasExternalChains(\n signer,\n data,\n value,\n chainId,\n targetContract,\n );\n\n try {\n const txResponse = await signer.sendTransaction(txData);\n const txReceipt = await txResponse.wait();\n return txReceipt;\n } catch (error) {\n console.warn(error);\n throw new Error('Transaction Execution Error');\n }\n}\nconst customReasonMapper = ({ name, reason }: DecodedError): string => {\n switch (name) {\n case 'SignatureInvalid':\n return `Invalid signature. Please refresh page and try again`;\n case 'StalePriceDetected':\n return `Price not updated, please try again a bit later`;\n case 'SmallOrderSize':\n return `Order size below minimum`;\n case 'DustyOrderSize':\n return `Order amount is not divisible by trade size spacing`;\n case 'AccountBelowIM':\n return `Account below required margin`;\n default:\n // This handles the non-custom errors\n return reason ?? 'Error executing transaction';\n }\n};\n\nfunction addGasBuffer(estimation: bigint): bigint {\n return (estimation * BigInt(120)) / BigInt(100);\n}\n"]}
1
+ {"version":3,"file":"executeTransaction.js","sourceRoot":"/","sources":["transactions/executeTransaction.ts"],"names":[],"mappings":"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","sourcesContent":["import { ethers, JsonRpcSigner, Signer } from 'ethers';\nimport { MoneyInOutChainId, ReyaChainId } from '../types';\nimport { ContractType, getAddress } from './contractAddresses';\nimport { abi } from './abis/Errors.json';\nimport { ErrorDecoder } from 'ethers-decode-error';\nimport type { DecodedError } from 'ethers-decode-error';\nimport { getGasBuffer } from './txHelpers';\nimport { getPublicRpcUrlsOrThrow } from '../utils';\n\nconst reyaChainIdRPCMapper: { [key: number]: string } = {\n [ReyaChainId.reyaNetwork]: 'https://rpc.reya.network',\n [ReyaChainId.reyaCronos]: 'https://rpc.reya-cronos.gelato.digital',\n};\n\nexport type Transaction = {\n from: string;\n to: string;\n data: string;\n value?: string;\n};\nconst errorDecoder = ErrorDecoder.create([abi]);\n\nexport async function estimateGas(\n signer: Signer | JsonRpcSigner,\n data: string,\n value: string,\n chainId: number,\n targetContract: ContractType | string,\n): Promise<\n Transaction & {\n gasLimit: bigint;\n maxPriorityFeePerGas?: bigint;\n maxFeePerGas?: bigint;\n }\n> {\n const accountAddress = await signer.getAddress();\n\n const contractAddress = Object.values(ContractType).includes(\n targetContract as ContractType,\n )\n ? getAddress(chainId, targetContract as ContractType)\n : targetContract;\n const tx = {\n from: accountAddress, // @todo Update with relayer address\n to: contractAddress,\n data,\n ...(value && value !== '0' ? { value: value } : {}),\n };\n\n const gasLimit: bigint = BigInt('5000000'); // hardcode to 5m gas limit if fails to get estimate\n\n try {\n const provider = ethers.getDefaultProvider(reyaChainIdRPCMapper[chainId]);\n await provider.call(tx);\n } catch (error) {\n const decodedError = await errorDecoder.decode(error);\n const reason = customReasonMapper(decodedError);\n console.error(\n `Error simulating transaction account address ${accountAddress} reason ${decodedError?.name} ${decodedError} ${error}`,\n );\n throw new Error(reason);\n }\n\n if (Object.values(ReyaChainId).includes(chainId as ReyaChainId)) {\n const maxPriorityFeePerGas: bigint = BigInt('0');\n const maxFeePerGas: bigint = BigInt('100000000');\n return { ...tx, gasLimit, maxPriorityFeePerGas, maxFeePerGas };\n }\n\n return { ...tx, gasLimit };\n}\n\nexport async function estimateGasFromTxAndChainId(\n chainId: ReyaChainId | MoneyInOutChainId,\n tx: ethers.TransactionRequest,\n): Promise<bigint> {\n const rpcUrls = getPublicRpcUrlsOrThrow(chainId);\n let lastError = null;\n\n for (const url of rpcUrls) {\n try {\n const provider = new ethers.JsonRpcProvider(url);\n const estimation = await provider.estimateGas(tx);\n return addGasBuffer(estimation);\n } catch (error) {\n lastError = error;\n }\n }\n\n throw new Error('All RPC URLs failed; last error: ' + lastError);\n}\n\nexport async function estimateGasWithoutHardcoding(\n signer: Signer | JsonRpcSigner,\n data: string,\n value: string,\n chainId: number,\n targetContract: ContractType | string,\n): Promise<\n Transaction & {\n gasLimit: bigint;\n maxPriorityFeePerGas?: bigint;\n maxFeePerGas?: bigint;\n }\n> {\n const accountAddress = await signer.getAddress();\n\n const contractAddress = Object.values(ContractType).includes(\n targetContract as ContractType,\n )\n ? getAddress(chainId, targetContract as ContractType)\n : targetContract;\n const tx = {\n from: accountAddress, // @todo Update with relayer address\n to: contractAddress,\n data,\n ...(value && value !== '0' ? { value: value } : {}),\n };\n\n let gasLimit: bigint = BigInt('5000000'); // hardcode to 5m gas limit if fails to get estimate\n\n try {\n const provider = ethers.getDefaultProvider(reyaChainIdRPCMapper[chainId]);\n const estimation = await provider.estimateGas(tx);\n gasLimit = addGasBuffer(estimation);\n } catch (error) {\n const decodedError = await errorDecoder.decode(error);\n const reason = customReasonMapper(decodedError);\n console.error(\n `Error simulating transaction account address ${accountAddress} reason ${decodedError?.name} ${decodedError} ${error}`,\n );\n throw new Error(reason);\n }\n\n if (Object.values(ReyaChainId).includes(chainId as ReyaChainId)) {\n const maxPriorityFeePerGas: bigint = BigInt('0');\n const maxFeePerGas: bigint = BigInt('100000000');\n return { ...tx, gasLimit, maxPriorityFeePerGas, maxFeePerGas };\n }\n\n return { ...tx, gasLimit };\n}\n\nasync function estimateGasExternalChains(\n signer: Signer | JsonRpcSigner,\n data: string,\n value: string,\n chainId: number,\n targetContract: ContractType | string,\n): Promise<\n Transaction & {\n gasLimit: bigint;\n maxPriorityFeePerGas?: bigint;\n maxFeePerGas?: bigint;\n }\n> {\n const accountAddress = await signer.getAddress();\n\n const contractAddress = Object.values(ContractType).includes(\n targetContract as ContractType,\n )\n ? getAddress(chainId, targetContract as ContractType)\n : targetContract;\n const tx = {\n from: accountAddress,\n to: contractAddress,\n data,\n ...(value && value !== '0' ? { value: value } : {}),\n };\n\n let gasLimit: bigint = BigInt('5000000'); // hardcode to 5m gas limit if fails to get estimate\n\n try {\n const gasEstimate = await signer.estimateGas(tx);\n gasLimit = getGasBuffer(gasEstimate);\n } catch (error) {\n const decodedError = await errorDecoder.decode(error);\n const reason = customReasonMapper(decodedError);\n console.error(\n `Error simulating external transaction account address ${accountAddress} reason ${decodedError?.name} ${decodedError} ${error}`,\n );\n throw new Error(reason);\n }\n\n if (Object.values(ReyaChainId).includes(chainId as ReyaChainId)) {\n const maxPriorityFeePerGas: bigint = BigInt('0');\n const maxFeePerGas: bigint = BigInt('100000000');\n return { ...tx, gasLimit, maxPriorityFeePerGas, maxFeePerGas };\n }\n\n return { ...tx, gasLimit };\n}\nexport async function executeTransaction(\n signer: Signer | JsonRpcSigner,\n data: string,\n value: string,\n chainId: number,\n targetContract: ContractType | string,\n) {\n const txData = await estimateGasExternalChains(\n signer,\n data,\n value,\n chainId,\n targetContract,\n );\n\n try {\n const txResponse = await signer.sendTransaction(txData);\n const txReceipt = await txResponse.wait();\n return txReceipt;\n } catch (error) {\n console.warn(error);\n throw new Error('Transaction Execution Error');\n }\n}\nconst customReasonMapper = ({ name, reason }: DecodedError): string => {\n switch (name) {\n case 'SignatureInvalid':\n return `Invalid signature. Please refresh page and try again`;\n case 'StalePriceDetected':\n return `Price not updated, please try again a bit later`;\n case 'SmallOrderSize':\n return `Order size below minimum`;\n case 'DustyOrderSize':\n return `Order amount is not divisible by trade size spacing`;\n case 'AccountBelowIM':\n return `Account below required margin`;\n default:\n // This handles the non-custom errors\n return reason ?? 'Error executing transaction';\n }\n};\n\nfunction addGasBuffer(estimation: bigint): bigint {\n return (estimation * BigInt(120)) / BigInt(100);\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function decodeError(returnData: any): Promise<string> {\n const decodedError = await errorDecoder.decode(returnData);\n const reason = customReasonMapper(decodedError);\n return reason;\n}\n"]}
@@ -46,6 +46,7 @@ export declare class ExposureCommand {
46
46
  static getMarginRatio(marginInfo: MarginInfo): number;
47
47
  static exchangeWithPriceHaircut(quantity: number, price: number, haircut: number): number;
48
48
  static reverseExchangeWithPriceHaircut(quantity: number, price: number, haircut: number): number;
49
+ static getBalanceWithHaircut(exchangeInfoPerAsset: ExchangeInfo[], assetAddress: string, marginBalance: number): number;
49
50
  getSlippage(deltaBase: number, marketConfiguration: MarketConfiguration, marketStorage: MarketStorage): number;
50
51
  getMaxExposure(marketConfiguration: MarketConfiguration, marketStorage: MarketStorage, isPool: boolean): {
51
52
  maxExposureShort: number;
@@ -76,6 +77,7 @@ export declare class ExposureCommand {
76
77
  get realisedPnl(): number;
77
78
  get unRealisedPnl(): number;
78
79
  get accountTotalBalanceUsd(): number;
80
+ get accountTotalBalanceWithHaircutUsd(): number;
79
81
  getMtmRpnlSum(): number;
80
82
  }
81
83
  //# sourceMappingURL=command.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command.d.ts","sourceRoot":"/","sources":["commands/exposure/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"/","sources":["commands/exposure/command.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ export type Call = {
2
2
  target: string;
3
3
  callData: string;
4
4
  };
5
+ export declare const encodeCoreMulticall: (calls: Call[]) => string;
5
6
  export declare const encodeStrictMulticall: (calls: Call[]) => string;
6
7
  export declare const encodeOptionalMulticall: (calls: Call[]) => string;
7
8
  //# sourceMappingURL=buildMulticallTx.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildMulticallTx.d.ts","sourceRoot":"/","sources":["transactions/buildMulticallTx.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,IAAI,GAAG;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAUF,eAAO,MAAM,qBAAqB,UAAW,IAAI,EAAE,WACrB,CAAC;AAE/B,eAAO,MAAM,uBAAuB,UAAW,IAAI,EAAE,WACtB,CAAC"}
1
+ {"version":3,"file":"buildMulticallTx.d.ts","sourceRoot":"/","sources":["transactions/buildMulticallTx.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,IAAI,GAAG;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAAW,IAAI,EAAE,KAAG,MAMnD,CAAC;AAUF,eAAO,MAAM,qBAAqB,UAAW,IAAI,EAAE,WACrB,CAAC;AAE/B,eAAO,MAAM,uBAAuB,UAAW,IAAI,EAAE,WACtB,CAAC"}
@@ -13,5 +13,11 @@ export declare function estimateGas(signer: Signer | JsonRpcSigner, data: string
13
13
  maxFeePerGas?: bigint;
14
14
  }>;
15
15
  export declare function estimateGasFromTxAndChainId(chainId: ReyaChainId | MoneyInOutChainId, tx: ethers.TransactionRequest): Promise<bigint>;
16
+ export declare function estimateGasWithoutHardcoding(signer: Signer | JsonRpcSigner, data: string, value: string, chainId: number, targetContract: ContractType | string): Promise<Transaction & {
17
+ gasLimit: bigint;
18
+ maxPriorityFeePerGas?: bigint;
19
+ maxFeePerGas?: bigint;
20
+ }>;
16
21
  export declare function executeTransaction(signer: Signer | JsonRpcSigner, data: string, value: string, chainId: number, targetContract: ContractType | string): Promise<ethers.TransactionReceipt | null>;
22
+ export declare function decodeError(returnData: any): Promise<string>;
17
23
  //# sourceMappingURL=executeTransaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"executeTransaction.d.ts","sourceRoot":"/","sources":["transactions/executeTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAc,MAAM,qBAAqB,CAAC;AAY/D,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAGF,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,GAAG,aAAa,EAC9B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,YAAY,GAAG,MAAM,GACpC,OAAO,CACR,WAAW,GAAG;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CACF,CAoCA;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,WAAW,GAAG,iBAAiB,EACxC,EAAE,EAAE,MAAM,CAAC,kBAAkB,GAC5B,OAAO,CAAC,MAAM,CAAC,CAejB;AAmDD,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,GAAG,aAAa,EAC9B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,YAAY,GAAG,MAAM,6CAkBtC"}
1
+ {"version":3,"file":"executeTransaction.d.ts","sourceRoot":"/","sources":["transactions/executeTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAc,MAAM,qBAAqB,CAAC;AAY/D,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAGF,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,GAAG,aAAa,EAC9B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,YAAY,GAAG,MAAM,GACpC,OAAO,CACR,WAAW,GAAG;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CACF,CAoCA;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,WAAW,GAAG,iBAAiB,EACxC,EAAE,EAAE,MAAM,CAAC,kBAAkB,GAC5B,OAAO,CAAC,MAAM,CAAC,CAejB;AAED,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,MAAM,GAAG,aAAa,EAC9B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,YAAY,GAAG,MAAM,GACpC,OAAO,CACR,WAAW,GAAG;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CACF,CAqCA;AAmDD,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,GAAG,aAAa,EAC9B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,YAAY,GAAG,MAAM,6CAkBtC;AAwBD,wBAAsB,WAAW,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAIlE"}
@@ -75,6 +75,7 @@ export type CollateralEntity = {
75
75
  percentage: number;
76
76
  balance: number;
77
77
  balanceRUSD: number;
78
+ balanceWithHaircutRUSD: number;
78
79
  exchangeRate: number;
79
80
  exchangeRateChange24HPercentage: number;
80
81
  };
@@ -90,6 +91,7 @@ export type MarginAccountEntity = {
90
91
  totalBalance: number;
91
92
  totalBalanceUnderlyingAsset: string;
92
93
  totalBalanceChange24HPercentage: number;
94
+ totalBalanceWithHaircut: number;
93
95
  livePnL: number;
94
96
  livePnLUnderlyingAsset: string;
95
97
  realizedPnL: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"/","sources":["types.ts"],"names":[],"mappings":";;;AAsCA,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,8DAAkB,CAAA;IAClB,gEAAqB,CAAA;AACvB,CAAC,EAHW,WAAW,2BAAX,WAAW,QAGtB;AAED,IAAY,iBAWX;AAXD,WAAY,iBAAiB;IAC3B,UAAU;IACV,+EAAmB,CAAA;IACnB,oEAAc,CAAA;IACd,+EAAoB,CAAA;IACpB,2EAAmB,CAAA;IACnB,0EAAkB,CAAA;IAClB,UAAU;IACV,oFAAwB,CAAA;IACxB,0EAAoB,CAAA;IACpB,sFAA0B,CAAA;AAC5B,CAAC,EAXW,iBAAiB,iCAAjB,iBAAiB,QAW5B;AAED,IAAY,iBAQX;AARD,WAAY,iBAAiB;IAC3B,wCAAmB,CAAA;IACnB,2CAAsB,CAAA;IACtB,+CAA0B,CAAA;IAC1B,8CAAyB,CAAA;IACzB,uCAAkB,CAAA;IAClB,0CAAqB,CAAA;IACrB,qCAAgB,CAAA;AAClB,CAAC,EARW,iBAAiB,iCAAjB,iBAAiB,QAQ5B;AAsMD,0BAA0B;AAC1B,IAAY,oBAOX;AAPD,WAAY,oBAAoB;IAC9B,+EAAsB,CAAA;IACtB,6EAAyB,CAAA;IACzB,4EAA6B,CAAA;IAC7B,+EAAkC,CAAA;IAClC,kFAAoC,CAAA;IACpC,iFAAoC,CAAA;AACtC,CAAC,EAPW,oBAAoB,oCAApB,oBAAoB,QAO/B;AA0FD,iCAAiC;AACjC,IAAY,+BAOX;AAPD,WAAY,+BAA+B;IACzC,qGAAsB,CAAA;IACtB,mGAAyB,CAAA;IACzB,kGAA6B,CAAA;IAC7B,qGAAkC,CAAA;IAClC,wGAAoC,CAAA;IACpC,uGAAoC,CAAA;AACtC,CAAC,EAPW,+BAA+B,+CAA/B,+BAA+B,QAO1C;AAWD,6CAA6C;AAC7C,IAAY,0CAOX;AAPD,WAAY,0CAA0C;IACpD,2HAAsB,CAAA;IACtB,yHAAyB,CAAA;IACzB,wHAA6B,CAAA;IAC7B,2HAAkC,CAAA;IAClC,8HAAoC,CAAA;IACpC,6HAAoC,CAAA;AACtC,CAAC,EAPW,0CAA0C,0DAA1C,0CAA0C,QAOrD;AA6BD,IAAY,mCAOX;AAPD,WAAY,mCAAmC;IAC7C,6GAAsB,CAAA;IACtB,2GAAyB,CAAA;IACzB,0GAA6B,CAAA;IAC7B,6GAAkC,CAAA;IAClC,gHAAoC,CAAA;IACpC,+GAAoC,CAAA;AACtC,CAAC,EAPW,mCAAmC,mDAAnC,mCAAmC,QAO9C;AAED,gCAAgC;AAChC,IAAY,6BAOX;AAPD,WAAY,6BAA6B;IACvC,iGAAsB,CAAA;IACtB,+FAAyB,CAAA;IACzB,8FAA6B,CAAA;IAC7B,iGAAkC,CAAA;IAClC,oGAAoC,CAAA;IACpC,mGAAoC,CAAA;AACtC,CAAC,EAPW,6BAA6B,6CAA7B,6BAA6B,QAOxC;AAqZD,IAAY,gBAQX;AARD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,0CAAsB,CAAA;IACtB,8CAA0B,CAAA;IAC1B,6CAAyB,CAAA;IACzB,sCAAkB,CAAA;IAClB,yCAAqB,CAAA;IACrB,oCAAgB,CAAA;AAClB,CAAC,EARW,gBAAgB,gCAAhB,gBAAgB,QAQ3B;AAgDD,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC9B,yEAAa,CAAA;IACb,6EAAe,CAAA;IACf,6EAAe,CAAA;AACjB,CAAC,EAJW,oBAAoB,oCAApB,oBAAoB,QAI/B;AAOD,IAAY,sBAKX;AALD,WAAY,sBAAsB;IAChC,6CAAmB,CAAA;IACnB,2CAAiB,CAAA;IACjB,iDAAuB,CAAA;IACvB,+CAAqB,CAAA;AACvB,CAAC,EALW,sBAAsB,sCAAtB,sBAAsB,QAKjC","sourcesContent":["import { EIP712Signature } from './transactions';\nimport { JsonRpcSigner, Signer } from 'ethers';\n\nexport type Address = Lowercase<string>;\nexport type TokenName = Uppercase<string>;\n\n// -- Markets --\nexport type MarketOrderInfo = {\n counterpartyAccountIds: number[];\n exchangeId: number;\n};\n\nexport type MarketEntity = {\n id: number;\n ticker: string;\n underlyingAsset: string;\n quoteToken: string;\n markPrice: number;\n isActive: boolean;\n maxLeverage: number;\n volume24H: number;\n priceChange24H: number;\n priceChange24HPercentage: number;\n openInterest: number;\n fundingRate: number;\n fundingRateAnnualized: number;\n description: string;\n orderInfo: MarketOrderInfo;\n tickSizeDecimals: number;\n minOrderSize: number;\n minOrderSizeBase: number;\n baseSpacing: number;\n longOI: number;\n shortOI: number;\n longSkewPercentage: number;\n shortSkewPercentage: number;\n};\n\nexport enum ReyaChainId {\n reyaNetwork = 1729,\n reyaCronos = 89346162,\n}\n\nexport enum MoneyInOutChainId {\n // mainnet\n ethereumMainnet = 1,\n opMainnet = 10,\n polygonMainnet = 137,\n arbitrumOne = 42161,\n baseMainnet = 8453,\n // testnet\n arbitrumSepolia = 421614,\n opSepolia = 11155420,\n ethereumSepolia = 11155111,\n}\n\nexport enum CandlesResolution {\n ONE_MINUTE = '1MIN',\n FIVE_MINUTES = '5MINS',\n FIFTEEN_MINUTES = '15MINS',\n THIRTY_MINUTES = '30MINS',\n ONE_HOUR = '1HOUR',\n FOUR_HOURS = '4HOURS',\n ONE_DAY = '1DAY',\n}\n\n// -- Candles --\nexport interface Candle {\n id: string;\n startedAt: string;\n ticker: string;\n resolution: CandlesResolution;\n low: string;\n high: string;\n open: string;\n close: string;\n baseTokenVolume: string;\n usdVolume: string;\n trades: number;\n startingOpenInterest: string;\n}\n\n// -- Account --\n\nexport type Status = 'OPEN' | 'CLOSED' | 'LIQUIDATED' | 'FILLED';\nexport type Side = 'long' | 'short';\n\nexport type CollateralEntity = {\n token: string;\n percentage: number;\n balance: number;\n balanceRUSD: number;\n exchangeRate: number;\n exchangeRateChange24HPercentage: number;\n};\n\nexport type MarginAccountEntity = {\n id: number;\n name: string;\n marginRatioHealth: 'danger' | 'healthy' | 'warning';\n marginRatioPercentage: number;\n marginRatioHealthDangerThreshold: number;\n marginRatioHealthWarningThreshold: number;\n isApproachingLiquidation: boolean;\n isLiquidationImminent: boolean;\n totalBalance: number;\n totalBalanceUnderlyingAsset: string;\n totalBalanceChange24HPercentage: number;\n livePnL: number;\n livePnLUnderlyingAsset: string;\n realizedPnL: number;\n realizedPnLUnderlyingAsset: string;\n realizedPnlHistoryTotal: number;\n totalPositionsCount: number;\n collaterals: CollateralEntity[];\n positions: PositionEntity[];\n};\n\nexport type ConditionalOrdersInfo = {\n stopLoss?: {\n stopLossPrice: number;\n orderId: string;\n };\n takeProfit?: {\n takeProfitPrice: number;\n orderId: string;\n };\n};\n\nexport type PositionEntity = {\n id: number;\n side: Side;\n size: number;\n base: number;\n price: number;\n conditionalOrdersInfo?: ConditionalOrdersInfo;\n markPrice: number;\n orderStatus: Status;\n realisedPnl: number;\n priceVariationPnl: number;\n livePnL: number;\n fundingPnl: number;\n unrealisedPnl: number;\n liquidationPrice: number;\n fundingRate: number;\n market: MarketEntity;\n account: {\n name: MarginAccountEntity['name'];\n id: MarginAccountEntity['id'];\n };\n tradeXpBoost: number;\n};\n\nexport type TradingHistoryEntity = {\n id: number;\n price: number;\n priceUnderlyingToken: string;\n size: number;\n sizeUnderlyingToken: string;\n timestampMillisecondsUTC: number;\n};\n\nexport type OrderType = 'market';\n\nexport type PositionHistoryType =\n | 'long-trade'\n | 'short-trade'\n | 'long-liquidation'\n | 'short-liquidation';\n\nexport type PositionHistoryEntity = {\n id: number;\n action: PositionHistoryType;\n orderType: OrderType;\n base: number;\n executionPrice: number;\n realisedPnl?: number | null;\n priceVariationPnl: number;\n fundingPnl: number;\n fees: number;\n openingFees: number;\n timestamp: number;\n market: MarketEntity;\n xpEarned: number;\n};\n\nexport type LpPoolEntity = {\n id: number;\n name: string;\n description: string;\n longDescription: string;\n readMoreLink: string;\n currentAPY: number;\n apyChange24H: number;\n tokenAddress: Address;\n token: string;\n minDepositAmount: number;\n minWithdrawAmount: number;\n minTransferFromMAToPoolAmount: number;\n minTransferFromPoolToMAAmount: number;\n stepSize: number;\n allowedChainsForLiquidity: MoneyInOutChainId[];\n moneyInOutConfiguration: MoneyInOutConfiguration;\n};\n\nexport type MoneyInOutConfiguration = {\n [key in MoneyInOutChainId]?: {\n minWithdrawAmount?: number;\n };\n};\n\nexport type MoneyInOutConfigurationPerTokenName = {\n [key in TokenName]?: MoneyInOutConfiguration;\n};\n\nexport type LpWithdrawBalanceEntity = {\n withdrawableBalance: number;\n poolSharePrice: number;\n accountShareBalance: number;\n};\n\nexport type TransactionHistoryType = 'deposit' | 'withdrawal';\n\nexport type LpTransactionHistoryEntity = {\n id: number;\n type: TransactionHistoryType;\n token: string;\n amount: number;\n transactionLink: string;\n timestamp: number;\n};\n\nexport type LpPositionEntity = {\n id: number;\n capitalInvested: number;\n currentBalance: number;\n pnl: number;\n lpPool: LpPoolEntity;\n};\n\nexport type MarginAccountTransactionHistoryType =\n | 'deposit'\n | 'withdrawal'\n | 'transfer'\n | 'auto_exchange';\n\nexport type MarginAccountTransactionStatus = 'confirmed' | 'pending';\n\nexport type MarginAccountTransactionHistoryEntity = {\n id: number;\n type: MarginAccountTransactionHistoryType;\n token: string;\n amount: number;\n transactionLink: string;\n status: MarginAccountTransactionStatus;\n timestamp: number;\n};\n\nexport type TokenEntity = {\n name: TokenName;\n address: Address;\n};\n// --- Lp Pool Balance ---\nexport enum LpBalanceGranularity {\n ONE_MINUTE = 60 * 1000,\n ONE_HOUR = 60 * 60 * 1000,\n ONE_DAY = 24 * 60 * 60 * 1000,\n ONE_WEEK = 7 * 24 * 60 * 60 * 1000,\n ONE_MONTH = 30 * 24 * 60 * 60 * 1000,\n ONE_YEAR = 365 * 24 * 60 * 60 * 1000,\n}\nexport type GetLpPoolBalanceChartDataResult = {\n data: {\n timestampInMs: number;\n value: number;\n }[];\n tvl: number;\n tvlChangePercentage: number;\n apy: number;\n apyChangePercentage: number;\n};\n\n// - LP Account Performance -\nexport type GetLpPoolPerformanceChartDataResult = {\n capitalInvestedData: {\n timestampInMs: number;\n value: number;\n }[];\n balanceData: {\n timestampInMs: number;\n value: number;\n }[];\n balance: number;\n balanceChangePercentage: number;\n capitalInvested: number;\n capitalInvestedChangePercentage: number;\n};\n\nexport type SocketTokenConnectors = {\n deposit: Address;\n withdraw: Address;\n};\n\nexport type GetSocketConnectorsParams = {\n moneyInOutChainId: MoneyInOutChainId;\n tokenName: TokenName;\n};\n\nexport type GetSocketVaultParams = {\n moneyInOutChainId: MoneyInOutChainId;\n tokenName: TokenName;\n};\n\nexport type GetMoneyInOutChainIdFromReyaConnectorParams = {\n reyaChainId: ReyaChainId;\n tokenName: TokenName;\n socketConnector: Address;\n};\n\nexport type GetSocketBridgeTimeParams = {\n moneyInOutChainId: MoneyInOutChainId;\n};\n\nexport type GetSocketBridgeTimeResult = {\n bridgeTimeInMS: number;\n};\n\nexport type SocketDepositFeesEntry = {\n moneyInOutChainId: MoneyInOutChainId;\n tokenName: TokenName;\n fees: bigint;\n};\n\nexport type SocketWithdrawFeesEntry = {\n moneyInOutChainId: MoneyInOutChainId;\n tokenName: TokenName;\n fees: bigint;\n};\n\nexport type SocketDepositFees = {\n fees: bigint;\n feesInUnderlyingToken: number;\n underlyingTokenName: TokenName;\n};\n\nexport type SocketWithdrawFees = {\n fees: bigint;\n feesInUnderlyingToken: number;\n underlyingTokenName: TokenName;\n};\n\nexport type GetSocketWithdrawFeesParams = {\n reyaChainId: ReyaChainId;\n tokenAddress: TokenEntity['address'];\n};\n\nexport type GetSocketWithdrawFeesResult = {\n fees: number;\n};\n\n// --- Margin Account Balance ---\nexport enum MarginAccountBalanceGranularity {\n ONE_MINUTE = 60 * 1000,\n ONE_HOUR = 60 * 60 * 1000,\n ONE_DAY = 24 * 60 * 60 * 1000,\n ONE_WEEK = 7 * 24 * 60 * 60 * 1000,\n ONE_MONTH = 30 * 24 * 60 * 60 * 1000,\n ONE_YEAR = 365 * 24 * 60 * 60 * 1000,\n}\n\nexport type GetMarginAccountBalanceChartDataResult = {\n balanceData: {\n timestampInMs: number;\n value: number;\n }[];\n balance: number;\n balanceChangePercentage: number;\n};\n\n// --- Margin Account Collaterals Balance ---\nexport enum MarginAccountCollateralsBalanceGranularity {\n ONE_MINUTE = 60 * 1000,\n ONE_HOUR = 60 * 60 * 1000,\n ONE_DAY = 24 * 60 * 60 * 1000,\n ONE_WEEK = 7 * 24 * 60 * 60 * 1000,\n ONE_MONTH = 30 * 24 * 60 * 60 * 1000,\n ONE_YEAR = 365 * 24 * 60 * 60 * 1000,\n}\n\nexport type GetMarginAccountCollateralsBalanceChartDataResult = {\n data: {\n balanceData: {\n timestampInMs: number;\n value: number;\n }[];\n token: string;\n }[];\n balance: number;\n balanceChangePercentage: number;\n};\n\nexport type OwnerMetadataEntity = {\n address: Address;\n coreSigNonce: number;\n poolSigNonce: number;\n};\n\nexport type GetAllMarginAccountsBalanceChartDataResult = {\n balanceData: {\n timestampInMs: number;\n value: number;\n }[];\n balance: number;\n balanceChangePercentage: number;\n};\n\nexport enum AllMarginAccountsBalanceGranularity {\n ONE_MINUTE = 60 * 1000,\n ONE_HOUR = 60 * 60 * 1000,\n ONE_DAY = 24 * 60 * 60 * 1000,\n ONE_WEEK = 7 * 24 * 60 * 60 * 1000,\n ONE_MONTH = 30 * 24 * 60 * 60 * 1000,\n ONE_YEAR = 365 * 24 * 60 * 60 * 1000,\n}\n\n// --- Funding Rate History ----\nexport enum FundingRateHistoryGranularity {\n ONE_MINUTE = 60 * 1000,\n ONE_HOUR = 60 * 60 * 1000,\n ONE_DAY = 24 * 60 * 60 * 1000,\n ONE_WEEK = 7 * 24 * 60 * 60 * 1000,\n ONE_MONTH = 30 * 24 * 60 * 60 * 1000,\n ONE_YEAR = 365 * 24 * 60 * 60 * 1000,\n}\nexport type GetFundingRateChartDataResult = {\n fundingRateData: {\n timestampInMs: number;\n value: number;\n }[];\n fundingRate: number;\n};\n\nexport type GetInstantPoolPriceResult = {\n poolPrice: number;\n poolSlippage: number;\n oraclePrice: number;\n};\n\nexport type GetBalancesForBridgeArgs = {\n walletAddress: string;\n};\n\nexport type DepthSimulationState = {\n spotPrice: number;\n maxOrderSizeLong: number;\n maxOrderSizeShort: number;\n netExposure: number;\n};\n\nexport type GetLpPoolDepthChartSimulationDataResult = DepthSimulationState;\n\nexport type SignatureData = {\n signature: string;\n timestamp: number;\n walletAddress: Address;\n version: string;\n};\n\nexport type SaveSignatureResult = {\n signatureSavedSuccessfully: boolean;\n};\n\n// --- Community ----\nexport type VoteDetailsEntity = {\n id: number;\n startDate: number; // timestamp in UTC milliseconds\n endDate: number; // timestamp in UTC milliseconds\n percentageToPass: number; // Example: 4%\n yesCount: number;\n noCount: number;\n voteCountToPass: number; // Example: 1453\n slug: string;\n title: string;\n // Free text, each newline represents paragraph. UI splits by \\n atm to keep stuff simple\n description: string;\n};\n\nexport type VoteContractDetailsEntity = {\n id: number;\n contractAddress: Address;\n};\n\nexport type VoteStatusEntity = {\n votingPower: number;\n hasVoted: boolean;\n};\n\n// --- XP ----\nexport type XPEntity = {\n value: number;\n valueTimestampMilliseconds: number;\n rate: number;\n};\n\nexport type GetAccountLGEStatusParams = {\n address: string; // wallet address\n};\n\nexport type GetAccountLGEStatusResult = {\n xp: XPEntity;\n currentBoost: number;\n lgeBoost: number;\n tranches: TrancheEntity[];\n tranchesOG: TrancheEntity | null;\n randomBoost: number;\n deposited: number;\n // TODO: deprecate once UI and API are released\n currentTVL: number;\n // TODO: deprecate once UI and API are released\n currentLiquidity: number;\n};\n\nexport type GetAccountTradingXPParams = {\n address: string; // wallet address\n};\n\nexport type GetAccountTradingXPResult = {\n xp: XPEntity;\n currentBoost: number;\n openBase: number;\n};\n\nexport type GetLGEBoostRateParams = void;\n\nexport type GetLGEBoostRateResult = {\n boostRate: number;\n // 0 - 100\n boostRateProgressPercentage: number;\n};\n\nexport type GetLpTvlResult = {\n currentTVL: number;\n currentLiquidity: number;\n};\n\nexport type LeaderboardEntity = {\n address: string;\n currentBoost: number;\n liquidityXp: number;\n // current rank for user (fish, whale, shrimp)\n rank: number;\n // leaderboard ranking 1,2,3...1230,...\n ranking: number;\n tradingXp: number;\n referralXp: number;\n // TODO: XP-V4 add logic for this field\n rebalancingXp: number;\n voltzXp: number;\n totalXp: XPEntity;\n};\n\nexport type Rank = {\n rankNumber: number;\n rankLetter: string;\n rankName: string;\n};\n\nexport type LeaderboardEntityV2 = {\n address: string;\n currentBoost: number;\n liquidityXp: number;\n // current rank for user (fish, whale, shrimp)\n rank: Rank;\n promotion: 'rankUp' | 'rankDown' | 'stale';\n // leaderboard ranking 1,2,3...1230,...\n ranking: number;\n tradingXp: number;\n referralXp: number;\n // TODO: XP-V4 add logic for this field\n rebalancingXp: number;\n voltzXp: number;\n totalXp: XPEntity;\n weeklyXp: number;\n weeklyXpEntity: XPEntity;\n};\n\nexport type UserLeaderboardDataEntity = LeaderboardEntity & {\n claimedRank: number;\n currentRankPoints: number;\n nextRankPoints: number;\n nftStatus: 'collected' | 'notCollected' | 'burnt' | 'minted' | null;\n};\n\nexport type TrancheEntity = {\n value: number;\n boost: number;\n timestampMs: number;\n loyaltyBoost?: number;\n};\n\nexport type UserLeaderboardDataV2Entity = LeaderboardEntityV2 & {\n claimedRank: number;\n currentRankPoints: number;\n nextRankPoints: number;\n totalNfts: number;\n claimedNfts: number;\n nftStatus: 'collected' | 'notCollected' | 'burnt' | 'minted' | null;\n timeUntilRankingEvent: number;\n openInterest: number;\n deposit: number;\n lgeBoost: number;\n extraBoost: number;\n tradingBoost: number;\n tranches: TrancheEntity[];\n tranchesOG: TrancheEntity | null;\n xpPerHour: number;\n};\n\nexport type GetLeaderboardParams = {\n page: number;\n perPage: number;\n};\n\nexport type GetLeaderboardByRankParams = GetLeaderboardParams & {\n rankNumber: number;\n};\n\nexport type GetLeaderboardResult = {\n data: LeaderboardEntity[];\n updateTimestampMilliseconds: number;\n totalCount: number;\n};\n\nexport type GetLeaderboardByRankResult = {\n data: LeaderboardEntityV2[];\n updateTimestampMilliseconds: number;\n totalCount: number;\n};\n\nexport type ClaimRankParams = {\n address: string;\n};\n\nexport type ClaimRankResult = {\n success: boolean;\n};\n\nexport type GetUserLeaderboardDataParams = {\n address: string;\n};\n\nexport type GetUserLeaderboardDataV2Params = GetUserLeaderboardDataParams;\n\nexport type GetUserLeaderboardDataResult = UserLeaderboardDataEntity;\n\nexport type GetUserLeaderboardDataV2Result = UserLeaderboardDataV2Entity;\n\nexport type GetUserGameStatusParams = { address: string };\n\nexport type GetSeasonOGSnapshotParams = { address: string };\n\nexport type GetUserGameStatusResult = {\n bodyId: string;\n status: 'notStarted' | 'notLockedIn' | 'lockedIn' | 'expired';\n boostRate: number;\n nextBoostStartTimestampMilliseconds: number;\n};\n\nexport type GetSeasonOGSnapshotResult = {\n overallPosition: number;\n totalXp: number;\n rank: Rank;\n};\n\nexport type GenerateGameBoostRateParams = { address: string; bodyId: string };\n\nexport type GenerateGameBoostRateResult = { boostRate: number };\n\nexport type LockGameBoostRateParams = { address: string };\n\nexport type LockGameBoostRateResult = void;\n\nexport type GetWalletReferralDetailsParams = {\n address: string;\n};\n\nexport type GetWalletReferralDetailsResult = {\n totalReferralsCount: number;\n totalReferralXP: number;\n};\n\nexport type GetWalletReferralCodeParams = {\n address: string;\n};\n\nexport type GetWalletReferralCodeResult = {\n referralCode: string;\n};\n\nexport type GetLockGameBoostTwitterUrlParams = {\n lockedInBoost: number;\n referralURL: string;\n};\n\nexport type GetLockGameBoostTwitterUrlResult = {\n tweetURL: string;\n};\n\nexport type GetReferralTwitterUrlParams = {\n referralURL: string;\n};\n\nexport type GetReferralTwitterUrlResult = {\n tweetURL: string;\n};\n\nexport type GetTradingRandomBoostParams = {\n address: string;\n marketId: number;\n};\n\nexport type GetTradingRandomBoostResult = {\n boost: number;\n};\n\nexport type GetUserTradingXpParams = {\n address: string;\n};\n\nexport type TokenEntityWithMinValue = TokenEntity & {\n minDepositAmount: number;\n minWithdrawAmount: number;\n minTransferAmount: number;\n};\n\nexport type TokenInfo = {\n name: TokenName;\n address: Address;\n decimals: number;\n isRUSDUnderlying: boolean;\n minDepositAmount: number;\n minWithdrawAmount: number;\n minTransferAmount: number;\n whitelistedWalletOnly?: boolean;\n};\n\n// --- TOS ----\n\nexport type TRMRiskAssessment = {\n accountExternalId: string;\n address: string;\n addressRiskIndicators: TMRRiskIndicator[];\n addressSubmitted: string;\n chain: string;\n entities: unknown[];\n trmAppUrl: string;\n};\n\nexport type TMRRiskIndicator = {\n category: string;\n categoryId: string;\n categoryRiskScoreLevel: number;\n categoryRiskScoreLevelLabel: string;\n incomingVolumeUsd: string;\n outgoingVolumeUsd: string;\n riskType: string;\n totalVolumeUsd: string;\n};\n\n// todo: deprecate after 1st tac client is deprecated\nexport type ToSVersionDetails = {\n text: string;\n version: string;\n creationTimestamp: number; // in MS\n};\n\nexport type ToSProductVersionDetails = {\n shortText: string;\n longText: string;\n version: string;\n creationTimestamp: number; // in MS\n product: string;\n};\n\nexport type SocketBridgeTransactionPoolStatus =\n | 'pending'\n | 'confirmed'\n | 'failed';\n\nexport type IpInfo = {\n ip: string;\n hostname: string;\n city: string;\n region: string;\n country: string;\n loc: string;\n org: string;\n postal: string;\n timezone: string;\n privacy: {\n vpn: boolean;\n proxy: boolean;\n tor: boolean;\n relay: boolean;\n hosting: boolean;\n service: string;\n };\n countryCode: string;\n countryFlag: {\n emoji: string;\n unicode: string;\n };\n countryFlagURL: string;\n countryCurrency: {\n code: string;\n symbol: string;\n };\n continent: {\n code: string;\n name: string;\n };\n isEU: boolean;\n};\n\nexport interface CandleMessage {\n /** Stringified JSON object of all events to be streamed. */\n contents: string;\n /** Clob pair id of the Candle message. */\n\n clobPairId: string;\n /** Resolution of the candle update. */\n\n resolution: string;\n /** Version of the websocket message. */\n\n version: string;\n}\n\nexport enum CandleResolution {\n ONE_MINUTE = '1MIN',\n FIVE_MINUTES = '5MINS',\n FIFTEEN_MINUTES = '15MINS',\n THIRTY_MINUTES = '30MINS',\n ONE_HOUR = '1HOUR',\n FOUR_HOURS = '4HOURS',\n ONE_DAY = '1DAY',\n}\n\nexport type TransactionExecutionMetadata = {\n accountName?: string;\n accountId?: number;\n marketId?: number;\n destinationType?: 'pool' | 'account';\n action?: 'matchOrder' | 'closeOrder';\n};\n\nexport type TransactionExecutionOutput = {\n txHash: string;\n accountId?: string | null;\n coreSigNonce?: string | null;\n poolSigNonce?: string | null;\n miscellaneous?: {\n tradeXpBoost?: number;\n xpNftAwarded?: boolean;\n xpEarned?: number;\n };\n tradeDetails?: {\n executionPrice?: number;\n base?: number;\n };\n};\n\nexport type BurnNFTParams = {\n address: string;\n};\n\n// TODO: please fix implementation - we don't need boolean, void is fine\nexport type BurnNFTResult = boolean;\n\nexport type CanonicalReleaseStatus = 'pending' | 'ready' | 'completed';\n\ntype PendingWithdrawalStatus = {\n status: 'pending';\n};\n\ntype ReadyWithdrawalStatus = {\n status: 'ready';\n txHash: string;\n};\n\nexport type PendingWithdrawal = {\n tokenAmount: number;\n} & (PendingWithdrawalStatus | ReadyWithdrawalStatus);\n\nexport enum ConditionalOrderType {\n STOP_LOSS = 0,\n TAKE_PROFIT = 1,\n LIMIT_ORDER = 2,\n}\n\nexport type ConditionalOrderTypeName =\n | 'Stop Loss'\n | 'Take Profit'\n | 'Limit Order';\n\nexport enum ConditionalOrderStatus {\n PENDING = 'pending',\n FILLED = 'filled',\n CANCELLED = 'cancelled',\n REJECTED = 'rejected',\n}\n\nexport type ConditionalOrder = {\n orderId: string;\n accountId: number;\n marketId: number;\n orderType: ConditionalOrderTypeName;\n isLong: boolean;\n triggerPrice: number;\n signerWallet: string;\n nonce: string;\n signature: string;\n eip712Signature: EIP712Signature;\n status: ConditionalOrderStatus;\n creationTimestampMs: number;\n lastUpdateTimestampMs: number;\n base: number;\n};\n\nexport type UnifiedConditionalOrderType = {\n orderId: string;\n accountId: number;\n marketId: number;\n base: number | null; // null when order is cancelled\n isLong: boolean;\n price: number;\n status: ConditionalOrderStatus;\n orderType: ConditionalOrderTypeName;\n timestampMs: number;\n};\n\nexport type IsDiscordLinkedParams = {\n address: string;\n};\nexport type IsDiscordLinkedResult = {\n isLinked: boolean;\n};\nexport type LinkDiscordParams = {\n discordAccessToken: string;\n signer: Signer | JsonRpcSigner;\n};\nexport type LinkDiscordResult = void;\nexport type UnlinkDiscordParams = {\n address: string;\n discordAccessToken: string;\n};\nexport type UnlinkDiscordResult = void;\nexport type ClaimDiscordRankParams = {\n address: string;\n discordAccessToken: string;\n};\nexport type ClaimDiscordRankResult = void;\n\nexport type IsDiscordRankClaimedParams = {\n address: string;\n};\nexport type IsDiscordRankClaimedResult = {\n isClaimed: boolean;\n};\n\nexport interface ApiErrorResponse {\n response: {\n status: number;\n data: {\n error: string;\n };\n };\n}\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"/","sources":["types.ts"],"names":[],"mappings":";;;AAsCA,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,8DAAkB,CAAA;IAClB,gEAAqB,CAAA;AACvB,CAAC,EAHW,WAAW,2BAAX,WAAW,QAGtB;AAED,IAAY,iBAWX;AAXD,WAAY,iBAAiB;IAC3B,UAAU;IACV,+EAAmB,CAAA;IACnB,oEAAc,CAAA;IACd,+EAAoB,CAAA;IACpB,2EAAmB,CAAA;IACnB,0EAAkB,CAAA;IAClB,UAAU;IACV,oFAAwB,CAAA;IACxB,0EAAoB,CAAA;IACpB,sFAA0B,CAAA;AAC5B,CAAC,EAXW,iBAAiB,iCAAjB,iBAAiB,QAW5B;AAED,IAAY,iBAQX;AARD,WAAY,iBAAiB;IAC3B,wCAAmB,CAAA;IACnB,2CAAsB,CAAA;IACtB,+CAA0B,CAAA;IAC1B,8CAAyB,CAAA;IACzB,uCAAkB,CAAA;IAClB,0CAAqB,CAAA;IACrB,qCAAgB,CAAA;AAClB,CAAC,EARW,iBAAiB,iCAAjB,iBAAiB,QAQ5B;AAwMD,0BAA0B;AAC1B,IAAY,oBAOX;AAPD,WAAY,oBAAoB;IAC9B,+EAAsB,CAAA;IACtB,6EAAyB,CAAA;IACzB,4EAA6B,CAAA;IAC7B,+EAAkC,CAAA;IAClC,kFAAoC,CAAA;IACpC,iFAAoC,CAAA;AACtC,CAAC,EAPW,oBAAoB,oCAApB,oBAAoB,QAO/B;AA0FD,iCAAiC;AACjC,IAAY,+BAOX;AAPD,WAAY,+BAA+B;IACzC,qGAAsB,CAAA;IACtB,mGAAyB,CAAA;IACzB,kGAA6B,CAAA;IAC7B,qGAAkC,CAAA;IAClC,wGAAoC,CAAA;IACpC,uGAAoC,CAAA;AACtC,CAAC,EAPW,+BAA+B,+CAA/B,+BAA+B,QAO1C;AAWD,6CAA6C;AAC7C,IAAY,0CAOX;AAPD,WAAY,0CAA0C;IACpD,2HAAsB,CAAA;IACtB,yHAAyB,CAAA;IACzB,wHAA6B,CAAA;IAC7B,2HAAkC,CAAA;IAClC,8HAAoC,CAAA;IACpC,6HAAoC,CAAA;AACtC,CAAC,EAPW,0CAA0C,0DAA1C,0CAA0C,QAOrD;AA6BD,IAAY,mCAOX;AAPD,WAAY,mCAAmC;IAC7C,6GAAsB,CAAA;IACtB,2GAAyB,CAAA;IACzB,0GAA6B,CAAA;IAC7B,6GAAkC,CAAA;IAClC,gHAAoC,CAAA;IACpC,+GAAoC,CAAA;AACtC,CAAC,EAPW,mCAAmC,mDAAnC,mCAAmC,QAO9C;AAED,gCAAgC;AAChC,IAAY,6BAOX;AAPD,WAAY,6BAA6B;IACvC,iGAAsB,CAAA;IACtB,+FAAyB,CAAA;IACzB,8FAA6B,CAAA;IAC7B,iGAAkC,CAAA;IAClC,oGAAoC,CAAA;IACpC,mGAAoC,CAAA;AACtC,CAAC,EAPW,6BAA6B,6CAA7B,6BAA6B,QAOxC;AAqZD,IAAY,gBAQX;AARD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,0CAAsB,CAAA;IACtB,8CAA0B,CAAA;IAC1B,6CAAyB,CAAA;IACzB,sCAAkB,CAAA;IAClB,yCAAqB,CAAA;IACrB,oCAAgB,CAAA;AAClB,CAAC,EARW,gBAAgB,gCAAhB,gBAAgB,QAQ3B;AAgDD,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC9B,yEAAa,CAAA;IACb,6EAAe,CAAA;IACf,6EAAe,CAAA;AACjB,CAAC,EAJW,oBAAoB,oCAApB,oBAAoB,QAI/B;AAOD,IAAY,sBAKX;AALD,WAAY,sBAAsB;IAChC,6CAAmB,CAAA;IACnB,2CAAiB,CAAA;IACjB,iDAAuB,CAAA;IACvB,+CAAqB,CAAA;AACvB,CAAC,EALW,sBAAsB,sCAAtB,sBAAsB,QAKjC","sourcesContent":["import { EIP712Signature } from './transactions';\nimport { JsonRpcSigner, Signer } from 'ethers';\n\nexport type Address = Lowercase<string>;\nexport type TokenName = Uppercase<string>;\n\n// -- Markets --\nexport type MarketOrderInfo = {\n counterpartyAccountIds: number[];\n exchangeId: number;\n};\n\nexport type MarketEntity = {\n id: number;\n ticker: string;\n underlyingAsset: string;\n quoteToken: string;\n markPrice: number;\n isActive: boolean;\n maxLeverage: number;\n volume24H: number;\n priceChange24H: number;\n priceChange24HPercentage: number;\n openInterest: number;\n fundingRate: number;\n fundingRateAnnualized: number;\n description: string;\n orderInfo: MarketOrderInfo;\n tickSizeDecimals: number;\n minOrderSize: number;\n minOrderSizeBase: number;\n baseSpacing: number;\n longOI: number;\n shortOI: number;\n longSkewPercentage: number;\n shortSkewPercentage: number;\n};\n\nexport enum ReyaChainId {\n reyaNetwork = 1729,\n reyaCronos = 89346162,\n}\n\nexport enum MoneyInOutChainId {\n // mainnet\n ethereumMainnet = 1,\n opMainnet = 10,\n polygonMainnet = 137,\n arbitrumOne = 42161,\n baseMainnet = 8453,\n // testnet\n arbitrumSepolia = 421614,\n opSepolia = 11155420,\n ethereumSepolia = 11155111,\n}\n\nexport enum CandlesResolution {\n ONE_MINUTE = '1MIN',\n FIVE_MINUTES = '5MINS',\n FIFTEEN_MINUTES = '15MINS',\n THIRTY_MINUTES = '30MINS',\n ONE_HOUR = '1HOUR',\n FOUR_HOURS = '4HOURS',\n ONE_DAY = '1DAY',\n}\n\n// -- Candles --\nexport interface Candle {\n id: string;\n startedAt: string;\n ticker: string;\n resolution: CandlesResolution;\n low: string;\n high: string;\n open: string;\n close: string;\n baseTokenVolume: string;\n usdVolume: string;\n trades: number;\n startingOpenInterest: string;\n}\n\n// -- Account --\n\nexport type Status = 'OPEN' | 'CLOSED' | 'LIQUIDATED' | 'FILLED';\nexport type Side = 'long' | 'short';\n\nexport type CollateralEntity = {\n token: string;\n percentage: number;\n balance: number;\n balanceRUSD: number;\n balanceWithHaircutRUSD: number;\n exchangeRate: number;\n exchangeRateChange24HPercentage: number;\n};\n\nexport type MarginAccountEntity = {\n id: number;\n name: string;\n marginRatioHealth: 'danger' | 'healthy' | 'warning';\n marginRatioPercentage: number;\n marginRatioHealthDangerThreshold: number;\n marginRatioHealthWarningThreshold: number;\n isApproachingLiquidation: boolean;\n isLiquidationImminent: boolean;\n totalBalance: number;\n totalBalanceUnderlyingAsset: string;\n totalBalanceChange24HPercentage: number;\n totalBalanceWithHaircut: number;\n livePnL: number;\n livePnLUnderlyingAsset: string;\n realizedPnL: number;\n realizedPnLUnderlyingAsset: string;\n realizedPnlHistoryTotal: number;\n totalPositionsCount: number;\n collaterals: CollateralEntity[];\n positions: PositionEntity[];\n};\n\nexport type ConditionalOrdersInfo = {\n stopLoss?: {\n stopLossPrice: number;\n orderId: string;\n };\n takeProfit?: {\n takeProfitPrice: number;\n orderId: string;\n };\n};\n\nexport type PositionEntity = {\n id: number;\n side: Side;\n size: number;\n base: number;\n price: number;\n conditionalOrdersInfo?: ConditionalOrdersInfo;\n markPrice: number;\n orderStatus: Status;\n realisedPnl: number;\n priceVariationPnl: number;\n livePnL: number;\n fundingPnl: number;\n unrealisedPnl: number;\n liquidationPrice: number;\n fundingRate: number;\n market: MarketEntity;\n account: {\n name: MarginAccountEntity['name'];\n id: MarginAccountEntity['id'];\n };\n tradeXpBoost: number;\n};\n\nexport type TradingHistoryEntity = {\n id: number;\n price: number;\n priceUnderlyingToken: string;\n size: number;\n sizeUnderlyingToken: string;\n timestampMillisecondsUTC: number;\n};\n\nexport type OrderType = 'market';\n\nexport type PositionHistoryType =\n | 'long-trade'\n | 'short-trade'\n | 'long-liquidation'\n | 'short-liquidation';\n\nexport type PositionHistoryEntity = {\n id: number;\n action: PositionHistoryType;\n orderType: OrderType;\n base: number;\n executionPrice: number;\n realisedPnl?: number | null;\n priceVariationPnl: number;\n fundingPnl: number;\n fees: number;\n openingFees: number;\n timestamp: number;\n market: MarketEntity;\n xpEarned: number;\n};\n\nexport type LpPoolEntity = {\n id: number;\n name: string;\n description: string;\n longDescription: string;\n readMoreLink: string;\n currentAPY: number;\n apyChange24H: number;\n tokenAddress: Address;\n token: string;\n minDepositAmount: number;\n minWithdrawAmount: number;\n minTransferFromMAToPoolAmount: number;\n minTransferFromPoolToMAAmount: number;\n stepSize: number;\n allowedChainsForLiquidity: MoneyInOutChainId[];\n moneyInOutConfiguration: MoneyInOutConfiguration;\n};\n\nexport type MoneyInOutConfiguration = {\n [key in MoneyInOutChainId]?: {\n minWithdrawAmount?: number;\n };\n};\n\nexport type MoneyInOutConfigurationPerTokenName = {\n [key in TokenName]?: MoneyInOutConfiguration;\n};\n\nexport type LpWithdrawBalanceEntity = {\n withdrawableBalance: number;\n poolSharePrice: number;\n accountShareBalance: number;\n};\n\nexport type TransactionHistoryType = 'deposit' | 'withdrawal';\n\nexport type LpTransactionHistoryEntity = {\n id: number;\n type: TransactionHistoryType;\n token: string;\n amount: number;\n transactionLink: string;\n timestamp: number;\n};\n\nexport type LpPositionEntity = {\n id: number;\n capitalInvested: number;\n currentBalance: number;\n pnl: number;\n lpPool: LpPoolEntity;\n};\n\nexport type MarginAccountTransactionHistoryType =\n | 'deposit'\n | 'withdrawal'\n | 'transfer'\n | 'auto_exchange';\n\nexport type MarginAccountTransactionStatus = 'confirmed' | 'pending';\n\nexport type MarginAccountTransactionHistoryEntity = {\n id: number;\n type: MarginAccountTransactionHistoryType;\n token: string;\n amount: number;\n transactionLink: string;\n status: MarginAccountTransactionStatus;\n timestamp: number;\n};\n\nexport type TokenEntity = {\n name: TokenName;\n address: Address;\n};\n// --- Lp Pool Balance ---\nexport enum LpBalanceGranularity {\n ONE_MINUTE = 60 * 1000,\n ONE_HOUR = 60 * 60 * 1000,\n ONE_DAY = 24 * 60 * 60 * 1000,\n ONE_WEEK = 7 * 24 * 60 * 60 * 1000,\n ONE_MONTH = 30 * 24 * 60 * 60 * 1000,\n ONE_YEAR = 365 * 24 * 60 * 60 * 1000,\n}\nexport type GetLpPoolBalanceChartDataResult = {\n data: {\n timestampInMs: number;\n value: number;\n }[];\n tvl: number;\n tvlChangePercentage: number;\n apy: number;\n apyChangePercentage: number;\n};\n\n// - LP Account Performance -\nexport type GetLpPoolPerformanceChartDataResult = {\n capitalInvestedData: {\n timestampInMs: number;\n value: number;\n }[];\n balanceData: {\n timestampInMs: number;\n value: number;\n }[];\n balance: number;\n balanceChangePercentage: number;\n capitalInvested: number;\n capitalInvestedChangePercentage: number;\n};\n\nexport type SocketTokenConnectors = {\n deposit: Address;\n withdraw: Address;\n};\n\nexport type GetSocketConnectorsParams = {\n moneyInOutChainId: MoneyInOutChainId;\n tokenName: TokenName;\n};\n\nexport type GetSocketVaultParams = {\n moneyInOutChainId: MoneyInOutChainId;\n tokenName: TokenName;\n};\n\nexport type GetMoneyInOutChainIdFromReyaConnectorParams = {\n reyaChainId: ReyaChainId;\n tokenName: TokenName;\n socketConnector: Address;\n};\n\nexport type GetSocketBridgeTimeParams = {\n moneyInOutChainId: MoneyInOutChainId;\n};\n\nexport type GetSocketBridgeTimeResult = {\n bridgeTimeInMS: number;\n};\n\nexport type SocketDepositFeesEntry = {\n moneyInOutChainId: MoneyInOutChainId;\n tokenName: TokenName;\n fees: bigint;\n};\n\nexport type SocketWithdrawFeesEntry = {\n moneyInOutChainId: MoneyInOutChainId;\n tokenName: TokenName;\n fees: bigint;\n};\n\nexport type SocketDepositFees = {\n fees: bigint;\n feesInUnderlyingToken: number;\n underlyingTokenName: TokenName;\n};\n\nexport type SocketWithdrawFees = {\n fees: bigint;\n feesInUnderlyingToken: number;\n underlyingTokenName: TokenName;\n};\n\nexport type GetSocketWithdrawFeesParams = {\n reyaChainId: ReyaChainId;\n tokenAddress: TokenEntity['address'];\n};\n\nexport type GetSocketWithdrawFeesResult = {\n fees: number;\n};\n\n// --- Margin Account Balance ---\nexport enum MarginAccountBalanceGranularity {\n ONE_MINUTE = 60 * 1000,\n ONE_HOUR = 60 * 60 * 1000,\n ONE_DAY = 24 * 60 * 60 * 1000,\n ONE_WEEK = 7 * 24 * 60 * 60 * 1000,\n ONE_MONTH = 30 * 24 * 60 * 60 * 1000,\n ONE_YEAR = 365 * 24 * 60 * 60 * 1000,\n}\n\nexport type GetMarginAccountBalanceChartDataResult = {\n balanceData: {\n timestampInMs: number;\n value: number;\n }[];\n balance: number;\n balanceChangePercentage: number;\n};\n\n// --- Margin Account Collaterals Balance ---\nexport enum MarginAccountCollateralsBalanceGranularity {\n ONE_MINUTE = 60 * 1000,\n ONE_HOUR = 60 * 60 * 1000,\n ONE_DAY = 24 * 60 * 60 * 1000,\n ONE_WEEK = 7 * 24 * 60 * 60 * 1000,\n ONE_MONTH = 30 * 24 * 60 * 60 * 1000,\n ONE_YEAR = 365 * 24 * 60 * 60 * 1000,\n}\n\nexport type GetMarginAccountCollateralsBalanceChartDataResult = {\n data: {\n balanceData: {\n timestampInMs: number;\n value: number;\n }[];\n token: string;\n }[];\n balance: number;\n balanceChangePercentage: number;\n};\n\nexport type OwnerMetadataEntity = {\n address: Address;\n coreSigNonce: number;\n poolSigNonce: number;\n};\n\nexport type GetAllMarginAccountsBalanceChartDataResult = {\n balanceData: {\n timestampInMs: number;\n value: number;\n }[];\n balance: number;\n balanceChangePercentage: number;\n};\n\nexport enum AllMarginAccountsBalanceGranularity {\n ONE_MINUTE = 60 * 1000,\n ONE_HOUR = 60 * 60 * 1000,\n ONE_DAY = 24 * 60 * 60 * 1000,\n ONE_WEEK = 7 * 24 * 60 * 60 * 1000,\n ONE_MONTH = 30 * 24 * 60 * 60 * 1000,\n ONE_YEAR = 365 * 24 * 60 * 60 * 1000,\n}\n\n// --- Funding Rate History ----\nexport enum FundingRateHistoryGranularity {\n ONE_MINUTE = 60 * 1000,\n ONE_HOUR = 60 * 60 * 1000,\n ONE_DAY = 24 * 60 * 60 * 1000,\n ONE_WEEK = 7 * 24 * 60 * 60 * 1000,\n ONE_MONTH = 30 * 24 * 60 * 60 * 1000,\n ONE_YEAR = 365 * 24 * 60 * 60 * 1000,\n}\nexport type GetFundingRateChartDataResult = {\n fundingRateData: {\n timestampInMs: number;\n value: number;\n }[];\n fundingRate: number;\n};\n\nexport type GetInstantPoolPriceResult = {\n poolPrice: number;\n poolSlippage: number;\n oraclePrice: number;\n};\n\nexport type GetBalancesForBridgeArgs = {\n walletAddress: string;\n};\n\nexport type DepthSimulationState = {\n spotPrice: number;\n maxOrderSizeLong: number;\n maxOrderSizeShort: number;\n netExposure: number;\n};\n\nexport type GetLpPoolDepthChartSimulationDataResult = DepthSimulationState;\n\nexport type SignatureData = {\n signature: string;\n timestamp: number;\n walletAddress: Address;\n version: string;\n};\n\nexport type SaveSignatureResult = {\n signatureSavedSuccessfully: boolean;\n};\n\n// --- Community ----\nexport type VoteDetailsEntity = {\n id: number;\n startDate: number; // timestamp in UTC milliseconds\n endDate: number; // timestamp in UTC milliseconds\n percentageToPass: number; // Example: 4%\n yesCount: number;\n noCount: number;\n voteCountToPass: number; // Example: 1453\n slug: string;\n title: string;\n // Free text, each newline represents paragraph. UI splits by \\n atm to keep stuff simple\n description: string;\n};\n\nexport type VoteContractDetailsEntity = {\n id: number;\n contractAddress: Address;\n};\n\nexport type VoteStatusEntity = {\n votingPower: number;\n hasVoted: boolean;\n};\n\n// --- XP ----\nexport type XPEntity = {\n value: number;\n valueTimestampMilliseconds: number;\n rate: number;\n};\n\nexport type GetAccountLGEStatusParams = {\n address: string; // wallet address\n};\n\nexport type GetAccountLGEStatusResult = {\n xp: XPEntity;\n currentBoost: number;\n lgeBoost: number;\n tranches: TrancheEntity[];\n tranchesOG: TrancheEntity | null;\n randomBoost: number;\n deposited: number;\n // TODO: deprecate once UI and API are released\n currentTVL: number;\n // TODO: deprecate once UI and API are released\n currentLiquidity: number;\n};\n\nexport type GetAccountTradingXPParams = {\n address: string; // wallet address\n};\n\nexport type GetAccountTradingXPResult = {\n xp: XPEntity;\n currentBoost: number;\n openBase: number;\n};\n\nexport type GetLGEBoostRateParams = void;\n\nexport type GetLGEBoostRateResult = {\n boostRate: number;\n // 0 - 100\n boostRateProgressPercentage: number;\n};\n\nexport type GetLpTvlResult = {\n currentTVL: number;\n currentLiquidity: number;\n};\n\nexport type LeaderboardEntity = {\n address: string;\n currentBoost: number;\n liquidityXp: number;\n // current rank for user (fish, whale, shrimp)\n rank: number;\n // leaderboard ranking 1,2,3...1230,...\n ranking: number;\n tradingXp: number;\n referralXp: number;\n // TODO: XP-V4 add logic for this field\n rebalancingXp: number;\n voltzXp: number;\n totalXp: XPEntity;\n};\n\nexport type Rank = {\n rankNumber: number;\n rankLetter: string;\n rankName: string;\n};\n\nexport type LeaderboardEntityV2 = {\n address: string;\n currentBoost: number;\n liquidityXp: number;\n // current rank for user (fish, whale, shrimp)\n rank: Rank;\n promotion: 'rankUp' | 'rankDown' | 'stale';\n // leaderboard ranking 1,2,3...1230,...\n ranking: number;\n tradingXp: number;\n referralXp: number;\n // TODO: XP-V4 add logic for this field\n rebalancingXp: number;\n voltzXp: number;\n totalXp: XPEntity;\n weeklyXp: number;\n weeklyXpEntity: XPEntity;\n};\n\nexport type UserLeaderboardDataEntity = LeaderboardEntity & {\n claimedRank: number;\n currentRankPoints: number;\n nextRankPoints: number;\n nftStatus: 'collected' | 'notCollected' | 'burnt' | 'minted' | null;\n};\n\nexport type TrancheEntity = {\n value: number;\n boost: number;\n timestampMs: number;\n loyaltyBoost?: number;\n};\n\nexport type UserLeaderboardDataV2Entity = LeaderboardEntityV2 & {\n claimedRank: number;\n currentRankPoints: number;\n nextRankPoints: number;\n totalNfts: number;\n claimedNfts: number;\n nftStatus: 'collected' | 'notCollected' | 'burnt' | 'minted' | null;\n timeUntilRankingEvent: number;\n openInterest: number;\n deposit: number;\n lgeBoost: number;\n extraBoost: number;\n tradingBoost: number;\n tranches: TrancheEntity[];\n tranchesOG: TrancheEntity | null;\n xpPerHour: number;\n};\n\nexport type GetLeaderboardParams = {\n page: number;\n perPage: number;\n};\n\nexport type GetLeaderboardByRankParams = GetLeaderboardParams & {\n rankNumber: number;\n};\n\nexport type GetLeaderboardResult = {\n data: LeaderboardEntity[];\n updateTimestampMilliseconds: number;\n totalCount: number;\n};\n\nexport type GetLeaderboardByRankResult = {\n data: LeaderboardEntityV2[];\n updateTimestampMilliseconds: number;\n totalCount: number;\n};\n\nexport type ClaimRankParams = {\n address: string;\n};\n\nexport type ClaimRankResult = {\n success: boolean;\n};\n\nexport type GetUserLeaderboardDataParams = {\n address: string;\n};\n\nexport type GetUserLeaderboardDataV2Params = GetUserLeaderboardDataParams;\n\nexport type GetUserLeaderboardDataResult = UserLeaderboardDataEntity;\n\nexport type GetUserLeaderboardDataV2Result = UserLeaderboardDataV2Entity;\n\nexport type GetUserGameStatusParams = { address: string };\n\nexport type GetSeasonOGSnapshotParams = { address: string };\n\nexport type GetUserGameStatusResult = {\n bodyId: string;\n status: 'notStarted' | 'notLockedIn' | 'lockedIn' | 'expired';\n boostRate: number;\n nextBoostStartTimestampMilliseconds: number;\n};\n\nexport type GetSeasonOGSnapshotResult = {\n overallPosition: number;\n totalXp: number;\n rank: Rank;\n};\n\nexport type GenerateGameBoostRateParams = { address: string; bodyId: string };\n\nexport type GenerateGameBoostRateResult = { boostRate: number };\n\nexport type LockGameBoostRateParams = { address: string };\n\nexport type LockGameBoostRateResult = void;\n\nexport type GetWalletReferralDetailsParams = {\n address: string;\n};\n\nexport type GetWalletReferralDetailsResult = {\n totalReferralsCount: number;\n totalReferralXP: number;\n};\n\nexport type GetWalletReferralCodeParams = {\n address: string;\n};\n\nexport type GetWalletReferralCodeResult = {\n referralCode: string;\n};\n\nexport type GetLockGameBoostTwitterUrlParams = {\n lockedInBoost: number;\n referralURL: string;\n};\n\nexport type GetLockGameBoostTwitterUrlResult = {\n tweetURL: string;\n};\n\nexport type GetReferralTwitterUrlParams = {\n referralURL: string;\n};\n\nexport type GetReferralTwitterUrlResult = {\n tweetURL: string;\n};\n\nexport type GetTradingRandomBoostParams = {\n address: string;\n marketId: number;\n};\n\nexport type GetTradingRandomBoostResult = {\n boost: number;\n};\n\nexport type GetUserTradingXpParams = {\n address: string;\n};\n\nexport type TokenEntityWithMinValue = TokenEntity & {\n minDepositAmount: number;\n minWithdrawAmount: number;\n minTransferAmount: number;\n};\n\nexport type TokenInfo = {\n name: TokenName;\n address: Address;\n decimals: number;\n isRUSDUnderlying: boolean;\n minDepositAmount: number;\n minWithdrawAmount: number;\n minTransferAmount: number;\n whitelistedWalletOnly?: boolean;\n};\n\n// --- TOS ----\n\nexport type TRMRiskAssessment = {\n accountExternalId: string;\n address: string;\n addressRiskIndicators: TMRRiskIndicator[];\n addressSubmitted: string;\n chain: string;\n entities: unknown[];\n trmAppUrl: string;\n};\n\nexport type TMRRiskIndicator = {\n category: string;\n categoryId: string;\n categoryRiskScoreLevel: number;\n categoryRiskScoreLevelLabel: string;\n incomingVolumeUsd: string;\n outgoingVolumeUsd: string;\n riskType: string;\n totalVolumeUsd: string;\n};\n\n// todo: deprecate after 1st tac client is deprecated\nexport type ToSVersionDetails = {\n text: string;\n version: string;\n creationTimestamp: number; // in MS\n};\n\nexport type ToSProductVersionDetails = {\n shortText: string;\n longText: string;\n version: string;\n creationTimestamp: number; // in MS\n product: string;\n};\n\nexport type SocketBridgeTransactionPoolStatus =\n | 'pending'\n | 'confirmed'\n | 'failed';\n\nexport type IpInfo = {\n ip: string;\n hostname: string;\n city: string;\n region: string;\n country: string;\n loc: string;\n org: string;\n postal: string;\n timezone: string;\n privacy: {\n vpn: boolean;\n proxy: boolean;\n tor: boolean;\n relay: boolean;\n hosting: boolean;\n service: string;\n };\n countryCode: string;\n countryFlag: {\n emoji: string;\n unicode: string;\n };\n countryFlagURL: string;\n countryCurrency: {\n code: string;\n symbol: string;\n };\n continent: {\n code: string;\n name: string;\n };\n isEU: boolean;\n};\n\nexport interface CandleMessage {\n /** Stringified JSON object of all events to be streamed. */\n contents: string;\n /** Clob pair id of the Candle message. */\n\n clobPairId: string;\n /** Resolution of the candle update. */\n\n resolution: string;\n /** Version of the websocket message. */\n\n version: string;\n}\n\nexport enum CandleResolution {\n ONE_MINUTE = '1MIN',\n FIVE_MINUTES = '5MINS',\n FIFTEEN_MINUTES = '15MINS',\n THIRTY_MINUTES = '30MINS',\n ONE_HOUR = '1HOUR',\n FOUR_HOURS = '4HOURS',\n ONE_DAY = '1DAY',\n}\n\nexport type TransactionExecutionMetadata = {\n accountName?: string;\n accountId?: number;\n marketId?: number;\n destinationType?: 'pool' | 'account';\n action?: 'matchOrder' | 'closeOrder';\n};\n\nexport type TransactionExecutionOutput = {\n txHash: string;\n accountId?: string | null;\n coreSigNonce?: string | null;\n poolSigNonce?: string | null;\n miscellaneous?: {\n tradeXpBoost?: number;\n xpNftAwarded?: boolean;\n xpEarned?: number;\n };\n tradeDetails?: {\n executionPrice?: number;\n base?: number;\n };\n};\n\nexport type BurnNFTParams = {\n address: string;\n};\n\n// TODO: please fix implementation - we don't need boolean, void is fine\nexport type BurnNFTResult = boolean;\n\nexport type CanonicalReleaseStatus = 'pending' | 'ready' | 'completed';\n\ntype PendingWithdrawalStatus = {\n status: 'pending';\n};\n\ntype ReadyWithdrawalStatus = {\n status: 'ready';\n txHash: string;\n};\n\nexport type PendingWithdrawal = {\n tokenAmount: number;\n} & (PendingWithdrawalStatus | ReadyWithdrawalStatus);\n\nexport enum ConditionalOrderType {\n STOP_LOSS = 0,\n TAKE_PROFIT = 1,\n LIMIT_ORDER = 2,\n}\n\nexport type ConditionalOrderTypeName =\n | 'Stop Loss'\n | 'Take Profit'\n | 'Limit Order';\n\nexport enum ConditionalOrderStatus {\n PENDING = 'pending',\n FILLED = 'filled',\n CANCELLED = 'cancelled',\n REJECTED = 'rejected',\n}\n\nexport type ConditionalOrder = {\n orderId: string;\n accountId: number;\n marketId: number;\n orderType: ConditionalOrderTypeName;\n isLong: boolean;\n triggerPrice: number;\n signerWallet: string;\n nonce: string;\n signature: string;\n eip712Signature: EIP712Signature;\n status: ConditionalOrderStatus;\n creationTimestampMs: number;\n lastUpdateTimestampMs: number;\n base: number;\n};\n\nexport type UnifiedConditionalOrderType = {\n orderId: string;\n accountId: number;\n marketId: number;\n base: number | null; // null when order is cancelled\n isLong: boolean;\n price: number;\n status: ConditionalOrderStatus;\n orderType: ConditionalOrderTypeName;\n timestampMs: number;\n};\n\nexport type IsDiscordLinkedParams = {\n address: string;\n};\nexport type IsDiscordLinkedResult = {\n isLinked: boolean;\n};\nexport type LinkDiscordParams = {\n discordAccessToken: string;\n signer: Signer | JsonRpcSigner;\n};\nexport type LinkDiscordResult = void;\nexport type UnlinkDiscordParams = {\n address: string;\n discordAccessToken: string;\n};\nexport type UnlinkDiscordResult = void;\nexport type ClaimDiscordRankParams = {\n address: string;\n discordAccessToken: string;\n};\nexport type ClaimDiscordRankResult = void;\n\nexport type IsDiscordRankClaimedParams = {\n address: string;\n};\nexport type IsDiscordRankClaimedResult = {\n isClaimed: boolean;\n};\n\nexport interface ApiErrorResponse {\n response: {\n status: number;\n data: {\n error: string;\n };\n };\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reyaxyz/common",
3
- "version": "0.174.0",
3
+ "version": "0.175.1",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
@@ -43,5 +43,5 @@
43
43
  "generate:coverage-badges": "npx istanbul-badges-readme --silent"
44
44
  },
45
45
  "packageManager": "pnpm@8.3.1",
46
- "gitHead": "25b2bc3ccba8c53368a2211fdded66cdd5319220"
46
+ "gitHead": "f78f28e82279642fcdb08365ffe4716f05fc8d69"
47
47
  }
@@ -851,6 +851,32 @@ export class ExposureCommand {
851
851
  return BigNumber(quantity).dividedBy(haircutPrice).toNumber();
852
852
  }
853
853
 
854
+ static getBalanceWithHaircut(
855
+ exchangeInfoPerAsset: ExchangeInfo[],
856
+ assetAddress: string,
857
+ marginBalance: number,
858
+ ) {
859
+ // todo: p1: haircut and exchange rate adjustment should not be done for rUSD
860
+ // does exchangeInfo currently return haircut as zero and price as 1?
861
+ // todo: p2: can just look at net deposits rather than margin balance for non-rusd as non pnl
862
+
863
+ const exchangeInfo = exchangeInfoPerAsset.find((exchangeInfo) => {
864
+ return assetAddress === exchangeInfo.tokenAddress;
865
+ });
866
+
867
+ if (!exchangeInfo) {
868
+ throw new Error(
869
+ 'Unable to retrieve exchange info when calculating collaterals needed to cover margin',
870
+ );
871
+ }
872
+
873
+ return ExposureCommand.exchangeWithPriceHaircut(
874
+ marginBalance,
875
+ exchangeInfo.price,
876
+ exchangeInfo.priceHaircut,
877
+ );
878
+ }
879
+
854
880
  getSlippage(
855
881
  deltaBase: number,
856
882
  marketConfiguration: MarketConfiguration,
@@ -1141,6 +1167,22 @@ export class ExposureCommand {
1141
1167
  return accountTotalBalance;
1142
1168
  }
1143
1169
 
1170
+ get accountTotalBalanceWithHaircutUsd() {
1171
+ let accountTotalBalance = 0;
1172
+
1173
+ for (const collateralAsset of this.tokenMarginInfoPerAsset) {
1174
+ const collateralPriceWithHaircut = ExposureCommand.getBalanceWithHaircut(
1175
+ this.exchangeInfoPerAsset,
1176
+ collateralAsset.assetAddress,
1177
+ collateralAsset.marginBalance,
1178
+ );
1179
+
1180
+ accountTotalBalance += collateralPriceWithHaircut;
1181
+ }
1182
+
1183
+ return accountTotalBalance;
1184
+ }
1185
+
1144
1186
  getMtmRpnlSum() {
1145
1187
  return this.mtmRpnlSum.toNumber();
1146
1188
  }