stackswap-front-api-test-02 1.0.82 → 1.0.85

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 (93) hide show
  1. package/README.md +10 -10
  2. package/dist/esm/index.d.ts +84 -84
  3. package/dist/esm/index.js +143 -143
  4. package/dist/esm/stackswap/config.d.ts +112 -112
  5. package/dist/esm/stackswap/config.js +185 -185
  6. package/dist/esm/stackswap/manager/farm.manager.d.ts +41 -41
  7. package/dist/esm/stackswap/manager/farm.manager.js +293 -293
  8. package/dist/esm/stackswap/manager/farm2.manager.d.ts +60 -60
  9. package/dist/esm/stackswap/manager/farm2.manager.js +403 -403
  10. package/dist/esm/stackswap/manager/farm2.manager.js.map +1 -1
  11. package/dist/esm/stackswap/manager/governance.manager.d.ts +9 -9
  12. package/dist/esm/stackswap/manager/governance.manager.js +53 -53
  13. package/dist/esm/stackswap/manager/launchpad.manager.d.ts +13 -13
  14. package/dist/esm/stackswap/manager/launchpad.manager.js +147 -147
  15. package/dist/esm/stackswap/manager/lbtc.manager.d.ts +31 -31
  16. package/dist/esm/stackswap/manager/lbtc.manager.js +326 -326
  17. package/dist/esm/stackswap/manager/multisig.manager.d.ts +11 -11
  18. package/dist/esm/stackswap/manager/multisig.manager.js +51 -51
  19. package/dist/esm/stackswap/manager/nft.manager.d.ts +52 -52
  20. package/dist/esm/stackswap/manager/nft.manager.js +243 -243
  21. package/dist/esm/stackswap/manager/operator.manager.d.ts +17 -17
  22. package/dist/esm/stackswap/manager/operator.manager.js +85 -85
  23. package/dist/esm/stackswap/manager/other.manager.d.ts +9 -9
  24. package/dist/esm/stackswap/manager/other.manager.js +47 -47
  25. package/dist/esm/stackswap/manager/pool.manager.d.ts +34 -34
  26. package/dist/esm/stackswap/manager/pool.manager.js +171 -175
  27. package/dist/esm/stackswap/manager/pool.manager.js.map +1 -1
  28. package/dist/esm/stackswap/manager/poxl.manager.d.ts +16 -16
  29. package/dist/esm/stackswap/manager/poxl.manager.js +71 -71
  30. package/dist/esm/stackswap/manager/staking.manager.d.ts +25 -25
  31. package/dist/esm/stackswap/manager/staking.manager.js +233 -233
  32. package/dist/esm/stackswap/manager/swap.manager.d.ts +35 -35
  33. package/dist/esm/stackswap/manager/swap.manager.js +290 -290
  34. package/dist/esm/stackswap/manager/token.manager.d.ts +31 -31
  35. package/dist/esm/stackswap/manager/token.manager.js +133 -135
  36. package/dist/esm/stackswap/manager/token.manager.js.map +1 -1
  37. package/dist/esm/stackswap/util.d.ts +35 -35
  38. package/dist/esm/stackswap/util.js +201 -201
  39. package/dist/index.d.ts +84 -84
  40. package/dist/index.js +152 -152
  41. package/dist/index.umd.js +1 -1
  42. package/dist/stackswap/config.d.ts +112 -112
  43. package/dist/stackswap/config.js +190 -190
  44. package/dist/stackswap/manager/farm.manager.d.ts +41 -41
  45. package/dist/stackswap/manager/farm.manager.js +301 -301
  46. package/dist/stackswap/manager/farm2.manager.d.ts +60 -60
  47. package/dist/stackswap/manager/farm2.manager.js +410 -410
  48. package/dist/stackswap/manager/farm2.manager.js.map +1 -1
  49. package/dist/stackswap/manager/governance.manager.d.ts +9 -9
  50. package/dist/stackswap/manager/governance.manager.js +60 -60
  51. package/dist/stackswap/manager/launchpad.manager.d.ts +13 -13
  52. package/dist/stackswap/manager/launchpad.manager.js +151 -151
  53. package/dist/stackswap/manager/lbtc.manager.d.ts +31 -31
  54. package/dist/stackswap/manager/lbtc.manager.js +333 -333
  55. package/dist/stackswap/manager/multisig.manager.d.ts +11 -11
  56. package/dist/stackswap/manager/multisig.manager.js +55 -55
  57. package/dist/stackswap/manager/nft.manager.d.ts +52 -52
  58. package/dist/stackswap/manager/nft.manager.js +250 -250
  59. package/dist/stackswap/manager/operator.manager.d.ts +17 -17
  60. package/dist/stackswap/manager/operator.manager.js +92 -92
  61. package/dist/stackswap/manager/other.manager.d.ts +9 -9
  62. package/dist/stackswap/manager/other.manager.js +54 -54
  63. package/dist/stackswap/manager/pool.manager.d.ts +34 -34
  64. package/dist/stackswap/manager/pool.manager.js +179 -183
  65. package/dist/stackswap/manager/pool.manager.js.map +1 -1
  66. package/dist/stackswap/manager/poxl.manager.d.ts +16 -16
  67. package/dist/stackswap/manager/poxl.manager.js +78 -78
  68. package/dist/stackswap/manager/staking.manager.d.ts +25 -25
  69. package/dist/stackswap/manager/staking.manager.js +240 -240
  70. package/dist/stackswap/manager/swap.manager.d.ts +35 -35
  71. package/dist/stackswap/manager/swap.manager.js +297 -297
  72. package/dist/stackswap/manager/token.manager.d.ts +31 -31
  73. package/dist/stackswap/manager/token.manager.js +141 -143
  74. package/dist/stackswap/manager/token.manager.js.map +1 -1
  75. package/dist/stackswap/util.d.ts +35 -35
  76. package/dist/stackswap/util.js +218 -218
  77. package/package.json +43 -43
  78. package/src/index.ts +204 -204
  79. package/src/stackswap/config.ts +292 -292
  80. package/src/stackswap/manager/farm.manager.ts +399 -399
  81. package/src/stackswap/manager/farm2.manager.ts +463 -463
  82. package/src/stackswap/manager/governance.manager.ts +95 -95
  83. package/src/stackswap/manager/launchpad.manager.ts +190 -190
  84. package/src/stackswap/manager/multisig.manager.ts +87 -87
  85. package/src/stackswap/manager/nft.manager.ts +311 -311
  86. package/src/stackswap/manager/operator.manager.ts +123 -123
  87. package/src/stackswap/manager/other.manager.ts +71 -71
  88. package/src/stackswap/manager/pool.manager.ts +202 -202
  89. package/src/stackswap/manager/poxl.manager.ts +99 -99
  90. package/src/stackswap/manager/staking.manager.ts +321 -321
  91. package/src/stackswap/manager/swap.manager.ts +351 -351
  92. package/src/stackswap/manager/token.manager.ts +167 -167
  93. package/src/stackswap/util.ts +237 -237
