@exponent-labs/exponent-sdk 0.0.3

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.
Files changed (68) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/build/addressLookupTableUtil.d.ts +12 -0
  3. package/build/addressLookupTableUtil.js +32 -0
  4. package/build/addressLookupTableUtil.js.map +1 -0
  5. package/build/environment.d.ts +10 -0
  6. package/build/environment.js +13 -0
  7. package/build/environment.js.map +1 -0
  8. package/build/events.d.ts +339 -0
  9. package/build/events.js +231 -0
  10. package/build/events.js.map +1 -0
  11. package/build/flavors.d.ts +24 -0
  12. package/build/flavors.js +713 -0
  13. package/build/flavors.js.map +1 -0
  14. package/build/index.d.ts +11 -0
  15. package/build/index.js +45 -0
  16. package/build/index.js.map +1 -0
  17. package/build/lpPosition.d.ts +35 -0
  18. package/build/lpPosition.js +103 -0
  19. package/build/lpPosition.js.map +1 -0
  20. package/build/market.d.ts +567 -0
  21. package/build/market.js +1445 -0
  22. package/build/market.js.map +1 -0
  23. package/build/syPosition.d.ts +6 -0
  24. package/build/syPosition.js +115 -0
  25. package/build/syPosition.js.map +1 -0
  26. package/build/tokenUtil.d.ts +3 -0
  27. package/build/tokenUtil.js +23 -0
  28. package/build/tokenUtil.js.map +1 -0
  29. package/build/utils/altUtil.d.ts +8 -0
  30. package/build/utils/altUtil.js +35 -0
  31. package/build/utils/altUtil.js.map +1 -0
  32. package/build/utils/binSolver.d.ts +1 -0
  33. package/build/utils/binSolver.js +45 -0
  34. package/build/utils/binSolver.js.map +1 -0
  35. package/build/utils/binSolver.test.d.ts +1 -0
  36. package/build/utils/binSolver.test.js +15 -0
  37. package/build/utils/binSolver.test.js.map +1 -0
  38. package/build/utils/index.d.ts +6 -0
  39. package/build/utils/index.js +31 -0
  40. package/build/utils/index.js.map +1 -0
  41. package/build/utils/ix.d.ts +6 -0
  42. package/build/utils/ix.js +3 -0
  43. package/build/utils/ix.js.map +1 -0
  44. package/build/vault.d.ts +289 -0
  45. package/build/vault.js +615 -0
  46. package/build/vault.js.map +1 -0
  47. package/build/ytPosition.d.ts +86 -0
  48. package/build/ytPosition.js +231 -0
  49. package/build/ytPosition.js.map +1 -0
  50. package/jest.config.js +5 -0
  51. package/package.json +42 -0
  52. package/src/addressLookupTableUtil.ts +34 -0
  53. package/src/environment.ts +19 -0
  54. package/src/events.ts +595 -0
  55. package/src/flavors.ts +773 -0
  56. package/src/index.ts +11 -0
  57. package/src/lpPosition.ts +129 -0
  58. package/src/market.ts +2338 -0
  59. package/src/syPosition.ts +151 -0
  60. package/src/tokenUtil.ts +20 -0
  61. package/src/utils/altUtil.ts +47 -0
  62. package/src/utils/binSolver.test.ts +15 -0
  63. package/src/utils/binSolver.ts +44 -0
  64. package/src/utils/index.ts +32 -0
  65. package/src/utils/ix.ts +7 -0
  66. package/src/vault.ts +999 -0
  67. package/src/ytPosition.ts +313 -0
  68. package/tsconfig.json +38 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flavors.js","sourceRoot":"","sources":["../src/flavors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export { Market, LiquidityAdd, MarketAdminAction } from "./market";
