@augustdigital/sdk 4.24.0 → 4.24.2-alpha.0

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.
@@ -1,4 +1,5 @@
1
1
  import { IAddress, IContractRunner, ITokenizedVault, IVaultVersion } from '../../types';
2
+ export declare const isBadTransaction: (hash: string, chainId: number) => boolean;
2
3
  export declare const isBadVault: (address?: string) => boolean;
3
4
  export declare function getVaultVersion(vault: string): IVaultVersion | undefined;
4
5
  export declare function getVaultVersionV2(vault: ITokenizedVault): IVaultVersion | undefined;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDefaultSubgraphUrl = exports.SUBGRAPH_POOL_URLS = exports.AVAX_PRICE_FEED_ADDRESS = exports.REWARD_DISTRIBUTOR_ADDRESS = exports.isBadVault = void 0;
3
+ exports.getDefaultSubgraphUrl = exports.SUBGRAPH_POOL_URLS = exports.AVAX_PRICE_FEED_ADDRESS = exports.REWARD_DISTRIBUTOR_ADDRESS = exports.isBadVault = exports.isBadTransaction = void 0;
4
4
  exports.getVaultVersion = getVaultVersion;
5
5
  exports.getVaultVersionV2 = getVaultVersionV2;
6
6
  exports.getVaultSymbol = getVaultSymbol;
@@ -10,6 +10,24 @@ const web3_1 = require("./web3");
10
10
  const solana_1 = require("../../adapters/solana");
11
11
  const utils_1 = require("../../adapters/sui/utils");
12
12
  const fetcher_1 = require("../../modules/vaults/fetcher");
