stackswap-front-api-test-02 1.0.130 → 1.0.133

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,3 @@
1
- import BigNumber from 'bignumber.js';
2
1
  import { StackswapAPI } from "../../index";
3
2
  import { Token } from "./token.manager";
4
3
  export declare enum Mode {
@@ -31,7 +30,29 @@ export declare class GroupFarmManager {
31
30
  getFarmBalance(token: any, farming_contract: string): Promise<any>;
32
31
  stakeTokens(stakingToken: Token, amountTokens: string, lockPeriod: number, callback: any, farming_contract: string): Promise<void>;
33
32
  claimStakingReward(stakingToken: string, cycle: number, rewardToken1: string, rewardToken2: string, rewardToken3: string, rewardToken4: string, rewardList: any, callback: any, farming_contract: string): Promise<void>;
33
+ getNFTAsset(tokenStr: string): Promise<string>;
34
34
  stakeNFTs(goldList: number[], silverList: number[], callback: any, farming_contract: string): Promise<void>;
35
- claimNFTStakingReward(rewardToken1: string, rewardToken2: string, rewardToken3: string, rewardToken4: string, rewardList: any, reclaimList: string[], callback: any, farming_contract: string): Promise<void>;
36
- getRewardBalanceFromFarming2(pool_addr: string, unclaimed_list: any, farming_contract: string): Promise<BigNumber>;
35
+ claimNFTStakingReward(rewardToken1: string, rewardToken2: string, rewardToken3: string, rewardToken4: string, rewardList: any, callback: any, farming_contract: string): Promise<void>;
36
+ getRewardBalanceFromFarming(stakingToken: string, unclaimed_list: any, farming_contract: string): Promise<{
37
+ rewardToken: {
38
+ type: string;
39
+ value: string;
40
+ };
41
+ reward1: {
42
+ type: string;
43
+ value: string;
44
+ };
45
+ reward2: {
46
+ type: string;
47
+ value: string;
48
+ };
49
+ reward3: {
50
+ type: string;
51
+ value: string;
52
+ };
53
+ reward4: {
54
+ type: string;
55
+ value: string;
56
+ };
57
+ }>;
37
58
  }
@@ -1,7 +1,9 @@
1
- import { callReadOnlyFunction, contractPrincipalCV, cvToValue, FungibleConditionCode, listCV, standardPrincipalCV, uintCV } from '@stacks/transactions';
1
+ import { callReadOnlyFunction, contractPrincipalCV, cvToValue, FungibleConditionCode, listCV, makeStandardNonFungiblePostCondition, NonFungibleConditionCode, standardPrincipalCV, uintCV } from '@stacks/transactions';
2
2
  import BigNumber from 'bignumber.js';
3
3
  import { openContractCall } from '@stacks/connect';
4
- import { getPostConditionFromAsset, getReadOptions, getWriteOptions, num2decimal, parseAddressToCV } from "../util";
4
+ import { getPostConditionFromAsset, getReadOptions, getWriteOptions, parseAddressToCV } from "../util";
5
+ import { BaseToken, Token } from "./token.manager";
6
+ import axios from "axios";
5
7
  export var Mode;
6
8
  (function (Mode) {
7
9
  Mode[Mode["WITH_SERVER"] = 0] = "WITH_SERVER";
@@ -221,6 +223,22 @@ export class GroupFarmManager {
221
223
  async claimStakingReward(stakingToken, cycle, rewardToken1, rewardToken2, rewardToken3, rewardToken4, rewardList, callback, farming_contract) {
222
224
  const address = stakingToken.split('.');
223
225
  const post_condition = [];
226
+ if (stakingToken === rewardToken1) {
227
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, farming_contract, stakingToken, new BigNumber(rewardList.returnToken.value).plus(rewardList.reward1.value).toFixed(0), FungibleConditionCode.Equal));
228
+ }
229
+ else {
230
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, farming_contract, stakingToken, rewardList.returnToken.value, FungibleConditionCode.Equal));
231
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, farming_contract, rewardToken1, rewardList.reward1.value, FungibleConditionCode.Equal));
232
+ }
233
+ if (rewardToken2 !== Token.getBaseTokens(this.stackswap, BaseToken.NULL).addr) {
234
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, farming_contract, rewardToken2, rewardList.reward2.value, FungibleConditionCode.Equal));
235
+ }
236
+ if (rewardToken3 !== Token.getBaseTokens(this.stackswap, BaseToken.NULL).addr) {
237
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, farming_contract, rewardToken3, rewardList.reward3.value, FungibleConditionCode.Equal));
238
+ }
239
+ if (rewardToken4 !== Token.getBaseTokens(this.stackswap, BaseToken.NULL).addr) {
240
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, farming_contract, rewardToken4, rewardList.reward4.value, FungibleConditionCode.Equal));
241
+ }
224
242
  const function_option = getWriteOptions(this.stackswap, farming_contract, 'claimStakingReward', [
225
243
  uintCV(cycle),
226
244
  contractPrincipalCV(address[0], address[1]),
@@ -228,54 +246,121 @@ export class GroupFarmManager {
228
246
  parseAddressToCV(rewardToken2),
229
247
  parseAddressToCV(rewardToken3),
230
248
  parseAddressToCV(rewardToken4),
231
- ], post_condition, callback, true);
249
+ ], post_condition, callback, false);
232
250
  console.log(rewardList);