2
+ export { Vault } from "./vault";
3
+ export { LpPosition, LpPositionState } from "./lpPosition";
4
+ export { YtPosition } from "./ytPosition";
5
+ export { EventDecoder } from "./events";
6
+ export type { AdminAction } from "./vault";
7
+ export type { CategorizedEvents } from "./events";
8
+ export * as events from "./events";
9
+ export * from "./environment";
10
+ export * as flavors from "./flavors";
11
+ export { makeSyPosition } from "./syPosition";
package/build/index.js ADDED
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
26
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.makeSyPosition = exports.flavors = exports.events = exports.EventDecoder = exports.YtPosition = exports.LpPosition = exports.Vault = exports.Market = void 0;
30
+ var market_1 = require("./market");
31
+ Object.defineProperty(exports, "Market", { enumerable: true, get: function () { return market_1.Market; } });
32
+ var vault_1 = require("./vault");
33
+ Object.defineProperty(exports, "Vault", { enumerable: true, get: function () { return vault_1.Vault; } });
34
+ var lpPosition_1 = require("./lpPosition");
35
+ Object.defineProperty(exports, "LpPosition", { enumerable: true, get: function () { return lpPosition_1.LpPosition; } });
36
+ var ytPosition_1 = require("./ytPosition");
37
+ Object.defineProperty(exports, "YtPosition", { enumerable: true, get: function () { return ytPosition_1.YtPosition; } });
38
+ var events_1 = require("./events");
39
+ Object.defineProperty(exports, "EventDecoder", { enumerable: true, get: function () { return events_1.EventDecoder; } });
40
+ exports.events = __importStar(require("./events"));
41
+ __exportStar(require("./environment"), exports);
42
+ exports.flavors = __importStar(require("./flavors"));
43
+ var syPosition_1 = require("./syPosition");
44
+ Object.defineProperty(exports, "makeSyPosition", { enumerable: true, get: function () { return syPosition_1.makeSyPosition; } });
45
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAkE;AAAzD,gGAAA,MAAM,OAAA;AACf,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,2CAA0D;AAAjD,wGAAA,UAAU,OAAA;AACnB,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,mCAAuC;AAA9B,sGAAA,YAAY,OAAA;AAGrB,mDAAkC;AAClC,gDAA6B;AAC7B,qDAAoC;AACpC,2CAA6C;AAApC,4GAAA,cAAc,OAAA"}
@@ -0,0 +1,35 @@
1
+ import { Program, web3 } from "@coral-xyz/anchor";
2
+ import { Market } from "./market";
3
+ import { Environment } from "./environment";
4
+ import { ExponentCore } from "@exponent-labs/exponent-idl";
5
+ import { ExponentFetcher } from "@exponent-labs/exponent-fetcher";
6
+ export interface EmissionTracker {
7
+ lastSeenIndex: number;
8
+ staged: bigint;
9
+ }
10
+ export interface LpPositionState {
11
+ owner: web3.PublicKey;
12
+ balanceLp: bigint;
13
+ market: Market;
14
+ emissionTrackers: EmissionTracker[];
15
+ farms: EmissionTracker[];
16
+ fetcher: ExponentFetcher;
17
+ }
18
+ export declare class LpPosition {
19
+ env: Environment;
20
+ connection: web3.Connection;
21
+ selfAddress: web3.PublicKey;
22
+ state: LpPositionState;
23
+ coreProgram: Program<ExponentCore>;
24
+ constructor(env: Environment, connection: web3.Connection, selfAddress: web3.PublicKey, state: LpPositionState);
25
+ static load(env: Environment, connection: web3.Connection, address: web3.PublicKey): Promise<LpPosition>;
26
+ reload(conn?: web3.Connection): Promise<LpPosition>;
27
+ get lpBalance(): bigint;
28
+ get owner(): web3.PublicKey;
29
+ get marketSdk(): Market;
30
+ get marketAddress(): web3.PublicKey;
31
+ ixDepositLp(amount: bigint): Promise<web3.TransactionInstruction>;
32
+ ixWithdrawLp(amount: bigint): Promise<web3.TransactionInstruction>;
33
+ claimableFarmEmissions(mint: web3.PublicKey): Promise<number>;
34
+ getClaimableMarketEmissions(): Promise<number[]>;
35
+ }
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LpPosition = void 0;
4
+ const anchor_1 = require("@coral-xyz/anchor");
5
+ const market_1 = require("./market");
6
+ const exponent_idl_1 = require("@exponent-labs/exponent-idl");
7
+ const exponent_fetcher_1 = require("@exponent-labs/exponent-fetcher");
8
+ const precise_number_1 = require("@exponent-labs/precise-number");
9
+ class LpPosition {
10
+ env;
11
+ connection;
12
+ selfAddress;
13
+ state;
14
+ coreProgram;
15
+ constructor(env, connection, selfAddress, state) {
16
+ this.env = env;
17
+ this.connection = connection;
18
+ this.selfAddress = selfAddress;
19
+ this.state = state;
20
+ const mockWallet = new market_1.MyWallet(anchor_1.web3.Keypair.generate());
21
+ this.coreProgram = new anchor_1.Program(exponent_idl_1.IDL, new anchor_1.AnchorProvider(connection, mockWallet));
22
+ }
23
+ static async load(env, connection, address) {
24
+ const fetcher = new exponent_fetcher_1.ExponentFetcher({ connection });
25
+ const x = await fetcher.fetchLpPosition(address);
26
+ const market = await market_1.Market.load(env, connection, x.market);
27
+ const state = {
28
+ owner: x.owner,
29
+ balanceLp: x.lpBalance,
30
+ market,
31
+ emissionTrackers: x.emissions,
32
+ farms: x.farms,
33
+ fetcher: fetcher,
34
+ };
35
+ return new LpPosition(env, connection, address, state);
36
+ }
37
+ async reload(conn = this.connection) {
38
+ const x = await LpPosition.load(this.env, conn, this.selfAddress);
39
+ this.state = x.state;
40
+ return x;
41
+ }
42
+ get lpBalance() {
43
+ return this.state.balanceLp;
44
+ }
45
+ get owner() {
46
+ return this.state.owner;
47
+ }
48
+ get marketSdk() {
49
+ return this.state.market;
50
+ }
51
+ get marketAddress() {
52
+ return this.state.market.selfAddress;
53
+ }
54
+ async ixDepositLp(amount) {
55
+ const ix = this.marketSdk.ixDepositLp({
56
+ owner: this.owner,
57
+ amount,
58
+ });
59
+ return ix;
60
+ }
61
+ async ixWithdrawLp(amount) {
62
+ const ix = this.marketSdk.ixWithdrawLp({
63
+ owner: this.owner,
64
+ amount,
65
+ });
66
+ return ix;
67
+ }
68
+ async claimableFarmEmissions(mint) {
69
+ const marketFarmIndex = this.state.market.state.lpFarm.farmEmissions.findIndex((e) => e.mint.equals(mint));
70
+ if (marketFarmIndex === -1)
71
+ return null;
72
+ const marketFarm = this.state.market.state.lpFarm.farmEmissions[marketFarmIndex];
73
+ const positionFarm = this.state.farms[marketFarmIndex];
74
+ const ts = new Date().getTime() / 1000;
75
+ const deltaTimeFarm = ts - this.marketSdk.state.lpFarm.lastSeenTimestamp;
76
+ const lpStakedTotal = this.marketSdk.state.lpEscrowAmount;
77
+ const tokensEmitted = Number(marketFarm.tokenRate) * deltaTimeFarm;
78
+ const increaseAmount = Number(tokensEmitted) / Number(lpStakedTotal);
79
+ const virtualIndex = Number(precise_number_1.PreciseNumber.fromRaw(marketFarm.index[0]).valueString) + increaseAmount;
80
+ const deltaIndex = positionFarm ? virtualIndex - positionFarm.lastSeenIndex : virtualIndex;
81
+ const claimableAmount = Number(this.lpBalance) * deltaIndex;
82
+ return claimableAmount + (Number(positionFarm?.staged) || 0);
83
+ }
84
+ async getClaimableMarketEmissions() {
85
+ const syPosition = this.marketSdk.state.syPosition;
86
+ return this.state.market.emissions.map((emission, index) => {
87
+ const marketEmission = this.state.market.marketEmissions.trackers[index];
88
+ const positionEmission = this.state.emissionTrackers[index];
89
+ if (!positionEmission)
90
+ return 0;
91
+ // First calculate the market's emission index update from syEmissions
92
+ const difference = Number(syPosition.emissions[index].staged) - Number(marketEmission.lastSeenStaged);
93
+ const lpStakedTotal = this.marketSdk.state.lpEscrowAmount;
94
+ const indexIncrease = difference / Number(lpStakedTotal);
95
+ const currentIndex = marketEmission.lpShareIndex + indexIncrease;
96
+ // Then calculate user's claimable amount based on the updated index
97
+ const earned = Number(this.lpBalance) * (currentIndex - positionEmission.lastSeenIndex);
98
+ return Math.floor(earned) + Number(positionEmission.staged);
99
+ });
100
+ }
101
+ }
102
+ exports.LpPosition = LpPosition;
103
+ //# sourceMappingURL=lpPosition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lpPosition.js","sourceRoot":"","sources":["../src/lpPosition.ts"],"names":[],"mappings":";;;AAAA,8CAAiE;AACjE,qCAA2C;AAE3C,8DAA+D;AAC/D,sEAAiE;AACjE,kEAA6D;AAiB7D,MAAa,UAAU;IAGZ;IACA;IACA;IACA;IALF,WAAW,CAAuB;IACzC,YACS,GAAgB,EAChB,UAA2B,EAC3B,WAA2B,EAC3B,KAAsB;QAHtB,QAAG,GAAH,GAAG,CAAa;QAChB,eAAU,GAAV,UAAU,CAAiB;QAC3B,gBAAW,GAAX,WAAW,CAAgB;QAC3B,UAAK,GAAL,KAAK,CAAiB;QAE7B,MAAM,UAAU,GAAG,IAAI,iBAAQ,CAAC,aAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;QACxD,IAAI,CAAC,WAAW,GAAG,IAAI,gBAAO,CAAC,kBAAmB,EAAE,IAAI,uBAAc,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAA;IACjG,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAgB,EAAE,UAA2B,EAAE,OAAuB;QACtF,MAAM,OAAO,GAAG,IAAI,kCAAe,CAAC,EAAE,UAAU,EAAE,CAAC,CAAA;QACnD,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAChD,MAAM,MAAM,GAAG,MAAM,eAAM,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;QAC3D,MAAM,KAAK,GAAoB;YAC7B,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,MAAM;YACN,gBAAgB,EAAE,CAAC,CAAC,SAAS;YAC7B,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,OAAO,EAAE,OAAO;SACjB,CAAA;QACD,OAAO,IAAI,UAAU,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IACxD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU;QACjC,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QACjE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAA;QACpB,OAAO,CAAC,CAAA;IACV,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;IAC7B,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;IACzB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;IAC1B,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAA;IACtC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAc;QAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;YACpC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM;SACP,CAAC,CAAA;QACF,OAAO,EAAE,CAAA;IACX,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc;QAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YACrC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM;SACP,CAAC,CAAA;QACF,OAAO,EAAE,CAAA;IACX,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,IAAoB;QAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;QAC1G,IAAI,eAAe,KAAK,CAAC,CAAC;YAAE,OAAO,IAAI,CAAA;QAEvC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,eAAe,CAAC,CAAA;QAChF,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;QAEtD,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAA;QAEtC,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAA;QACxE,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,CAAA;QACzD,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,aAAa,CAAA;QAClE,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA;QACpE,MAAM,YAAY,GAAG,MAAM,CAAC,8BAAa,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,cAAc,CAAA;QAEpG,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAA;QAE1F,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,UAAU,CAAA;QAE3D,OAAO,eAAe,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;IAC9D,CAAC;IAED,KAAK,CAAC,2BAA2B;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAA;QAElD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;YACzD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;YACxE,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAC3D,IAAI,CAAC,gBAAgB;gBAAE,OAAO,CAAC,CAAA;YAE/B,sEAAsE;YACtE,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;YACrG,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,CAAA;YACzD,MAAM,aAAa,GAAG,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA;YACxD,MAAM,YAAY,GAAG,cAAc,CAAC,YAAY,GAAG,aAAa,CAAA;YAEhE,oEAAoE;YACpE,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAA;YACvF,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAC7D,CAAC,CAAC,CAAA;IACJ,CAAC;CACF;AA1GD,gCA0GC"}