stackswap-front-api-test-02 0.10.3 → 0.10.5

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 (129) hide show
  1. package/dist/esm/index.d.ts +106 -0
  2. package/dist/esm/index.js +196 -0
  3. package/dist/esm/index.js.map +1 -0
  4. package/dist/esm/stackswap/config.d.ts +172 -0
  5. package/dist/esm/stackswap/config.js +302 -0
  6. package/dist/esm/stackswap/config.js.map +1 -0
  7. package/dist/esm/stackswap/manager/bridge.manager.d.ts +27 -0
  8. package/dist/esm/stackswap/manager/bridge.manager.js +215 -0
  9. package/dist/esm/stackswap/manager/bridge.manager.js.map +1 -0
  10. package/dist/esm/stackswap/manager/farm.manager.d.ts +41 -0
  11. package/dist/esm/stackswap/manager/farm.manager.js +293 -0
  12. package/dist/esm/stackswap/manager/farm.manager.js.map +1 -0
  13. package/dist/esm/stackswap/manager/farm2.manager.d.ts +106 -0
  14. package/dist/esm/stackswap/manager/farm2.manager.js +625 -0
  15. package/dist/esm/stackswap/manager/farm2.manager.js.map +1 -0
  16. package/dist/esm/stackswap/manager/farm3.manager.d.ts +121 -0
  17. package/dist/esm/stackswap/manager/farm3.manager.js +557 -0
  18. package/dist/esm/stackswap/manager/farm3.manager.js.map +1 -0
  19. package/dist/esm/stackswap/manager/governance.manager.d.ts +9 -0
  20. package/dist/esm/stackswap/manager/governance.manager.js +68 -0
  21. package/dist/esm/stackswap/manager/governance.manager.js.map +1 -0
  22. package/dist/esm/stackswap/manager/groupfarm.manager.d.ts +70 -0
  23. package/dist/esm/stackswap/manager/groupfarm.manager.js +379 -0
  24. package/dist/esm/stackswap/manager/groupfarm.manager.js.map +1 -0
  25. package/dist/esm/stackswap/manager/launchpad.manager.d.ts +18 -0
  26. package/dist/esm/stackswap/manager/launchpad.manager.js +253 -0
  27. package/dist/esm/stackswap/manager/launchpad.manager.js.map +1 -0
  28. package/dist/esm/stackswap/manager/lbtc.manager.d.ts +31 -0
  29. package/dist/esm/stackswap/manager/lbtc.manager.js +327 -0
  30. package/dist/esm/stackswap/manager/lbtc.manager.js.map +1 -0
  31. package/dist/esm/stackswap/manager/lbtcstaking.manager.d.ts +61 -0
  32. package/dist/esm/stackswap/manager/lbtcstaking.manager.js +248 -0
  33. package/dist/esm/stackswap/manager/lbtcstaking.manager.js.map +1 -0
  34. package/dist/esm/stackswap/manager/multisig.manager.d.ts +11 -0
  35. package/dist/esm/stackswap/manager/multisig.manager.js +50 -0
  36. package/dist/esm/stackswap/manager/multisig.manager.js.map +1 -0
  37. package/dist/esm/stackswap/manager/nft.manager.d.ts +55 -0
  38. package/dist/esm/stackswap/manager/nft.manager.js +274 -0
  39. package/dist/esm/stackswap/manager/nft.manager.js.map +1 -0
  40. package/dist/esm/stackswap/manager/operator.manager.d.ts +17 -0
  41. package/dist/esm/stackswap/manager/operator.manager.js +86 -0
  42. package/dist/esm/stackswap/manager/operator.manager.js.map +1 -0
  43. package/dist/esm/stackswap/manager/other.manager.d.ts +9 -0
  44. package/dist/esm/stackswap/manager/other.manager.js +41 -0
  45. package/dist/esm/stackswap/manager/other.manager.js.map +1 -0
  46. package/dist/esm/stackswap/manager/pool.manager.d.ts +34 -0
  47. package/dist/esm/stackswap/manager/pool.manager.js +172 -0
  48. package/dist/esm/stackswap/manager/pool.manager.js.map +1 -0
  49. package/dist/esm/stackswap/manager/poxl.manager.d.ts +16 -0
  50. package/dist/esm/stackswap/manager/poxl.manager.js +72 -0
  51. package/dist/esm/stackswap/manager/poxl.manager.js.map +1 -0
  52. package/dist/esm/stackswap/manager/staking.manager.d.ts +40 -0
  53. package/dist/esm/stackswap/manager/staking.manager.js +295 -0
  54. package/dist/esm/stackswap/manager/staking.manager.js.map +1 -0
  55. package/dist/esm/stackswap/manager/swap.manager.d.ts +71 -0
  56. package/dist/esm/stackswap/manager/swap.manager.js +730 -0
  57. package/dist/esm/stackswap/manager/swap.manager.js.map +1 -0
  58. package/dist/esm/stackswap/manager/token.manager.d.ts +32 -0
  59. package/dist/esm/stackswap/manager/token.manager.js +142 -0
  60. package/dist/esm/stackswap/manager/token.manager.js.map +1 -0
  61. package/dist/esm/stackswap/util.d.ts +35 -0
  62. package/dist/esm/stackswap/util.js +202 -0
  63. package/dist/esm/stackswap/util.js.map +1 -0
  64. package/dist/index.d.ts +106 -0
  65. package/dist/index.js +206 -0
  66. package/dist/index.js.map +1 -0
  67. package/dist/index.umd.js +1 -1
  68. package/dist/index.umd.js.map +1 -1
  69. package/dist/stackswap/config.d.ts +172 -0
  70. package/dist/stackswap/config.js +308 -0
  71. package/dist/stackswap/config.js.map +1 -0
  72. package/dist/stackswap/manager/bridge.manager.d.ts +27 -0
  73. package/dist/stackswap/manager/bridge.manager.js +222 -0
  74. package/dist/stackswap/manager/bridge.manager.js.map +1 -0
  75. package/dist/stackswap/manager/farm.manager.d.ts +41 -0
  76. package/dist/stackswap/manager/farm.manager.js +301 -0
  77. package/dist/stackswap/manager/farm.manager.js.map +1 -0
  78. package/dist/stackswap/manager/farm2.manager.d.ts +106 -0
  79. package/dist/stackswap/manager/farm2.manager.js +632 -0
  80. package/dist/stackswap/manager/farm2.manager.js.map +1 -0
  81. package/dist/stackswap/manager/farm3.manager.d.ts +121 -0
  82. package/dist/stackswap/manager/farm3.manager.js +564 -0
  83. package/dist/stackswap/manager/farm3.manager.js.map +1 -0
  84. package/dist/stackswap/manager/governance.manager.d.ts +9 -0
  85. package/dist/stackswap/manager/governance.manager.js +75 -0
  86. package/dist/stackswap/manager/governance.manager.js.map +1 -0
  87. package/dist/stackswap/manager/groupfarm.manager.d.ts +70 -0
  88. package/dist/stackswap/manager/groupfarm.manager.js +386 -0
  89. package/dist/stackswap/manager/groupfarm.manager.js.map +1 -0
  90. package/dist/stackswap/manager/launchpad.manager.d.ts +18 -0
  91. package/dist/stackswap/manager/launchpad.manager.js +257 -0
  92. package/dist/stackswap/manager/launchpad.manager.js.map +1 -0
  93. package/dist/stackswap/manager/lbtc.manager.d.ts +31 -0
  94. package/dist/stackswap/manager/lbtc.manager.js +334 -0
  95. package/dist/stackswap/manager/lbtc.manager.js.map +1 -0
  96. package/dist/stackswap/manager/lbtcstaking.manager.d.ts +61 -0
  97. package/dist/stackswap/manager/lbtcstaking.manager.js +255 -0
  98. package/dist/stackswap/manager/lbtcstaking.manager.js.map +1 -0
  99. package/dist/stackswap/manager/multisig.manager.d.ts +11 -0
  100. package/dist/stackswap/manager/multisig.manager.js +54 -0
  101. package/dist/stackswap/manager/multisig.manager.js.map +1 -0
  102. package/dist/stackswap/manager/nft.manager.d.ts +55 -0
  103. package/dist/stackswap/manager/nft.manager.js +281 -0
  104. package/dist/stackswap/manager/nft.manager.js.map +1 -0
  105. package/dist/stackswap/manager/operator.manager.d.ts +17 -0
  106. package/dist/stackswap/manager/operator.manager.js +93 -0
  107. package/dist/stackswap/manager/operator.manager.js.map +1 -0
  108. package/dist/stackswap/manager/other.manager.d.ts +9 -0
  109. package/dist/stackswap/manager/other.manager.js +45 -0
  110. package/dist/stackswap/manager/other.manager.js.map +1 -0
  111. package/dist/stackswap/manager/pool.manager.d.ts +34 -0
  112. package/dist/stackswap/manager/pool.manager.js +180 -0
  113. package/dist/stackswap/manager/pool.manager.js.map +1 -0
  114. package/dist/stackswap/manager/poxl.manager.d.ts +16 -0
  115. package/dist/stackswap/manager/poxl.manager.js +79 -0
  116. package/dist/stackswap/manager/poxl.manager.js.map +1 -0
  117. package/dist/stackswap/manager/staking.manager.d.ts +40 -0
  118. package/dist/stackswap/manager/staking.manager.js +302 -0
  119. package/dist/stackswap/manager/staking.manager.js.map +1 -0
  120. package/dist/stackswap/manager/swap.manager.d.ts +71 -0
  121. package/dist/stackswap/manager/swap.manager.js +737 -0
  122. package/dist/stackswap/manager/swap.manager.js.map +1 -0
  123. package/dist/stackswap/manager/token.manager.d.ts +32 -0
  124. package/dist/stackswap/manager/token.manager.js +150 -0
  125. package/dist/stackswap/manager/token.manager.js.map +1 -0
  126. package/dist/stackswap/util.d.ts +35 -0
  127. package/dist/stackswap/util.js +219 -0
  128. package/dist/stackswap/util.js.map +1 -0
  129. package/package.json +1 -3