@@ -1,176 +1,172 @@
1
- import { callReadOnlyFunction, cvToValue } from "@stacks/transactions";
2
- import BigNumber from "bignumber.js";
3
- import axios from "axios";
4
- import { decimal2integer, getPriceAndDY, getReadOptions, parseAddressToCV } from "../util";
5
- import { Token } from "./token.manager";
6
- export class LiquidityPool {
7
- constructor(name, token_x, token_y, token_lp, balance_x = '0', balance_y = '0', share_total = '0') {
8
- this.loaded = false;
9
- this.balance_x = '0';
10
- this.balance_y = '0';
11
- this.share_total = '0';
12
- this.name = name;
13
- this.token_x = token_x;
14
- this.token_y = token_y;
15
- this.token_lp = token_lp;
16
- this.balance_x = balance_x;
17
- this.balance_y = balance_y;
18
- this.share_total = share_total;
19
- }
20
- getTokenX(direction = true) {
21
- return direction ? this.token_x : this.token_y;
22
- }
23
- getTokenY(direction = true) {
24
- return direction ? this.token_y : this.token_x;
25
- }
26
- toString() {
27
- return '' + { name: this.name, token_x: this.token_x.toString(), token_y: this.token_y.toString(), token_lp: this.token_lp.toString(), balance_x: this.balance_x, balance_y: this.balance_y, share_total: this.share_total, loaded: this.loaded };
28
- }
29
- static parsePoolFromJson(data) {
30
- if (data.share_total != null) {
31
- return new LiquidityPool(data.name, Token.parseTokenFromJson(data.token_x), Token.parseTokenFromJson(data.token_y), Token.parseTokenFromJson(data.token_lp), data.balance_x, data.balance_y, data.share_total);
32
- }
33
- else {
34
- return new LiquidityPool(data.name, Token.parseTokenFromJson(data.token_x), Token.parseTokenFromJson(data.token_y), new Token(data.name, 6, '', data.token_swapr, data.name));
35
- }
36
- }
37
- static parsePoolsFromJsonList(datas) {
38
- const temp_list = [];
39
- for (const data of datas) {
40
- temp_list.push(LiquidityPool.parsePoolFromJson(data));
41
- }
42
- return temp_list;
43
- }
44
- static parsePoolsFromServerData(pair, token_x, token_y, direction = true) {
45
- if (direction) {
46
- const temp = new LiquidityPool(pair.name.value, token_x, token_y, new Token(pair.name.value, 6, '', pair['liquidity-token'].value, pair.name.value), pair['balance-x'].value, pair['balance-y'].value, pair['shares-total'].value);
47
- temp.loaded = true;
48
- return temp;
49
- }
50
- else {
51
- const temp = new LiquidityPool(pair.name.value, token_y, token_x, new Token(pair.name.value, 6, '', pair['liquidity-token'].value, pair.name.value), pair['balance-x'].value, pair['balance-y'].value, pair['shares-total'].value);
52
- temp.loaded = true;
53
- return temp;
54
- }
55
- }
56
- static parsePoolsFromServerData2(pair, token_x, token_y, direction = true) {
57
- if (direction) {
58
- const temp = new LiquidityPool(pair.name, token_x, token_y, new Token(pair.name, 6, '', pair['liquidity-token'], pair.name), pair['balance-x'], pair['balance-y'], pair['shares-total']);
59
- temp.loaded = true;
60
- return temp;
61
- }
62
- else {
63
- const temp = new LiquidityPool(pair.name, token_y, token_x, new Token(pair.name, 6, '', pair['liquidity-token'], pair.name), pair['balance-x'], pair['balance-y'], pair['shares-total']);
64
- temp.loaded = true;
65
- return temp;
66
- }
67
- }
68
- static parsePoolsFromDBData(data) {
69
- const temp = new LiquidityPool(data.pair_name, Token.parseTokenFromJson(data.token_x), Token.parseTokenFromJson(data.token_y), new Token(data.pair_name, 6, '', data.pair_addr, data.pair_name), decimal2integer(data.balance_token_x, data.token_x.decimal), decimal2integer(data.balance_token_y, data.token_y.decimal), data.total_lp_amt);
70
- temp.loaded = true;
71
- return temp;
72
- }
73
- getPoolPrice(inverted = false, amount = '-1') {
74
- if (this.share_total === '0') {
75
- return { dy: '0', output_price: '0' };
76
- }
77
- if (inverted) {
78
- return getPriceAndDY(this, amount, false);
79
- }
80
- else {
81
- return getPriceAndDY(this, amount, true);
82
- }
83
- }
84
- getPoolTVL(stackswap, pool, stx_usd, stsw_usd, btc_usd) {
85
- const x_token_addr = pool.token_x.addr;
86
- const y_token_addr = pool.token_y.addr;
87
- let total_balance = new BigNumber(-1);
88
- let total_price = -1;
89
- if (x_token_addr === stackswap.config.BASE_WSTX_DATA().addr) {
90
- total_balance = (new BigNumber(pool.balance_x).dividedBy(new BigNumber(10 ** pool.token_x.decimal))).multipliedBy(2);
91
- total_price = total_balance.multipliedBy(stx_usd).toNumber();
92
- }
93
- else if (y_token_addr === stackswap.config.BASE_WSTX_DATA().addr) {
94
- total_balance = (new BigNumber(pool.balance_y).dividedBy(new BigNumber(10 ** pool.token_y.decimal))).multipliedBy(2);
95
- total_price = total_balance.multipliedBy(stx_usd).toNumber();
96
- }
97
- else if (x_token_addr === stackswap.config.BASE_STSW_DATA().addr) {
98
- total_balance = (new BigNumber(pool.balance_y).dividedBy(new BigNumber(10 ** pool.token_x.decimal))).multipliedBy(2);
99
- total_price = total_balance.multipliedBy(stsw_usd).toNumber();
100
- }
101
- else if (y_token_addr === stackswap.config.BASE_STSW_DATA().addr) {
102
- total_balance = (new BigNumber(pool.balance_y).dividedBy(new BigNumber(10 ** pool.token_y.decimal))).multipliedBy(2);
103
- total_price = total_balance.multipliedBy(stsw_usd).toNumber();
104
- }
105
- else if (x_token_addr === stackswap.config.BASE_LBTC_DATA().addr) {
106
- total_balance = (new BigNumber(pool.balance_x).dividedBy(new BigNumber(10 ** pool.token_x.decimal))).multipliedBy(2);
107
- total_price = total_balance.multipliedBy(btc_usd).toNumber();
108
- }
109
- else if (y_token_addr === stackswap.config.BASE_LBTC_DATA().addr) {
110
- total_balance = (new BigNumber(pool.balance_y).dividedBy(new BigNumber(10 ** pool.token_y.decimal))).multipliedBy(2);
111
- total_price = total_balance.multipliedBy(btc_usd).toNumber();
112
- }
113
- return total_price;
114
- }
115
- getNewPoolShareRatio(token_amount, inversed) {
116
- if (this.loaded) {
117
- try {
118
- const token_input = new BigNumber(token_amount);
119
- const token_in_pool = new BigNumber(inversed ? this.balance_x : this.balance_y);
120
- const token_in_pool_new = token_input.plus(token_in_pool);
121
- const temp = (token_input.dividedBy(token_in_pool_new).multipliedBy(100)).toNumber();
122
- if (!isNaN(temp)) {
123
- return temp;
124
- }
125
- else {
126
- return 0;
127
- }
128
- }
129
- catch (e) {
130
- return 0;
131
- }
132
- }
133
- else {
134
- return 0;
135
- }
136
- }
137
- }
138
- export class PoolManager {
139
- constructor(stackswap) {
140
- this.stackswap = stackswap;
141
- }
142
- async getPoolLists() {
143
- const url1 = this.stackswap.config.STACKS_BACKEND_URL() + '/stacks/pair/' + this.stackswap.config.STACKS_BACKEND_PARAM();
144
- const res1 = await axios.get(url1, {
145
- timeout: 30000,
146
- });
147
- return LiquidityPool.parsePoolsFromJsonList(res1.data);
148
- }
149
- async getPairDataFromContract(token_x, token_y) {
150
- const pair_details_options = getReadOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_SWAP(), 'get-pair-details', [parseAddressToCV(token_x.addr), parseAddressToCV(token_y.addr)]);
151
- try {
152
- const result = await callReadOnlyFunction(pair_details_options);
153
- console.log(result);
154
- console.log(cvToValue(result));
155
- const result2 = await callReadOnlyFunction(getReadOptions(this.stackswap, cvToValue(result)['liquidity-token'].value, 'get-lp-data', []));
156
- console.log('cv-to-value', cvToValue(result2)['value']);
157
- console.log(cvToValue(result2).value);
158
- return LiquidityPool.parsePoolsFromServerData(cvToValue(result2).value, token_x, token_y, true);
159
- }
160
- catch (e) {
161
- return null;
162
- }
163
- }
164
- async getPoolDatasLegacy(token_x, token_y, swap_contract) {
165
- const pair_details_options = getReadOptions(this.stackswap, swap_contract, 'get-pair-details', [parseAddressToCV(token_x.addr), parseAddressToCV(token_y.addr)]);
166
- try {
167
- const result = await callReadOnlyFunction(pair_details_options);
168
- const result2 = await callReadOnlyFunction(getReadOptions(this.stackswap, cvToValue(result)['liquidity-token'].value, 'get-lp-data', []));
169
- return LiquidityPool.parsePoolsFromServerData(cvToValue(result2).value, token_x, token_y, true);
170
- }
171
- catch (e) {
172
- return null;
173
- }
174
- }
175
- }
1
+ import { callReadOnlyFunction, cvToValue } from "@stacks/transactions";
2
+ import BigNumber from "bignumber.js";
3
+ import axios from "axios";
4
+ import { decimal2integer, getPriceAndDY, getReadOptions, parseAddressToCV } from "../util";
5
+ import { Token } from "./token.manager";
6
+ export class LiquidityPool {
7
+ constructor(name, token_x, token_y, token_lp, balance_x = '0', balance_y = '0', share_total = '0') {
8
+ this.loaded = false;
9
+ this.balance_x = '0';
10
+ this.balance_y = '0';
11
+ this.share_total = '0';
12
+ this.name = name;
13
+ this.token_x = token_x;
14
+ this.token_y = token_y;
15
+ this.token_lp = token_lp;
16
+ this.balance_x = balance_x;
17
+ this.balance_y = balance_y;
18
+ this.share_total = share_total;
19
+ }
20
+ getTokenX(direction = true) {
21
+ return direction ? this.token_x : this.token_y;
22
+ }
23
+ getTokenY(direction = true) {
24
+ return direction ? this.token_y : this.token_x;
25
+ }
26
+ toString() {
27
+ return '' + { name: this.name, token_x: this.token_x.toString(), token_y: this.token_y.toString(), token_lp: this.token_lp.toString(), balance_x: this.balance_x, balance_y: this.balance_y, share_total: this.share_total, loaded: this.loaded };
28
+ }
29
+ static parsePoolFromJson(data) {
30
+ if (data.share_total != null) {
31
+ return new LiquidityPool(data.name, Token.parseTokenFromJson(data.token_x), Token.parseTokenFromJson(data.token_y), Token.parseTokenFromJson(data.token_lp), data.balance_x, data.balance_y, data.share_total);
32
+ }
33
+ else {
34
+ return new LiquidityPool(data.name, Token.parseTokenFromJson(data.token_x), Token.parseTokenFromJson(data.token_y), new Token(data.name, 6, '', data.token_swapr, data.name));
35
+ }
36
+ }
37
+ static parsePoolsFromJsonList(datas) {
38
+ const temp_list = [];
39
+ for (const data of datas) {
40
+ temp_list.push(LiquidityPool.parsePoolFromJson(data));
41
+ }
42
+ return temp_list;
43
+ }
44
+ static parsePoolsFromServerData(pair, token_x, token_y, direction = true) {
45
+ if (direction) {
46
+ const temp = new LiquidityPool(pair.name.value, token_x, token_y, new Token(pair.name.value, 6, '', pair['liquidity-token'].value, pair.name.value), pair['balance-x'].value, pair['balance-y'].value, pair['shares-total'].value);
47
+ temp.loaded = true;
48
+ return temp;
49
+ }
50
+ else {
51
+ const temp = new LiquidityPool(pair.name.value, token_y, token_x, new Token(pair.name.value, 6, '', pair['liquidity-token'].value, pair.name.value), pair['balance-x'].value, pair['balance-y'].value, pair['shares-total'].value);
52
+ temp.loaded = true;
53
+ return temp;
54
+ }
55
+ }
56
+ static parsePoolsFromServerData2(pair, token_x, token_y, direction = true) {
57
+ if (direction) {
58
+ const temp = new LiquidityPool(pair.name, token_x, token_y, new Token(pair.name, 6, '', pair['liquidity-token'], pair.name), pair['balance-x'], pair['balance-y'], pair['shares-total']);
59
+ temp.loaded = true;
60
+ return temp;
61
+ }
62
+ else {
63
+ const temp = new LiquidityPool(pair.name, token_y, token_x, new Token(pair.name, 6, '', pair['liquidity-token'], pair.name), pair['balance-x'], pair['balance-y'], pair['shares-total']);
64
+ temp.loaded = true;
65
+ return temp;
66
+ }
67
+ }
68
+ static parsePoolsFromDBData(data) {
69
+ const temp = new LiquidityPool(data.pair_name, Token.parseTokenFromJson(data.token_x), Token.parseTokenFromJson(data.token_y), new Token(data.pair_name, 6, '', data.pair_addr, data.pair_name), decimal2integer(data.balance_token_x, data.token_x.decimal), decimal2integer(data.balance_token_y, data.token_y.decimal), data.total_lp_amt);
70
+ temp.loaded = true;
71
+ return temp;
72
+ }
73
+ getPoolPrice(inverted = false, amount = '-1') {
74
+ if (this.share_total === '0') {
75
+ return { dy: '0', output_price: '0' };
76
+ }
77
+ if (inverted) {
78
+ return getPriceAndDY(this, amount, false);
79
+ }
80
+ else {
81
+ return getPriceAndDY(this, amount, true);
82
+ }
83
+ }
84
+ getPoolTVL(stackswap, pool, stx_usd, stsw_usd, btc_usd) {
85
+ const x_token_addr = pool.token_x.addr;
86
+ const y_token_addr = pool.token_y.addr;
87
+ let total_balance = new BigNumber(-1);
88
+ let total_price = -1;
89
+ if (x_token_addr === stackswap.config.BASE_WSTX_DATA().addr) {
90
+ total_balance = (new BigNumber(pool.balance_x).dividedBy(new BigNumber(10 ** pool.token_x.decimal))).multipliedBy(2);
91
+ total_price = total_balance.multipliedBy(stx_usd).toNumber();
92
+ }
93
+ else if (y_token_addr === stackswap.config.BASE_WSTX_DATA().addr) {
94
+ total_balance = (new BigNumber(pool.balance_y).dividedBy(new BigNumber(10 ** pool.token_y.decimal))).multipliedBy(2);
95
+ total_price = total_balance.multipliedBy(stx_usd).toNumber();
96
+ }
97
+ else if (x_token_addr === stackswap.config.BASE_STSW_DATA().addr) {
98
+ total_balance = (new BigNumber(pool.balance_y).dividedBy(new BigNumber(10 ** pool.token_x.decimal))).multipliedBy(2);
99
+ total_price = total_balance.multipliedBy(stsw_usd).toNumber();
100
+ }
101
+ else if (y_token_addr === stackswap.config.BASE_STSW_DATA().addr) {
102
+ total_balance = (new BigNumber(pool.balance_y).dividedBy(new BigNumber(10 ** pool.token_y.decimal))).multipliedBy(2);
103
+ total_price = total_balance.multipliedBy(stsw_usd).toNumber();
104
+ }
105
+ else if (x_token_addr === stackswap.config.BASE_LBTC_DATA().addr) {
106
+ total_balance = (new BigNumber(pool.balance_x).dividedBy(new BigNumber(10 ** pool.token_x.decimal))).multipliedBy(2);
107
+ total_price = total_balance.multipliedBy(btc_usd).toNumber();
108
+ }
109
+ else if (y_token_addr === stackswap.config.BASE_LBTC_DATA().addr) {
110
+ total_balance = (new BigNumber(pool.balance_y).dividedBy(new BigNumber(10 ** pool.token_y.decimal))).multipliedBy(2);
111
+ total_price = total_balance.multipliedBy(btc_usd).toNumber();
112
+ }
113
+ return total_price;
114
+ }
115
+ getNewPoolShareRatio(token_amount, inversed) {
116
+ if (this.loaded) {
117
+ try {
118
+ const token_input = new BigNumber(token_amount);
119
+ const token_in_pool = new BigNumber(inversed ? this.balance_x : this.balance_y);
120
+ const token_in_pool_new = token_input.plus(token_in_pool);
121
+ const temp = (token_input.dividedBy(token_in_pool_new).multipliedBy(100)).toNumber();
122
+ if (!isNaN(temp)) {
123
+ return temp;
124
+ }
125
+ else {
126
+ return 0;
127
+ }
128
+ }
129
+ catch (e) {
130
+ return 0;
131
+ }
132
+ }
133
+ else {
134
+ return 0;
135
+ }
136
+ }
137
+ }
138
+ export class PoolManager {
139
+ constructor(stackswap) {
140
+ this.stackswap = stackswap;
141
+ }
142
+ async getPoolLists() {
143
+ const url1 = this.stackswap.config.STACKS_BACKEND_URL() + '/stacks/pair/' + this.stackswap.config.STACKS_BACKEND_PARAM();
144
+ const res1 = await axios.get(url1, {
145
+ timeout: 30000,
146
+ });
147
+ return LiquidityPool.parsePoolsFromJsonList(res1.data);
148
+ }
149
+ async getPairDataFromContract(token_x, token_y) {
150
+ const pair_details_options = getReadOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_SWAP(), 'get-pair-details', [parseAddressToCV(token_x.addr), parseAddressToCV(token_y.addr)]);
151
+ try {
152
+ const result = await callReadOnlyFunction(pair_details_options);
153
+ const result2 = await callReadOnlyFunction(getReadOptions(this.stackswap, cvToValue(result)['liquidity-token'].value, 'get-lp-data', []));
154
+ return LiquidityPool.parsePoolsFromServerData(cvToValue(result2).value, token_x, token_y, true);
155
+ }
156
+ catch (e) {
157
+ return null;
158
+ }
159
+ }
160
+ async getPoolDatasLegacy(token_x, token_y, swap_contract) {
161
+ const pair_details_options = getReadOptions(this.stackswap, swap_contract, 'get-pair-details', [parseAddressToCV(token_x.addr), parseAddressToCV(token_y.addr)]);
162
+ try {
163
+ const result = await callReadOnlyFunction(pair_details_options);
164
+ const result2 = await callReadOnlyFunction(getReadOptions(this.stackswap, cvToValue(result)['liquidity-token'].value, 'get-lp-data', []));
165
+ return LiquidityPool.parsePoolsFromServerData(cvToValue(result2).value, token_x, token_y, true);
166
+ }
167
+ catch (e) {
168
+ return null;
169
+ }
170
+ }
171
+ }
176
172
  //# sourceMappingURL=pool.manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pool.manager.js","sourceRoot":"","sources":["../../../../src/stackswap/manager/pool.manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pool.manager.js","sourceRoot":"","sources":["../../../../src/stackswap/manager/pool.manager.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,16 @@
