stackswap-front-api-test-02 1.0.156 → 1.0.159

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.
@@ -28,7 +28,7 @@ export declare class Farm2Manager {
28
28
  amountLP: any;
29
29
  weight: any;
30
30
  }>;
31
- getFarmingTotalPoolStatusCycle2(pool_address: string, cycle: number, farming_contract: string): Promise<string>;
31
+ getFarmingTotalPoolStatusCycle2(pool_address: string, cycle: number, farming_contract: string): Promise<any>;
32
32
  getFarmingTotalValue2(pool_address: string, farming_contract: string): Promise<any>;
33
33
  getFarmingUserRewardPerCycle2(pool_address: string, cycle: number, farming_contract: string): Promise<any>;
34
34
  getFarmingUserRewardList2(pool_address: string, unclaimed_list: any, farming_contract: string): Promise<any>;
@@ -61,11 +61,29 @@ export declare class Farm2Manager {
61
61
  oracle_lbtc: any;
62
62
  };
63
63
  }>;
64
+ getEachFarmDataSerialDash(data: any, bh: string, oracle_data: {
65
+ oracle_stx: any;
66
+ oracle_stsw: any;
67
+ oracle_lbtc: any;
68
+ }, type: Mode): Promise<{
69
+ farms: any[][];
70
+ farm_round: any;
71
+ oracle_data: {
72
+ oracle_stx: any;
73
+ oracle_stsw: any;
74
+ oracle_lbtc: any;
75
+ };
76
+ }>;
64
77
  getFarmData(farm: any, farm_round: any, block_height: string, tvl_apr: BigNumber, farming_contract: string, oracle_data: {
65
78
  oracle_stx: any;
66
79
  oracle_stsw: any;
67
80
  oracle_lbtc: any;
68
81
  }, type: Mode): Promise<any>;
