@star-factory/sdk-staking 0.1.0 → 0.2.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.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { AnchorProvider, Program, web3 } from '@coral-xyz/anchor';
2
- import type { CanClaimUnstakeInput, CanClaimUnstakeOutput, ClaimRewardsInput, ClaimUnstakeInput, DepositRewardsInput, GetActiveRewardMintOutput, GetAllStakersOutput, GetPendingRewardsInput, GetPendingRewardsOutput, GetRewardTokenInput, GetRewardTokenOutput, GetRewardTokenPDAInput, GetRewardVaultPDAInput, GetStakePoolOutput, GetStakeVaultPDAInput, GetTimeUntilClaimInput, GetTimeUntilClaimOutput, GetUnstakeStatusInput, GetUserPoolShareInput, GetUserPoolShareOutput, GetUserRewardInfoInput, GetUserRewardInfoOutput, GetUserRewardInfoPDAInput, GetUserStakeInput, GetUserStakeOutput, GetUserStakePDAInput, InitializeInput, IsPausedOutput, ListenerId, OnAuthorityUpdatedEventInput, OnClaimUnstakeEventInput, OnPauseEventInput, OnStakeEventInput, OnUnstakeEventInput, PDAWithBump, RemoveEventListenerInput, StakeInput, StakeProgram, StakingSDKInterface, SwitchPauseInput, TransactionOutput, UnstakeInput, UnstakeStatus, UpdateAuthorityInput } from './types';
2
+ import type { CanClaimUnstakeInput, CanClaimUnstakeOutput, ClaimUnstakeInput, GetAllStakersOutput, GetStakePoolOutput, GetStakeVaultPDAInput, GetTimeUntilClaimInput, GetTimeUntilClaimOutput, GetUnstakeStatusInput, GetUserPoolShareInput, GetUserPoolShareOutput, GetUserStakeInput, GetUserStakeOutput, GetUserStakePDAInput, InitializeInput, IsPausedOutput, ListenerId, OnAuthorityUpdatedEventInput, OnClaimUnstakeEventInput, OnPauseEventInput, OnStakeEventInput, OnUnstakeEventInput, PDAWithBump, RemoveEventListenerInput, StakeInput, StakeProgram, StakingSDKInterface, SwitchPauseInput, TransactionOutput, UnstakeInput, UnstakeStatus, UpdateAuthorityInput } from './types';
3
3
  export * from './types';
4
4
  /**
5
5
  * StakingSDK - Client SDK for the Staking program
@@ -18,33 +18,22 @@ export declare class StakingSDK implements StakingSDKInterface {
18
18
  getStakePoolPDA(): PDAWithBump;
19
19
  getUserStakePDA(input: GetUserStakePDAInput): PDAWithBump;
20
20
  getStakeVaultPDA(input: GetStakeVaultPDAInput): PDAWithBump;
21
- getRewardTokenPDA(input: GetRewardTokenPDAInput): PDAWithBump;
22
- getRewardVaultPDA(input: GetRewardVaultPDAInput): PDAWithBump;
23
- getUserRewardInfoPDA(input: GetUserRewardInfoPDAInput): PDAWithBump;
24
21
  /**
25
22
  * Initialize the staking pool
26
23
  */
27
24
  initialize(input: InitializeInput): Promise<TransactionOutput>;
28
25
  /**
29
- * Stake tokens
26
+ * Stake tokens (minimum 100 tokens)
30
27
  */
31
28
  stake(input: StakeInput): Promise<TransactionOutput>;
32
29
  /**
33
- * Unstake tokens (starts 30-day unlock period)
30
+ * Unstake tokens (starts 30-day unlock period, minimum 100 tokens)
34
31
  */
35
32
  unstake(input: UnstakeInput): Promise<TransactionOutput>;
36
33
  /**
37
34
  * Claim unstaked tokens after 30-day period
38
35
  */
39
36
  claimUnstake(input?: ClaimUnstakeInput): Promise<TransactionOutput>;
40
- /**
41
- * Deposit rewards into the pool (admin only)
42
- */
43
- depositRewards(input: DepositRewardsInput): Promise<TransactionOutput>;
44
- /**
45
- * Claim accumulated rewards
46
- */
47
- claimRewards(input: ClaimRewardsInput): Promise<TransactionOutput>;
48
37
  /**
49
38
  * Toggle pause on contract (admin only) - USE ONLY IN CASE OF EMERGENCY
50
39
  */