1
- import { StackswapAPI } from "../../index";
2
- import { Token } from "./token.manager";
3
- export declare class PoxlManager {
4
- stackswap: StackswapAPI;
5
- constructor(stackswap: StackswapAPI);
6
- minePOXLToken(token: Token, mine_amount: string, callback?: any): Promise<void>;
7
- stackPOXLToken(token: Token, stack_amount: string, stack_lock_period: string, callback?: any): Promise<void>;
8
- claimMiningReward(token: Token, mined_blocknum: string, callback?: any): Promise<void>;
9
- claimStackingReward(token: Token, target_reward_cycle: string, callback?: any): Promise<void>;
10
- getRandomInt(contract_address: string, input: number): Promise<void>;
11
- getMinedBlock(contract_address: string, offset: number): Promise<{
12
- total: any;
13
- mined_block: number[];
14
- }>;
15
- canClaimCall(contract_address: string, block: number): Promise<any>;
16
- }
1
+ import { StackswapAPI } from "../../index";
2
+ import { Token } from "./token.manager";
3
+ export declare class PoxlManager {
4
+ stackswap: StackswapAPI;
5
+ constructor(stackswap: StackswapAPI);
6
+ minePOXLToken(token: Token, mine_amount: string, callback?: any): Promise<void>;
7
+ stackPOXLToken(token: Token, stack_amount: string, stack_lock_period: string, callback?: any): Promise<void>;
8
+ claimMiningReward(token: Token, mined_blocknum: string, callback?: any): Promise<void>;
9
+ claimStackingReward(token: Token, target_reward_cycle: string, callback?: any): Promise<void>;
10
+ getRandomInt(contract_address: string, input: number): Promise<void>;
11
+ getMinedBlock(contract_address: string, offset: number): Promise<{
12
+ total: any;
13
+ mined_block: number[];
14
+ }>;
15
+ canClaimCall(contract_address: string, block: number): Promise<any>;
16
+ }
@@ -1,72 +1,72 @@
1
- import axios from "axios";
2
- import { openContractCall } from "@stacks/connect";
3
- import { decimal2integer, getPostConditionFromAsset, getReadOptions, getWriteOptions } from "../util";
4
- import { callReadOnlyFunction, cvToValue, FungibleConditionCode, noneCV, standardPrincipalCV, uintCV } from "@stacks/transactions";
5
- import { BaseToken, Token } from "./token.manager";
6
- export class PoxlManager {
7
- constructor(stackswap) {
8
- this.stackswap = stackswap;
9
- }
10
- async minePOXLToken(token, mine_amount, callback = null) {
11
- const post_condition = [];
12
- post_condition.push(await getPostConditionFromAsset(this.stackswap, this.stackswap.getSenderAddress(), Token.getBaseTokens(this.stackswap, BaseToken.STX).addr, decimal2integer(mine_amount, 6), FungibleConditionCode.Equal));
13
- const options = getWriteOptions(this.stackswap, token.addr, 'mine-tokens', [
14
- uintCV(decimal2integer(mine_amount, 6)), noneCV()
15
- ], post_condition, callback);
16
- await openContractCall(options);
17
- }
18
- async stackPOXLToken(token, stack_amount, stack_lock_period, callback = null) {
19
- const post_condition = [];
20
- post_condition.push(await getPostConditionFromAsset(this.stackswap, this.stackswap.getSenderAddress(), token.addr, decimal2integer(stack_amount, token.decimal), FungibleConditionCode.Equal));
21
- const options = getWriteOptions(this.stackswap, token.addr, 'stack-tokens', [uintCV(stack_amount), uintCV(stack_lock_period)], post_condition, callback);
22
- await openContractCall(options);
23
- }
24
- async claimMiningReward(token, mined_blocknum, callback = null) {
25
- const options = getWriteOptions(this.stackswap, token.addr, 'claim-token-reward', [
26
- uintCV(mined_blocknum)
27
- ], [], callback);
28
- await openContractCall(options);
29
- }
30
- async claimStackingReward(token, target_reward_cycle, callback = null) {
31
- const options = getWriteOptions(this.stackswap, token.addr, 'claim-stacking-reward', [
32
- uintCV(target_reward_cycle)
33
- ], [], callback, true);
34
- await openContractCall(options);
35
- }
36
- async getRandomInt(contract_address, input) {
37
- await callReadOnlyFunction(getReadOptions(this.stackswap, contract_address, 'get-random-uint-at-block', [uintCV(input)]));
38
- }
39
- async getMinedBlock(contract_address, offset) {
40
- const get_result = await axios.get(this.stackswap.config.STACKS_API_URL() + '/extended/v1/address/' + this.stackswap.getSenderAddress() + '/transactions', {
41
- params: {
42
- limit: 40,
43
- offset,
44
- },
45
- });
46
- const total = get_result.data.total;
47
- const results = get_result.data.results;
48
- const mined_block = [];
49
- for (const item of results) {
50
- try {
51
- if (contract_address === item.contract_call.contract_id && item.contract_call.function_name === 'mine-tokens') {
52
- const temp = await this.canClaimCall(contract_address, item.block_height);
53
- if (temp) {
54
- mined_block.push(item.block_height);
55
- }
56
- }
57
- }
58
- catch (e) {
59
- }
60
- }
61
- return { total, mined_block };
62
- }
63
- async canClaimCall(contract_address, block) {
64
- const options = getReadOptions(this.stackswap, contract_address, 'can-claim-mining-reward', [
65
- standardPrincipalCV(this.stackswap.getSenderAddress()),
66
- uintCV(block),
67
- ]);
68
- const result = await callReadOnlyFunction(options);
69
- return cvToValue(result);
70
- }
71
- }
1
+ import axios from "axios";
2
+ import { openContractCall } from "@stacks/connect";
3
+ import { decimal2integer, getPostConditionFromAsset, getReadOptions, getWriteOptions } from "../util";
4
+ import { callReadOnlyFunction, cvToValue, FungibleConditionCode, noneCV, standardPrincipalCV, uintCV } from "@stacks/transactions";
5
+ import { BaseToken, Token } from "./token.manager";
6
+ export class PoxlManager {
7
+ constructor(stackswap) {
8
+ this.stackswap = stackswap;
9
+ }
10
+ async minePOXLToken(token, mine_amount, callback = null) {
11
+ const post_condition = [];
12
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, this.stackswap.getSenderAddress(), Token.getBaseTokens(this.stackswap, BaseToken.STX).addr, decimal2integer(mine_amount, 6), FungibleConditionCode.Equal));
13
+ const options = getWriteOptions(this.stackswap, token.addr, 'mine-tokens', [
14
+ uintCV(decimal2integer(mine_amount, 6)), noneCV()
15
+ ], post_condition, callback);
16
+ await openContractCall(options);
17
+ }
18
+ async stackPOXLToken(token, stack_amount, stack_lock_period, callback = null) {
19
+ const post_condition = [];
20
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, this.stackswap.getSenderAddress(), token.addr, decimal2integer(stack_amount, token.decimal), FungibleConditionCode.Equal));
21
+ const options = getWriteOptions(this.stackswap, token.addr, 'stack-tokens', [uintCV(stack_amount), uintCV(stack_lock_period)], post_condition, callback);
22
+ await openContractCall(options);
23
+ }
24
+ async claimMiningReward(token, mined_blocknum, callback = null) {
25
+ const options = getWriteOptions(this.stackswap, token.addr, 'claim-token-reward', [
26
+ uintCV(mined_blocknum)
27
+ ], [], callback);
28
+ await openContractCall(options);
29
+ }
30
+ async claimStackingReward(token, target_reward_cycle, callback = null) {
31
+ const options = getWriteOptions(this.stackswap, token.addr, 'claim-stacking-reward', [
32
+ uintCV(target_reward_cycle)
33
+ ], [], callback, true);
34
+ await openContractCall(options);
35
+ }
36
+ async getRandomInt(contract_address, input) {
37
+ await callReadOnlyFunction(getReadOptions(this.stackswap, contract_address, 'get-random-uint-at-block', [uintCV(input)]));
38
+ }
39
+ async getMinedBlock(contract_address, offset) {
40
+ const get_result = await axios.get(this.stackswap.config.STACKS_API_URL() + '/extended/v1/address/' + this.stackswap.getSenderAddress() + '/transactions', {
41
+ params: {
42
+ limit: 40,
43
+ offset,
44
+ },
45
+ });
46
+ const total = get_result.data.total;
47
+ const results = get_result.data.results;
48
+ const mined_block = [];
49
+ for (const item of results) {
50
+ try {
51
+ if (contract_address === item.contract_call.contract_id && item.contract_call.function_name === 'mine-tokens') {
52
+ const temp = await this.canClaimCall(contract_address, item.block_height);
53
+ if (temp) {
54
+ mined_block.push(item.block_height);
55
+ }
56
+ }
57
+ }
58
+ catch (e) {
59
+ }
60
+ }
61
+ return { total, mined_block };
62
+ }
63
+ async canClaimCall(contract_address, block) {
64
+ const options = getReadOptions(this.stackswap, contract_address, 'can-claim-mining-reward', [
65
+ standardPrincipalCV(this.stackswap.getSenderAddress()),
66
+ uintCV(block),
67
+ ]);
68
+ const result = await callReadOnlyFunction(options);
69
+ return cvToValue(result);
70
+ }
71
+ }
72
72
  //# sourceMappingURL=poxl.manager.js.map