13
+ const isBadTransaction = (hash, chainId) => {
14
+ const badTxs = {
15
+ 1: [
16
+ '0xaba75b16e74a7a2457bfdcded853edd2bb4d3b305919baf84fb1f6b54b864889',
17
+ '0xc4c30185198672cbc91a95520d1bf91634ece37c199b2f1f15d29e8290c7ed4b',
18
+ '0x8e319576413897d1750f16bb93c7f59759b5bbafcb5bd9ef956f6bc0b0314aef',
19
+ '0x49057f8ea86b84a21808269558474686c9de02d31dc9e03a201b61104afbcdd3',
20
+ '0x7146dd528423705e225dd508f06cc6b4dab490c767400652ef82e7c96031359d',
21
+ '0x826340b2f376e71795177e9d68fee07e0c45263b45d22c36327db81db36d70a6',
22
+ '0xd79f4cf16dd4a794809448bf021bb64b6bfd22fb42094403baad4da5664b7519',
23
+ ],
24
+ };
25
+ if (chainId in badTxs) {
26
+ return badTxs[chainId].includes(hash);
27
+ }
28
+ return false;
29
+ };
30
+ exports.isBadTransaction = isBadTransaction;
13
31
  const isBadVault = (address) => {
14
32
  if (!address)
15
33
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"vaults.js","sourceRoot":"","sources":["../../../src.ts/core/helpers/vaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vaults.js","sourceRoot":"","sources":["../../../src.ts/core/helpers/vaults.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { IFetchAugustOptions } from '../../core';
2
- import { IAddress, IOTCPosition, IWSSubaccountCefi, IWSSubAccountHealthFactor, IWSSubaccountLoan } from '../../types';
2
+ import { IAddress, IOTCPosition, IWSSubaccountCefi, IWSSubAccountHealthFactor, IWSSubaccountLoan, IWSSubaccountSummary } from '../../types';
3
3
  export declare const fetchSubaccountHeathFactor: (address: IAddress, augustKey: string, headers?: IFetchAugustOptions["headers"]) => Promise<IWSSubAccountHealthFactor>;
4
4
  export declare const fetchSubaccountLoans: (payload: {
5
5
  address: IAddress;
@@ -8,3 +8,4 @@ export declare const fetchSubaccountLoans: (payload: {
8
8
  }, augustKey: string, headers?: IFetchAugustOptions["headers"]) => Promise<IWSSubaccountLoan[]>;
9
9
  export declare const fetchSubaccountCefiPositions: (address: IAddress, augustKey: string, headers?: IFetchAugustOptions["headers"]) => Promise<IWSSubaccountCefi[]>;
10
10
  export declare const fetchSubaccountOtcPositions: (address: IAddress, augustKey: string, headers?: IFetchAugustOptions["headers"]) => Promise<IOTCPosition[]>;
11
+ export declare const fetchSubaccountSummary: (address: IAddress, augustKey: string, headers?: IFetchAugustOptions["headers"]) => Promise<IWSSubaccountSummary>;
@@ -1,11 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fetchSubaccountOtcPositions = exports.fetchSubaccountCefiPositions = exports.fetchSubaccountLoans = exports.fetchSubaccountHeathFactor = void 0;
3
+ exports.fetchSubaccountSummary = exports.fetchSubaccountOtcPositions = exports.fetchSubaccountCefiPositions = exports.fetchSubaccountLoans = exports.fetchSubaccountHeathFactor = void 0;
4
4
  const core_1 = require("../../core");
5
5
  const fetchSubaccountHeathFactor = async (address, augustKey, headers) => {
6
6
  const response = await (0, core_1.fetchAugustWithKey)(augustKey, core_1.WEBSERVER_ENDPOINTS.subaccount.health_factor(address), {
7
7
  headers,
8
8
  });
9
+ if (!response.ok || typeof response.json !== 'function') {
10
+ throw new Error(`Failed to fetch subaccount health factor: ${response.statusText || 'Unknown error'}`);
11
+ }
9
12
  return response.json();
10
13
  };
11
14
  exports.fetchSubaccountHeathFactor = fetchSubaccountHeathFactor;
@@ -13,6 +16,9 @@ const fetchSubaccountLoans = async (payload, augustKey, headers) => {
13
16
  const response = await (0, core_1.fetchAugustWithKey)(augustKey, core_1.WEBSERVER_ENDPOINTS.subaccount.loans(payload.address, payload.side, payload.active), {
14
17
  headers,
15
18
  });
19
+ if (!response.ok || typeof response.json !== 'function') {
20
+ throw new Error(`Failed to fetch subaccount loans: ${response.statusText || 'Unknown error'}`);
21
+ }
16
22
  return response.json();
17
23
  };
18
24
  exports.fetchSubaccountLoans = fetchSubaccountLoans;
@@ -20,6 +26,9 @@ const fetchSubaccountCefiPositions = async (address, augustKey, headers) => {
20
26
  const response = await (0, core_1.fetchAugustWithKey)(augustKey, core_1.WEBSERVER_ENDPOINTS.subaccount.cefi(address), {
21
27
  headers,
22
28
  });
29
+ if (!response.ok || typeof response.json !== 'function') {
30
+ throw new Error(`Failed to fetch subaccount CeFi positions: ${response.statusText || 'Unknown error'}`);
31
+ }
23
32
  return response.json();
24
33
  };
25
34
  exports.fetchSubaccountCefiPositions = fetchSubaccountCefiPositions;
@@ -27,7 +36,20 @@ const fetchSubaccountOtcPositions = async (address, augustKey, headers) => {
27
36
  const response = await (0, core_1.fetchAugustWithKey)(augustKey, core_1.WEBSERVER_ENDPOINTS.subaccount.otc_positions(address), {
28
37
  headers,
29
38
  });
39
+ if (!response.ok || typeof response.json !== 'function') {
40
+ throw new Error(`Failed to fetch subaccount OTC positions: ${response.statusText || 'Unknown error'}`);
41
+ }
30
42
  return response.json();
31
43
  };
32
44
  exports.fetchSubaccountOtcPositions = fetchSubaccountOtcPositions;
45
+ const fetchSubaccountSummary = async (address, augustKey, headers) => {
46
+ const response = await (0, core_1.fetchAugustWithKey)(augustKey, core_1.WEBSERVER_ENDPOINTS.subaccount.summary(address), {
47
+ headers,
48
+ });
49
+ if (!response.ok || typeof response.json !== 'function') {
50
+ throw new Error(`Failed to fetch subaccount summary: ${response.statusText || 'Unknown error'}`);
51
+ }
52
+ return response.json();
53
+ };
54
+ exports.fetchSubaccountSummary = fetchSubaccountSummary;
33
55
  //# sourceMappingURL=fetcher.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../../../src.ts/modules/sub-accounts/fetcher.ts"],"names":[],"mappings":";;;AAAA,qCAIoB;AAYb,MAAM,0BAA0B,GAAG,KAAK,EAC7C,OAAiB,EACjB,SAAiB,EACjB,OAAwC,EACJ,EAAE;IACtC,MAAM,QAAQ,GAAG,MAAM,IAAA,yBAAkB,EACvC,SAAS,EACT,0BAAmB,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,EACrD;QACE,OAAO;KACR,CACF,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC,CAAC;AAdW,QAAA,0BAA0B,8BAcrC;AAKK,MAAM,oBAAoB,GAAG,KAAK,EACvC,OAIC,EACD,SAAiB,EACjB,OAAwC,EACV,EAAE;IAChC,MAAM,QAAQ,GAAG,MAAM,IAAA,yBAAkB,EACvC,SAAS,EACT,0BAAmB,CAAC,UAAU,CAAC,KAAK,CAClC,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,MAAM,CACf,EACD;QACE,OAAO;KACR,CACF,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC,CAAC;AAtBW,QAAA,oBAAoB,wBAsB/B;AAKK,MAAM,4BAA4B,GAAG,KAAK,EAC/C,OAAiB,EACjB,SAAiB,EACjB,OAAwC,EACV,EAAE;IAChC,MAAM,QAAQ,GAAG,MAAM,IAAA,yBAAkB,EACvC,SAAS,EACT,0BAAmB,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAC5C;QACE,OAAO;KACR,CACF,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC,CAAC;AAdW,QAAA,4BAA4B,gCAcvC;AAKK,MAAM,2BAA2B,GAAG,KAAK,EAC9C,OAAiB,EACjB,SAAiB,EACjB,OAAwC,EACf,EAAE;IAC3B,MAAM,QAAQ,GAAG,MAAM,IAAA,yBAAkB,EACvC,SAAS,EACT,0BAAmB,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,EACrD;QACE,OAAO;KACR,CACF,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC,CAAC;AAdW,QAAA,2BAA2B,+BActC"}
1
+ {"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../../../src.ts/modules/sub-accounts/fetcher.ts"],"names":[],"mappings":"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"}
@@ -13,4 +13,106 @@ export declare class AugustSubAccounts extends AugustBase {
13
13
  getSubaccountLoans(subaccountAddress: IAddress, side: 'BOTH' | 'LENDER' | 'BORROWER', active: boolean): Promise<import("../../types").IWSSubaccountLoan[]>;
14
14
  getSubaccountCefiPositions(subaccountAddress: IAddress): Promise<import("../../types").IWSSubaccountCefi[]>;
15
15
  getSubaccountOtcPositions(subaccountAddress: IAddress): Promise<import("../../types").IOTCPosition[]>;
16
+ getSubaccountSummary(subaccountAddress: IAddress): Promise<{
17
+ address: `0x${string}`;
18
+ name: string;
19
+ type: "eoa" | "subaccount";
20
+ portfolio: {
21
+ tokens: {
22
+ value: number;
23
+ balance: number;
24
+ token: {
25
+ type: string;
26
+ name: string;
27
+ address: string;
28
+ chain: number;
29
+ symbol: string;
30
+ decimals: number;
31
+ imgUrl: string;
32
+ };
33
+ }[];
34
+ marginBalances: unknown[];
35
+ collateralBalances: unknown[];
36
+ cefiPositions: unknown[];
37
+ defiPositions: unknown[];
38
+ trsPositions: unknown[];
39
+ strategyContractPositions: unknown[];
40
+ legacyHedgerPositions: unknown[];
41
+ otcPositions: unknown[];
42
+ totalValue: number;
43
+ discountedValue: number;
44
+ };
45
+ loanbook: {
46
+ loans: {
47
+ subaccountAddress: `0x${string}`;
48
+ book: {
49
+ address: `0x${string}`;
50
+ lender: `0x${string}`;
51
+ borrower: `0x${string}`;
52
+ state: string;
53
+ totalRepaid: number;
54
+ principalToken: {
55
+ type: string;
56
+ name: string;
57
+ address: string;
58
+ chain: number;
59
+ symbol: string;
60
+ decimals: number;
61
+ imgUrl: string;
62
+ tokenType: number;
63
+ discountFactor: number;
64
+ price: number;
65
+ };
66
+ principalAmount: number;
67
+ interestAmount: number;
68
+ upcomingPayment: {
69
+ amount: number;
70
+ dueDate: string;
71
+ };
72
+ apr: number;
73
+ initialPrincipalAmount: number;
74
+ deployedDate: string;
75
+ paymentInterval: number;
76
+ totalInterestPaymentFees: number;
77
+ };
78
+ isBorrow: boolean;
79
+ debtInfo: {
80
+ interestOwed: number;
81
+ principalDebtOwed: number;
82
+ interestRepaid: number;
83
+ };
84
+ creditInfo: {
85
+ netInterestOwed: number;
86
+ principalDebtOwed: number;
87
+ netInterestRepaid: number;
88
+ };
89
+ }[];
90
+ totalDebt: number;
91
+ totalCredit: number;
92
+ aggregatesByToken: unknown[];
93
+ };
94
+ chains: {
95
+ name: string;
96
+ chainId: number;
97
+ }[];
98
+ tokens: {
99
+ type: string;
100
+ name: string;
101
+ address: string;
102
+ chain: number;
103
+ symbol: string;
104
+ decimals: number;
105
+ imgUrl: string;
106
+ price: number;
107
+ rawBalance: number;
108
+ balance: number;
109
+ value: number;
110
+ }[];
111
+ totalAccountValue: number;
112
+ totalCollateralValue: number;
113
+ totalLoanValue: number;
114
+ healthFactor: number;
115
+ netAccountValue: number;
116
+ totalEquityValue: number;
117
+ }>;
16
118
  }
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AugustSubAccounts = void 0;
4
4
  const fetcher_1 = require("./fetcher");
5
+ const utils_1 = require("./utils");
5
6
  const core_1 = require("../../core");
6
7
  class AugustSubAccounts extends core_1.AugustBase {
7
8
  constructor(baseConfig) {
@@ -34,6 +35,10 @@ class AugustSubAccounts extends core_1.AugustBase {
34
35
  const response = await (0, fetcher_1.fetchSubaccountOtcPositions)(subaccountAddress, this.keys.august, this.headers);
35
36
  return response;
36
37
  }
38
+ async getSubaccountSummary(subaccountAddress) {
39
+ const response = await (0, fetcher_1.fetchSubaccountSummary)(subaccountAddress, this.keys.august, this.headers);
40
+ return (0, utils_1.transformSubaccountSummary)(response);
41
+ }
37
42
  }
38
43
  exports.AugustSubAccounts = AugustSubAccounts;
39
44
  //# sourceMappingURL=main.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src.ts/modules/sub-accounts/main.ts"],"names":[],"mappings":";;;AAKA,uCAKmB;AACnB,qCAAqD;AASrD,MAAa,iBAAkB,SAAQ,iBAAU;IAG/C,YAAY,UAAuB;QACjC,KAAK,CAAC,UAAU,CAAC,CAAC;QAHZ,YAAO,GAAkC,IAAI,CAAC;QAIpD,IAAI,CAAC,OAAO,GAAG;YACb,eAAe,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,eAAe,CAAC;YACnD,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,WAAW,CAAC;SAC5C,CAAC;IACJ,CAAC;IAOD,KAAK,CAAC,yBAAyB,CAAC,iBAA2B;QACzD,MAAM,QAAQ,GAAG,MAAM,IAAA,oCAA0B,EAC/C,iBAAiB,EACjB,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,IAAI,CAAC,OAAO,CACb,CAAC;QACF,OAAO;YACL,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,YAAY,EAAE,QAAQ,CAAC,aAAa;YACpC,eAAe,EAAE,QAAQ,CAAC,sBAAsB;YAChD,SAAS,EAAE,QAAQ,CAAC,gBAAgB;SACrC,CAAC;IACJ,CAAC;IASD,KAAK,CAAC,kBAAkB,CACtB,iBAA2B,EAC3B,IAAoC,EACpC,MAAe;QAEf,MAAM,QAAQ,GAAG,MAAM,IAAA,8BAAoB,EACzC,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAE,EAC5C,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,IAAI,CAAC,OAAO,CACb,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAOD,KAAK,CAAC,0BAA0B,CAAC,iBAA2B;QAC1D,MAAM,QAAQ,GAAG,MAAM,IAAA,sCAA4B,EACjD,iBAAiB,EACjB,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,IAAI,CAAC,OAAO,CACb,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAOD,KAAK,CAAC,yBAAyB,CAAC,iBAA2B;QACzD,MAAM,QAAQ,GAAG,MAAM,IAAA,qCAA2B,EAChD,iBAAiB,EACjB,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,IAAI,CAAC,OAAO,CACb,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AA9ED,8CA8EC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src.ts/modules/sub-accounts/main.ts"],"names":[],"mappings":";;;AAKA,uCAMmB;AACnB,mCAAqD;AACrD,qCAAqD;AASrD,MAAa,iBAAkB,SAAQ,iBAAU;IAG/C,YAAY,UAAuB;QACjC,KAAK,CAAC,UAAU,CAAC,CAAC;QAHZ,YAAO,GAAkC,IAAI,CAAC;QAIpD,IAAI,CAAC,OAAO,GAAG;YACb,eAAe,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,eAAe,CAAC;YACnD,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,WAAW,CAAC;SAC5C,CAAC;IACJ,CAAC;IAOD,KAAK,CAAC,yBAAyB,CAAC,iBAA2B;QACzD,MAAM,QAAQ,GAAG,MAAM,IAAA,oCAA0B,EAC/C,iBAAiB,EACjB,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,IAAI,CAAC,OAAO,CACb,CAAC;QACF,OAAO;YACL,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,YAAY,EAAE,QAAQ,CAAC,aAAa;YACpC,eAAe,EAAE,QAAQ,CAAC,sBAAsB;YAChD,SAAS,EAAE,QAAQ,CAAC,gBAAgB;SACrC,CAAC;IACJ,CAAC;IASD,KAAK,CAAC,kBAAkB,CACtB,iBAA2B,EAC3B,IAAoC,EACpC,MAAe;QAEf,MAAM,QAAQ,GAAG,MAAM,IAAA,8BAAoB,EACzC,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAE,EAC5C,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,IAAI,CAAC,OAAO,CACb,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAOD,KAAK,CAAC,0BAA0B,CAAC,iBAA2B;QAC1D,MAAM,QAAQ,GAAG,MAAM,IAAA,sCAA4B,EACjD,iBAAiB,EACjB,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,IAAI,CAAC,OAAO,CACb,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAOD,KAAK,CAAC,yBAAyB,CAAC,iBAA2B;QACzD,MAAM,QAAQ,GAAG,MAAM,IAAA,qCAA2B,EAChD,iBAAiB,EACjB,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,IAAI,CAAC,OAAO,CACb,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAOD,KAAK,CAAC,oBAAoB,CAAC,iBAA2B;QACpD,MAAM,QAAQ,GAAG,MAAM,IAAA,gCAAsB,EAC3C,iBAAiB,EACjB,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,IAAI,CAAC,OAAO,CACb,CAAC;QACF,OAAO,IAAA,kCAA0B,EAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;CACF;AA5FD,8CA4FC"}
@@ -0,0 +1,103 @@
1
+ import { IWSSubaccountSummary } from '../../types';
2
+ export declare const transformSubaccountSummary: (response: IWSSubaccountSummary) => {
3
+ address: `0x${string}`;
4
+ name: string;
5
+ type: "eoa" | "subaccount";
6
+ portfolio: {
7
+ tokens: {
8
+ value: number;
9
+ balance: number;
10
+ token: {
11
+ type: string;
12
+ name: string;
13
+ address: string;
14
+ chain: number;
15
+ symbol: string;
16
+ decimals: number;
17
+ imgUrl: string;
18
+ };
19
+ }[];
20
+ marginBalances: unknown[];
21
+ collateralBalances: unknown[];
22
+ cefiPositions: unknown[];
23
+ defiPositions: unknown[];
24
+ trsPositions: unknown[];
25
+ strategyContractPositions: unknown[];
26
+ legacyHedgerPositions: unknown[];
27
+ otcPositions: unknown[];
28
+ totalValue: number;
29
+ discountedValue: number;
30
+ };
31
+ loanbook: {
32
+ loans: {
33
+ subaccountAddress: `0x${string}`;
34
+ book: {
35
+ address: `0x${string}`;
36
+ lender: `0x${string}`;
37
+ borrower: `0x${string}`;
38
+ state: string;
39
+ totalRepaid: number;
40
+ principalToken: {
41
+ type: string;
42
+ name: string;
43
+ address: string;
44
+ chain: number;
45
+ symbol: string;
46
+ decimals: number;
47
+ imgUrl: string;
48
+ tokenType: number;
49
+ discountFactor: number;
50
+ price: number;
51
+ };
52
+ principalAmount: number;
53
+ interestAmount: number;
54
+ upcomingPayment: {
55
+ amount: number;
56
+ dueDate: string;
57
+ };
58
+ apr: number;
59
+ initialPrincipalAmount: number;
60
+ deployedDate: string;
61
+ paymentInterval: number;
62
+ totalInterestPaymentFees: number;
63
+ };
64
+ isBorrow: boolean;
65
+ debtInfo: {
66
+ interestOwed: number;
67
+ principalDebtOwed: number;
68
+ interestRepaid: number;
69
+ };
70
+ creditInfo: {
71
+ netInterestOwed: number;
72
+ principalDebtOwed: number;
73
+ netInterestRepaid: number;
74
+ };
75
+ }[];
76
+ totalDebt: number;
77
+ totalCredit: number;
78
+ aggregatesByToken: unknown[];
79
+ };
80
+ chains: {
81
+ name: string;
82
+ chainId: number;
83
+ }[];
84
+ tokens: {
85
+ type: string;
86
+ name: string;
87
+ address: string;
88
+ chain: number;
89
+ symbol: string;
90
+ decimals: number;
91
+ imgUrl: string;
92
+ price: number;
93
+ rawBalance: number;
94
+ balance: number;
95
+ value: number;
96
+ }[];
97
+ totalAccountValue: number;
98
+ totalCollateralValue: number;
99
+ totalLoanValue: number;
100
+ healthFactor: number;
101
+ netAccountValue: number;
102
+ totalEquityValue: number;
103
+ };
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformSubaccountSummary = void 0;
4
+ const transformSubaccountSummary = (response) => {
5
+ return {
6
+ address: response.address,
7
+ name: response.name,
8
+ type: response.type,
9
+ portfolio: {
10
+ tokens: response.portfolio.tokens.map((t) => ({
11
+ value: t.value,
12
+ balance: t.balance,
13
+ token: {
14
+ type: t.token.type,
15
+ name: t.token.name,
16
+ address: t.token.address,
17
+ chain: t.token.chain,
18
+ symbol: t.token.symbol,
19
+ decimals: t.token.decimals,
20
+ imgUrl: t.token.img_url,
21
+ },
22
+ })),
23
+ marginBalances: response.portfolio.margin_balances,
24
+ collateralBalances: response.portfolio.collateral_balances,
25
+ cefiPositions: response.portfolio.cefi_positions,
26
+ defiPositions: response.portfolio.defi_positions,
27
+ trsPositions: response.portfolio.trs_positions,
28
+ strategyContractPositions: response.portfolio.strategy_contract_positions,
29
+ legacyHedgerPositions: response.portfolio.legacy_hedger_positions,
30
+ otcPositions: response.portfolio.otc_positions,
31
+ totalValue: response.portfolio.total_value,
32
+ discountedValue: response.portfolio.discounted_value,
33
+ },
34
+ loanbook: {
35
+ loans: response.loanbook.loans.map((loan) => ({
36
+ subaccountAddress: loan.subaccount_address,
37
+ book: {
38
+ address: loan.book.address,
39
+ lender: loan.book.lender,
40
+ borrower: loan.book.borrower,
41
+ state: loan.book.state,
42
+ totalRepaid: loan.book.total_repaid,
43
+ principalToken: {
44
+ type: loan.book.principal_token.type,
45
+ name: loan.book.principal_token.name,
46
+ address: loan.book.principal_token.address,
47
+ chain: loan.book.principal_token.chain,
48
+ symbol: loan.book.principal_token.symbol,
49
+ decimals: loan.book.principal_token.decimals,
50
+ imgUrl: loan.book.principal_token.img_url,
51
+ tokenType: loan.book.principal_token.token_type,
52
+ discountFactor: loan.book.principal_token.discount_factor,
53
+ price: loan.book.principal_token.price,
54
+ },
55
+ principalAmount: loan.book.principal_amount,
56
+ interestAmount: loan.book.interest_amount,
57
+ upcomingPayment: {
58
+ amount: loan.book.upcoming_payment.amount,
59
+ dueDate: loan.book.upcoming_payment.due_date,
60
+ },
61
+ apr: loan.book.apr,
62
+ initialPrincipalAmount: loan.book.initial_principal_amount,
63
+ deployedDate: loan.book.deployed_date,
64
+ paymentInterval: loan.book.payment_interval,
65
+ totalInterestPaymentFees: loan.book.total_interest_payment_fees,
66
+ },
67
+ isBorrow: loan.is_borrow,
68
+ debtInfo: {
69
+ interestOwed: loan.debt_info.interest_owed,
70
+ principalDebtOwed: loan.debt_info.principal_debt_owed,
71
+ interestRepaid: loan.debt_info.interest_repaid,
72
+ },
73
+ creditInfo: {
74
+ netInterestOwed: loan.credit_info.net_interest_owed,
75
+ principalDebtOwed: loan.credit_info.principal_debt_owed,
76
+ netInterestRepaid: loan.credit_info.net_interest_repaid,
77
+ },
78
+ })),
79
+ totalDebt: response.loanbook.total_debt,
80
+ totalCredit: response.loanbook.total_credit,
81
+ aggregatesByToken: response.loanbook.aggregates_by_token,
82
+ },
83
+ chains: response.chains.map((c) => ({
84
+ name: c.name,
85
+ chainId: c.chain_id,
86
+ })),
87
+ tokens: response.tokens.map((t) => ({
88
+ type: t.type,
89
+ name: t.name,
90
+ address: t.address,
91
+ chain: t.chain,
92
+ symbol: t.symbol,
93
+ decimals: t.decimals,
94
+ imgUrl: t.img_url,
95
+ price: t.price,
96
+ rawBalance: t.raw_balance,
97
+ balance: t.balance,
98
+ value: t.value,
99
+ })),
100
+ totalAccountValue: response.total_account_value,
101
+ totalCollateralValue: response.total_collateral_value,
102
+ totalLoanValue: response.total_loan_value,
103
+ healthFactor: response.health_factor,
104
+ netAccountValue: response.net_account_value,
105
+ totalEquityValue: response.total_equity_value,
106
+ };
107
+ };
108
+ exports.transformSubaccountSummary = transformSubaccountSummary;
109
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src.ts/modules/sub-accounts/utils.ts"],"names":[],"mappings":"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"}
@@ -1208,7 +1208,7 @@ async function getVaultUserLifetimePnl({ vault, wallet, options, }) {
1208
1208
  wallet,
1209
1209
  options,
1210
1210
  }),
1211
- (0, core_1.fetchTokenizedVault)(vault, options?.headers),
1211
+ (0, core_1.fetchTokenizedVault)(vault, options?.headers, false, false),
1212
1212
  ]);
1213
1213
  const tokenizedVault = tokenizedVaultResult?.[0];
1214
1214
  if (!tokenizedVault) {
@@ -1247,19 +1247,62 @@ async function getVaultUserLifetimePnl({ vault, wallet, options, }) {
1247
1247
  }
1248
1248
  return { underlyingTokenSymbol, underlyingAssetAddress };
1249
1249
  })();
1250
- let totalDepositedRaw = BigInt(0);
1251
- let totalWithdrawalsRequestedRaw = BigInt(0);
1250
+ const depositsByAsset = new Map();
1251
+ let totalWithdrawalsInShares = BigInt(0);
1252
+ let totalWithdrawalsInAssets = BigInt(0);
1252
1253
  for (const historyItem of userHistory) {
1253
1254
  const amount = BigInt(historyItem.amount);
1255
+ if ((0, core_1.isBadTransaction)(historyItem.transactionHash_, tokenizedVault.chain)) {
1256
+ continue;
1257
+ }
1254
1258
  if (historyItem.type === 'deposit') {
1255
- totalDepositedRaw += amount;
1259
+ const assetKey = 'assetIn' in historyItem && typeof historyItem.assetIn === 'string'
1260
+ ? historyItem.assetIn.toLowerCase()
1261
+ : 'default';
1262
+ const current = depositsByAsset.get(assetKey) ?? BigInt(0);
1263
+ depositsByAsset.set(assetKey, current + amount);
1264
+ }
1265
+ else if (historyItem.type === 'withdraw-request') {
1266
+ totalWithdrawalsInShares += amount;
1256
1267
  }
1257
- else if (historyItem.type === 'withdraw-request' ||
1258
- (historyItem.type === 'withdraw-processed' && historyItem.isInstant)) {
1259
- totalWithdrawalsRequestedRaw += amount;
1268
+ else if (historyItem.type === 'withdraw-processed' &&
1269
+ historyItem.isInstant) {
1270
+ totalWithdrawalsInAssets += amount;
1260
1271
  }
1261
1272
  }
1262
- const totalDeposited = (0, core_1.toNormalizedBn)(totalDepositedRaw, decimals);
1273
+ const assetDecimals = new Map();
1274
+ await Promise.all(Array.from(depositsByAsset.keys()).map(async (assetAddress) => {
1275
+ if (assetAddress === 'default') {
1276
+ assetDecimals.set(assetAddress, decimals);
1277
+ }
1278
+ else {
1279
+ const dec = await (0, core_1.getDecimals)(provider, assetAddress, false);
1280
+ assetDecimals.set(assetAddress, dec);
1281
+ }
1282
+ }));
1283
+ const totalDepositedRaw = new Map();
1284
+ for (const [assetAddress, rawAmount] of depositsByAsset) {
1285
+ const assetDec = assetDecimals.get(assetAddress) ?? decimals;
1286
+ totalDepositedRaw.set(assetAddress, (0, core_1.toNormalizedBn)(rawAmount, assetDec));
1287
+ }
1288
+ const assetPrices = new Map();
1289
+ if (tokenizedVault.chain) {
1290
+ await Promise.all(Array.from(depositsByAsset.keys()).map(async (assetAddress) => {
1291
+ if (assetAddress === 'default') {
1292
+ assetPrices.set(assetAddress, 0);
1293
+ }
1294
+ else {
1295
+ try {
1296
+ const price = await (0, core_1.fetchTokenPriceByAddress)(assetAddress, tokenizedVault.chain, options?.headers);
1297
+ assetPrices.set(assetAddress, price);
1298
+ }
1299
+ catch (error) {
1300
+ core_1.Logger.log.warn('getVaultUserLifetimePnl:fetchAssetPrice', `Failed to fetch price for ${assetAddress}: ${error}`);
1301
+ assetPrices.set(assetAddress, 0);
1302
+ }
1303
+ }
1304
+ }));
1305
+ }
1263
1306
  const { underlyingTokenSymbol, underlyingAssetAddress } = await underlyingSymbolPromise;
1264
1307
  let currentPositionValue = (0, core_1.toNormalizedBn)(0, decimals);
1265
1308
  const pricePromise = underlyingAssetAddress && tokenizedVault.chain
@@ -1311,25 +1354,42 @@ async function getVaultUserLifetimePnl({ vault, wallet, options, }) {
1311
1354
  currentPositionValue = currentPosition.walletBalance;
1312
1355
  }
1313
1356
  }
1314
- let totalWithdrawalsRequestedInAssetsRaw = totalWithdrawalsRequestedRaw;
1357
+ let totalWithdrawnRaw = totalWithdrawalsInAssets;
1315
1358
  if (version === 'evm-2' && sharePriceRaw > BigInt(0)) {
1316
- totalWithdrawalsRequestedInAssetsRaw =
1317
- (totalWithdrawalsRequestedRaw * sharePriceRaw) / BigInt(10 ** decimals);
1359
+ totalWithdrawnRaw +=
1360
+ (totalWithdrawalsInShares * sharePriceRaw) / BigInt(10 ** decimals);
1361
+ }
1362
+ else {
1363
+ totalWithdrawnRaw += totalWithdrawalsInShares;
1318
1364
  }
1319
- const tokenPriceUsd = await pricePromise;
1320
- const totalWithdrawnRaw = totalWithdrawalsRequestedInAssetsRaw;
1321
1365
  const totalWithdrawn = (0, core_1.toNormalizedBn)(totalWithdrawnRaw, decimals);
1322
- const totalWithdrawalsRequestedInAssets = (0, core_1.toNormalizedBn)(totalWithdrawalsRequestedInAssetsRaw, decimals);
1323
- const totalDepositedUsd = Number(totalDeposited.normalized) * tokenPriceUsd;
1324
- const totalWithdrawnUsd = Number(totalWithdrawn.normalized) * tokenPriceUsd;
1325
- const currentPositionValueUsd = Number(currentPositionValue.normalized) * tokenPriceUsd;
1326
- const lifetimePnlRaw = BigInt(currentPositionValue.raw) +
1327
- totalWithdrawalsRequestedInAssetsRaw -
1328
- totalDepositedRaw;
1366
+ const tokenPriceUsd = await pricePromise;
1367
+ const effectiveTokenPrice = tokenPriceUsd > 0 ? tokenPriceUsd : 1;
1368
+ if (tokenPriceUsd <= 0) {
1369
+ core_1.Logger.log.warn('getVaultUserLifetimePnl:tokenPrice', `Invalid underlying token price: ${tokenPriceUsd}, using fallback of 1`);
1370
+ }
1371
+ let totalDepositedUsd = 0;
1372
+ for (const [assetAddress, normalizedAmount] of totalDepositedRaw) {
1373
+ const assetPrice = assetAddress === 'default'
1374
+ ? effectiveTokenPrice
1375
+ : assetPrices.get(assetAddress) || effectiveTokenPrice;
1376
+ totalDepositedUsd += Number(normalizedAmount.normalized) * assetPrice;
1377
+ }
1378
+ const totalWithdrawnUsd = Number(totalWithdrawn.normalized) * effectiveTokenPrice;
1379
+ const currentPositionValueUsd = Number(currentPositionValue.normalized) * effectiveTokenPrice;
1380
+ const lifetimePnlUsd = currentPositionValueUsd + totalWithdrawnUsd - totalDepositedUsd;
1381
+ const scaleFactor = BigInt(10 ** 18);
1382
+ const tokenPriceScaled = BigInt(Math.round(effectiveTokenPrice * Number(scaleFactor)));
1383
+ const totalDepositedUsdScaled = BigInt(Math.round(totalDepositedUsd * Number(scaleFactor)));
1384
+ const totalDepositedNativeRaw = tokenPriceScaled > BigInt(0)
1385
+ ? (totalDepositedUsdScaled * BigInt(10 ** decimals)) / tokenPriceScaled
1386
+ : BigInt(0);
1387
+ const totalDeposited = (0, core_1.toNormalizedBn)(totalDepositedNativeRaw, decimals);
1388
+ const lifetimePnlUsdScaled = BigInt(Math.round(lifetimePnlUsd * Number(scaleFactor)));
1389
+ const lifetimePnlRaw = tokenPriceScaled > BigInt(0)
1390
+ ? (lifetimePnlUsdScaled * BigInt(10 ** decimals)) / tokenPriceScaled
1391
+ : BigInt(0);
1329
1392
  const lifetimePnl = (0, core_1.toNormalizedBn)(lifetimePnlRaw, decimals);
1330
- const lifetimePnlUsd = currentPositionValueUsd +
1331
- Number(totalWithdrawalsRequestedInAssets.normalized) * tokenPriceUsd -
1332
- totalDepositedUsd;
1333
1393
  const pnlPercentage = totalDepositedUsd > 0
1334
1394
  ? Number.parseFloat(((lifetimePnlUsd / totalDepositedUsd) * 100).toFixed(2))
1335
1395
  : 0;
@@ -1 +1 @@
1
- {"version":3,"file":"getters.js","sourceRoot":"","sources":["../../../src.ts/modules/vaults/getters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getters.js","sourceRoot":"","sources":["../../../src.ts/modules/vaults/getters.ts"],"names":[],"mappings":"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"}
@@ -6,3 +6,99 @@ export interface IWSSubAccountHealthFactor {
6
6
  total_collateral_value: number;
7
7
  total_loan_value: number;
8
8
  }
9
+ export interface IWSSubaccountSummaryToken {
10
+ type: string;
11
+ name: string;
12
+ address: string;
13
+ chain: number;
14
+ symbol: string;
15
+ decimals: number;
16
+ img_url: string;
17
+ }
18
+ export interface IWSSubaccountSummaryPortfolioToken {
19
+ value: number;
20
+ balance: number;
21
+ token: IWSSubaccountSummaryToken;
22
+ }
23
+ export interface IWSSubaccountSummaryFullToken extends IWSSubaccountSummaryToken {
24
+ price: number;
25
+ raw_balance: number;
26
+ balance: number;
27
+ value: number;
28
+ }
29
+ export interface IWSSubaccountSummaryChain {
30
+ name: string;
31
+ chain_id: number;
32
+ }
33
+ export interface IWSSubaccountSummaryLoanBook {
34
+ address: IAddress;
35
+ lender: IAddress;
36
+ borrower: IAddress;
37
+ state: string;
38
+ total_repaid: number;
39
+ principal_token: IWSSubaccountSummaryToken & {
40
+ token_type: number;
41
+ discount_factor: number;
42
+ price: number;
43
+ };
44
+ principal_amount: number;
45
+ interest_amount: number;
46
+ upcoming_payment: {
47
+ amount: number;
48
+ due_date: string;
49
+ };
50
+ apr: number;
51
+ initial_principal_amount: number;
52
+ deployed_date: string;
53
+ payment_interval: number;
54
+ total_interest_payment_fees: number;
55
+ }
56
+ export interface IWSSubaccountSummaryLoan {
57
+ subaccount_address: IAddress;
58
+ book: IWSSubaccountSummaryLoanBook;
59
+ is_borrow: boolean;
60
+ debt_info: {
61
+ interest_owed: number;
62
+ principal_debt_owed: number;
63
+ interest_repaid: number;
64
+ };
65
+ credit_info: {
66
+ net_interest_owed: number;
67
+ principal_debt_owed: number;
68
+ net_interest_repaid: number;
69
+ };
70
+ }
71
+ export interface IWSSubaccountSummaryLoanbook {
72
+ loans: IWSSubaccountSummaryLoan[];
73
+ total_debt: number;
74
+ total_credit: number;
75
+ aggregates_by_token: unknown[];
76
+ }
77
+ export interface IWSSubaccountSummaryPortfolio {
78
+ tokens: IWSSubaccountSummaryPortfolioToken[];
79
+ margin_balances: unknown[];
80
+ collateral_balances: unknown[];
81
+ cefi_positions: unknown[];
82
+ defi_positions: unknown[];
83
+ trs_positions: unknown[];
84
+ strategy_contract_positions: unknown[];
85
+ legacy_hedger_positions: unknown[];
86
+ otc_positions: unknown[];
87
+ total_value: number;
88
+ discounted_value: number;
89
+ }
90
+ export interface IWSSubaccountSummary {
91
+ address: IAddress;
92
+ name: string;
93
+ type: 'subaccount' | 'eoa';
94
+ portfolio: IWSSubaccountSummaryPortfolio;
95
+ loanbook: IWSSubaccountSummaryLoanbook;
96
+ chains: IWSSubaccountSummaryChain[];
97
+ tokens: IWSSubaccountSummaryFullToken[];
98
+ total_account_value: number;
99
+ total_collateral_value: number;
100
+ total_loan_value: number;
101
+ health_factor: number | null;
102
+ net_account_value: number;
103
+ total_equity_value: number;
104
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@augustdigital/sdk",
3
- "version": "4.24.0",
3
+ "version": "4.24.2-alpha.0",
4
4
  "main": "lib/index.js",
5
5
  "keywords": [
6
6
  "augustdigital",
@@ -12,6 +12,16 @@
12
12
  "author": "August Digital",
13
13
  "license": "MIT",
14
14
  "description": "JS SDK powering the August Digital ecosystem.",
15
+ "scripts": {
16
+ "build": "tsc",
17
+ "test": "pnpm build && cross-env node dist/test",
18
+ "test:jest": "jest",
19
+ "test:jest:watch": "jest --watch",
20
+ "test:jest:coverage": "jest --coverage",
21
+ "clean": "rm -rf ./lib",
22
+ "format": "eslint . --fix",
23
+ "lint-sdk": "lint-staged"
24
+ },
15
25
  "lint-staged": {
16
26
  "*.{ts,tsx,js,jsx,json}": [
17
27
  "eslint --fix"
@@ -53,15 +63,5 @@
53
63
  "viem": {
54
64
  "optional": true
55
65
  }
56
- },
57
- "scripts": {
58
- "build": "tsc",
59
- "test": "pnpm build && cross-env node dist/test",
60
- "test:jest": "jest",
61
- "test:jest:watch": "jest --watch",
62
- "test:jest:coverage": "jest --coverage",
63
- "clean": "rm -rf ./lib",
64
- "format": "eslint . --fix",
65
- "lint-sdk": "lint-staged"
66
66
  }
67
- }
67
+ }