@@ -61,14 +50,6 @@ export declare class StakingSDK implements StakingSDKInterface {
61
50
  * Get user stake data
62
51
  */
63
52
  getUserStake(input?: GetUserStakeInput): Promise<GetUserStakeOutput>;
64
- /**
65
- * Get reward token config data
66
- */
67
- getRewardToken(input: GetRewardTokenInput): Promise<GetRewardTokenOutput>;
68
- /**
69
- * Get user reward info data
70
- */
71
- getUserRewardInfo(input: GetUserRewardInfoInput): Promise<GetUserRewardInfoOutput>;
72
53
  /**
73
54
  * Calculate user's proportional share of the pool
74
55
  */
@@ -86,18 +67,10 @@ export declare class StakingSDK implements StakingSDKInterface {
86
67
  * Single RPC call that returns all information needed to render unstake UI.
87
68
  */
88
69
  getUnstakeStatus(input?: GetUnstakeStatusInput): Promise<UnstakeStatus>;
89
- /**
90
- * Calculate pending rewards for a user (without claiming)
91
- */
92
- getPendingRewards(input: GetPendingRewardsInput): Promise<GetPendingRewardsOutput>;
93
70
  /**
94
71
  * Check if protocol is paused
95
72
  */
96
73
  isPaused(): Promise<IsPausedOutput>;
97
- /**
98
- * Check if rewards are active (reward mint has been set)
99
- */
100
- getActiveRewardMint(): Promise<GetActiveRewardMintOutput>;
101
74
  /**
102
75
  * Get all stakers and their staking positions.
103
76
  * Useful for computing reward distributions or snapshots.
@@ -135,7 +108,5 @@ export declare class StakingSDK implements StakingSDKInterface {
135
108
  private get accounts();
136
109
  private fetchStakePool;
137
110
  private fetchUserStake;
138
- private fetchRewardToken;
139
- private fetchUserRewardInfo;
140
111
  }
141
112
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAM,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEtE,OAAO,KAAK,EACV,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,UAAU,EACV,4BAA4B,EAC5B,wBAAwB,EACxB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,wBAAwB,EACxB,UAAU,EAEV,YAAY,EAEZ,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,oBAAoB,EAErB,MAAM,SAAS,CAAC;AAGjB,cAAc,SAAS,CAAC;AAExB;;;;GAIG;AACH,qBAAa,UAAW,YAAW,mBAAmB;IACpD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC;gBAEvB,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,cAAc;IAMpE;;OAEG;WACU,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IAe9F,eAAe,IAAI,WAAW;IAI9B,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,WAAW;IAOzD,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,WAAW;IAW3D;;OAEG;IACG,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAoBpE;;OAEG;IACG,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAyB1D;;OAEG;IACG,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAkB9D;;OAEG;IACG,YAAY,CAAC,KAAK,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAwBzE;;OAEG;IACG,WAAW,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAevE;;OAEG;IACG,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAmB9E;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAKjD;;OAEG;IACG,YAAY,CAAC,KAAK,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAW1E;;OAEG;IACG,gBAAgB,CAAC,KAAK,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAmBtF;;OAEG;IACG,eAAe,CAAC,KAAK,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAanF;;OAEG;IACG,iBAAiB,CAAC,KAAK,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAczF;;;OAGG;IACG,gBAAgB,CAAC,KAAK,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,aAAa,CAAC;IA0C7E;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IAKzC;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAgEnD;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,UAAU;IAIlD;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,UAAU;IAItD;;OAEG;IACH,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,UAAU;IAIhE;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,UAAU;IAIlD;;OAEG;IACH,uBAAuB,CAAC,KAAK,EAAE,4BAA4B,GAAG,UAAU;IAIxE;;OAEG;IACG,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQzE;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAe3B,OAAO,KAAK,QAAQ,GAQnB;YAEa,cAAc;YAId,cAAc;CAG7B"}
package/dist/index.js CHANGED
@@ -6,7 +6,6 @@ const anchor_1 = require("@coral-xyz/anchor");
6
6
  const spl_token_1 = require("@solana/spl-token");
7
7
  const types_1 = require("./types");
8
8
  tslib_1.__exportStar(require("./types"), exports);
9
- const REWARD_PRECISION = BigInt('1000000000000000000');
10
9
  /**
11
10
  * StakingSDK - Client SDK for the Staking program
12
11
  *
@@ -44,15 +43,6 @@ class StakingSDK {
44
43
  getStakeVaultPDA(input) {
45
44
  return anchor_1.web3.PublicKey.findProgramAddressSync([Buffer.from('stake_vault'), input.stakePool.toBuffer()], this.programId);
46
45
  }
47
- getRewardTokenPDA(input) {
48
- return anchor_1.web3.PublicKey.findProgramAddressSync([Buffer.from('reward_token'), input.rewardMint.toBuffer()], this.programId);
49
- }
50
- getRewardVaultPDA(input) {
51
- return anchor_1.web3.PublicKey.findProgramAddressSync([Buffer.from('reward_vault'), input.stakePool.toBuffer(), input.rewardMint.toBuffer()], this.programId);
52
- }
53
- getUserRewardInfoPDA(input) {
54
- return anchor_1.web3.PublicKey.findProgramAddressSync([Buffer.from('user_reward_info'), input.user.toBuffer(), input.rewardMint.toBuffer()], this.programId);
55
- }
56
46
  // ============================================================================
57
47
  // Write Methods (submit transactions)
58
48
  // ============================================================================
@@ -77,7 +67,7 @@ class StakingSDK {
77
67
  return { signature };
78
68
  }
79
69
  /**
80
- * Stake tokens
70
+ * Stake tokens (minimum 100 tokens)
81
71
  */
82
72
  async stake(input) {
83
73
  const user = input.user ?? this.provider.wallet.publicKey;
@@ -86,7 +76,9 @@ class StakingSDK {
86
76
  const [stakeVault] = this.getStakeVaultPDA({ stakePool });
87
77
  const poolAccount = await this.fetchStakePool(stakePool);
88
78
  const userTokenAccount = await (0, spl_token_1.getAssociatedTokenAddress)(poolAccount.acceptedMint, user);
89
- const baseAccounts = {
79
+ const signature = await this.program.methods
80
+ .stake(input.amount)
81
+ .accountsPartial({
90
82
  stakePool,
91
83
  userStake,
92
84
  userTokenAccount,
@@ -94,90 +86,26 @@ class StakingSDK {
94
86
  user,
95
87
  tokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
96
88
  systemProgram: anchor_1.web3.SystemProgram.programId,
97
- };
98
- // Check if rewards are active - if so, we MUST include reward accounts
99
- const rewardMint = input.rewardMint ?? (poolAccount.rewardMint.equals(anchor_1.web3.PublicKey.default) ? null : poolAccount.rewardMint);
100
- let signature;
101
- if (rewardMint) {
102
- const [rewardToken] = this.getRewardTokenPDA({ rewardMint });
103
- const [userRewardInfo] = this.getUserRewardInfoPDA({ user, rewardMint });
104
- signature = await this.program.methods
105
- .stake(input.amount)
106
- .accountsPartial({
107
- ...baseAccounts,
108
- rewardMint,
109
- rewardToken,
110
- userRewardInfo,
111
- })
112
- .rpc();
113
- }
114
- else {
115
- // No rewards active - use accountsStrict to bypass PDA resolver
116
- // Pass program ID as placeholder for optional accounts (Anchor treats as None)
117
- signature = await this.program.methods
118
- .stake(input.amount)
119
- .accountsStrict({
120
- stakePool,
121
- userStake,
122
- userTokenAccount,
123
- stakeVault,
124
- rewardMint: this.programId,
125
- rewardToken: this.programId,
126
- userRewardInfo: this.programId,
127
- user,
128
- tokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
129
- systemProgram: anchor_1.web3.SystemProgram.programId,
130
- })
131
- .rpc();
132
- }
89
+ })
90
+ .rpc();
133
91
  return { signature };
134
92
  }
135
93
  /**
136
- * Unstake tokens (starts 30-day unlock period)
94
+ * Unstake tokens (starts 30-day unlock period, minimum 100 tokens)
137
95
  */
138
96
  async unstake(input) {
139
97
  const user = input.user ?? this.provider.wallet.publicKey;
140
98
  const [stakePool] = this.getStakePoolPDA();
141
99
  const [userStake] = this.getUserStakePDA({ user });
142
- // Fetch pool to check if rewards are active
143
- const poolAccount = await this.fetchStakePool(stakePool);
144
- const baseAccounts = {
100
+ const signature = await this.program.methods
101
+ .unstake(input.amount)
102
+ .accountsPartial({
145
103
  stakePool,
146
104
  userStake,
147
105
  user,
148
106
  systemProgram: anchor_1.web3.SystemProgram.programId,
149
- };
150
- // Check if rewards are active - if so, we MUST include reward accounts
151
- const rewardMint = input.rewardMint ?? (poolAccount.rewardMint.equals(anchor_1.web3.PublicKey.default) ? null : poolAccount.rewardMint);
152
- let signature;
153
- if (rewardMint) {
154
- const [rewardToken] = this.getRewardTokenPDA({ rewardMint });
155
- const [userRewardInfo] = this.getUserRewardInfoPDA({ user, rewardMint });
156
- signature = await this.program.methods
157
- .unstake(input.amount)
158
- .accountsPartial({
159
- ...baseAccounts,
160
- rewardMint,
161
- rewardToken,
162
- userRewardInfo,
163
- })
164
- .rpc();
165
- }
166
- else {
167
- // No rewards active - use accountsStrict to bypass PDA resolver
168
- signature = await this.program.methods
169
- .unstake(input.amount)
170
- .accountsStrict({
171
- stakePool,
172
- userStake,
173
- rewardMint: this.programId,
174
- rewardToken: this.programId,
175
- userRewardInfo: this.programId,
176
- user,
177
- systemProgram: anchor_1.web3.SystemProgram.programId,
178
- })
179
- .rpc();
180
- }
107
+ })
108
+ .rpc();
181
109
  return { signature };
182
110
  }
183
111
  /**
@@ -203,58 +131,6 @@ class StakingSDK {
203
131
  .rpc();
204
132
  return { signature };
205
133
  }
206
- /**
207
- * Deposit rewards into the pool (admin only)
208
- */
209
- async depositRewards(input) {
210
- const authority = input.authority ?? this.provider.wallet.publicKey;
211
- const [stakePool] = this.getStakePoolPDA();
212
- const [rewardToken] = this.getRewardTokenPDA({ rewardMint: input.rewardMint });
213
- const [rewardVault] = this.getRewardVaultPDA({ stakePool, rewardMint: input.rewardMint });
214
- const adminTokenAccount = await (0, spl_token_1.getAssociatedTokenAddress)(input.rewardMint, authority);
215
- const signature = await this.program.methods
216
- .depositRewards(input.amount)
217
- .accountsPartial({
218
- stakePool,
219
- rewardToken,
220
- rewardVault,
221
- rewardMint: input.rewardMint,
222
- adminTokenAccount,
223
- authority,
224
- tokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
225
- systemProgram: anchor_1.web3.SystemProgram.programId,
226
- })
227
- .rpc();
228
- return { signature };
229
- }
230
- /**
231
- * Claim accumulated rewards
232
- */
233
- async claimRewards(input) {
234
- const user = input.user ?? this.provider.wallet.publicKey;
235
- const [stakePool] = this.getStakePoolPDA();
236
- const [userStake] = this.getUserStakePDA({ user });
237
- const [rewardToken] = this.getRewardTokenPDA({ rewardMint: input.rewardMint });
238
- const [userRewardInfo] = this.getUserRewardInfoPDA({ user, rewardMint: input.rewardMint });
239
- const [rewardVault] = this.getRewardVaultPDA({ stakePool, rewardMint: input.rewardMint });
240
- const userTokenAccount = await (0, spl_token_1.getAssociatedTokenAddress)(input.rewardMint, user);
241
- const signature = await this.program.methods
242
- .claimRewards()
243
- .accountsPartial({
244
- stakePool,
245
- userStake,
246
- rewardToken,
247
- userRewardInfo,
248
- rewardVault,
249
- rewardMint: input.rewardMint,
250
- userTokenAccount,
251
- user,
252
- tokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
253
- systemProgram: anchor_1.web3.SystemProgram.programId,
254
- })
255
- .rpc();
256
- return { signature };
257
- }
258
134
  /**
259
135
  * Toggle pause on contract (admin only) - USE ONLY IN CASE OF EMERGENCY
260
136
  */
@@ -308,31 +184,6 @@ class StakingSDK {
308
184
  return null;
309
185
  }
310
186
  }
311
- /**
312
- * Get reward token config data
313
- */
314
- async getRewardToken(input) {
315
- const [rewardToken] = this.getRewardTokenPDA({ rewardMint: input.rewardMint });
316
- try {
317
- return await this.fetchRewardToken(rewardToken);
318
- }
319
- catch {
320
- return null;
321
- }
322
- }
323
- /**
324
- * Get user reward info data
325
- */
326
- async getUserRewardInfo(input) {
327
- const user = input.user ?? this.provider.wallet.publicKey;
328
- const [userRewardInfo] = this.getUserRewardInfoPDA({ user, rewardMint: input.rewardMint });
329
- try {
330
- return await this.fetchUserRewardInfo(userRewardInfo);
331
- }
332
- catch {
333
- return null;
334
- }
335
- }
336
187
  /**
337
188
  * Calculate user's proportional share of the pool
338
189
  */
@@ -345,10 +196,7 @@ class StakingSDK {
345
196
  if (poolData.totalStaked.eq(new anchor_1.BN(0))) {
346
197
  return { sharePercent: 0 };
347
198
  }
348
- const sharePercent = userStakeData.stakedAmount
349
- .mul(new anchor_1.BN(10000))
350
- .div(poolData.totalStaked)
351
- .toNumber() / 100;
199
+ const sharePercent = userStakeData.stakedAmount.mul(new anchor_1.BN(10000)).div(poolData.totalStaked).toNumber() / 100;
352
200
  return { sharePercent };
353
201
  }
354
202
  /**
@@ -416,33 +264,6 @@ class StakingSDK {
416
264
  timeRemainingFormatted,
417
265
  };
418
266
  }
419
- /**
420
- * Calculate pending rewards for a user (without claiming)
421
- */
422
- async getPendingRewards(input) {
423
- const userStakeData = await this.getUserStake({ user: input.user });
424
- const rewardTokenData = await this.getRewardToken({ rewardMint: input.rewardMint });
425
- const userRewardInfo = await this.getUserRewardInfo({
426
- rewardMint: input.rewardMint,
427
- user: input.user,
428
- });
429
- if (!userStakeData || !rewardTokenData) {
430
- return { pendingAmount: new anchor_1.BN(0) };
431
- }
432
- const stakedAmount = userStakeData.stakedAmount;
433
- if (stakedAmount.eq(new anchor_1.BN(0))) {
434
- return { pendingAmount: userRewardInfo?.rewardsEarned ?? new anchor_1.BN(0) };
435
- }
436
- // Calculate: (staked * (currentPerToken - userCheckpoint)) / PRECISION + earnedSoFar
437
- const currentPerToken = BigInt(rewardTokenData.rewardPerTokenStored.toString());
438
- const userCheckpoint = userRewardInfo
439
- ? BigInt(userRewardInfo.rewardPerTokenPaid.toString())
440
- : BigInt(0);
441
- const earnedSoFar = userRewardInfo ? BigInt(userRewardInfo.rewardsEarned.toString()) : BigInt(0);
442
- const perTokenDelta = currentPerToken - userCheckpoint;
443
- const newEarned = (BigInt(stakedAmount.toString()) * perTokenDelta) / REWARD_PRECISION;
444
- return { pendingAmount: new anchor_1.BN((newEarned + earnedSoFar).toString()) };
445
- }
446
267
  /**
447
268
  * Check if protocol is paused
448
269
  */
@@ -450,20 +271,6 @@ class StakingSDK {
450
271
  const pool = await this.getStakePool();
451
272
  return { paused: pool.paused };
452
273
  }
453
- /**
454
- * Check if rewards are active (reward mint has been set)
455
- */
456
- async getActiveRewardMint() {
457
- const pool = await this.getStakePool();
458
- // Handle case where rewardMint doesn't exist (old contract/IDL)
459
- if (!pool.rewardMint) {
460
- return { rewardMint: null, isActive: false };
461
- }
462
- // Pubkey.default() is all zeros
463
- const isDefault = pool.rewardMint.equals(anchor_1.web3.PublicKey.default);
464
- const rewardMint = isDefault ? null : pool.rewardMint;
465
- return { rewardMint, isActive: !isDefault };
466
- }
467
274
  /**
468
275
  * Get all stakers and their staking positions.
469
276
  * Useful for computing reward distributions or snapshots.
@@ -587,12 +394,6 @@ class StakingSDK {
587
394
  async fetchUserStake(userStake) {
588
395
  return await this.accounts.userStake.fetch(userStake);
589
396
  }
590
- async fetchRewardToken(rewardToken) {
591
- return await this.accounts.rewardToken.fetch(rewardToken);
592
- }
593
- async fetchUserRewardInfo(userRewardInfo) {
594
- return await this.accounts.userRewardInfo.fetch(userRewardInfo);
595
- }
596
397
  }
597
398
  exports.StakingSDK = StakingSDK;
598
399
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,8CAAsE;AACtE,iDAAgF;AAoDhF,mCAAgD;AAEhD,kDAAwB;AAExB,MAAM,gBAAgB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAEvD;;;;GAIG;AACH,MAAa,UAAU;IACZ,OAAO,CAAwB;IAC/B,QAAQ,CAAiB;IACzB,SAAS,CAAiB;IAEnC,YAAY,OAA8B,EAAE,QAAwB;QAClE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAwB,EAAE,SAA0B;QACtE,MAAM,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAE1C,IAAI,SAAS,EAAE,CAAC;YACd,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;QACrC,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,gBAAO,CAAC,GAAG,EAAE,QAAQ,CAA0B,CAAC;QACpE,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,+EAA+E;IAC/E,6CAA6C;IAC7C,+EAA+E;IAE/E,eAAe;QACb,OAAO,aAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5F,CAAC;IAED,eAAe,CAAC,KAA2B;QACzC,OAAO,aAAI,CAAC,SAAS,CAAC,sBAAsB,CAC1C,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAClD,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,KAA4B;QAC3C,OAAO,aAAI,CAAC,SAAS,CAAC,sBAAsB,CAC1C,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,EACxD,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IAED,iBAAiB,CAAC,KAA6B;QAC7C,OAAO,aAAI,CAAC,SAAS,CAAC,sBAAsB,CAC1C,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,EAC1D,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IAED,iBAAiB,CAAC,KAA6B;QAC7C,OAAO,aAAI,CAAC,SAAS,CAAC,sBAAsB,CAC1C,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,EACtF,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IAED,oBAAoB,CAAC,KAAgC;QACnD,OAAO,aAAI,CAAC,SAAS,CAAC,sBAAsB,CAC1C,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,EACrF,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IAED,+EAA+E;IAC/E,sCAAsC;IACtC,+EAA+E;IAE/E;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,KAAsB;QACrC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QACpE,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;QAE1D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO;aACzC,UAAU,EAAE;aACZ,eAAe,CAAC;YACf,SAAS;YACT,UAAU;YACV,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,SAAS;YACT,YAAY,EAAE,4BAAgB;YAC9B,aAAa,EAAE,aAAI,CAAC,aAAa,CAAC,SAAS;SAC5C,CAAC;aACD,GAAG,EAAE,CAAC;QAET,OAAO,EAAE,SAAS,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,KAAiB;QAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QAC1D,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;QAE1D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,gBAAgB,GAAG,MAAM,IAAA,qCAAyB,EAAC,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAEzF,MAAM,YAAY,GAAG;YACnB,SAAS;YACT,SAAS;YACT,gBAAgB;YAChB,UAAU;YACV,IAAI;YACJ,YAAY,EAAE,4BAAgB;YAC9B,aAAa,EAAE,aAAI,CAAC,aAAa,CAAC,SAAS;SAC5C,CAAC;QAEF,uEAAuE;QACvE,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,aAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAE/H,IAAI,SAAiB,CAAC;QAEtB,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;YAC7D,MAAM,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YAEzE,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO;iBACnC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;iBACnB,eAAe,CAAC;gBACf,GAAG,YAAY;gBACf,UAAU;gBACV,WAAW;gBACX,cAAc;aACf,CAAC;iBACD,GAAG,EAAE,CAAC;QACX,CAAC;aAAM,CAAC;YACN,gEAAgE;YAChE,+EAA+E;YAC/E,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO;iBACnC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;iBACnB,cAAc,CAAC;gBACd,SAAS;gBACT,SAAS;gBACT,gBAAgB;gBAChB,UAAU;gBACV,UAAU,EAAE,IAAI,CAAC,SAAS;gBAC1B,WAAW,EAAE,IAAI,CAAC,SAAS;gBAC3B,cAAc,EAAE,IAAI,CAAC,SAAS;gBAC9B,IAAI;gBACJ,YAAY,EAAE,4BAAgB;gBAC9B,aAAa,EAAE,aAAI,CAAC,aAAa,CAAC,SAAS;aAC5C,CAAC;iBACD,GAAG,EAAE,CAAC;QACX,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,KAAmB;QAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QAC1D,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QAEnD,4CAA4C;QAC5C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAEzD,MAAM,YAAY,GAAG;YACnB,SAAS;YACT,SAAS;YACT,IAAI;YACJ,aAAa,EAAE,aAAI,CAAC,aAAa,CAAC,SAAS;SAC5C,CAAC;QAEF,uEAAuE;QACvE,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,aAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAE/H,IAAI,SAAiB,CAAC;QAEtB,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;YAC7D,MAAM,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YAEzE,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO;iBACnC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;iBACrB,eAAe,CAAC;gBACf,GAAG,YAAY;gBACf,UAAU;gBACV,WAAW;gBACX,cAAc;aACf,CAAC;iBACD,GAAG,EAAE,CAAC;QACX,CAAC;aAAM,CAAC;YACN,gEAAgE;YAChE,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO;iBACnC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;iBACrB,cAAc,CAAC;gBACd,SAAS;gBACT,SAAS;gBACT,UAAU,EAAE,IAAI,CAAC,SAAS;gBAC1B,WAAW,EAAE,IAAI,CAAC,SAAS;gBAC3B,cAAc,EAAE,IAAI,CAAC,SAAS;gBAC9B,IAAI;gBACJ,aAAa,EAAE,aAAI,CAAC,aAAa,CAAC,SAAS;aAC5C,CAAC;iBACD,GAAG,EAAE,CAAC;QACX,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,KAAyB;QAC1C,MAAM,IAAI,GAAG,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QAC3D,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;QAE1D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,gBAAgB,GAAG,MAAM,IAAA,qCAAyB,EAAC,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAEzF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO;aACzC,YAAY,EAAE;aACd,eAAe,CAAC;YACf,SAAS;YACT,SAAS;YACT,gBAAgB;YAChB,UAAU;YACV,IAAI;YACJ,YAAY,EAAE,4BAAgB;SAC/B,CAAC;aACD,GAAG,EAAE,CAAC;QAET,OAAO,EAAE,SAAS,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,KAA0B;QAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QACpE,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAC/E,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAC1F,MAAM,iBAAiB,GAAG,MAAM,IAAA,qCAAyB,EAAC,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QAEvF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO;aACzC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC;aAC5B,eAAe,CAAC;YACf,SAAS;YACT,WAAW;YACX,WAAW;YACX,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,iBAAiB;YACjB,SAAS;YACT,YAAY,EAAE,4BAAgB;YAC9B,aAAa,EAAE,aAAI,CAAC,aAAa,CAAC,SAAS;SAC5C,CAAC;aACD,GAAG,EAAE,CAAC;QAET,OAAO,EAAE,SAAS,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,KAAwB;QACzC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QAC1D,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAC/E,MAAM,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAC3F,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAC1F,MAAM,gBAAgB,GAAG,MAAM,IAAA,qCAAyB,EAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAEjF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO;aACzC,YAAY,EAAE;aACd,eAAe,CAAC;YACf,SAAS;YACT,SAAS;YACT,WAAW;YACX,cAAc;YACd,WAAW;YACX,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,gBAAgB;YAChB,IAAI;YACJ,YAAY,EAAE,4BAAgB;YAC9B,aAAa,EAAE,aAAI,CAAC,aAAa,CAAC,SAAS;SAC5C,CAAC;aACD,GAAG,EAAE,CAAC;QAET,OAAO,EAAE,SAAS,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,KAAwB;QACxC,MAAM,SAAS,GAAG,KAAK,EAAE,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QACrE,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAE3C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO;aACzC,WAAW,EAAE;aACb,QAAQ,CAAC;YACR,SAAS;YACT,SAAS;SACV,CAAC;aACD,GAAG,EAAE,CAAC;QAET,OAAO,EAAE,SAAS,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,KAA2B;QAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QACpE,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAE3C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO;aACzC,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC;aACnC,QAAQ,CAAC;YACR,SAAS;YACT,SAAS;SACV,CAAC;aACD,GAAG,EAAE,CAAC;QAET,OAAO,EAAE,SAAS,EAAE,CAAC;IACvB,CAAC;IAED,+EAA+E;IAC/E,4BAA4B;IAC5B,+EAA+E;IAE/E;;OAEG;IACH,KAAK,CAAC,YAAY;QAChB,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,KAAyB;QAC1C,MAAM,IAAI,GAAG,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QAC3D,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QAEnD,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAC9C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,KAA0B;QAC7C,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAE/E,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAClD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAA6B;QACnD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QAC1D,MAAM,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAE3F,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,KAA6B;QAClD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAErE,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,WAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;QAC7B,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAE3C,IAAI,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,WAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;QAC7B,CAAC;QAED,MAAM,YAAY,GAChB,aAAa,CAAC,YAAY;aACvB,GAAG,CAAC,IAAI,WAAE,CAAC,KAAK,CAAC,CAAC;aAClB,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC;aACzB,QAAQ,EAAE,GAAG,GAAG,CAAC;QAEtB,OAAO,EAAE,YAAY,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,KAA4B;QAChD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAErE,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,WAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC7B,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,WAAW,IAAI,aAAa,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;QAEzE,OAAO,EAAE,QAAQ,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAA8B;QACpD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAErE,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,WAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;QACpC,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,aAAa,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;QAC5D,MAAM,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC;QAE3C,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC;IACtD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,KAA6B;QAClD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAErE,yCAAyC;QACzC,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,WAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,OAAO;gBACL,iBAAiB,EAAE,KAAK;gBACxB,aAAa,EAAE,IAAI,WAAE,CAAC,CAAC,CAAC;gBACxB,eAAe,EAAE,CAAC;gBAClB,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,KAAK;gBACf,gBAAgB,EAAE,IAAI;gBACtB,eAAe,EAAE,IAAI;gBACrB,sBAAsB,EAAE,IAAI;aAC7B,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,aAAa,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;QAC5D,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC,CAAC;QAC/D,MAAM,QAAQ,GAAG,gBAAgB,KAAK,CAAC,CAAC;QAExC,wCAAwC;QACxC,MAAM,SAAS,GAAG,UAAU,GAAG,6BAAqB,CAAC;QACrD,MAAM,OAAO,GAAG,WAAW,GAAG,SAAS,CAAC;QACxC,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,OAAO,GAAG,6BAAqB,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAE5F,wBAAwB;QACxB,MAAM,sBAAsB,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QAE5F,OAAO;YACL,iBAAiB,EAAE,IAAI;YACvB,aAAa,EAAE,aAAa,CAAC,cAAc;YAC3C,eAAe,EAAE,UAAU;YAC3B,UAAU,EAAE,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvC,QAAQ;YACR,gBAAgB,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB;YACjD,eAAe;YACf,sBAAsB;SACvB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAA6B;QACnD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACpE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QACpF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC;YAClD,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,IAAI,CAAC,eAAe,EAAE,CAAC;YACvC,OAAO,EAAE,aAAa,EAAE,IAAI,WAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtC,CAAC;QAED,MAAM,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;QAChD,IAAI,YAAY,CAAC,EAAE,CAAC,IAAI,WAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,IAAI,IAAI,WAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,CAAC;QAED,qFAAqF;QACrF,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC;QAChF,MAAM,cAAc,GAAG,cAAc;YACnC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;YACtD,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACd,MAAM,WAAW,GAAG,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAEjG,MAAM,aAAa,GAAG,eAAe,GAAG,cAAc,CAAC;QACvD,MAAM,SAAS,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,GAAG,aAAa,CAAC,GAAG,gBAAgB,CAAC;QAEvF,OAAO,EAAE,aAAa,EAAE,IAAI,WAAE,CAAC,CAAC,SAAS,GAAG,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QACvC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB;QACvB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAEvC,gEAAgE;QAChE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC/C,CAAC;QAED,gCAAgC;QAChC,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,aAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;QAEtD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa;QACjB,yEAAyE;QACzE,MAAM,wBAAwB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACnF,MAAM,eAAe,GAAG,EAAE,CAAC,CAAC,yBAAyB;QAErD,2DAA2D;QAC3D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE;YACjF,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;YACxC,UAAU,EAAE,WAAW;SACxB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAmB,EAAE,CAAC;QACnC,IAAI,WAAW,GAAG,IAAI,WAAE,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,aAAa,GAAG,CAAC,CAAC;QAEtB,KAAK,MAAM,EAAE,OAAO,EAAE,IAAI,QAAQ,EAAE,CAAC;YACnC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAE1B,yCAAyC;YACzC,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBACpD,SAAS,CAAC,8BAA8B;YAC1C,CAAC;YAED,UAAU;YACV,yBAAyB;YACzB,wBAAwB;YACxB,8BAA8B;YAC9B,gCAAgC;YAChC,iCAAiC;YACjC,oBAAoB;YAEpB,MAAM,IAAI,GAAG,IAAI,aAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YACtD,MAAM,YAAY,GAAG,IAAI,WAAE,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YACjE,MAAM,cAAc,GAAG,IAAI,WAAE,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YACnE,MAAM,eAAe,GAAG,IAAI,WAAE,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEnE,OAAO,CAAC,IAAI,CAAC;gBACX,MAAM,EAAE,IAAI;gBACZ,YAAY;gBACZ,cAAc;gBACd,eAAe;aAChB,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC3B,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC5C,aAAa,EAAE,CAAC;YAClB,CAAC;QACH,CAAC;QAED,oDAAoD;QACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAE/E,OAAO;YACL,OAAO;YACP,WAAW;YACX,aAAa;SACd,CAAC;IACJ,CAAC;IAED,+EAA+E;IAC/E,kBAAkB;IAClB,+EAA+E;IAE/E;;OAEG;IACH,YAAY,CAAC,KAAwB;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,KAA0B;QACvC,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,mBAAmB,CAAC,KAA+B;QACjD,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,KAAwB;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,uBAAuB,CAAC,KAAmC;QACzD,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,KAA+B;QACvD,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC3D,CAAC;IAED,+EAA+E;IAC/E,kBAAkB;IAClB,+EAA+E;IAE/E;;;OAGG;IACK,mBAAmB,CAAC,OAAe;QACzC,IAAI,OAAO,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAE9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAElD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,IAAI,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;QACrC,IAAI,KAAK,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QACvC,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;QAEjE,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,IAAY,QAAQ;QAMlB,OAAO,IAAI,CAAC,OAAO,CAAC,OAKnB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,SAAyB;QACpD,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,SAAyB;QACpD,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,WAA2B;QACxD,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC5D,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,cAA8B;QAC9D,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAClE,CAAC;CACF;AAxsBD,gCAwsBC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}