@sonarwatch/portfolio-plugins 0.8.71 → 0.8.72

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.
package/CHANGELOG.md CHANGED
@@ -2,10 +2,14 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
- ## [0.8.71](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.70...plugins-0.8.71) (2023-11-09)
5
+ ## [0.8.72](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.71...plugins-0.8.72) (2023-11-10)
6
6
 
7
7
 
8
8
 
9
+ ## [0.8.71](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.70...plugins-0.8.71) (2023-11-09)
10
+
11
+
12
+
9
13
  ## [0.8.70](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.69...plugins-0.8.70) (2023-11-09)
10
14
 
11
15
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sonarwatch/portfolio-plugins",
3
- "version": "0.8.71",
3
+ "version": "0.8.72",
4
4
  "type": "commonjs",
5
5
  "generators": "./generators.json",
6
6
  "dependencies": {
@@ -39,7 +39,7 @@
39
39
  "web3-v1": "npm:web3@^1.5.0"
40
40
  },
41
41
  "peerDependencies": {
42
- "@sonarwatch/portfolio-core": "0.8.71"
42
+ "@sonarwatch/portfolio-core": "0.8.72"
43
43
  },
44
44
  "main": "./src/index.js",
45
45
  "types": "./src/index.d.ts"
package/src/index.js CHANGED
@@ -65,6 +65,7 @@ const maple_1 = require("./plugins/maple");
65
65
  const flexlend_1 = require("./plugins/flexlend");
66
66
  const fluxbeam_1 = require("./plugins/fluxbeam");
67
67
  const jupiter_1 = require("./plugins/jupiter");
68
+ const zeta_1 = require("./plugins/zeta");
68
69
  var constants_1 = require("./plugins/tokens/constants");
69
70
  Object.defineProperty(exports, "walletTokensPlatform", { enumerable: true, get: function () { return constants_1.walletTokensPlatform; } });
70
71
  Object.defineProperty(exports, "walletNftsPlatform", { enumerable: true, get: function () { return constants_1.walletNftsPlatform; } });
@@ -119,6 +120,7 @@ exports.platforms = [
119
120
  ...maple_1.platforms,
120
121
  ...flexlend_1.platforms,
121
122
  ...fluxbeam_1.platforms,
123
+ ...zeta_1.platforms,
122
124
  ];
123
125
  // JOBS //