233
251
  await openContractCall(function_option);
234
252
  }
253
+ async getNFTAsset(tokenStr) {
254
+ const token_addr = tokenStr.split('.');
255
+ const url = this.stackswap.config.STACKS_API_URL() + '/v2/contracts/interface/' + token_addr[0] + '/' + token_addr[1];
256
+ const result = await axios.get(url);
257
+ if (result.data.non_fungible_tokens.length === 1) {
258
+ return tokenStr + '::' + result.data.non_fungible_tokens[0].name;
259
+ }
260
+ else {
261
+ return tokenStr + '::' + result.data.non_fungible_tokens[0].name;
262
+ }
263
+ }
235
264
  async stakeNFTs(goldList, silverList, callback, farming_contract) {
236
265
  const gold_list = [];
237
266
  const silver_list = [];
267
+ const post_condition = [];
268
+ const gold_asset_string = await this.getNFTAsset(this.stackswap.config.STACKSWAP_ADDRESS() + '.' + this.stackswap.config.CONTRACT_NAME_GOLD_PASS());
269
+ const silver_asset_string = await this.getNFTAsset(this.stackswap.config.STACKSWAP_ADDRESS() + '.' + this.stackswap.config.CONTRACT_NAME_SILVER_PASS());
238
270
  for (const gold of goldList) {
239
271
  gold_list.push(uintCV(gold));
272
+ post_condition.push(makeStandardNonFungiblePostCondition(this.stackswap.getSenderAddress(), NonFungibleConditionCode.DoesNotOwn, gold_asset_string, uintCV(gold)));
240
273
  }
241
274
  for (const silver of silverList) {
242
275
  silver_list.push(uintCV(silver));
276
+ post_condition.push(makeStandardNonFungiblePostCondition(this.stackswap.getSenderAddress(), NonFungibleConditionCode.DoesNotOwn, silver_asset_string, uintCV(silver)));
243
277
  }
244
278
  const function_option = getWriteOptions(this.stackswap, farming_contract, 'stakeNFTs', [
245
279
  listCV(gold_list),
246
280
  listCV(silver_list)
247
- ], [], callback, true);
281
+ ], post_condition, callback, false);
248
282
  await openContractCall(function_option);
249
283
  }
250
- async claimNFTStakingReward(rewardToken1, rewardToken2, rewardToken3, rewardToken4, rewardList, reclaimList, callback, farming_contract) {
284
+ async claimNFTStakingReward(rewardToken1, rewardToken2, rewardToken3, rewardToken4, rewardList, callback, farming_contract) {
251
285
  const post_condition = [];
286
+ const gold_asset_string = await this.getNFTAsset(this.stackswap.config.STACKSWAP_ADDRESS() + '.' + this.stackswap.config.CONTRACT_NAME_GOLD_PASS());
287
+ for (const gold of rewardList.returnNFTS.value) {
288
+ post_condition.push(makeStandardNonFungiblePostCondition(farming_contract, NonFungibleConditionCode.DoesNotOwn, gold_asset_string, uintCV(gold)));
289
+ }
290
+ if (rewardToken1 !== Token.getBaseTokens(this.stackswap, BaseToken.NULL).addr) {
291
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, farming_contract, rewardToken1, rewardList.reward1.value, FungibleConditionCode.Equal));
292
+ }
293
+ if (rewardToken2 !== Token.getBaseTokens(this.stackswap, BaseToken.NULL).addr) {
294
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, farming_contract, rewardToken2, rewardList.reward2.value, FungibleConditionCode.Equal));
295
+ }
296
+ if (rewardToken3 !== Token.getBaseTokens(this.stackswap, BaseToken.NULL).addr) {
297
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, farming_contract, rewardToken3, rewardList.reward3.value, FungibleConditionCode.Equal));
298
+ }
299
+ if (rewardToken4 !== Token.getBaseTokens(this.stackswap, BaseToken.NULL).addr) {
300
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, farming_contract, rewardToken4, rewardList.reward4.value, FungibleConditionCode.Equal));
301
+ }
252
302
  const function_option = getWriteOptions(this.stackswap, farming_contract, 'claimNFTStakingReward', [
253
303
  parseAddressToCV(rewardToken1),
254
304
  parseAddressToCV(rewardToken2),
255
305
  parseAddressToCV(rewardToken3),
256
306
  parseAddressToCV(rewardToken4),
257
- ], post_condition, callback, true);
258
- console.log(rewardList, reclaimList);
307
+ ], post_condition, callback, false);
259
308
  await openContractCall(function_option);