@@ -1,25 +1,25 @@
1
- import BigNumber from "bignumber.js";
2
- import { StackswapAPI } from "../../index";
3
- export declare class StakingManager {
4
- stackswap: StackswapAPI;
5
- constructor(stackswap: StackswapAPI);
6
- getStackingRoundFirstBlock(cycle: number): Promise<any>;
7
- getStakingSTSWBalance(source: any): Promise<any>;
8
- getRewardRoundID_V2(source: any): Promise<any[]>;
9
- getStakingRound(contract_address: string, block: number | string): Promise<any>;
10
- getCurrentStakingRound(contract_address: string): Promise<any>;
11
- getRewardRoundID(offset: number): Promise<number[]>;
12
- range_number(start: number, end: number): number[];
13
- getReward(contract_addr: string, round_id: number): Promise<number>;
14
- txClaimReward(round_id: number, stsw_amount: string, callback?: any): Promise<void>;
15
- getUserCountFromVSTSW(): Promise<number>;
16
- getStakingBalanceFromVSTSW_V2(): Promise<BigNumber | 0>;
17
- getClaimRewardListFromVSTSW(): Promise<any[]>;
18
- getStakingBalanceFromVSTSW(): Promise<number>;
19
- txStakeFromStaking(invest_amt: number, period_month: number, callback?: any): Promise<void>;
20
- txCooldownFromVSTSW(index: number, callback?: any): Promise<void>;
21
- txUnstakingFromVSTSW(index: number, amountSTX: string, amountvSTX: string, callback?: any): Promise<void>;
22
- getRewardBalanceFromStaking(): Promise<number>;
23
- getRewardBalanceFromStakingFromList(unclaimed_list: any): Promise<number>;
24
- getRewardTotal(reward_list: any): Promise<any>;
25
- }
1
+ import BigNumber from "bignumber.js";
2
+ import { StackswapAPI } from "../../index";
3
+ export declare class StakingManager {
4
+ stackswap: StackswapAPI;
5
+ constructor(stackswap: StackswapAPI);
6
+ getStackingRoundFirstBlock(cycle: number): Promise<any>;
7
+ getStakingSTSWBalance(source: any): Promise<any>;
8
+ getRewardRoundID_V2(source: any): Promise<any[]>;
9
+ getStakingRound(contract_address: string, block: number | string): Promise<any>;
10
+ getCurrentStakingRound(contract_address: string): Promise<any>;
11
+ getRewardRoundID(offset: number): Promise<number[]>;
12
+ range_number(start: number, end: number): number[];
13
+ getReward(contract_addr: string, round_id: number): Promise<number>;
14
+ txClaimReward(round_id: number, stsw_amount: string, callback?: any): Promise<void>;
15
+ getUserCountFromVSTSW(): Promise<number>;
16
+ getStakingBalanceFromVSTSW_V2(): Promise<BigNumber | 0>;
17
+ getClaimRewardListFromVSTSW(): Promise<any[]>;
18
+ getStakingBalanceFromVSTSW(): Promise<number>;
19
+ txStakeFromStaking(invest_amt: number, period_month: number, callback?: any): Promise<void>;
20
+ txCooldownFromVSTSW(index: number, callback?: any): Promise<void>;
21
+ txUnstakingFromVSTSW(index: number, amountSTX: string, amountvSTX: string, callback?: any): Promise<void>;
22
+ getRewardBalanceFromStaking(): Promise<number>;
23
+ getRewardBalanceFromStakingFromList(unclaimed_list: any): Promise<number>;
24
+ getRewardTotal(reward_list: any): Promise<any>;
25
+ }