@@ -0,0 +1,248 @@
1
+ import { callReadOnlyFunction, cvToValue, FungibleConditionCode, listCV, makeStandardNonFungiblePostCondition, NonFungibleConditionCode, standardPrincipalCV, uintCV } from "@stacks/transactions";
2
+ import axios from "axios";
3
+ import { openContractCall } from "@stacks/connect";
4
+ import BigNumber from "bignumber.js";
5
+ import { getPostConditionFromAsset, getReadOptions, getWriteOptions, num2decimal, numFormat_ } from "../util";
6
+ import { BaseToken, Token } from "./token.manager";
7
+ export class LBTCStakingManager {
8
+ constructor(stackswap) {
9
+ this.stackswap = stackswap;
10
+ }
11
+ async getStackingRoundFirstBlock(cycle) {
12
+ const function_option = getReadOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_LOGIC_V3(), 'get-first-stacks-block-in-reward-cycle', [
13
+ uintCV(cycle)
14
+ ]);
15
+ const result_raw = await callReadOnlyFunction(function_option);
16
+ const result = cvToValue(result_raw);
17
+ return result;
18
+ }
19
+ async getStakingRound(block) {
20
+ try {
21
+ const options = getReadOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_LOGIC_V3(), 'get-reward-cycle', [
22
+ uintCV(block),
23
+ ]);
24
+ const result = await callReadOnlyFunction(options);
25
+ return cvToValue(result).value;
26
+ }
27
+ catch (e) {
28
+ return 0;
29
+ }
30
+ }
31
+ async getCurrentStakingRound() {
32
+ const bh = await this.stackswap.getCurrentBlocks();
33
+ return await this.getStakingRound(bh.tenure_block_height);
34
+ }
35
+ async getStaker() {
36
+ try {
37
+ const round = Number(await this.getCurrentStakingRound());
38
+ const options = getReadOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_DATA_V3(), 'get-staker', [
39
+ standardPrincipalCV(this.stackswap.getSenderAddress()),
40
+ ]);
41
+ const result = await callReadOnlyFunction(options);
42
+ const res = cvToValue(result).value;
43
+ const unclaimedList = [];
44
+ const stakedList = [];
45
+ for (const unclaimedElement of res.staked_list.value) {
46
+ if (Number(unclaimedElement.value) < Number(round)) {
47
+ unclaimedList.push(unclaimedElement.value);
48
+ }
49
+ stakedList.push(unclaimedElement.value);
50
+ }
51
+ return { unclaimedList, amount: res.amountReturn.value, stakedList };
52
+ }
53
+ catch (e) {
54
+ return { unclaimedList: [], amount: '0', stakedList: [] };
55
+ }
56
+ }
57
+ async getRoundData(round) {
58
+ try {
59
+ const options = getReadOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_DATA_V3(), 'get-staking-stats-at-cycle', [
60
+ uintCV(round),
61
+ ]);
62
+ const result = await callReadOnlyFunction(options);
63
+ const res = cvToValue(result).value;
64
+ return { rewardBase: res.amountRewardBase.value, amount: res.amountReturn.value, value: res.amountlBTC.value };
65
+ }
66
+ catch (e) {
67
+ return { rewardBase: '0', amount: '0', value: '0' };
68
+ }
69
+ }
70
+ async getRoundDataDefault(round) {
71
+ try {
72
+ const options = getReadOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_STSW_STACKING_DATA_V2(), 'get-staking-stats-at-cycle-or-default', [
73
+ uintCV(round),
74
+ ]);
75
+ const result = await callReadOnlyFunction(options);
76
+ const res = cvToValue(result).value;
77
+ return { rewardBase: res.amountRewardBase.value, amount: res.amountReturn.value, value: res.amountlBTC.value };
78
+ }
79
+ catch (e) {
80
+ return { amount: '0', value: '0', rewardBase: '0' };
81
+ }
82
+ }
83
+ async getLBTCNFT() {
84
+ const url = this.stackswap.config.STACKS_API_URL() + `/extended/v1/tokens/nft/holdings?principal=${this.stackswap.getSenderAddress()}&asset_identifiers=${this.stackswap.config.STACKSWAP_ADDRESS()}.${this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_DATA_V3()}::lBTC-staking-vault`;
85
+ const result = await axios.get(url);
86
+ const nfts = [];
87
+ try {
88
+ for (const resultElement of result.data.results) {
89
+ nfts.push(resultElement.value.repr);
90
+ }
91
+ return nfts;
92
+ }
93
+ catch (e) {
94
+ return [];
95
+ }
96
+ }
97
+ async getReward(round_id) {
98
+ const function_option = getReadOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_LOGIC_V3(), 'get-staking-reward-per-user', [
99
+ standardPrincipalCV(this.stackswap.getSenderAddress()),
100
+ uintCV(round_id)
101
+ ]);
102
+ const result_raw = await callReadOnlyFunction(function_option);
103
+ const result = cvToValue(result_raw);
104
+ return result;
105
+ }
106
+ async getClaimRewardList(nfts) {
107
+ let res_dict = {};
108
+ let id_list = [];
109
+ for (const nft of nfts) {
110
+ const function_option = getReadOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_DATA_V3(), 'get-staking-vault', [
111
+ uintCV(nft)
112
+ ]);
113
+ const result_raw = await callReadOnlyFunction(function_option);
114
+ const result = cvToValue(result_raw);
115
+ res_dict[nft] = result;
116
+ id_list.push(nft);
117
+ }
118
+ return [id_list, res_dict];
119
+ }
120
+ async txStake(invest_amt, period_month, callback = null) {
121
+ const invest_amt_bn = new BigNumber(10 ** 8).multipliedBy(invest_amt).toFixed(0).toString();
122
+ const postConditions = [];
123
+ postConditions.push(await getPostConditionFromAsset(this.stackswap, this.stackswap.getSenderAddress(), this.stackswap.config.BASE_LBTC_DATA().addr, invest_amt_bn, FungibleConditionCode.Equal));
124
+ const function_option = getWriteOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_LOGIC_V3(), 'stake-tokens', [
125
+ uintCV(invest_amt_bn), uintCV(period_month)
126
+ ], postConditions, callback);
127
+ await openContractCall(function_option);
128
+ }
129
+ async txClaim(round_id, stsw_amount, callback = null) {
130
+ const post_condition = [await getPostConditionFromAsset(this.stackswap, this.stackswap.config.STACKSWAP_ADDRESS() + '.' + this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_DATA_V3(), this.stackswap.config.BASE_STSW_DATA().addr, stsw_amount, FungibleConditionCode.Equal)];
131
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, this.stackswap.config.STACKSWAP_ADDRESS() + '.' + this.stackswap.config.CONTRACT_NAME_REWARD_BALANCER(), this.stackswap.config.BASE_STSW_DATA().addr, 0, FungibleConditionCode.GreaterEqual));
132
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, this.stackswap.config.STACKSWAP_ADDRESS() + '.' + this.stackswap.config.CONTRACT_NAME_REWARD_BALANCER(), this.stackswap.config.BASE_LBTC_DATA().addr, 0, FungibleConditionCode.GreaterEqual));
133
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, this.stackswap.config.STSW_LBTC_LP(), this.stackswap.config.BASE_STSW_DATA().addr, 0, FungibleConditionCode.GreaterEqual));
134
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, this.stackswap.config.STSW_LBTC_LP(), this.stackswap.config.BASE_LBTC_DATA().addr, 0, FungibleConditionCode.GreaterEqual));
135
+ post_condition.push(await getPostConditionFromAsset(this.stackswap, this.stackswap.getSenderAddress(), this.stackswap.config.BASE_STSW_DATA().addr, stsw_amount, FungibleConditionCode.Equal));
136
+ const function_option = getWriteOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_REWARD_BALANCER(), 'CLAIM_FROM_LBTC_STAKING', [
137
+ uintCV(round_id),
138
+ ], post_condition, callback);
139
+ await openContractCall(function_option);
140
+ }
141
+ async txUnstake(index, callback = null) {
142
+ const function_option = getWriteOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_LOGIC_V3(), 'unstake-tokens', [uintCV(index)], [], callback);
143
+ await openContractCall(function_option);
144
+ }
145
+ async txReclaim(index, amountSTX, callback = null) {
146
+ const post_conditions = [];
147
+ const assetString = `${this.stackswap.config.STACKSWAP_ADDRESS()}.${this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_DATA_V3()}::lBTC-staking-vault`;
148
+ post_conditions.push(await makeStandardNonFungiblePostCondition(this.stackswap.getSenderAddress(), NonFungibleConditionCode.Sends, assetString, uintCV(index)));
149
+ post_conditions.push(await getPostConditionFromAsset(this.stackswap, `${this.stackswap.config.STACKSWAP_ADDRESS()}.${this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_DATA_V3()}`, this.stackswap.config.BASE_LBTC_DATA().addr, amountSTX, FungibleConditionCode.Equal));
150
+ const function_option = getWriteOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_LOGIC_V3(), 'reclaim-tokens', [uintCV(index)], post_conditions, callback);
151
+ await openContractCall(function_option);
152
+ }
153
+ async getRewardFromList(reward_list) {
154
+ if (reward_list.length === 0) {
155
+ return 0;
156
+ }
157
+ const function_option = getReadOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_LOGIC_V3(), 'get-staking-reward-from-list', [
158
+ standardPrincipalCV(this.stackswap.getSenderAddress()),
159
+ listCV(reward_list),
160
+ ]);
161
+ const result_raw = await callReadOnlyFunction(function_option);
162
+ const result = cvToValue(result_raw);
163
+ return result.rewardSum.value;
164
+ }
165
+ async getRewardOneByOne(unclaimed_list) {
166
+ const num_list = [];
167
+ for (const unclaimed of unclaimed_list) {
168
+ num_list.push(uintCV(unclaimed));
169
+ }
170
+ let reward_num = new BigNumber(0);
171
+ try {
172
+ for (let i = 0; i < num_list.length; i++) {
173
+ const result = await this.getRewardFromList(num_list.slice(i, i + 4 < num_list.length ? i + 4 : num_list.length));
174
+ reward_num = reward_num.plus(result);
175
+ }
176
+ return num2decimal(reward_num.toString(), 6);
177
+ }
178
+ catch (e) {
179
+ return num2decimal(reward_num.toString(), 6);
180
+ }
181
+ }
182
+ async getRewardTotal(unclaimed_list, once = 4) {
183
+ const num_list = [];
184
+ for (const unclaimed of unclaimed_list) {
185
+ num_list.push(uintCV(unclaimed));
186
+ }
187
+ let reward_num = new BigNumber(0);
188
+ try {
189
+ for (let i = 0; i < num_list.length; i += once) {
190
+ const result = await this.getRewardFromList(num_list.slice(i, i + once < num_list.length ? i + once : num_list.length));
191
+ reward_num = reward_num.plus(result);
192
+ }
193
+ return num2decimal(reward_num.toString(), 6);
194
+ }
195
+ catch (e) {
196
+ return num2decimal(reward_num.toString(), 6);
197
+ }
198
+ }
199
+ async getlbtcStakingData(round_input = -1, block_height_input = "", price_dict = {}, tvl_lbtc_input = "") {
200
+ let bh = "";
201
+ if (block_height_input != "") {
202
+ bh = block_height_input;
203
+ }
204
+ else {
205
+ bh = (await this.stackswap.getCurrentBlocks()).tenure_block_height;
206
+ }
207
+ const block_height = Number(bh);
208
+ const round = round_input < 0 ? Math.floor((block_height - 38083) / 4320) : round_input;
209
+ const round_add = round_input < 0 ? 1 : 0;
210
+ const round_data = await this.getRoundData(round + round_add);
211
+ const tvl_apr = round_data.value;
212
+ const round_reward = round_data.rewardBase;
213
+ const current_round = Math.floor((block_height - 38083) / 4320);
214
+ const this_round_start_block = round * 4320 + 38083;
215
+ const next_round_start_block = (current_round) * 4320 + 38083;
216
+ const next_round_end_block = (current_round + 1) * 4320 + 38083 - 1;
217
+ const oracle_stsw = price_dict.stsw ? price_dict.stsw : num2decimal((await this.stackswap.lbtcManager.getPrice('STSW'))['last-price'].value, 6);
218
+ const oracle_lbtc = price_dict.lbtc ? price_dict.lbtc : num2decimal((await this.stackswap.lbtcManager.getPrice('lBTC'))['last-price'].value, 6);
219
+ const tvl_lbtc = tvl_lbtc_input != "" ? tvl_lbtc_input : await this.stackswap.tokenManager.getBalanceOf(Token.getBaseTokens(this.stackswap, BaseToken.lBTC), this.stackswap.config.STACKSWAP_ADDRESS() + '.' + this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_DATA_V3());
220
+ const apr_bn = new BigNumber(round_reward).multipliedBy(10 ** 4).multipliedBy(oracle_stsw).dividedBy(new BigNumber(tvl_apr).plus(1)).dividedBy(oracle_lbtc);
221
+ const max_apr = numFormat_(apr_bn.multipliedBy(8).toString(), 3);
222
+ const min_apr = numFormat_(apr_bn.toString(), 3);
223
+ const tvl_usd = numFormat_(new BigNumber(tvl_lbtc).multipliedBy(oracle_lbtc).div(10 ** 8).toString(), 2);
224
+ return { bh, round, round_data, tvl_apr, round_reward, this_round_start_block, next_round_start_block, next_round_end_block, max_apr, min_apr, tvl_usd, tvl_lbtc };
225
+ }
226
+ async getUserStakingData() {
227
+ const staker_info = await this.getStaker();
228
+ const user_staked_amount = staker_info.amount;
229
+ const stake_lbtc_claim_round_list = staker_info.unclaimedList;
230
+ const total_reward = await this.getRewardTotal(staker_info.unclaimedList);
231
+ return { user_staked_amount, stake_lbtc_claim_round_list, total_reward };
232
+ }
233
+ async getUserInfoRound(cycle, user) {
234
+ try {
235
+ const options = getReadOptions(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_LBTC_STACKING_DATA_V3(), 'get-staker-at-cycle', [
236
+ uintCV(cycle),
237
+ standardPrincipalCV(user),
238
+ ]);
239
+ const result = await callReadOnlyFunction(options);
240
+ const res = cvToValue(result).value;
241
+ return { amount: res.amountReturn.value, value: res.amountlBTC.value };
242
+ }
243
+ catch (e) {
244
+ return { amount: '0', value: '0' };
245
+ }
246
+ }
247
+ }
248
+ //# sourceMappingURL=lbtcstaking.manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lbtcstaking.manager.js","sourceRoot":"","sources":["../../../../src/stackswap/manager/lbtcstaking.manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { StackswapAPI } from "../../index";
2
+ export declare class MultisigManager {
3
+ stackswap: StackswapAPI;
4
+ constructor(stackswap: StackswapAPI);
5
+ deposit_vote_multisig(vote: boolean): Promise<void>;
6
+ withdraw_vote_multisig(vote: boolean): Promise<void>;
7
+ deposit_multisig(amount: string): Promise<void>;
8
+ withdraw_multisig(addr: string, amount: string): Promise<void>;
9
+ getMultisigSTSWAmount(): Promise<any>;
10
+ getMultisigResult(functionName: string): Promise<any>;
11
+ }
@@ -0,0 +1,50 @@
1
+ import { openContractCall } from "@stacks/connect";
2
+ import { callReadOnlyFunction, cvToValue, falseCV, FungibleConditionCode, trueCV, uintCV } from "@stacks/transactions";
3
+ import { getPostConditionFromAsset, getReadOptions, getWriteOptions, parseAddressToCV } from "../util";
4
+ export class MultisigManager {
5
+ constructor(stackswap) {
6
+ this.stackswap = stackswap;
7
+ }
8
+ async deposit_vote_multisig(vote) {
9
+ const function_option = getWriteOptions(this.stackswap, 'SPVRC3RHFD58B2PY1HZD2V71THPW7G445WBRCQYW.octopus_v01', 'deposit-vote', [
10
+ vote ? trueCV() : falseCV()
11
+ ], []);
12
+ await openContractCall(function_option);
13
+ }
14
+ async withdraw_vote_multisig(vote) {
15
+ const function_option = getWriteOptions(this.stackswap, 'SPVRC3RHFD58B2PY1HZD2V71THPW7G445WBRCQYW.octopus_v01', 'withdraw-vote', [
16
+ vote ? trueCV() : falseCV()
17
+ ], []);
18
+ await openContractCall(function_option);
19
+ }
20
+ async deposit_multisig(amount) {
21
+ const post_condition = [await getPostConditionFromAsset(this.stackswap, this.stackswap.getSenderAddress(), this.stackswap.config.BASE_STSW_DATA().addr, amount, FungibleConditionCode.Equal)];
22
+ const function_option = getWriteOptions(this.stackswap, 'SPVRC3RHFD58B2PY1HZD2V71THPW7G445WBRCQYW.octopus_v01', 'deposit', [
23
+ uintCV(amount)
24
+ ], post_condition);
25
+ await openContractCall(function_option);
26
+ }
27
+ async withdraw_multisig(addr, amount) {
28
+ const post_condition = [await getPostConditionFromAsset(this.stackswap, 'SPVRC3RHFD58B2PY1HZD2V71THPW7G445WBRCQYW.octopus_v01', this.stackswap.config.BASE_STSW_DATA().addr, amount, FungibleConditionCode.Equal)];
29
+ const function_option = getWriteOptions(this.stackswap, 'SPVRC3RHFD58B2PY1HZD2V71THPW7G445WBRCQYW.octopus_v01', 'withdraw', [
30
+ parseAddressToCV(addr), uintCV(amount)
31
+ ], post_condition);
32
+ await openContractCall(function_option);
33
+ }
34
+ async getMultisigSTSWAmount() {
35
+ const pair_details_options = getReadOptions(this.stackswap, this.stackswap.config.BASE_STSW_DATA().addr, 'get-balance', [parseAddressToCV('SPVRC3RHFD58B2PY1HZD2V71THPW7G445WBRCQYW.octopus_v01')]);
36
+ try {
37
+ const result = await callReadOnlyFunction(pair_details_options);
38
+ return cvToValue(result).value;
39
+ }
40
+ catch (e) {
41
+ return '0';
42
+ }
43
+ }
44
+ async getMultisigResult(functionName) {
45
+ const pair_details_options = getReadOptions(this.stackswap, 'SPVRC3RHFD58B2PY1HZD2V71THPW7G445WBRCQYW.octopus_v01', functionName, []);
46
+ const result = await callReadOnlyFunction(pair_details_options);
47
+ return cvToValue(result);
48
+ }
49
+ }
50
+ //# sourceMappingURL=multisig.manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multisig.manager.js","sourceRoot":"","sources":["../../../../src/stackswap/manager/multisig.manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AACjD,OAAO,EACL,oBAAoB,EACpB,SAAS,EACT,OAAO,EACP,qBAAqB,EACrB,MAAM,EACN,MAAM,EACP,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAC,yBAAyB,EAAE,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAC,MAAM,SAAS,CAAC;AAGrG,MAAM,OAAO,eAAe;IAG1B,YAAY,SAAuB;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,IAAa;QAGvC,MAAM,eAAe,GAAU,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,sDAAsD,EAAE,cAAc,EAAE;YACrI,IAAI,CAAA,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE;SAC3B,EAAE,EAAE,CAAC,CAAC;QACP,MAAM,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,IAAa;QAGxC,MAAM,eAAe,GAAU,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,sDAAsD,EAAE,eAAe,EAAE;YACtI,IAAI,CAAA,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE;SAC3B,EAAE,EAAE,CAAC,CAAC;QACP,MAAM,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,MAAc;QAGnC,MAAM,cAAc,GAAG,CAAC,MAAM,yBAAyB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9L,MAAM,eAAe,GAAU,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,sDAAsD,EAAE,SAAS,EAAE;YAChI,MAAM,CAAC,MAAM,CAAC;SACf,EAAE,cAAc,CAAC,CAAC;QACnB,MAAM,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,IAAY,EAAE,MAAc;QAGlD,MAAM,cAAc,GAAG,CAAC,MAAM,yBAAyB,CAAC,IAAI,CAAC,SAAS,EAAE,sDAAsD,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;QAEnN,MAAM,eAAe,GAAQ,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,sDAAsD,EAAE,UAAU,EAAE;YAC/H,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;SACvC,EAAE,cAAc,CAAC,CAAC;QACnB,MAAM,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,qBAAqB;QAEzB,MAAM,oBAAoB,GAAS,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,aAAa,EAC1H,CAAC,gBAAgB,CAAC,sDAAsD,CAAC,CAAC,CAAC,CAAC;QAC9E,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;YAEhE,OAAQ,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC;SACjC;QAAC,OAAO,CAAC,EAAE;YAEV,OAAO,GAAG,CAAC;SACZ;IAEH,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,YAAoB;QAC1C,MAAM,oBAAoB,GAAS,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,sDAAsD,EAAE,YAAY,EACpI,EAAE,CAAC,CAAC;QACN,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;QAEhE,OAAQ,SAAS,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;CAEF"}
@@ -0,0 +1,55 @@
1
+ import { StackswapAPI } from "../../index";
2
+ import { TupleCV, NonFungibleConditionCode } from "@stacks/transactions";
3
+ export declare class NftManager {
4
+ stackswap: StackswapAPI;
5
+ constructor(stackswap: StackswapAPI);
6
+ getUserNFTListFromContract(contract_address: string, holderAddress?: string): Promise<string[]>;
7
+ getUserNFTList(nft_asset_name: string, holderAddress?: string): Promise<string[]>;
8
+ getNFTAsset(tokenStr: string): Promise<string>;
9
+ getPostConditionFromAssetNFT(account: string, tokenStr: string, condition: NonFungibleConditionCode, id: string): Promise<import("@stacks/transactions").NonFungiblePostCondition>;
10
+ mintNFT(price: string | number, addr: string, callback?: any): Promise<void>;
11
+ batchMintNFT(price: string | number, addr: string, count: number, callback?: any): Promise<void>;
12
+ mintNFT2(mint_fee: number, callback?: any): Promise<void>;
13
+ batchSetMintPass(lists: TupleCV[], addr: string, callback?: any): Promise<void>;
14
+ listInUstx(id: number, price: string, comm?: string, callback?: any): Promise<void>;
15
+ unlistInUstx(id: number, callback?: any): Promise<void>;
16
+ buyInUstx(id: number, price: number, owner: string, comm?: string, callback?: any): Promise<void>;
17
+ reTouchNFT(id: number, amount: string, callback?: any): Promise<void>;
18
+ regressNFT(id: number, price?: string, callback?: any): Promise<void>;
19
+ getNFTData(id: number): Promise<any>;
20
+ getOwner(id: number): Promise<any>;
21
+ getMintPass(contract: string): Promise<any>;
22
+ getPassBalance(contract: string): Promise<any>;
23
+ getReserveAmount(id: number): Promise<any>;
24
+ getTokenURI(id: number): Promise<any>;
25
+ getTotalList(): Promise<any>;
26
+ getMarketList(): Promise<any>;
27
+ getMarketListing(id: number): Promise<any>;
28
+ getPASSData(isGold: boolean): Promise<{
29
+ id: number;
30
+ name: string;
31
+ img_url: string;
32
+ json_url: string;
33
+ desc: string;
34
+ attr: {};
35
+ price: number;
36
+ owner: string;
37
+ locked_amt: number;
38
+ addr: string;
39
+ contract_name: string;
40
+ }>;
41
+ getNFTDataFromID(id_: number): Promise<{
42
+ id: number;
43
+ name: string;
44
+ img_url: string;
45
+ json_url: string;
46
+ desc: string;
47
+ attr: {
48
+ reTouch: number;
49
+ };
50
+ price: number;
51
+ owner: string;
52
+ locked_amt: number;
53
+ contract_name: string;
54
+ }>;
55
+ }