82
+ getFarmDataMinimal(farm: any, farm_round: any, block_height: string, farming_contract: string, oracle_data: {
83
+ oracle_stx: any;
84
+ oracle_stsw: any;
85
+ oracle_lbtc: any;
86
+ }, type: Mode): Promise<any>;
69
87
  getFarmUserData(farm: any, farm_round: string, farming_contract: string, oracle_data: {
70
88
  oracle_stx: any;
71
89
  oracle_stsw: any;
@@ -155,10 +155,15 @@ class Farm2Manager {
155
155
  const result_raw = await (0, transactions_1.callReadOnlyFunction)(function_option);
156
156
  const result = (0, transactions_1.cvToValue)(result_raw);
157
157
  try {
158
- return new bignumber_js_1.default(result.value.amountUstx.value).multipliedBy(2).toFixed(0).toString();
158
+ return result.value;
159
159
  }
160
160
  catch (e) {
161
- return '0';
161
+ return {
162
+ value: 0,
163
+ weight: 0,
164
+ amountLP: 0,
165
+ price: 0
166
+ };
162
167
  }
163
168
  }
164
169
  async getFarmingTotalValue2(pool_address, farming_contract) {
@@ -386,6 +391,34 @@ class Farm2Manager {
386
391
  this.checkAndSetFarmAPR(farms, farm_length, oracle_data);
387
392
  return { farms, farm_round, oracle_data };
388
393
  }
394
+ async getEachFarmDataSerialDash(data, bh, oracle_data, type) {
395
+ const farms = [];
396
+ const farm_length = data.length;
397
+ for (let i = 0; i < farm_length; i++) {
398
+ farms.push([]);
399
+ }
400
+ const farm_round = await this.getCurrentFarmingRound2(this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING2_1());
401
+ for (let farm_round_iter = Number(farm_round); farm_round_iter < Number(farm_round) + 16; farm_round_iter++) {
402
+ for (let i = 0; i < data.length; i++) {
403
+ let farming_contract = '';
404
+ if (data[i].farm_group === 1) {
405
+ farming_contract = this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING2_1();
406
+ }
407
+ else if (data[i].farm_group === 2) {
408
+ farming_contract = this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING2_2();
409
+ }
410
+ else if (data[i].farm_group === 5) {
411
+ farming_contract = this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING2_5();
412
+ }
413
+ const value = await this.getFarmDataMinimal(data[i], farm_round, bh, farming_contract, oracle_data, type);
414
+ value.farm_group = data[i].farm_group;
415
+ value.farm_contract = farming_contract;
416
+ farms[farm_round_iter - Number(farm_round)].push(value);
417
+ }
418
+ this.checkAndSetFarmAPR(farms[farm_round_iter - Number(farm_round)], farm_length, oracle_data);
419
+ }
420
+ return { farms, farm_round, oracle_data };
421
+ }
389
422
  async getFarmData(farm, farm_round, block_height, tvl_apr, farming_contract, oracle_data, type) {
390
423
  farm.valid = false;
391
424
  farm.cur_round = farm_round;
@@ -410,6 +443,29 @@ class Farm2Manager {
410
443
  farm.valid = true;
411
444
  return farm;
412
445
  }
446
+ async getFarmDataMinimal(farm, farm_round, block_height, farming_contract, oracle_data, type) {
447
+ farm.valid = false;
448
+ farm.cur_round = farm_round;
449
+ switch (type) {
450
+ case Mode.ONLY_BLOCKCHAIN:
451
+ farm.pair = (await this.stackswap.poolManager.getPairDataFromContract(farm.token_x, farm.token_y));
452
+ break;
453
+ case Mode.WITH_SERVER:
454
+ farm.pair = (await this.stackswap.swapManager.findRouter(farm.token_x, farm.token_y, Number(block_height))).pair;
455
+ break;
456
+ }
457
+ farm.pair.price = (farm.pair.balance_y / (10 ** farm.token_y.decimal)) / (farm.pair.balance_x / (10 ** farm.token_x.decimal));
458
+ const temp_farm_round_data = await this.getFarmingTotalPoolStatusCycle2(farm.pair.token_lp.addr, farm_round, farming_contract);
459
+ console.log(temp_farm_round_data);
460
+ farm.total_locked_lp = temp_farm_round_data.amountLP.value;
461
+ farm.TVL = this.getPoolUSDPriceFarm(farm, farm.total_locked_lp, oracle_data);
462
+ const farm_temp_total_data = await this.getFarmingTotalStatusCycle2(farm_round, farming_contract);
463
+ farm.reward = farm_temp_total_data.reward;
464
+ const lpTotalData = await this.getFarmingTotalPoolStatus2(farm.pair.token_lp.addr, farming_contract);
465
+ farm.weight = lpTotalData.weight;
466
+ farm.valid = true;
467
+ return farm;
468
+ }
413
469
  async getFarmUserData(farm, farm_round, farming_contract, oracle_data, callback) {
414
470
  farm.isMigratable = await this.isUserMigratable2(farm.pair.token_lp.addr, farming_contract);
415
471
  this.getFarmingStakerStatus2(farm.pair.token_lp.addr, Number(farm_round), farming_contract).then((status_v2) => {
@@ -1 +1 @@
1
- {"version":3,"file":"farm2.manager.js","sourceRoot":"","sources":["../../../src/stackswap/manager/farm2.manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"farm2.manager.js","sourceRoot":"","sources":["../../../src/stackswap/manager/farm2.manager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stackswap-front-api-test-02",
3
- "version": "1.0.156",
3
+ "version": "1.0.159",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "start": "tsc -b tsconfig.build.json --watch --verbose",
@@ -171,9 +171,14 @@ export class Farm2Manager {
171
171
  const result = cvToValue(result_raw);
172
172
  // console.log('lp round data', result);
173
173
  try {
174
- return new BigNumber(result.value.amountUstx.value).multipliedBy(2).toFixed(0).toString();
174
+ return result.value;
175
175
  } catch (e) {
176
- return '0';
176
+ return {
177
+ value: 0,
178
+ weight: 0,
179
+ amountLP: 0,
180
+ price: 0
181
+ };
177
182
  }
178
183
  }
179
184
 
@@ -437,6 +442,38 @@ export class Farm2Manager {
437
442
  return {farms, farm_round, oracle_data};
438
443
  }
439
444
 
445
+
446
+ async getEachFarmDataSerialDash(data: any, bh: string, oracle_data: { oracle_stx: any, oracle_stsw: any, oracle_lbtc: any }, type: Mode) {
447
+
448
+ const farms : any[][] = [];
449
+ const farm_length: number = data.length;
450
+ for (let i = 0; i < farm_length; i++) {
451
+ farms.push([]);
452
+ }
453
+ const farm_round = await this.getCurrentFarmingRound2(this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING2_1());
454
+ for (let farm_round_iter = Number(farm_round); farm_round_iter < Number(farm_round) + 16 ; farm_round_iter++) {
455
+ for (let i = 0; i < data.length; i++) {
456
+
457
+ let farming_contract = '';
458
+ if (data[i].farm_group === 1) {
459
+ farming_contract = this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING2_1();
460
+ } else if (data[i].farm_group === 2) {
461
+ farming_contract = this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING2_2();
462
+ } else if (data[i].farm_group === 5) {
463
+ farming_contract = this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING2_5();
464
+ }
465
+
466
+ const value = await this.getFarmDataMinimal(data[i], farm_round, bh, farming_contract, oracle_data, type);
467
+ value.farm_group = data[i].farm_group;
468
+ value.farm_contract = farming_contract;
469
+ farms[farm_round_iter-Number(farm_round)].push(value);
470
+ }
471
+ this.checkAndSetFarmAPR(farms[farm_round_iter-Number(farm_round)],farm_length, oracle_data);
472
+ }
473
+ // this.checkAndSetFarmAPR(farms,farm_length, oracle_data);
474
+ return {farms, farm_round, oracle_data};
475
+ }
476
+
440
477
  async getFarmData(farm: any, farm_round: any, block_height: string, tvl_apr: BigNumber, farming_contract: string, oracle_data: { oracle_stx: any, oracle_stsw: any, oracle_lbtc: any }, type : Mode ) {
441
478
  farm.valid = false;
442
479
  farm.cur_round = farm_round;
@@ -465,6 +502,38 @@ export class Farm2Manager {
465
502
  return farm;
466
503
  }
467
504
 
505
+
506
+ async getFarmDataMinimal(farm: any, farm_round: any, block_height: string, farming_contract: string, oracle_data: { oracle_stx: any, oracle_stsw: any, oracle_lbtc: any }, type : Mode ) {
507
+ farm.valid = false;
508
+ farm.cur_round = farm_round;
509
+ switch (type) {
510
+ case Mode.ONLY_BLOCKCHAIN:
511
+ farm.pair = (await this.stackswap.poolManager.getPairDataFromContract(farm.token_x, farm.token_y));
512
+ break;
513
+ case Mode.WITH_SERVER:
514
+ farm.pair = (await this.stackswap.swapManager.findRouter(farm.token_x, farm.token_y, Number(block_height))).pair;
515
+ break;
516
+ }
517
+ // farm.pair.sharetoken = {balance: 0, addr: farm.pair.token_lp.addr};
518
+ farm.pair.price = (farm.pair.balance_y / (10 ** farm.token_y.decimal)) / (farm.pair.balance_x / (10 ** farm.token_x.decimal));
519
+ // const farm_total_v2 = await this.getFarmBalance2(farm.pair.token_lp, farming_contract);
520
+ // const farm_total_v1 = await this.stackswap.farmManager.getFarmBalance(farm.pair.token_lp);
521
+ const temp_farm_round_data= await this.getFarmingTotalPoolStatusCycle2(farm.pair.token_lp.addr, farm_round, farming_contract);
522
+ console.log(temp_farm_round_data);
523
+ farm.total_locked_lp = temp_farm_round_data.amountLP.value;
524
+ farm.TVL = this.getPoolUSDPriceFarm(farm, farm.total_locked_lp, oracle_data);
525
+
526
+ const farm_temp_total_data = await this.getFarmingTotalStatusCycle2(farm_round, farming_contract);
527
+ farm.reward = farm_temp_total_data.reward;
528
+ const lpTotalData = await this.getFarmingTotalPoolStatus2(farm.pair.token_lp.addr, farming_contract);
529
+ farm.weight = lpTotalData.weight; //TODO if weight chanages, use temp_farm_round_Data.weight
530
+ // tvl_apr = tvl_apr.plus(new BigNumber(this.getPoolUSDPriceFarm(farm, farm.total_locked_lp, oracle_data)).multipliedBy(farm.weight));
531
+ // console.log(farming_contract, farm.TVL, tvl_apr);
532
+ farm.valid = true;
533
+
534
+ return farm;
535
+ }
536
+
468
537
  async getFarmUserData(farm: any, farm_round: string, farming_contract: string, oracle_data: { oracle_stx: any, oracle_stsw: any, oracle_lbtc: any }, callback: any){
469
538
  farm.isMigratable = await this.isUserMigratable2(farm.pair.token_lp.addr, farming_contract); // 신규는 무조건 true
470
539
  this.getFarmingStakerStatus2(farm.pair.token_lp.addr, Number(farm_round), farming_contract).then((status_v2) => {