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.
- package/dist/esm/index.d.ts +106 -0
- package/dist/esm/index.js +196 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/stackswap/config.d.ts +172 -0
- package/dist/esm/stackswap/config.js +302 -0
- package/dist/esm/stackswap/config.js.map +1 -0
- package/dist/esm/stackswap/manager/bridge.manager.d.ts +27 -0
- package/dist/esm/stackswap/manager/bridge.manager.js +215 -0
- package/dist/esm/stackswap/manager/bridge.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/farm.manager.d.ts +41 -0
- package/dist/esm/stackswap/manager/farm.manager.js +293 -0
- package/dist/esm/stackswap/manager/farm.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/farm2.manager.d.ts +106 -0
- package/dist/esm/stackswap/manager/farm2.manager.js +625 -0
- package/dist/esm/stackswap/manager/farm2.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/farm3.manager.d.ts +121 -0
- package/dist/esm/stackswap/manager/farm3.manager.js +557 -0
- package/dist/esm/stackswap/manager/farm3.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/governance.manager.d.ts +9 -0
- package/dist/esm/stackswap/manager/governance.manager.js +68 -0
- package/dist/esm/stackswap/manager/governance.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/groupfarm.manager.d.ts +70 -0
- package/dist/esm/stackswap/manager/groupfarm.manager.js +379 -0
- package/dist/esm/stackswap/manager/groupfarm.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/launchpad.manager.d.ts +18 -0
- package/dist/esm/stackswap/manager/launchpad.manager.js +253 -0
- package/dist/esm/stackswap/manager/launchpad.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/lbtc.manager.d.ts +31 -0
- package/dist/esm/stackswap/manager/lbtc.manager.js +327 -0
- package/dist/esm/stackswap/manager/lbtc.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/lbtcstaking.manager.d.ts +61 -0
- package/dist/esm/stackswap/manager/lbtcstaking.manager.js +248 -0
- package/dist/esm/stackswap/manager/lbtcstaking.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/multisig.manager.d.ts +11 -0
- package/dist/esm/stackswap/manager/multisig.manager.js +50 -0
- package/dist/esm/stackswap/manager/multisig.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/nft.manager.d.ts +55 -0
- package/dist/esm/stackswap/manager/nft.manager.js +274 -0
- package/dist/esm/stackswap/manager/nft.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/operator.manager.d.ts +17 -0
- package/dist/esm/stackswap/manager/operator.manager.js +86 -0
- package/dist/esm/stackswap/manager/operator.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/other.manager.d.ts +9 -0
- package/dist/esm/stackswap/manager/other.manager.js +41 -0
- package/dist/esm/stackswap/manager/other.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/pool.manager.d.ts +34 -0
- package/dist/esm/stackswap/manager/pool.manager.js +172 -0
- package/dist/esm/stackswap/manager/pool.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/poxl.manager.d.ts +16 -0
- package/dist/esm/stackswap/manager/poxl.manager.js +72 -0
- package/dist/esm/stackswap/manager/poxl.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/staking.manager.d.ts +40 -0
- package/dist/esm/stackswap/manager/staking.manager.js +295 -0
- package/dist/esm/stackswap/manager/staking.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/swap.manager.d.ts +71 -0
- package/dist/esm/stackswap/manager/swap.manager.js +730 -0
- package/dist/esm/stackswap/manager/swap.manager.js.map +1 -0
- package/dist/esm/stackswap/manager/token.manager.d.ts +32 -0
- package/dist/esm/stackswap/manager/token.manager.js +142 -0
- package/dist/esm/stackswap/manager/token.manager.js.map +1 -0
- package/dist/esm/stackswap/util.d.ts +35 -0
- package/dist/esm/stackswap/util.js +202 -0
- package/dist/esm/stackswap/util.js.map +1 -0
- package/dist/index.d.ts +106 -0
- package/dist/index.js +206 -0
- package/dist/index.js.map +1 -0
- package/dist/index.umd.js +1 -1
- package/dist/index.umd.js.map +1 -1
- package/dist/stackswap/config.d.ts +172 -0
- package/dist/stackswap/config.js +308 -0
- package/dist/stackswap/config.js.map +1 -0
- package/dist/stackswap/manager/bridge.manager.d.ts +27 -0
- package/dist/stackswap/manager/bridge.manager.js +222 -0
- package/dist/stackswap/manager/bridge.manager.js.map +1 -0
- package/dist/stackswap/manager/farm.manager.d.ts +41 -0
- package/dist/stackswap/manager/farm.manager.js +301 -0
- package/dist/stackswap/manager/farm.manager.js.map +1 -0
- package/dist/stackswap/manager/farm2.manager.d.ts +106 -0
- package/dist/stackswap/manager/farm2.manager.js +632 -0
- package/dist/stackswap/manager/farm2.manager.js.map +1 -0
- package/dist/stackswap/manager/farm3.manager.d.ts +121 -0
- package/dist/stackswap/manager/farm3.manager.js +564 -0
- package/dist/stackswap/manager/farm3.manager.js.map +1 -0
- package/dist/stackswap/manager/governance.manager.d.ts +9 -0
- package/dist/stackswap/manager/governance.manager.js +75 -0
- package/dist/stackswap/manager/governance.manager.js.map +1 -0
- package/dist/stackswap/manager/groupfarm.manager.d.ts +70 -0
- package/dist/stackswap/manager/groupfarm.manager.js +386 -0
- package/dist/stackswap/manager/groupfarm.manager.js.map +1 -0
- package/dist/stackswap/manager/launchpad.manager.d.ts +18 -0
- package/dist/stackswap/manager/launchpad.manager.js +257 -0
- package/dist/stackswap/manager/launchpad.manager.js.map +1 -0
- package/dist/stackswap/manager/lbtc.manager.d.ts +31 -0
- package/dist/stackswap/manager/lbtc.manager.js +334 -0
- package/dist/stackswap/manager/lbtc.manager.js.map +1 -0
- package/dist/stackswap/manager/lbtcstaking.manager.d.ts +61 -0
- package/dist/stackswap/manager/lbtcstaking.manager.js +255 -0
- package/dist/stackswap/manager/lbtcstaking.manager.js.map +1 -0
- package/dist/stackswap/manager/multisig.manager.d.ts +11 -0
- package/dist/stackswap/manager/multisig.manager.js +54 -0
- package/dist/stackswap/manager/multisig.manager.js.map +1 -0
- package/dist/stackswap/manager/nft.manager.d.ts +55 -0
- package/dist/stackswap/manager/nft.manager.js +281 -0
- package/dist/stackswap/manager/nft.manager.js.map +1 -0
- package/dist/stackswap/manager/operator.manager.d.ts +17 -0
- package/dist/stackswap/manager/operator.manager.js +93 -0
- package/dist/stackswap/manager/operator.manager.js.map +1 -0
- package/dist/stackswap/manager/other.manager.d.ts +9 -0
- package/dist/stackswap/manager/other.manager.js +45 -0
- package/dist/stackswap/manager/other.manager.js.map +1 -0
- package/dist/stackswap/manager/pool.manager.d.ts +34 -0
- package/dist/stackswap/manager/pool.manager.js +180 -0
- package/dist/stackswap/manager/pool.manager.js.map +1 -0
- package/dist/stackswap/manager/poxl.manager.d.ts +16 -0
- package/dist/stackswap/manager/poxl.manager.js +79 -0
- package/dist/stackswap/manager/poxl.manager.js.map +1 -0
- package/dist/stackswap/manager/staking.manager.d.ts +40 -0
- package/dist/stackswap/manager/staking.manager.js +302 -0
- package/dist/stackswap/manager/staking.manager.js.map +1 -0
- package/dist/stackswap/manager/swap.manager.d.ts +71 -0
- package/dist/stackswap/manager/swap.manager.js +737 -0
- package/dist/stackswap/manager/swap.manager.js.map +1 -0
- package/dist/stackswap/manager/token.manager.d.ts +32 -0
- package/dist/stackswap/manager/token.manager.js +150 -0
- package/dist/stackswap/manager/token.manager.js.map +1 -0
- package/dist/stackswap/util.d.ts +35 -0
- package/dist/stackswap/util.js +219 -0
- package/dist/stackswap/util.js.map +1 -0
- package/package.json +1 -3
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.BridgeManager = void 0;
|
|
7
|
+
const transactions_1 = require("@stacks/transactions");
|
|
8
|
+
const connect_1 = require("@stacks/connect");
|
|
9
|
+
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
10
|
+
const util_1 = require("../util");
|
|
11
|
+
class BridgeManager {
|
|
12
|
+
constructor(stackswap) {
|
|
13
|
+
this.stackswap = stackswap;
|
|
14
|
+
}
|
|
15
|
+
async get_voters() {
|
|
16
|
+
const options = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'get-voters', []);
|
|
17
|
+
try {
|
|
18
|
+
const result = await (0, transactions_1.callReadOnlyFunction)(options);
|
|
19
|
+
const temp2 = [];
|
|
20
|
+
for (const cvToValueElement of (0, transactions_1.cvToValue)(result)) {
|
|
21
|
+
temp2.push(cvToValueElement.value);
|
|
22
|
+
}
|
|
23
|
+
return temp2;
|
|
24
|
+
}
|
|
25
|
+
catch (e) {
|
|
26
|
+
return '0';
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
async getVoteRes() {
|
|
30
|
+
const options = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'getVoteRes', []);
|
|
31
|
+
try {
|
|
32
|
+
const result = await (0, transactions_1.callReadOnlyFunction)(options);
|
|
33
|
+
return (0, transactions_1.cvToValue)(result);
|
|
34
|
+
}
|
|
35
|
+
catch (e) {
|
|
36
|
+
return '0';
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
async GetFee() {
|
|
40
|
+
const options = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'GetFee', []);
|
|
41
|
+
try {
|
|
42
|
+
const result = await (0, transactions_1.callReadOnlyFunction)(options);
|
|
43
|
+
return (0, transactions_1.cvToValue)(result);
|
|
44
|
+
}
|
|
45
|
+
catch (e) {
|
|
46
|
+
return '0';
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
async getETHToken(token) {
|
|
50
|
+
const options = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'getETHToken', [(0, util_1.parseAddressToCV)(token)]);
|
|
51
|
+
try {
|
|
52
|
+
const result = await (0, transactions_1.callReadOnlyFunction)(options);
|
|
53
|
+
return (0, transactions_1.cvToValue)(result);
|
|
54
|
+
}
|
|
55
|
+
catch (e) {
|
|
56
|
+
return '0';
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
async getOrderIDInfo_From(id) {
|
|
60
|
+
const options = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'getOrderIDInfo_From', [(0, transactions_1.uintCV)(id)]);
|
|
61
|
+
try {
|
|
62
|
+
const result = await (0, transactions_1.callReadOnlyFunction)(options);
|
|
63
|
+
return (0, transactions_1.cvToValue)(result);
|
|
64
|
+
}
|
|
65
|
+
catch (e) {
|
|
66
|
+
return '0';
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
async getOrderIDInfo_To(id) {
|
|
70
|
+
const options = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'getOrderIDInfo_To', [(0, transactions_1.uintCV)(id)]);
|
|
71
|
+
try {
|
|
72
|
+
const result = await (0, transactions_1.callReadOnlyFunction)(options);
|
|
73
|
+
return (0, transactions_1.cvToValue)(result);
|
|
74
|
+
}
|
|
75
|
+
catch (e) {
|
|
76
|
+
return '0';
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
async getOrderInfo_To(token, round) {
|
|
80
|
+
const options = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'getOrderInfo_To', [(0, util_1.parseAddressToCV)(token), (0, transactions_1.uintCV)(round)]);
|
|
81
|
+
try {
|
|
82
|
+
const result = await (0, transactions_1.callReadOnlyFunction)(options);
|
|
83
|
+
return (0, transactions_1.cvToValue)(result);
|
|
84
|
+
}
|
|
85
|
+
catch (e) {
|
|
86
|
+
return '0';
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
async getOrderInfo_From(token, round) {
|
|
90
|
+
const options = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'getOrderInfo_From', [(0, util_1.parseAddressToCV)(token), (0, transactions_1.uintCV)(round)]);
|
|
91
|
+
try {
|
|
92
|
+
const result = await (0, transactions_1.callReadOnlyFunction)(options);
|
|
93
|
+
return (0, transactions_1.cvToValue)(result);
|
|
94
|
+
}
|
|
95
|
+
catch (e) {
|
|
96
|
+
return '0';
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
async getOrderInfoWallet_From(token, round) {
|
|
100
|
+
const options = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'getWithdrawInfo_Wallet', [(0, util_1.parseAddressToCV)(this.stackswap.getSenderAddress()), (0, util_1.parseAddressToCV)(token), (0, transactions_1.uintCV)(round)]);
|
|
101
|
+
try {
|
|
102
|
+
const result = await (0, transactions_1.callReadOnlyFunction)(options);
|
|
103
|
+
return (0, transactions_1.cvToValue)(result);
|
|
104
|
+
}
|
|
105
|
+
catch (e) {
|
|
106
|
+
return '0';
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
async getOrderInfoWallet_To(token, round) {
|
|
110
|
+
const options = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'getDepositInfo_Wallet', [(0, util_1.parseAddressToCV)(this.stackswap.getSenderAddress()), (0, util_1.parseAddressToCV)(token), (0, transactions_1.uintCV)(round)]);
|
|
111
|
+
try {
|
|
112
|
+
const result = await (0, transactions_1.callReadOnlyFunction)(options);
|
|
113
|
+
return (0, transactions_1.cvToValue)(result);
|
|
114
|
+
}
|
|
115
|
+
catch (e) {
|
|
116
|
+
return '0';
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
async withdrawFixFee(amount, callback = null) {
|
|
120
|
+
const post_condition = [
|
|
121
|
+
await (0, util_1.getPostConditionFromAsset)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), this.stackswap.config.BASE_WSTX_DATA().addr, new bignumber_js_1.default(amount).multipliedBy(10 ** 6).toFixed(0), transactions_1.FungibleConditionCode.Equal)
|
|
122
|
+
];
|
|
123
|
+
const function_option = (0, util_1.getWriteOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'WithdrawFee_FIX', [], post_condition, callback);
|
|
124
|
+
await (0, connect_1.openContractCall)(function_option);
|
|
125
|
+
}
|
|
126
|
+
async WithdrawFee_RATIO(type, token, amount, callback = null) {
|
|
127
|
+
let functionName = 'WithdrawFee_RATIO_1';
|
|
128
|
+
switch (type) {
|
|
129
|
+
case 'ratio1':
|
|
130
|
+
functionName = 'WithdrawFee_RATIO_1';
|
|
131
|
+
break;
|
|
132
|
+
case 'ratio2':
|
|
133
|
+
functionName = 'WithdrawFee_RATIO_2';
|
|
134
|
+
break;
|
|
135
|
+
case 'ratio3':
|
|
136
|
+
functionName = 'WithdrawFee_RATIO_3';
|
|
137
|
+
break;
|
|
138
|
+
}
|
|
139
|
+
const post_condition = [
|
|
140
|
+
await (0, util_1.getPostConditionFromAsset)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), this.stackswap.config.BASE_STSW_DATA().addr, new bignumber_js_1.default(amount).multipliedBy(10 ** 6).toFixed(0), transactions_1.FungibleConditionCode.Equal),
|
|
141
|
+
];
|
|
142
|
+
const function_option = (0, util_1.getWriteOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), functionName, [
|
|
143
|
+
(0, util_1.parseAddressToCV)(token),
|
|
144
|
+
], post_condition, callback);
|
|
145
|
+
await (0, connect_1.openContractCall)(function_option);
|
|
146
|
+
}
|
|
147
|
+
async getLockedAmount(token = this.stackswap.config.BASE_STSW_DATA()) {
|
|
148
|
+
const amountInWallet = await this.stackswap.tokenManager.getBalanceOf(token, this.stackswap.config.CONTRACT_NAME_BRIDGE());
|
|
149
|
+
const tokenData = await this.getETHToken(token.addr);
|
|
150
|
+
const bnAmount = new bignumber_js_1.default(amountInWallet)
|
|
151
|
+
.minus(tokenData.FEE_RATIO_1_AMT.value)
|
|
152
|
+
.minus(tokenData.FEE_RATIO_2_AMT.value)
|
|
153
|
+
.minus(tokenData.FEE_RATIO_3_AMT.value);
|
|
154
|
+
return {
|
|
155
|
+
amountDecimal: bnAmount.dividedBy(10 ** token.decimal).toFixed(token.decimal),
|
|
156
|
+
amount: bnAmount.toFixed(0),
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
async vote(vote, callback = null) {
|
|
160
|
+
const function_option = (0, util_1.getWriteOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'vote', [
|
|
161
|
+
vote ? (0, transactions_1.trueCV)() : (0, transactions_1.falseCV)()
|
|
162
|
+
], [], callback);
|
|
163
|
+
await (0, connect_1.openContractCall)(function_option);
|
|
164
|
+
}
|
|
165
|
+
async depositSTSW_SIP10_to_ERC20(addr, amount, fee, callback = null) {
|
|
166
|
+
const post_condition = [
|
|
167
|
+
await (0, util_1.getPostConditionFromAsset)(this.stackswap, this.stackswap.getSenderAddress(), this.stackswap.config.BASE_STSW_DATA().addr, new bignumber_js_1.default(amount).plus(fee).multipliedBy(10 ** 6).toFixed(0), transactions_1.FungibleConditionCode.Equal),
|
|
168
|
+
];
|
|
169
|
+
const function_option = (0, util_1.getWriteOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'DepositForETH', [
|
|
170
|
+
(0, transactions_1.stringAsciiCV)(addr),
|
|
171
|
+
(0, util_1.parseAddressToCV)(this.stackswap.config.BASE_STSW_DATA().addr),
|
|
172
|
+
(0, transactions_1.uintCV)(new bignumber_js_1.default(amount).multipliedBy(10 ** 6).toFixed(0)),
|
|
173
|
+
(0, transactions_1.uintCV)(new bignumber_js_1.default(fee).multipliedBy(10 ** 6).toFixed(0)),
|
|
174
|
+
], post_condition, callback);
|
|
175
|
+
await (0, connect_1.openContractCall)(function_option);
|
|
176
|
+
}
|
|
177
|
+
async withdrawSTSW_ERC20_to_SIP10(orderID, amount, callback = null) {
|
|
178
|
+
const post_condition = [
|
|
179
|
+
await (0, util_1.getPostConditionFromAsset)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), this.stackswap.config.BASE_STSW_DATA().addr, new bignumber_js_1.default(amount).multipliedBy(10 ** 6).toFixed(0), transactions_1.FungibleConditionCode.Equal),
|
|
180
|
+
await (0, util_1.getPostConditionFromAsset)(this.stackswap, this.stackswap.getSenderAddress(), this.stackswap.config.BASE_WSTX_DATA().addr, new bignumber_js_1.default(10).multipliedBy(10 ** 6).toFixed(0), transactions_1.FungibleConditionCode.Equal)
|
|
181
|
+
];
|
|
182
|
+
const function_option = (0, util_1.getWriteOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'WithdrawFromETH', [
|
|
183
|
+
(0, transactions_1.uintCV)(orderID),
|
|
184
|
+
(0, util_1.parseAddressToCV)(this.stackswap.config.BASE_STSW_DATA().addr),
|
|
185
|
+
], post_condition, callback);
|
|
186
|
+
await (0, connect_1.openContractCall)(function_option);
|
|
187
|
+
}
|
|
188
|
+
async cancel_depositSTSW_SIP10_to_ERC20(orderID, token, amount, callback = null) {
|
|
189
|
+
const post_condition = [
|
|
190
|
+
await (0, util_1.getPostConditionFromAsset)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), this.stackswap.config.BASE_STSW_DATA().addr, new bignumber_js_1.default(amount).multipliedBy(10 ** 6).toFixed(0), transactions_1.FungibleConditionCode.Equal),
|
|
191
|
+
];
|
|
192
|
+
const function_option = (0, util_1.getWriteOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'Cancel_DepositForETH', [
|
|
193
|
+
(0, transactions_1.uintCV)(orderID),
|
|
194
|
+
(0, util_1.parseAddressToCV)(token)
|
|
195
|
+
], post_condition, callback);
|
|
196
|
+
await (0, connect_1.openContractCall)(function_option);
|
|
197
|
+
}
|
|
198
|
+
async registerTokenPair(sip10Addr, ercAddr, min, max, callback = null) {
|
|
199
|
+
const post_condition = [];
|
|
200
|
+
const function_option = (0, util_1.getWriteOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'RegisterTokenPair', [
|
|
201
|
+
(0, util_1.parseAddressToCV)(sip10Addr),
|
|
202
|
+
(0, transactions_1.stringAsciiCV)(ercAddr),
|
|
203
|
+
(0, transactions_1.uintCV)(new bignumber_js_1.default(min).multipliedBy(10 ** 6).toFixed(0)),
|
|
204
|
+
(0, transactions_1.uintCV)(new bignumber_js_1.default(max).multipliedBy(10 ** 6).toFixed(0)),
|
|
205
|
+
], post_condition, callback);
|
|
206
|
+
await (0, connect_1.openContractCall)(function_option);
|
|
207
|
+
}
|
|
208
|
+
async update_depositSTSW_SIP10_to_ERC20(round, orders, callback = null) {
|
|
209
|
+
const tempList = [];
|
|
210
|
+
for (const order of orders) {
|
|
211
|
+
tempList.push((0, transactions_1.uintCV)(order));
|
|
212
|
+
}
|
|
213
|
+
const function_option = (0, util_1.getWriteOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_BRIDGE(), 'DepositForETH', [
|
|
214
|
+
(0, util_1.parseAddressToCV)(this.stackswap.config.BASE_STSW_DATA().addr),
|
|
215
|
+
(0, transactions_1.uintCV)(round),
|
|
216
|
+
(0, transactions_1.listCV)(tempList),
|
|
217
|
+
], [], callback);
|
|
218
|
+
await (0, connect_1.openContractCall)(function_option);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
exports.BridgeManager = BridgeManager;
|
|
222
|
+
//# sourceMappingURL=bridge.manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridge.manager.js","sourceRoot":"","sources":["../../../src/stackswap/manager/bridge.manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import BigNumber from 'bignumber.js';
|
|
2
|
+
import { StackswapAPI } from "../../index";
|
|
3
|
+
import { LiquidityPool } from "./pool.manager";
|
|
4
|
+
import { Mode } from "./farm2.manager";
|
|
5
|
+
export declare class Farm {
|
|
6
|
+
pool: LiquidityPool;
|
|
7
|
+
locked_token: string;
|
|
8
|
+
TVL: string;
|
|
9
|
+
APR: string;
|
|
10
|
+
in_contract: string;
|
|
11
|
+
cur_round: number;
|
|
12
|
+
constructor(pool: LiquidityPool, locked_token: string, TVL: string, APR: string, in_contract: string, cur_round: number);
|
|
13
|
+
}
|
|
14
|
+
export declare class FarmManager {
|
|
15
|
+
stackswap: StackswapAPI;
|
|
16
|
+
constructor(stackswap: StackswapAPI);
|
|
17
|
+
getFarmingRound(bh: number | string): Promise<any>;
|
|
18
|
+
getFarmingRoundFirstBlock(cycle: number): Promise<any>;
|
|
19
|
+
getFarmingStakerStatus(pool_address: string, cur_round: number): Promise<{
|
|
20
|
+
pooledToken: any;
|
|
21
|
+
unclaimedList: any[];
|
|
22
|
+
stakedList: any[];
|
|
23
|
+
}>;
|
|
24
|
+
getFarmBalance(token: any): Promise<any>;
|
|
25
|
+
getPoolSTXPriceFarm(pair: any, token_x: any, token_y: any, farm_total: any): Promise<BigNumber>;
|
|
26
|
+
getFarmingTotalStatusCycle(cycle: number): Promise<string>;
|
|
27
|
+
getFarmingTotalValue(pool_address: string): Promise<any>;
|
|
28
|
+
getFarmingUserRewardPerCycle(pool_address: string, cycle: number): Promise<any>;
|
|
29
|
+
getFarmingUserRewardTotal(pool_address: string): Promise<any>;
|
|
30
|
+
getFarmingUserRewardList(pool_address: string, unclaimed_list: any): Promise<any>;
|
|
31
|
+
getFarmingRewardInfo(pool_address: string, cycle: number): Promise<any>;
|
|
32
|
+
stakeFarmingContract(pool_address: string, amountTokens: string, lockPeriod: number, callback?: any): Promise<void>;
|
|
33
|
+
claimFarmingContract(pool_address: string, cycle: number, amount_STSW: string, amount_LP: string, callback?: any): Promise<void>;
|
|
34
|
+
unstakeFarmingContract(pool_address: string, cycle: number, amount_LP: string, callback?: any): Promise<void>;
|
|
35
|
+
getCurrentFarmingRound(): Promise<any>;
|
|
36
|
+
getRewardBalanceFromFarming(pool_addr: string, unclaimed_list: any): Promise<string>;
|
|
37
|
+
getFarmingAPR(tvl: string, stsw_price: string): string;
|
|
38
|
+
getEachFarmData(data: any, type: Mode, callback: any): Promise<void>;
|
|
39
|
+
getFarmData(farm: any, bh: any, type: Mode, usd_stx: any, stsw_stx: any): Promise<any>;
|
|
40
|
+
getFarmUserData(farm: any, usd_stx: any): Promise<any>;
|
|
41
|
+
}
|
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.FarmManager = exports.Farm = void 0;
|
|
7
|
+
const transactions_1 = require("@stacks/transactions");
|
|
8
|
+
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
9
|
+
const connect_1 = require("@stacks/connect");
|
|
10
|
+
const util_1 = require("../util");
|
|
11
|
+
const farm2_manager_1 = require("./farm2.manager");
|
|
12
|
+
class Farm {
|
|
13
|
+
constructor(pool, locked_token, TVL, APR, in_contract, cur_round) {
|
|
14
|
+
this.pool = pool;
|
|
15
|
+
this.locked_token = locked_token;
|
|
16
|
+
this.TVL = TVL;
|
|
17
|
+
this.APR = APR;
|
|
18
|
+
this.in_contract = in_contract;
|
|
19
|
+
this.cur_round = cur_round;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.Farm = Farm;
|
|
23
|
+
class FarmManager {
|
|
24
|
+
constructor(stackswap) {
|
|
25
|
+
this.stackswap = stackswap;
|
|
26
|
+
}
|
|
27
|
+
async getFarmingRound(bh) {
|
|
28
|
+
try {
|
|
29
|
+
const function_option = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), 'get-reward-cycle', [
|
|
30
|
+
(0, transactions_1.uintCV)(bh)
|
|
31
|
+
]);
|
|
32
|
+
const result_raw = await (0, transactions_1.callReadOnlyFunction)(function_option);
|
|
33
|
+
const result = (0, transactions_1.cvToValue)(result_raw);
|
|
34
|
+
return result.value;
|
|
35
|
+
}
|
|
36
|
+
catch (e) {
|
|
37
|
+
return 0;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
async getFarmingRoundFirstBlock(cycle) {
|
|
41
|
+
const function_option = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), 'get-first-stacks-block-in-reward-cycle', [
|
|
42
|
+
(0, transactions_1.uintCV)(cycle)
|
|
43
|
+
]);
|
|
44
|
+
const result_raw = await (0, transactions_1.callReadOnlyFunction)(function_option);
|
|
45
|
+
const result = (0, transactions_1.cvToValue)(result_raw);
|
|
46
|
+
return result;
|
|
47
|
+
}
|
|
48
|
+
async getFarmingStakerStatus(pool_address, cur_round) {
|
|
49
|
+
const address = pool_address.split('.');
|
|
50
|
+
const function_option = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), 'get-staker', [
|
|
51
|
+
(0, transactions_1.standardPrincipalCV)(this.stackswap.getSenderAddress()),
|
|
52
|
+
(0, transactions_1.contractPrincipalCV)(address[0], address[1]),
|
|
53
|
+
]);
|
|
54
|
+
const result_raw = await (0, transactions_1.callReadOnlyFunction)(function_option);
|
|
55
|
+
const result = (0, transactions_1.cvToValue)(result_raw);
|
|
56
|
+
try {
|
|
57
|
+
const pooledToken = result.value.amountUstx.value;
|
|
58
|
+
const unclaimedList = [];
|
|
59
|
+
const stakedList = [];
|
|
60
|
+
for (const unclaimedElement of result.value.unclaimedList.value) {
|
|
61
|
+
if (unclaimedElement.value < cur_round && unclaimedElement.value <= this.stackswap.config.FARM_V1_END_CYCLE()) {
|
|
62
|
+
unclaimedList.push(unclaimedElement.value);
|
|
63
|
+
}
|
|
64
|
+
stakedList.push(unclaimedElement.value);
|
|
65
|
+
}
|
|
66
|
+
return { pooledToken, unclaimedList, stakedList };
|
|
67
|
+
}
|
|
68
|
+
catch (e) {
|
|
69
|
+
return { pooledToken: 0, unclaimedList: [], stakedList: [] };
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
async getFarmBalance(token) {
|
|
73
|
+
const pair_details_options = (0, util_1.getReadOptions)(this.stackswap, token.addr, 'get-balance', [(0, transactions_1.contractPrincipalCV)(this.stackswap.config.STACKSWAP_ADDRESS(), this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING())]);
|
|
74
|
+
try {
|
|
75
|
+
const result = await (0, transactions_1.callReadOnlyFunction)(pair_details_options);
|
|
76
|
+
return (0, transactions_1.cvToValue)(result).value;
|
|
77
|
+
}
|
|
78
|
+
catch (e) {
|
|
79
|
+
return 0;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
async getPoolSTXPriceFarm(pair, token_x, token_y, farm_total) {
|
|
83
|
+
const x_token_addr = token_x.addr;
|
|
84
|
+
const y_token_addr = token_y.addr;
|
|
85
|
+
let total_balacne = new bignumber_js_1.default(-1);
|
|
86
|
+
if (x_token_addr === this.stackswap.config.BASE_WSTX_DATA().addr) {
|
|
87
|
+
total_balacne = (new bignumber_js_1.default(pair.balance_x).multipliedBy(farm_total).dividedBy(pair.share_total).dividedBy(new bignumber_js_1.default(10 ** token_x.decimal))).multipliedBy(2);
|
|
88
|
+
}
|
|
89
|
+
else if (y_token_addr === this.stackswap.config.BASE_WSTX_DATA().addr) {
|
|
90
|
+
total_balacne = (new bignumber_js_1.default(pair.balance_y).multipliedBy(farm_total).dividedBy(pair.share_total).dividedBy(new bignumber_js_1.default(10 ** token_y.decimal))).multipliedBy(2);
|
|
91
|
+
}
|
|
92
|
+
return total_balacne;
|
|
93
|
+
}
|
|
94
|
+
async getFarmingTotalStatusCycle(cycle) {
|
|
95
|
+
const function_option = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), 'get-staking-stats-at-cycle', [
|
|
96
|
+
(0, transactions_1.uintCV)(cycle),
|
|
97
|
+
]);
|
|
98
|
+
const result_raw = await (0, transactions_1.callReadOnlyFunction)(function_option);
|
|
99
|
+
const result = (0, transactions_1.cvToValue)(result_raw);
|
|
100
|
+
try {
|
|
101
|
+
return new bignumber_js_1.default(result.value.amountUstx.value).multipliedBy(2).toFixed(0).toString();
|
|
102
|
+
}
|
|
103
|
+
catch (e) {
|
|
104
|
+
return '0';
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
async getFarmingTotalValue(pool_address) {
|
|
108
|
+
try {
|
|
109
|
+
const address = pool_address.split('.');
|
|
110
|
+
const function_option = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), 'get-farm-info', [
|
|
111
|
+
(0, transactions_1.contractPrincipalCV)(address[0], address[1]),
|
|
112
|
+
]);
|
|
113
|
+
const result_raw = await (0, transactions_1.callReadOnlyFunction)(function_option);
|
|
114
|
+
const result = (0, transactions_1.cvToValue)(result_raw);
|
|
115
|
+
return result.value;
|
|
116
|
+
}
|
|
117
|
+
catch (e) {
|
|
118
|
+
return 0;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
async getFarmingUserRewardPerCycle(pool_address, cycle) {
|
|
122
|
+
const address = pool_address.split('.');
|
|
123
|
+
const function_option = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), 'get-staking-reward-per-user', [
|
|
124
|
+
(0, transactions_1.standardPrincipalCV)(this.stackswap.getSenderAddress()),
|
|
125
|
+
(0, transactions_1.contractPrincipalCV)(address[0], address[1]),
|
|
126
|
+
(0, transactions_1.uintCV)(cycle),
|
|
127
|
+
]);
|
|
128
|
+
const result_raw = await (0, transactions_1.callReadOnlyFunction)(function_option);
|
|
129
|
+
const result = (0, transactions_1.cvToValue)(result_raw);
|
|
130
|
+
return result;
|
|
131
|
+
}
|
|
132
|
+
async getFarmingUserRewardTotal(pool_address) {
|
|
133
|
+
const address = pool_address.split('.');
|
|
134
|
+
const function_option = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), 'get-farming-reward-total', [
|
|
135
|
+
(0, transactions_1.standardPrincipalCV)(this.stackswap.getSenderAddress()),
|
|
136
|
+
(0, transactions_1.contractPrincipalCV)(address[0], address[1]),
|
|
137
|
+
]);
|
|
138
|
+
const result_raw = await (0, transactions_1.callReadOnlyFunction)(function_option);
|
|
139
|
+
const result = (0, transactions_1.cvToValue)(result_raw);
|
|
140
|
+
return result;
|
|
141
|
+
}
|
|
142
|
+
async getFarmingUserRewardList(pool_address, unclaimed_list) {
|
|
143
|
+
const address = pool_address.split('.');
|
|
144
|
+
const function_option = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), 'get-farming-reward-from-list', [
|
|
145
|
+
(0, transactions_1.standardPrincipalCV)(this.stackswap.getSenderAddress()),
|
|
146
|
+
(0, transactions_1.contractPrincipalCV)(address[0], address[1]),
|
|
147
|
+
(0, transactions_1.listCV)(unclaimed_list),
|
|
148
|
+
]);
|
|
149
|
+
const result_raw = await (0, transactions_1.callReadOnlyFunction)(function_option);
|
|
150
|
+
const result = (0, transactions_1.cvToValue)(result_raw);
|
|
151
|
+
return result;
|
|
152
|
+
}
|
|
153
|
+
async getFarmingRewardInfo(pool_address, cycle) {
|
|
154
|
+
const address = pool_address.split('.');
|
|
155
|
+
const function_option = (0, util_1.getReadOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), 'get-staker-at-cycle', [
|
|
156
|
+
(0, transactions_1.uintCV)(cycle),
|
|
157
|
+
(0, transactions_1.standardPrincipalCV)(this.stackswap.getSenderAddress()),
|
|
158
|
+
(0, transactions_1.contractPrincipalCV)(address[0], address[1]),
|
|
159
|
+
]);
|
|
160
|
+
const result_raw = await (0, transactions_1.callReadOnlyFunction)(function_option);
|
|
161
|
+
try {
|
|
162
|
+
const result = (0, transactions_1.cvToValue)(result_raw);
|
|
163
|
+
return result.value.toReturn.value;
|
|
164
|
+
}
|
|
165
|
+
catch (e) {
|
|
166
|
+
return '0';
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
async stakeFarmingContract(pool_address, amountTokens, lockPeriod, callback = null) {
|
|
170
|
+
const address = pool_address.split('.');
|
|
171
|
+
const amount = new bignumber_js_1.default(amountTokens).multipliedBy(10 ** 6).toFixed(0).toString();
|
|
172
|
+
const function_option = (0, util_1.getWriteOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), 'stake-tokens', [
|
|
173
|
+
(0, transactions_1.uintCV)(amount),
|
|
174
|
+
(0, transactions_1.contractPrincipalCV)(address[0], address[1]),
|
|
175
|
+
(0, transactions_1.uintCV)(lockPeriod),
|
|
176
|
+
], [await (0, util_1.getPostConditionFromAsset)(this.stackswap, this.stackswap.getSenderAddress(), pool_address, amount, transactions_1.FungibleConditionCode.Equal)], callback);
|
|
177
|
+
await (0, connect_1.openContractCall)(function_option);
|
|
178
|
+
}
|
|
179
|
+
async claimFarmingContract(pool_address, cycle, amount_STSW, amount_LP, callback = null) {
|
|
180
|
+
const address = pool_address.split('.');
|
|
181
|
+
const post_condition = [];
|
|
182
|
+
post_condition.push(await (0, util_1.getPostConditionFromAsset)(this.stackswap, this.stackswap.config.STACKSWAP_ADDRESS() + '.' + this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), this.stackswap.config.BASE_STSW_DATA().addr, amount_STSW, transactions_1.FungibleConditionCode.Equal));
|
|
183
|
+
post_condition.push(await (0, util_1.getPostConditionFromAsset)(this.stackswap, this.stackswap.config.STACKSWAP_ADDRESS() + '.' + this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), pool_address, amount_LP, transactions_1.FungibleConditionCode.Equal));
|
|
184
|
+
const function_option = (0, util_1.getWriteOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), 'claim-staking-reward', [
|
|
185
|
+
(0, transactions_1.uintCV)(cycle),
|
|
186
|
+
(0, transactions_1.contractPrincipalCV)(address[0], address[1]),
|
|
187
|
+
], post_condition, callback);
|
|
188
|
+
await (0, connect_1.openContractCall)(function_option);
|
|
189
|
+
}
|
|
190
|
+
async unstakeFarmingContract(pool_address, cycle, amount_LP, callback = null) {
|
|
191
|
+
const address = pool_address.split('.');
|
|
192
|
+
const post_condition = [];
|
|
193
|
+
post_condition.push(await (0, util_1.getPostConditionFromAsset)(this.stackswap, this.stackswap.config.STACKSWAP_ADDRESS() + '.' + this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), pool_address, amount_LP, transactions_1.FungibleConditionCode.Equal));
|
|
194
|
+
const function_option = (0, util_1.getWriteOptions)(this.stackswap, this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING(), 'unstake-from-farming', [
|
|
195
|
+
(0, transactions_1.uintCV)(cycle),
|
|
196
|
+
(0, transactions_1.contractPrincipalCV)(address[0], address[1]),
|
|
197
|
+
], post_condition, callback);
|
|
198
|
+
await (0, connect_1.openContractCall)(function_option);
|
|
199
|
+
}
|
|
200
|
+
async getCurrentFarmingRound() {
|
|
201
|
+
const bh = await this.stackswap.getCurrentBlocks();
|
|
202
|
+
return await this.getFarmingRound(bh.tenure_block_height);
|
|
203
|
+
}
|
|
204
|
+
async getRewardBalanceFromFarming(pool_addr, unclaimed_list) {
|
|
205
|
+
const num_list = [];
|
|
206
|
+
for (const unclaimed of unclaimed_list) {
|
|
207
|
+
num_list.push((0, transactions_1.uintCV)(unclaimed));
|
|
208
|
+
}
|
|
209
|
+
const result = await this.getFarmingUserRewardList(pool_addr, num_list);
|
|
210
|
+
const reward = (0, util_1.numFormat_)((0, util_1.num2decimal)(result.rewardSum.value, 6));
|
|
211
|
+
return reward;
|
|
212
|
+
}
|
|
213
|
+
getFarmingAPR(tvl, stsw_price) {
|
|
214
|
+
if (new bignumber_js_1.default(tvl) <= new bignumber_js_1.default(0)) {
|
|
215
|
+
const temp = new bignumber_js_1.default(671731.200000).multipliedBy(52).multipliedBy(new bignumber_js_1.default(stsw_price));
|
|
216
|
+
return temp.toFixed(3).toString();
|
|
217
|
+
}
|
|
218
|
+
else {
|
|
219
|
+
const tvl_bn = new bignumber_js_1.default(tvl);
|
|
220
|
+
const reward_stx = new bignumber_js_1.default(671731.2).multipliedBy(new bignumber_js_1.default(stsw_price));
|
|
221
|
+
const new_reward = reward_stx.div(tvl_bn);
|
|
222
|
+
const new_reward_apr = new_reward.multipliedBy(5200);
|
|
223
|
+
return new_reward_apr.toFixed(3).toString();
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
async getEachFarmData(data, type, callback) {
|
|
227
|
+
const oracle_stsw = (await this.stackswap.lbtcManager.getPrice('STSW'))['last-price'].value;
|
|
228
|
+
const oracle_stx = (await this.stackswap.lbtcManager.getPrice('STX'))['last-price'].value;
|
|
229
|
+
const bh = await this.stackswap.getCurrentBlocks();
|
|
230
|
+
const usd_stx = new bignumber_js_1.default(oracle_stx).dividedBy(10 ** 6).toNumber();
|
|
231
|
+
const stsw_stx = new bignumber_js_1.default(oracle_stsw).dividedBy(oracle_stx).toNumber();
|
|
232
|
+
const cur_round = await this.getFarmingRound(bh.tenure_block_height);
|
|
233
|
+
const farms = [];
|
|
234
|
+
data.forEach((farm) => {
|
|
235
|
+
if (farm.farm_group === 1) {
|
|
236
|
+
farm.farm_contract = this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING2_1();
|
|
237
|
+
}
|
|
238
|
+
else if (farm.farm_group === 5) {
|
|
239
|
+
farm.farm_contract = this.stackswap.config.CONTRACT_NAME_STACKSWAP_FARMING2_5();
|
|
240
|
+
}
|
|
241
|
+
farm.round = cur_round;
|
|
242
|
+
this.getFarmData(farm, bh, type, usd_stx, stsw_stx).then((value) => {
|
|
243
|
+
farms.push(value);
|
|
244
|
+
if (farms.length == data.length) {
|
|
245
|
+
callback(farms);
|
|
246
|
+
}
|
|
247
|
+
});
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
async getFarmData(farm, bh, type, usd_stx, stsw_stx) {
|
|
251
|
+
farm.valid = false;
|
|
252
|
+
switch (type) {
|
|
253
|
+
case farm2_manager_1.Mode.ONLY_BLOCKCHAIN:
|
|
254
|
+
farm.pair = (await this.stackswap.poolManager.getPairDataFromContract(farm.token_x, farm.token_y));
|
|
255
|
+
break;
|
|
256
|
+
case farm2_manager_1.Mode.WITH_SERVER:
|
|
257
|
+
farm.pair = (await this.stackswap.swapManager.findRouterAll(farm.token_x, farm.token_y, Number(bh))).pair;
|
|
258
|
+
break;
|
|
259
|
+
}
|
|
260
|
+
this.getFarmBalance(farm.pair.token_lp).then(farm_total => {
|
|
261
|
+
this.getPoolSTXPriceFarm(farm.pair, farm.token_x, farm.token_y, farm_total).then(tvl_stx => {
|
|
262
|
+
farm.tvl = tvl_stx.multipliedBy(new bignumber_js_1.default(usd_stx)).toNumber();
|
|
263
|
+
});
|
|
264
|
+
});
|
|
265
|
+
this.getFarmingTotalStatusCycle(Number(farm.round) + 1).then((value1) => {
|
|
266
|
+
const tvl = new bignumber_js_1.default((0, util_1.num2decimal)(value1, 6)).toFixed(3).toString();
|
|
267
|
+
if (farm.round > this.stackswap.config.FARM_V1_END_CYCLE()) {
|
|
268
|
+
farm.apr = '0';
|
|
269
|
+
}
|
|
270
|
+
else {
|
|
271
|
+
farm.apr = this.getFarmingAPR(tvl, stsw_stx);
|
|
272
|
+
}
|
|
273
|
+
});
|
|
274
|
+
return farm;
|
|
275
|
+
}
|
|
276
|
+
async getFarmUserData(farm, usd_stx) {
|
|
277
|
+
farm.migratable = false;
|
|
278
|
+
farm.isMigratable = await this.stackswap.farm2Manager.isUserMigratable2(farm.pair.token_lp.addr, farm.farm_contract);
|
|
279
|
+
const status = await this.getFarmingStakerStatus(farm.pair.token_lp.addr, Number(farm.round));
|
|
280
|
+
farm.claimable_list = status.unclaimedList;
|
|
281
|
+
farm.pooled_stsw = status.pooledToken;
|
|
282
|
+
farm.stakedList = status.stakedList;
|
|
283
|
+
for (const stakedListElement of status.stakedList) {
|
|
284
|
+
if (stakedListElement > this.stackswap.config.FARM_V1_END_CYCLE() && farm.isMigratable) {
|
|
285
|
+
farm.migratable = true;
|
|
286
|
+
}
|
|
287
|
+
if (farm.unstakedList) {
|
|
288
|
+
farm.unstakedList.push(stakedListElement);
|
|
289
|
+
}
|
|
290
|
+
else {
|
|
291
|
+
farm.unstakedList = [];
|
|
292
|
+
farm.unstakedList.push(stakedListElement);
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
const tvl_stx = await this.getPoolSTXPriceFarm(farm.pair, farm.token_x, farm.token_y, farm.pooled_stsw);
|
|
296
|
+
farm.user_TVL = tvl_stx.multipliedBy(new bignumber_js_1.default(usd_stx)).toFixed(3).toString();
|
|
297
|
+
return farm;
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
exports.FarmManager = FarmManager;
|
|
301
|
+
//# sourceMappingURL=farm.manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"farm.manager.js","sourceRoot":"","sources":["../../../src/stackswap/manager/farm.manager.ts"],"names":[],"mappings":"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"}
|