260
309
  }
261
- async getRewardBalanceFromFarming2(pool_addr, unclaimed_list, farming_contract) {
262
- const num_list = [];
263
- for (const unclaimed of unclaimed_list) {
264
- num_list.push(uintCV(unclaimed));
265
- }
266
- let reward_num = new BigNumber(0);
267
- console.log(pool_addr, num_list, farming_contract);
310
+ async getRewardBalanceFromFarming(stakingToken, unclaimed_list, farming_contract) {
311
+ const tempRewardDict = {
312
+ rewardToken: {
313
+ type: "uint",
314
+ value: '0'
315
+ }, reward1: {
316
+ type: "uint",
317
+ value: '0'
318
+ }, reward2: {
319
+ type: "uint",
320
+ value: '0'
321
+ }, reward3: {
322
+ type: "uint",
323
+ value: '0'
324
+ }, reward4: {
325
+ type: "uint",
326
+ value: '0'
327
+ }
328
+ };
268
329
  try {
269
- for (let i = 0; i < num_list.length; i += 4) {
270
- console.log(pool_addr, num_list.slice(i, i + 4 < num_list.length ? i + 4 : num_list.length), farming_contract);
271
- const result = await this.getFarmingUserRewardList2(pool_addr, num_list.slice(i, i + 4 < num_list.length ? i + 4 : num_list.length), farming_contract);
272
- console.log('temp result', result.rewardSum.value);
273
- reward_num = reward_num.plus(new BigNumber(result.rewardSum.value));
330
+ for (const round of unclaimed_list) {
331
+ const result = await this.getFarmingReward(stakingToken, round, farming_contract);
332
+ tempRewardDict.rewardToken.value =
333
+ new BigNumber(tempRewardDict.rewardToken.value).plus(result.rewardToken.value).toFixed(0);
334
+ tempRewardDict.reward1.value =
335
+ new BigNumber(tempRewardDict.reward1.value).plus(result.reward1.value).toFixed(0);
336
+ tempRewardDict.reward2.value =
337
+ new BigNumber(tempRewardDict.reward2.value).plus(result.reward2.value).toFixed(0);
338
+ tempRewardDict.reward3.value =
339
+ new BigNumber(tempRewardDict.reward3.value).plus(result.reward3.value).toFixed(0);
340
+ tempRewardDict.reward4.value =
341
+ new BigNumber(tempRewardDict.reward4.value).plus(result.reward4.value).toFixed(0);
274
342
  }
275
- return num2decimal(reward_num.toString(), 6);
343
+ return tempRewardDict;
276
344
  }
277
345
  catch (e) {
278
- return num2decimal(reward_num.toString(), 6);
346
+ return {
347
+ rewardToken: {
348
+ type: "uint",
349
+ value: '0'
350
+ }, reward1: {
351
+ type: "uint",
352
+ value: '0'
353
+ }, reward2: {
354
+ type: "uint",
355
+ value: '0'
356
+ }, reward3: {
357
+ type: "uint",
358
+ value: '0'
359
+ }, reward4: {
360
+ type: "uint",
361
+ value: '0'
362
+ }
363
+ };
279
364
  }
280
365
  }
281
366
  }
@@ -1 +1 @@
1
- {"version":3,"file":"groupfarm.manager.js","sourceRoot":"","sources":["../../../../src/stackswap/manager/groupfarm.manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"groupfarm.manager.js","sourceRoot":"","sources":["../../../../src/stackswap/manager/groupfarm.manager.ts"],"names":[],"mappings":"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"}