124
126
  exports.jobs = [
@@ -160,6 +162,7 @@ exports.jobs = [
160
162
  ...flexlend_1.jobs,
161
163
  ...fluxbeam_1.jobs,
162
164
  ...jupiter_1.jobs,
165
+ ...zeta_1.jobs,
163
166
  ];
164
167
  // FETCHERS //
165
168
  exports.fetchers = [
@@ -200,6 +203,7 @@ exports.fetchers = [
200
203
  ...flexlend_1.fetchers,
201
204
  ...fluxbeam_1.fetchers,
202
205
  ...jupiter_1.fetchers,
206
+ ...zeta_1.fetchers,
203
207
  ];
204
208
  exports.fetchersByAddressSystem = (0, getFetchersByAddressSystem_1.getFetchersByAddressSystem)(exports.fetchers);
205
209
  //# sourceMappingURL=index.js.map
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/plugins/src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/plugins/src/index.ts"],"names":[],"mappings":"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"}
@@ -106,7 +106,7 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
106
106
  borrowedAssets.push(assetToken);
107
107
  const apr = bank.borrowApr;
108
108
  if (apr)
109
- suppliedYields.push([
109
+ borrowedYields.push([
110
110
  {
111
111
  apr,
112
112
  apy: (0, portfolio_core_1.aprToApy)(apr),
@@ -36,28 +36,28 @@ exports.getPairsV2 = void 0;
36
36
  const graphql_request_1 = __importStar(require("graphql-request"));
37
37
  function getPairsV2(url) {
38
38
  return __awaiter(this, void 0, void 0, function* () {
39
- const query = (0, graphql_request_1.gql) `
40
- {
41
- pairs(
42
- orderBy: reserveUSD
43
- first: 500
44
- orderDirection: desc
45
- where: { trackedReserveETH_not: "0" }
46
- ) {
47
- id
48
- reserve0
49
- reserve1
50
- totalSupply
51
- token0 {
52
- id
53
- decimals
54
- }
55
- token1 {
56
- id
57
- decimals
58
- }
59
- }
60
- }
39
+ const query = (0, graphql_request_1.gql) `
40
+ {
41
+ pairs(
42
+ orderBy: reserveUSD
43
+ first: 500
44
+ orderDirection: desc
45
+ where: { trackedReserveETH_not: "0" }
46
+ ) {
47
+ id
48
+ reserve0
49
+ reserve1
50
+ totalSupply
51
+ token0 {
52
+ id
53
+ decimals
54
+ }
55
+ token1 {
56
+ id
57
+ decimals
58
+ }
59
+ }
60
+ }
61
61
  `;
62
62
  const res = yield (0, graphql_request_1.default)(url, query);
63
63
  const pairs = res.pairs;
@@ -0,0 +1,6 @@
1
+ import { PublicKey } from '@solana/web3.js';
2
+ import { Platform } from '@sonarwatch/portfolio-core';
3
+ export declare const platformId = "zeta";
4
+ export declare const zetaPlatform: Platform;
5
+ export declare const usdcMint = "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v";
6
+ export declare const programId: PublicKey;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.programId = exports.usdcMint = exports.zetaPlatform = exports.platformId = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ exports.platformId = 'zeta';
6
+ exports.zetaPlatform = {
7
+ id: exports.platformId,
8
+ name: 'Zeta',
9
+ image: 'https://sonar.watch/img/platforms/zeta.png',
10
+ defiLlamaId: 'zeta',
11
+ };
12
+ exports.usdcMint = 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v';
13
+ exports.programId = new web3_js_1.PublicKey('ZETAxsqBRek56DhiGXrn75yj2NHU3aYUnxvHXpkf3aD');
14
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/zeta/constants.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAG/B,QAAA,UAAU,GAAG,MAAM,CAAC;AACpB,QAAA,YAAY,GAAa;IACpC,EAAE,EAAE,kBAAU;IACd,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,4CAA4C;IACnD,WAAW,EAAE,MAAM;CACpB,CAAC;AAEW,QAAA,QAAQ,GAAG,8CAA8C,CAAC;AAC1D,QAAA,SAAS,GAAG,IAAI,mBAAS,CACpC,6CAA6C,CAC9C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Fetcher } from '../../Fetcher';
2
+ declare const fetcher: Fetcher;
3
+ export default fetcher;
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
16
+ const web3_js_1 = require("@solana/web3.js");
17
+ const constants_1 = require("./constants");
18
+ const clients_1 = require("../../utils/clients");
19
+ const helpers_1 = require("./helpers");
20
+ const solana_1 = require("../../utils/solana");
21
+ const structs_1 = require("./structs");
22
+ const tokenPriceToAssetToken_1 = __importDefault(require("../../utils/misc/tokenPriceToAssetToken"));
23
+ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* () {
24
+ const client = (0, clients_1.getClientSolana)();
25
+ const usdcTokenPrice = yield cache.getTokenPrice(constants_1.usdcMint, portfolio_core_1.NetworkId.solana);
26
+ if (!usdcTokenPrice)
27
+ return [];
28
+ let id = 0;
29
+ const userAccounts = [];
30
+ let parsedAccount;
31
+ do {
32
+ const accountPubKeys = (0, helpers_1.getCrossMarginAccounts)(constants_1.programId, new web3_js_1.PublicKey(owner), id, id + 3);
33
+ parsedAccount = yield (0, solana_1.getParsedMultipleAccountsInfo)(client, structs_1.crossMarginAccountStruct, accountPubKeys);
34
+ userAccounts.push(...parsedAccount);
35
+ id += 3;
36
+ } while (parsedAccount[parsedAccount.length]);
37
+ const elements = [];
38
+ if (!userAccounts)
39
+ return elements;
40
+ for (const account of userAccounts) {
41
+ if (!account)
42
+ continue;
43
+ if (account.balance.isZero())
44
+ continue;
45
+ const asset = (0, tokenPriceToAssetToken_1.default)(constants_1.usdcMint, account.balance.dividedBy(Math.pow(10, usdcTokenPrice.decimals)).toNumber(), portfolio_core_1.NetworkId.solana, usdcTokenPrice);
46
+ elements.push({
47
+ label: 'Deposit',
48
+ networkId: portfolio_core_1.NetworkId.solana,
49
+ platformId: constants_1.platformId,
50
+ name: `N° ${account.subaccountIndex.toString()}`,
51
+ type: portfolio_core_1.PortfolioElementType.single,
52
+ data: { asset },
53
+ value: asset.value,
54
+ });
55
+ }
56
+ return elements;
57
+ });
58
+ const fetcher = {
59
+ id: `${constants_1.platformId}-deposits`,
60
+ networkId: portfolio_core_1.NetworkId.solana,
61
+ executor,
62
+ };
63
+ exports.default = fetcher;
64
+ //# sourceMappingURL=depositsFetcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"depositsFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/zeta/depositsFetcher.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,+DAKoC;AACpC,6CAA4C;AAG5C,2CAA8D;AAC9D,iDAAsD;AACtD,uCAAmD;AACnD,+CAAmE;AACnE,uCAAqD;AACrD,qGAA6E;AAE7E,MAAM,QAAQ,GAAoB,CAAO,KAAa,EAAE,KAAY,EAAE,EAAE;IACtE,MAAM,MAAM,GAAG,IAAA,yBAAe,GAAE,CAAC;IAEjC,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,oBAAQ,EAAE,0BAAS,CAAC,MAAM,CAAC,CAAC;IAC7E,IAAI,CAAC,cAAc;QAAE,OAAO,EAAE,CAAC;IAE/B,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,MAAM,YAAY,GAAG,EAAE,CAAC;IACxB,IAAI,aAAa,CAAC;IAClB,GAAG;QACD,MAAM,cAAc,GAAG,IAAA,gCAAsB,EAC3C,qBAAS,EACT,IAAI,mBAAS,CAAC,KAAK,CAAC,EACpB,EAAE,EACF,EAAE,GAAG,CAAC,CACP,CAAC;QACF,aAAa,GAAG,MAAM,IAAA,sCAA6B,EACjD,MAAM,EACN,kCAAwB,EACxB,cAAc,CACf,CAAC;QACF,YAAY,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;QACpC,EAAE,IAAI,CAAC,CAAC;KACT,QAAQ,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE;IAE9C,MAAM,QAAQ,GAAuB,EAAE,CAAC;IACxC,IAAI,CAAC,YAAY;QAAE,OAAO,QAAQ,CAAC;IAEnC,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE;QAClC,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE;YAAE,SAAS;QACvC,MAAM,KAAK,GAAmB,IAAA,gCAAsB,EAClD,oBAAQ,EACR,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,SAAA,EAAE,EAAI,cAAc,CAAC,QAAQ,CAAA,CAAC,CAAC,QAAQ,EAAE,EACnE,0BAAS,CAAC,MAAM,EAChB,cAAc,CACf,CAAC;QACF,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,SAAS;YAChB,SAAS,EAAE,0BAAS,CAAC,MAAM;YAC3B,UAAU,EAAV,sBAAU;YACV,IAAI,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,EAAE;YAChD,IAAI,EAAE,qCAAoB,CAAC,MAAM;YACjC,IAAI,EAAE,EAAE,KAAK,EAAE;YACf,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;KACJ;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAA,CAAC;AAEF,MAAM,OAAO,GAAY;IACvB,EAAE,EAAE,GAAG,sBAAU,WAAW;IAC5B,SAAS,EAAE,0BAAS,CAAC,MAAM;IAC3B,QAAQ;CACT,CAAC;AAEF,kBAAe,OAAO,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { PublicKey } from '@solana/web3.js';
2
+ export declare function getCrossMarginAccount(programId: PublicKey, userKey: PublicKey, seedNumber: number): PublicKey;
3
+ export declare function getMarginAccount(programId: PublicKey, zetaGroup: PublicKey, userKey: PublicKey): [PublicKey, number];
4
+ export declare function getCrossMarginAccounts(programId: PublicKey, owner: PublicKey, startId: number, endId: number): PublicKey[];
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCrossMarginAccounts = exports.getMarginAccount = exports.getCrossMarginAccount = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ function getCrossMarginAccount(programId, userKey, seedNumber) {
6
+ return web3_js_1.PublicKey.findProgramAddressSync([
7
+ Buffer.from('cross-margin', 'utf-8'),
8
+ userKey.toBuffer(),
9
+ Uint8Array.from([seedNumber]),
10
+ ], programId)[0];
11
+ }
12
+ exports.getCrossMarginAccount = getCrossMarginAccount;
13
+ function getMarginAccount(programId, zetaGroup, userKey) {
14
+ return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('margin', 'utf-8'), zetaGroup.toBuffer(), userKey.toBuffer()], programId);
15
+ }
16
+ exports.getMarginAccount = getMarginAccount;
17
+ function getCrossMarginAccounts(programId, owner, startId, endId) {
18
+ const keys = [];
19
+ for (let i = startId; i < endId; i++) {
20
+ keys.push(getCrossMarginAccount(programId, owner, i));
21
+ }
22
+ return keys;
23
+ }
24
+ exports.getCrossMarginAccounts = getCrossMarginAccounts;
25
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/zeta/helpers.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAE5C,SAAgB,qBAAqB,CACnC,SAAoB,EACpB,OAAkB,EAClB,UAAkB;IAElB,OAAO,mBAAS,CAAC,sBAAsB,CACrC;QACE,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC;QACpC,OAAO,CAAC,QAAQ,EAAE;QAClB,UAAU,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;KAC9B,EACD,SAAS,CACV,CAAC,CAAC,CAAC,CAAC;AACP,CAAC;AAbD,sDAaC;AAED,SAAgB,gBAAgB,CAC9B,SAAoB,EACpB,SAAoB,EACpB,OAAkB;IAElB,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,EAC1E,SAAS,CACV,CAAC;AACJ,CAAC;AATD,4CASC;AAED,SAAgB,sBAAsB,CACpC,SAAoB,EACpB,KAAgB,EAChB,OAAe,EACf,KAAa;IAEb,MAAM,IAAI,GAAG,EAAE,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;QACpC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;KACvD;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAXD,wDAWC"}
@@ -0,0 +1,6 @@
1
+ import { Platform } from '@sonarwatch/portfolio-core';
2
+ import { Fetcher } from '../../Fetcher';
3
+ import { Job } from '../../Job';
4
+ export declare const jobs: Job[];
5
+ export declare const fetchers: Fetcher[];
6
+ export declare const platforms: Platform[];
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.platforms = exports.fetchers = exports.jobs = void 0;
7
+ const depositsFetcher_1 = __importDefault(require("./depositsFetcher"));
8
+ const constants_1 = require("./constants");
9
+ exports.jobs = [];
10
+ exports.fetchers = [depositsFetcher_1.default];
11
+ exports.platforms = [constants_1.zetaPlatform];
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/zeta/index.ts"],"names":[],"mappings":";;;;;;AAGA,wEAAgD;AAChD,2CAA2C;AAE9B,QAAA,IAAI,GAAU,EAAE,CAAC;AACjB,QAAA,QAAQ,GAAc,CAAC,yBAAe,CAAC,CAAC;AACxC,QAAA,SAAS,GAAe,CAAC,wBAAY,CAAC,CAAC"}
@@ -0,0 +1,50 @@
1
+ /// <reference types="node" />
2
+ import { BeetStruct, FixableBeetStruct } from '@metaplex-foundation/beet';
3
+ import { PublicKey } from '@metaplex-foundation/js';
4
+ import BigNumber from 'bignumber.js';
5
+ export declare enum MarginAccountType {
6
+ Normal = 0,
7
+ MarketMaker = 1
8
+ }
9
+ export type AnchorDecimal = {
10
+ flags: number;
11
+ hi: number;
12
+ lo: number;
13
+ mid: number;
14
+ };
15
+ export declare const anchorDecimalStruct: BeetStruct<AnchorDecimal, Partial<AnchorDecimal>>;
16
+ export type Position = {
17
+ size: BigNumber;
18
+ costOfTrades: BigNumber;
19
+ };
20
+ export declare const positionStruct: BeetStruct<Position, Partial<Position>>;
21
+ export type OrderState = {
22
+ closingOrders: BigNumber;
23
+ openingOrder1: BigNumber;
24
+ openingOrder2: BigNumber;
25
+ };
26
+ export declare const orderStateStruct: BeetStruct<OrderState, Partial<OrderState>>;
27
+ export type ProductLedger = {
28
+ position: Position;
29
+ orderState: OrderState;
30
+ };
31
+ export declare const productLedgerStruct: BeetStruct<ProductLedger, Partial<ProductLedger>>;
32
+ export type CrossMarginAccount = {
33
+ buffer: Buffer;
34
+ authority: PublicKey;
35
+ delegatedPubkey: PublicKey;
36
+ balance: BigNumber;
37
+ subaccountIndex: number;
38
+ nonce: number;
39
+ forceCancelFlag: boolean;
40
+ accountType: MarginAccountType;
41
+ openOrdersNonces: number[];
42
+ openOrdersNoncesPadding: number[];
43
+ rebalanceAmount: BigNumber;
44
+ lastFundingDeltas: AnchorDecimal[];
45
+ lastFundingDeltasPadding: AnchorDecimal[];
46
+ productLedgers: ProductLedger[];
47
+ productLedgersPadding: ProductLedger[];
48
+ padding: Buffer[];
49
+ };
50
+ export declare const crossMarginAccountStruct: FixableBeetStruct<CrossMarginAccount, Partial<CrossMarginAccount>>;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.crossMarginAccountStruct = exports.productLedgerStruct = exports.orderStateStruct = exports.positionStruct = exports.anchorDecimalStruct = exports.MarginAccountType = void 0;
4
+ const beet_1 = require("@metaplex-foundation/beet");
5
+ const beet_solana_1 = require("@metaplex-foundation/beet-solana");
6
+ const solana_1 = require("../../utils/solana");
7
+ var MarginAccountType;
8
+ (function (MarginAccountType) {
9
+ MarginAccountType[MarginAccountType["Normal"] = 0] = "Normal";
10
+ MarginAccountType[MarginAccountType["MarketMaker"] = 1] = "MarketMaker";
11
+ })(MarginAccountType || (exports.MarginAccountType = MarginAccountType = {}));
12
+ exports.anchorDecimalStruct = new beet_1.BeetStruct([
13
+ ['flags', beet_1.u32],
14
+ ['hi', beet_1.u32],
15
+ ['lo', beet_1.u32],
16
+ ['mid', beet_1.u32],
17
+ ], (args) => args);
18
+ exports.positionStruct = new beet_1.BeetStruct([
19
+ ['size', solana_1.i64],
20
+ ['costOfTrades', solana_1.u64],
21
+ ], (args) => args);
22
+ exports.orderStateStruct = new beet_1.BeetStruct([
23
+ ['closingOrders', solana_1.u64],
24
+ ['openingOrder1', solana_1.u64],
25
+ ['openingOrder2', solana_1.u64],
26
+ ], (args) => args);
27
+ exports.productLedgerStruct = new beet_1.BeetStruct([
28
+ ['position', exports.positionStruct],
29
+ ['orderState', exports.orderStateStruct],
30
+ ], (args) => args);
31
+ exports.crossMarginAccountStruct = new beet_1.FixableBeetStruct([
32
+ ['buffer', (0, solana_1.blob)(8)],
33
+ ['authority', beet_solana_1.publicKey],
34
+ ['delegatedPubkey', beet_solana_1.publicKey],
35
+ ['balance', solana_1.u64],
36
+ ['subaccountIndex', beet_1.u8],
37
+ ['nonce', beet_1.u8],
38
+ ['forceCancelFlag', beet_1.bool],
39
+ ['accountType', beet_1.u8],
40
+ ['openOrdersNonces', (0, beet_1.uniformFixedSizeArray)(beet_1.u8, 5)],
41
+ ['openOrdersNoncesPadding', (0, beet_1.uniformFixedSizeArray)(beet_1.u8, 20)],
42
+ ['rebalanceAmount', solana_1.i64],
43
+ ['lastFundingDeltas', (0, beet_1.uniformFixedSizeArray)(exports.anchorDecimalStruct, 5)],
44
+ [
45
+ 'lastFundingDeltasPadding',
46
+ (0, beet_1.uniformFixedSizeArray)(exports.anchorDecimalStruct, 20),
47
+ ],
48
+ ['productLedgers', (0, beet_1.uniformFixedSizeArray)(exports.productLedgerStruct, 5)],
49
+ ['productLedgersPadding', (0, beet_1.uniformFixedSizeArray)(exports.productLedgerStruct, 20)],
50
+ ['padding', (0, beet_1.uniformFixedSizeArray)(beet_1.u8, 2000)],
51
+ ], (args) => args);
52
+ //# sourceMappingURL=structs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structs.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/zeta/structs.ts"],"names":[],"mappings":";;;AAAA,oDAOmC;AACnC,kEAA6D;AAG7D,+CAAoD;AAEpD,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,6DAAM,CAAA;IACN,uEAAW,CAAA;AACb,CAAC,EAHW,iBAAiB,iCAAjB,iBAAiB,QAG5B;AAQY,QAAA,mBAAmB,GAAG,IAAI,iBAAU,CAC/C;IACE,CAAC,OAAO,EAAE,UAAG,CAAC;IACd,CAAC,IAAI,EAAE,UAAG,CAAC;IACX,CAAC,IAAI,EAAE,UAAG,CAAC;IACX,CAAC,KAAK,EAAE,UAAG,CAAC;CACb,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAqB,CAChC,CAAC;AAMW,QAAA,cAAc,GAAG,IAAI,iBAAU,CAC1C;IACE,CAAC,MAAM,EAAE,YAAG,CAAC;IACb,CAAC,cAAc,EAAE,YAAG,CAAC;CACtB,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAgB,CAC3B,CAAC;AAOW,QAAA,gBAAgB,GAAG,IAAI,iBAAU,CAC5C;IACE,CAAC,eAAe,EAAE,YAAG,CAAC;IACtB,CAAC,eAAe,EAAE,YAAG,CAAC;IACtB,CAAC,eAAe,EAAE,YAAG,CAAC;CACvB,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAkB,CAC7B,CAAC;AAMW,QAAA,mBAAmB,GAAG,IAAI,iBAAU,CAC/C;IACE,CAAC,UAAU,EAAE,sBAAc,CAAC;IAC5B,CAAC,YAAY,EAAE,wBAAgB,CAAC;CACjC,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAqB,CAChC,CAAC;AAqBW,QAAA,wBAAwB,GACnC,IAAI,wBAAiB,CACnB;IACE,CAAC,QAAQ,EAAE,IAAA,aAAI,EAAC,CAAC,CAAC,CAAC;IACnB,CAAC,WAAW,EAAE,uBAAS,CAAC;IACxB,CAAC,iBAAiB,EAAE,uBAAS,CAAC;IAC9B,CAAC,SAAS,EAAE,YAAG,CAAC;IAChB,CAAC,iBAAiB,EAAE,SAAE,CAAC;IACvB,CAAC,OAAO,EAAE,SAAE,CAAC;IACb,CAAC,iBAAiB,EAAE,WAAI,CAAC;IACzB,CAAC,aAAa,EAAE,SAAE,CAAC;IACnB,CAAC,kBAAkB,EAAE,IAAA,4BAAqB,EAAC,SAAE,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC,yBAAyB,EAAE,IAAA,4BAAqB,EAAC,SAAE,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC,iBAAiB,EAAE,YAAG,CAAC;IACxB,CAAC,mBAAmB,EAAE,IAAA,4BAAqB,EAAC,2BAAmB,EAAE,CAAC,CAAC,CAAC;IACpE;QACE,0BAA0B;QAC1B,IAAA,4BAAqB,EAAC,2BAAmB,EAAE,EAAE,CAAC;KAC/C;IACD,CAAC,gBAAgB,EAAE,IAAA,4BAAqB,EAAC,2BAAmB,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC,uBAAuB,EAAE,IAAA,4BAAqB,EAAC,2BAAmB,EAAE,EAAE,CAAC,CAAC;IACzE,CAAC,SAAS,EAAE,IAAA,4BAAqB,EAAC,SAAE,EAAE,IAAI,CAAC,CAAC;CAC7C,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAA0B,CACrC,CAAC"}