wan-ton-sdk 0.0.7 → 0.0.9

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 (247) hide show
  1. package/dist/Bridge.compile.d.ts +2 -0
  2. package/dist/Bridge.compile.js +9 -0
  3. package/dist/Bridge.d.ts +208 -0
  4. package/dist/Bridge.js +468 -0
  5. package/dist/Fake.compile.d.ts +2 -0
  6. package/dist/Fake.compile.js +9 -0
  7. package/dist/GroupApprove.compile.d.ts +2 -0
  8. package/dist/GroupApprove.compile.js +7 -0
  9. package/dist/GroupApprove.d.ts +124 -0
  10. package/dist/GroupApprove.js +181 -0
  11. package/dist/JettonMinter.compile.d.ts +2 -0
  12. package/dist/JettonMinter.compile.js +6 -0
  13. package/dist/JettonMinter.d.ts +45 -0
  14. package/dist/JettonMinter.js +124 -0
  15. package/dist/JettonWallet.compile.d.ts +2 -0
  16. package/dist/JettonWallet.compile.js +6 -0
  17. package/dist/JettonWallet.d.ts +26 -0
  18. package/dist/JettonWallet.js +103 -0
  19. package/dist/Signature.compile.d.ts +2 -0
  20. package/dist/Signature.compile.js +7 -0
  21. package/dist/Signature.d.ts +44 -0
  22. package/dist/Signature.js +106 -0
  23. package/dist/address.compile.d.ts +2 -0
  24. package/dist/address.compile.js +9 -0
  25. package/dist/client/client-interface.d.ts +35 -0
  26. package/dist/client/client-interface.js +9 -0
  27. package/dist/client/client.d.ts +22 -0
  28. package/dist/client/client.js +86 -0
  29. package/dist/client/tonapi-client.d.ts +4630 -0
  30. package/dist/client/tonapi-client.js +5376 -0
  31. package/dist/code/encode-decode.d.ts +132 -0
  32. package/dist/code/encode-decode.js +645 -0
  33. package/dist/code/userLock.d.ts +39 -0
  34. package/dist/code/userLock.js +284 -0
  35. package/dist/common.d.ts +9 -0
  36. package/dist/common.js +45 -0
  37. package/dist/config/config-ex.d.ts +7 -0
  38. package/dist/config/config-ex.js +73 -0
  39. package/dist/const/const-value.d.ts +21 -0
  40. package/dist/const/const-value.js +26 -0
  41. package/dist/contractAccess/bridgeAccess.d.ts +10 -0
  42. package/dist/contractAccess/bridgeAccess.js +55 -0
  43. package/dist/contractAccess/groupApproveAccess.d.ts +10 -0
  44. package/dist/contractAccess/groupApproveAccess.js +54 -0
  45. package/dist/db/Db.d.ts +24 -0
  46. package/dist/db/Db.js +739 -0
  47. package/dist/db/DbAccess.d.ts +24 -0
  48. package/dist/db/DbAccess.js +211 -0
  49. package/dist/db/common.d.ts +5 -0
  50. package/dist/db/common.js +114 -0
  51. package/dist/event/getEvents.d.ts +17 -0
  52. package/dist/event/getEvents.js +387 -0
  53. package/dist/example/db/createDb-ex.d.ts +1 -0
  54. package/{example/createDb-ex.ts → dist/example/db/createDb-ex.js} +3 -4
  55. package/dist/example/db/dbFeedTrans-ex.d.ts +1 -0
  56. package/{example/dbFeedTrans-ex.ts → dist/example/db/dbFeedTrans-ex.js} +9 -11
  57. package/dist/example/event/getAllEvents-ex.d.ts +1 -0
  58. package/dist/example/event/getAllEvents-ex.js +70 -0
  59. package/dist/example/event/getEventByHash-ex.d.ts +1 -0
  60. package/{example/getEventByHash-ex.ts → dist/example/event/getEventByHash-ex.js} +21 -25
  61. package/dist/example/event/getEventsByRange-ex.d.ts +1 -0
  62. package/dist/example/event/getEventsByRange-ex.js +58 -0
  63. package/dist/example/getAllTrans.d.ts +1 -0
  64. package/dist/example/getAllTrans.js +30 -0
  65. package/dist/example/jetton/getJettonInfo-ex.d.ts +1 -0
  66. package/dist/example/jetton/getJettonInfo-ex.js +32 -0
  67. package/dist/example/lock-release/smgRelease-ex.d.ts +1 -0
  68. package/dist/example/lock-release/smgRelease-ex.js +134 -0
  69. package/dist/example/lock-release/userLock-ex.d.ts +1 -0
  70. package/dist/example/lock-release/userLock-ex.js +69 -0
  71. package/dist/example/manage/addSmg-ex.d.ts +1 -0
  72. package/dist/example/manage/addSmg-ex.js +59 -0
  73. package/dist/example/manage/compileContract-ex.d.ts +1 -0
  74. package/dist/example/manage/compileContract-ex.js +11 -0
  75. package/dist/example/manage/deploy-ex.d.ts +1 -0
  76. package/dist/example/manage/deploy-ex.js +58 -0
  77. package/dist/example/manage/setFee-ex.d.ts +1 -0
  78. package/dist/example/manage/setFee-ex.js +61 -0
  79. package/dist/example/manage/setFeeProxy.d.ts +1 -0
  80. package/dist/example/manage/setFeeProxy.js +47 -0
  81. package/dist/example/manage/upgradeBridgeSc-ex.d.ts +1 -0
  82. package/dist/example/manage/upgradeBridgeSc-ex.js +44 -0
  83. package/dist/example/token/AddToken-ex.d.ts +1 -0
  84. package/dist/example/token/AddToken-ex.js +113 -0
  85. package/dist/example/token/addTokenPair-ex.d.ts +1 -0
  86. package/dist/example/token/addTokenPair-ex.js +59 -0
  87. package/dist/example/token/delTokenPair-ex.d.ts +1 -0
  88. package/dist/example/token/delTokenPair-ex.js +49 -0
  89. package/dist/example/token/getTokenPair-ex.d.ts +1 -0
  90. package/dist/example/token/getTokenPair-ex.js +39 -0
  91. package/dist/example/token/mintToken-ex.d.ts +1 -0
  92. package/dist/example/token/mintToken-ex.js +56 -0
  93. package/dist/example/tran/converTranToTonTran.d.ts +1 -0
  94. package/dist/example/tran/converTranToTonTran.js +32 -0
  95. package/dist/example/tran/getTransByRange-ex.d.ts +1 -0
  96. package/{example/getTransByRange-ex.ts → dist/example/tran/getTransByRange-ex.js} +26 -40
  97. package/dist/example/tran/getTransaction-ex.d.ts +1 -0
  98. package/dist/example/tran/getTransaction-ex.js +47 -0
  99. package/dist/example/tran/isTranSuccess-ex.d.ts +1 -0
  100. package/dist/example/tran/isTranSuccess-ex.js +27 -0
  101. package/dist/fee/fee.d.ts +12 -0
  102. package/dist/fee/fee.js +21 -0
  103. package/dist/index.d.ts +15 -0
  104. package/dist/index.js +95 -0
  105. package/dist/jest.config.d.ts +3 -0
  106. package/dist/jest.config.js +8 -0
  107. package/dist/opcodes.d.ts +55 -0
  108. package/dist/opcodes.js +59 -0
  109. package/dist/sign/buildHash.d.ts +6 -0
  110. package/dist/sign/buildHash.js +39 -0
  111. package/dist/sign/rawTrans.d.ts +36 -0
  112. package/dist/sign/rawTrans.js +89 -0
  113. package/dist/sign/tools-secp256k1.d.ts +21 -0
  114. package/{sign → dist/sign}/tools-secp256k1.js +18 -44
  115. package/dist/testData/JettonMinter.compile.func.d.ts +2 -0
  116. package/dist/testData/JettonMinter.compile.func.js +13 -0
  117. package/dist/testData/JettonWallet.compile.func.d.ts +2 -0
  118. package/dist/testData/JettonWallet.compile.func.js +13 -0
  119. package/dist/testData/bridge.compile.func.d.ts +2 -0
  120. package/dist/testData/bridge.compile.func.js +13 -0
  121. package/dist/transResult/transResult.d.ts +29 -0
  122. package/dist/transResult/transResult.js +528 -0
  123. package/dist/utils/compileContract.d.ts +13 -0
  124. package/dist/utils/compileContract.js +54 -0
  125. package/dist/utils/logger.d.ts +16 -0
  126. package/dist/utils/logger.js +94 -0
  127. package/dist/utils/utils.d.ts +26 -0
  128. package/dist/utils/utils.js +330 -0
  129. package/dist/wallet/balance.d.ts +5 -0
  130. package/dist/wallet/balance.js +29 -0
  131. package/dist/wallet/jetton.d.ts +16 -0
  132. package/dist/wallet/jetton.js +171 -0
  133. package/dist/wallet/walletContract.d.ts +31 -0
  134. package/dist/wallet/walletContract.js +106 -0
  135. package/package.json +8 -6
  136. package/Bridge.compile.ts +0 -8
  137. package/Bridge.ts +0 -645
  138. package/Bridge.ts.org +0 -647
  139. package/Fake.compile.ts +0 -8
  140. package/GroupApprove.compile.ts +0 -6
  141. package/GroupApprove.ts +0 -274
  142. package/JettonMinter.compile.ts +0 -5
  143. package/JettonMinter.ts +0 -135
  144. package/JettonWallet.compile.ts +0 -5
  145. package/JettonWallet.ts +0 -127
  146. package/Signature.compile.ts +0 -6
  147. package/Signature.ts +0 -105
  148. package/address.compile.ts +0 -8
  149. package/client/1.json +0 -1730
  150. package/client/client.ts +0 -73
  151. package/client/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -15
  152. package/code/decode.spec.ts +0 -81
  153. package/code/encode-decode.ts +0 -622
  154. package/code/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -20
  155. package/code/log/wan-ton-sdk.out.2025-01-20 +0 -0
  156. package/code/userLock.ts +0 -291
  157. package/common.ts +0 -62
  158. package/config/config-ex.ts +0 -25
  159. package/config/config.ts +0 -1
  160. package/const/const-value.ts +0 -33
  161. package/contractAccess/bridgeAccess.ts +0 -60
  162. package/contractAccess/groupApproveAccess.ts +0 -59
  163. package/data/EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs.json +0 -7348
  164. package/db/Db.spec.ts +0 -193
  165. package/db/Db.ts +0 -736
  166. package/db/DbAccess.spec.ts +0 -23
  167. package/db/DbAccess.ts +0 -186
  168. package/db/common.ts +0 -94
  169. package/db/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -15
  170. package/db/log/wan-ton-sdk.out.2025-04-21 +0 -0
  171. package/event/getEvents.ts +0 -441
  172. package/event/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -15
  173. package/event/log/wan-ton-sdk.out.2024-12-19 +0 -0
  174. package/example/0:1.txt +0 -1
  175. package/example/AddToken-ex.ts +0 -148
  176. package/example/README.md +0 -21
  177. package/example/addSmg-ex.ts +0 -78
  178. package/example/addTokenPair-ex.ts +0 -73
  179. package/example/compileContract-ex.ts +0 -10
  180. package/example/converTranToTonTran.ts +0 -43
  181. package/example/delTokenPair-ex.ts +0 -63
  182. package/example/deploy-ex.ts +0 -68
  183. package/example/getAllEvents-ex.ts +0 -61
  184. package/example/getAllTrans.ts +0 -32
  185. package/example/getContractState-ex.ts +0 -33
  186. package/example/getEvents-ex.ts +0 -55
  187. package/example/getJettonInfo-ex.ts +0 -44
  188. package/example/getTokenPair-ex.ts +0 -47
  189. package/example/getTransaction-ex.ts +0 -62
  190. package/example/isTranSuccess-ex.ts +0 -33
  191. package/example/locateTx-ex.ts +0 -44
  192. package/example/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -55
  193. package/example/log/wan-ton-sdk.out.2025-04-21 +0 -447
  194. package/example/log/wan-ton-sdk.out.2025-04-22 +0 -1918
  195. package/example/log/wan-ton-sdk.out.2025-04-23 +0 -4216
  196. package/example/log/wan-ton-sdk.out.2025-04-24.gz +0 -0
  197. package/example/log/wan-ton-sdk.out.2025-04-25 +0 -46814
  198. package/example/log/wan-ton-sdk.out.2025-04-27.gz +0 -0
  199. package/example/log/wan-ton-sdk.out.2025-04-28 +0 -4966
  200. package/example/log/wan-ton-sdk.out.2025-04-29 +0 -1328
  201. package/example/log/wan-ton-sdk.out.2025-04-30 +0 -9
  202. package/example/mintToken-ex.ts +0 -82
  203. package/example/setFee-ex.ts +0 -82
  204. package/example/setFeeProxy.ts +0 -70
  205. package/example/smgRelease-ex.ts +0 -173
  206. package/example/upgradeBridgeSc-ex.ts +0 -49
  207. package/example/userLock-ex.ts +0 -78
  208. package/fee/fee.ts +0 -23
  209. package/index.ts +0 -76
  210. package/jest.config.ts +0 -9
  211. package/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -20
  212. package/log/wan-ton-sdk.out.2025-04-21 +0 -0
  213. package/log/wan-ton-sdk.out.2025-04-30 +0 -10
  214. package/opcodes.ts +0 -58
  215. package/publish.sh +0 -78
  216. package/sign/buildHash.ts +0 -47
  217. package/sign/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -15
  218. package/sign/log/wan-ton-sdk.out.2025-04-14 +0 -3
  219. package/sign/rawTrans.spec.ts +0 -117
  220. package/sign/rawTrans.ts +0 -122
  221. package/testData/JettonMinter.compile.func.ts +0 -8
  222. package/testData/JettonWallet.compile.func.ts +0 -8
  223. package/testData/addressList.json +0 -6
  224. package/testData/bridge.compile.func.ts +0 -8
  225. package/testData/bridge.compiled.json +0 -1
  226. package/testData/contractAddress.json +0 -7
  227. package/testData/jettonTokenInfo.json +0 -14
  228. package/testData/prvlist.json +0 -6
  229. package/testData/smg.json +0 -5
  230. package/testData/tokenInfo.json +0 -23
  231. package/transResult/transResult.ts +0 -608
  232. package/tsconfig.json +0 -19
  233. package/utils/.compiled.json +0 -1
  234. package/utils/compileContract.ts +0 -60
  235. package/utils/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -15
  236. package/utils/log/wan-ton-sdk.out.2025-01-08 +0 -0
  237. package/utils/logger.spec.ts +0 -14
  238. package/utils/logger.ts +0 -96
  239. package/utils/utils.spec.ts +0 -21
  240. package/utils/utils.ts +0 -295
  241. package/wallet/balance.ts +0 -29
  242. package/wallet/jetton.spec.ts +0 -27
  243. package/wallet/jetton.ts +0 -159
  244. package/wallet/walletContract.spec.ts +0 -111
  245. package/wallet/walletContract.ts +0 -105
  246. /package/{client/log/wan-ton-sdk.out.2024-12-19 → dist/config/config.d.ts} +0 -0
  247. /package/{code/log/wan-ton-sdk.out.2025-01-15 → dist/config/config.js} +0 -0
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const utils_1 = require("../utils/utils");
4
+ const config_ex_1 = require("../config/config-ex");
5
+ const client_1 = require("../client/client");
6
+ const getEvents_1 = require("../event/getEvents");
7
+ const scAddress = require('../testData/contractAddress.json');
8
+ const LIMIT = 10;
9
+ let MAX_TRY_TIMES = 5;
10
+ async function main() {
11
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configMainnet);
12
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configTestnet);
13
+ let client = null;
14
+ client = await (0, client_1.getClient)();
15
+ let scBridgeAddr = scAddress.bridgeAddress;
16
+ while (true) {
17
+ //client = await getClient();
18
+ try {
19
+ await (0, getEvents_1.getAllTransactions)(client, scBridgeAddr, LIMIT, MAX_TRY_TIMES);
20
+ break;
21
+ }
22
+ catch (e) {
23
+ console.log(e);
24
+ await (0, utils_1.sleep)(5000);
25
+ }
26
+ }
27
+ client = null;
28
+ }
29
+ main();
30
+ // ts-node getAllTrans.ts
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const config_ex_1 = require("../../config/config-ex");
4
+ const core_1 = require("@ton/core");
5
+ const jetton_1 = require("../../wallet/jetton");
6
+ let args = process.argv.slice(2);
7
+ let jettonTokenAddress = args[0];
8
+ const client_1 = require("../../client/client");
9
+ const prvList = require('../../testData/prvlist');
10
+ let client = null;
11
+ async function init() {
12
+ //await wanTonSdkInit(configMainnet);
13
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configTestnet);
14
+ client = await (0, client_1.getClient)();
15
+ }
16
+ async function DisplayJettonInfo(client, addr) {
17
+ let ret = await (0, jetton_1.getJettonData)(client, addr);
18
+ console.log("getJettonData=>", ret);
19
+ let retJettonContent = await (0, jetton_1.getJettonDataContent)(client, addr);
20
+ console.log("getJettonDataContent=>", await (0, jetton_1.parseWrappedJettonContent)(retJettonContent));
21
+ }
22
+ async function main() {
23
+ console.log("Entering main function");
24
+ await init();
25
+ await DisplayJettonInfo(client, core_1.Address.parse(jettonTokenAddress));
26
+ }
27
+ main();
28
+ // ts-node getJettonInfo-ex.ts EQB7MS_HPERUy7btkQlbgn3L4GQN_eqoev_D3jv6DvH9OxqL
29
+ // ts-node getJettonInfo-ex.ts EQDPFoyEUdur7g9c0nNn8rGX08TedRsvc_aik0nohFn8v1eF
30
+ // ts-node getJettonInfo-ex.ts EQC9vzT9V5F6wHXRnpDU2blgMBdeQBMJvLUmw_JISfpYKud7
31
+ // ts-node getJettonInfo-ex.ts kQBPs490SptIknaQy18XUJ5zUMrQ4Gl8BgHgfxPf-_59R7Mw
32
+ // ts-node getJettonInfo-ex.ts EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const client_1 = require("../../client/client");
4
+ const walletContract_1 = require("../../wallet/walletContract");
5
+ const core_1 = require("@ton/core");
6
+ const bridgeAccess_1 = require("../../contractAccess/bridgeAccess");
7
+ const utils_1 = require("../../utils/utils");
8
+ const common_1 = require("../../common");
9
+ const const_value_1 = require("../../const/const-value");
10
+ const jetton_1 = require("../../wallet/jetton");
11
+ const schnorr = require("../../sign/tools-secp256k1.js");
12
+ const fee_1 = require("../../fee/fee");
13
+ const config_ex_1 = require("../../config/config-ex");
14
+ const prvList = require('../../testData/prvlist');
15
+ const prvAlice = Buffer.from(prvList[1], 'hex');
16
+ const prvBob = Buffer.from(prvList[2], 'hex');
17
+ const scAddresses = require('../../testData/contractAddress.json');
18
+ const smgCfg = require('../../testData/smg.json');
19
+ const tokenInfo = require('../../testData/tokenInfo.json');
20
+ let smgID = smgCfg.smgId;
21
+ let smgReleaseValue = (0, core_1.toNano)('0.1');
22
+ let bridgeScAddr = scAddresses.bridgeAddress;
23
+ let transValueSmgRelease = fee_1.TON_FEE.TRANS_FEE_SMG_RELEASE;
24
+ let smgAgentFee = BigInt(1000); // should get from contract.
25
+ let dstUserAccount = "0xF6eB3CB4b187d3201AfBF96A38e62367325b29F9";
26
+ let aliceSender;
27
+ let smgConfig = require('../../testData/smg.json');
28
+ let client = null;
29
+ let aliceWallet, aliceAddressStr, aliceAddress;
30
+ let bobWallet, bobAddress, bobAddressStr;
31
+ async function init() {
32
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configMainnet);
33
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configTestnet);
34
+ client = await (0, client_1.getClient)();
35
+ aliceWallet = await (0, walletContract_1.getWalletByPrvKey)(prvAlice);
36
+ bobWallet = await (0, walletContract_1.getWalletByPrvKey)(prvBob);
37
+ aliceAddressStr = aliceWallet.address.toString();
38
+ aliceAddress = aliceWallet.address;
39
+ bobAddressStr = bobWallet.address.toString();
40
+ bobAddress = bobWallet.address;
41
+ aliceSender = await (0, walletContract_1.getSenderByPrvKey)(client, prvAlice);
42
+ }
43
+ async function getAgentFee(tokenPairID, srcChainId, dstChainId) {
44
+ let ba = bridgeAccess_1.BridgeAccess.create(client, bridgeScAddr);
45
+ let tokenPairFee = await ba.readContract('getTokenPairFee', [tokenPairID]);
46
+ let chainFee = await ba.readContract('getChainFee', [srcChainId, dstChainId]);
47
+ if (chainFee.agentFee) {
48
+ return chainFee.agentFee;
49
+ }
50
+ else {
51
+ return tokenPairFee.agentFee;
52
+ }
53
+ }
54
+ const jetton = require('../../wallet/jetton');
55
+ async function getJettonWalletAddr(client, tokenAccountAddr, ownerAddress) {
56
+ if (tokenAccountAddr.equals(core_1.Address.parse(const_value_1.TON_COIN_ACCOUNT_STR))) {
57
+ return core_1.Address.parse(const_value_1.TON_COIN_ACCOUNT_STR);
58
+ }
59
+ else {
60
+ return (0, jetton_1.getJettonAddress)(client, tokenAccountAddr, ownerAddress);
61
+ }
62
+ }
63
+ async function buildSmgReleaseParameters(client, input, srcChainId, dstChainId, bridgeScAddr) {
64
+ let bridgeJwAddress = await getJettonWalletAddr(client, input.tokenCoinAccount, bridgeScAddr);
65
+ let agentFee = await getAgentFee(input.tokenPairID, srcChainId, dstChainId);
66
+ let msgHashResult = common_1.common.computeHash(BigInt(const_value_1.BIP44_CHAINID), BigInt(input.uniqueID), BigInt(input.tokenPairID), BigInt(input.releaseValue), BigInt(agentFee), input.tokenCoinAccount, input.destAccount);
67
+ console.log("smgConfig.skSmg=>", smgConfig.skSmg);
68
+ let sig = schnorr.getSecSchnorrSByMsgHash(Buffer.from(smgConfig.skSmg, 'hex'), msgHashResult.hashBuf);
69
+ console.log("sig=>", sig);
70
+ const e = BigInt(sig.e);
71
+ const p = BigInt(sig.p);
72
+ const s = BigInt(sig.s);
73
+ return {
74
+ value: input.value,
75
+ queryID: input.queryID,
76
+ uniqueID: input.uniqueID,
77
+ smgID: input.smgID,
78
+ tokenPairID: input.tokenPairID,
79
+ releaseValue: input.releaseValue,
80
+ fee: agentFee,
81
+ userAccount: input.destAccount,
82
+ bridgeJettonWalletAddr: bridgeJwAddress,
83
+ e,
84
+ p,
85
+ s,
86
+ fwTonAmount: input.fwTonAmount,
87
+ totalTonAmount: input.totalTonAmount,
88
+ };
89
+ }
90
+ async function smgRelease() {
91
+ try {
92
+ let transValueSmg = transValueSmgRelease;
93
+ let ba = bridgeAccess_1.BridgeAccess.create(client, bridgeScAddr);
94
+ for (let key of Object.keys(tokenInfo)) {
95
+ console.log("key:", key);
96
+ // if(key.toString().toLowerCase() !== "tokenwrapped"){
97
+ // continue;
98
+ // }
99
+ // if(key.toString().toLowerCase() !== "coin"){
100
+ // continue;
101
+ // }
102
+ // if(key.toString().toLowerCase() !== "tokenOrg".toLowerCase()){
103
+ // continue;
104
+ // }
105
+ if (key.toString().toLowerCase() !== "coin".toLowerCase()) {
106
+ transValueSmg = fee_1.TON_FEE.TRANS_FEE_USER_LOCK_TOKEN;
107
+ }
108
+ let smgReleasePara = await buildSmgReleaseParameters(client, {
109
+ smgID: smgConfig.smgId,
110
+ tokenPairID: tokenInfo[key].tokenPairId,
111
+ releaseValue: smgReleaseValue,
112
+ value: transValueSmg,
113
+ queryID: BigInt(await (0, utils_1.getQueryID)()),
114
+ uniqueID: BigInt(await (0, utils_1.getQueryID)()), // should be txHas->bigInt, here is the example.
115
+ tokenCoinAccount: core_1.Address.parse(tokenInfo[key].dstTokenAcc),
116
+ //tokenCoinAccount:Address.parseFriendly(tokenInfo.tokenOrg.dstTokenAcc).address,
117
+ destAccount: bobAddress,
118
+ fwTonAmount: fee_1.TON_FEE.FWD_TON_AMOUNT_TRANSFER_JETTON,
119
+ totalTonAmount: fee_1.TON_FEE.TOTAL_TON_AMOUNT_TRANSFER_JETTON
120
+ }, tokenInfo[key].srcChainId, tokenInfo[key].dstChainId, core_1.Address.parse(bridgeScAddr));
121
+ let ret = await ba.writeContract('sendSmgRelease', aliceSender, smgReleasePara);
122
+ await (0, utils_1.sleep)(3000);
123
+ console.log("key = %s, ret of smRelease is %s", key, ret);
124
+ }
125
+ }
126
+ catch (e) {
127
+ console.log("err =%s", e.Error, e);
128
+ }
129
+ }
130
+ async function main() {
131
+ await init();
132
+ await smgRelease();
133
+ }
134
+ main();
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const client_1 = require("../../client/client");
4
+ const walletContract_1 = require("../../wallet/walletContract");
5
+ const core_1 = require("@ton/core");
6
+ const bridgeAccess_1 = require("../../contractAccess/bridgeAccess");
7
+ const utils_1 = require("../../utils/utils");
8
+ const fee_1 = require("../../fee/fee");
9
+ const config_ex_1 = require("../../config/config-ex");
10
+ const prvList = require('../../testData/prvlist');
11
+ const prvAlice = Buffer.from(prvList[1], 'hex');
12
+ const prvBob = Buffer.from(prvList[2], 'hex');
13
+ const scAddresses = require('../../testData/contractAddress.json');
14
+ const smgCfg = require('../../testData/smg.json');
15
+ const tokenInfo = require('../../testData/tokenInfo.json');
16
+ let smgID = smgCfg.smgId;
17
+ let crossValue = (0, core_1.toNano)('0.1');
18
+ let bridgeScAddr = scAddresses.bridgeAddress;
19
+ //let transValueUserLock = toNano('0.4')
20
+ let transValueUserLock = (0, core_1.toNano)('1');
21
+ let dstUserAccount = "0xF6eB3CB4b187d3201AfBF96A38e62367325b29F9";
22
+ let aliceSender;
23
+ let client = null;
24
+ let aliceWallet, aliceAddress;
25
+ async function init() {
26
+ //await wanTonSdkInit(configMainnet);
27
+ //await wanTonSdkInit(configTestnet);
28
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configTestTonApiNoDb);
29
+ client = await (0, client_1.getClient)();
30
+ aliceWallet = await (0, walletContract_1.getWalletByPrvKey)(prvAlice);
31
+ aliceAddress = aliceWallet.address.toString();
32
+ aliceSender = await (0, walletContract_1.getSenderByPrvKey)(client, prvAlice);
33
+ }
34
+ async function userLock() {
35
+ console.log("Entering userLock..");
36
+ try {
37
+ let transValue = transValueUserLock;
38
+ let ba = bridgeAccess_1.BridgeAccess.create(client, bridgeScAddr);
39
+ for (let key of Object.keys(tokenInfo)) {
40
+ console.log("key:", key);
41
+ if (key.toString().toLowerCase() !== ("tokenorg").toLowerCase()) {
42
+ continue;
43
+ }
44
+ if (key.toString().toLowerCase() !== ("coin").toLowerCase()) {
45
+ transValue = fee_1.TON_FEE.TRANS_FEE_USER_LOCK_TOKEN;
46
+ }
47
+ let ret = await ba.writeContract('sendUserLock', aliceSender, {
48
+ value: transValue,
49
+ smgID,
50
+ tokenPairID: tokenInfo[key].tokenPairId,
51
+ crossValue,
52
+ dstUserAccount,
53
+ bridgeScAddr,
54
+ client,
55
+ senderAccount: aliceAddress
56
+ });
57
+ await (0, utils_1.sleep)(3000);
58
+ console.log("key = %s, ret of userLock is %s", key, ret);
59
+ }
60
+ }
61
+ catch (e) {
62
+ console.log("err =%s", e.Error);
63
+ }
64
+ }
65
+ async function main() {
66
+ await init();
67
+ await userLock();
68
+ }
69
+ main();
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const config_ex_1 = require("../../config/config-ex");
4
+ const walletContract_1 = require("../../wallet/walletContract");
5
+ const client_1 = require("../../client/client");
6
+ const smgCfg = require('../../testData/smg.json');
7
+ const args = process.argv.slice(2);
8
+ const prvList = require('../../testData/prvlist');
9
+ let deployer = null, smgFeeProxy = null, oracleAdmin = null, robotAdmin = null;
10
+ let client = null;
11
+ const scAddresses = require('../../testData/contractAddress.json');
12
+ const bridgeAccess_1 = require("../../contractAccess/bridgeAccess");
13
+ const utils_1 = require("../../utils/utils");
14
+ const fee_1 = require("../../fee/fee");
15
+ async function init() {
16
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configMainnet);
17
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configTestnet);
18
+ deployer = await (0, walletContract_1.getWalletByPrvKey)(Buffer.from(prvList[0], 'hex'));
19
+ client = await (0, client_1.getClient)();
20
+ console.log("client=>", client);
21
+ }
22
+ const schnorr = require("../../sign/tools-secp256k1.js");
23
+ async function addSmg() {
24
+ let ba = bridgeAccess_1.BridgeAccess.create(client, scAddresses.bridgeAddress);
25
+ const skSmg = Buffer.from(smgCfg.skSmg, 'hex');
26
+ console.log("skSmg=>", skSmg);
27
+ const gpk = schnorr.getPKBySk(skSmg);
28
+ console.log("gpk=>", gpk);
29
+ const gpkX = gpk.startsWith("0x") || gpk.startsWith("0X") ? gpk.substring(0, 66) : `0x${gpk.substring(0, 64)}`;
30
+ const gpkY = gpk.startsWith("0x") || gpk.startsWith("0X") ? `0x${gpk.substring(66)}` : `0x${gpk.substring(64)}`;
31
+ const smgId = smgCfg.smgId;
32
+ console.log("gpkX=>", gpkX);
33
+ console.log("gpkY=>", gpkY);
34
+ let startTime = Math.floor(Date.now() / 1000);
35
+ let endTime = startTime + smgCfg.wkDuring;
36
+ // write contract
37
+ let opt = {
38
+ value: fee_1.TON_FEE.TRANS_FEE_NORMAL,
39
+ id: BigInt(smgId),
40
+ gpkX: BigInt(gpkX), gpkY: BigInt(gpkY),
41
+ startTime,
42
+ endTime,
43
+ queryID: await (0, utils_1.getQueryID)(),
44
+ };
45
+ console.log("opt=>", opt);
46
+ let via = await (0, walletContract_1.getSenderByPrvKey)(client, Buffer.from(prvList[0], 'hex'));
47
+ let ret = await ba.writeContract('sendSetStoremanGroupConfig', via, opt);
48
+ console.log("sendSetStoremanGroupConfig", ret);
49
+ let retGetSmg = await ba.readContract('getStoremanGroupConfig', [BigInt(smgId)]);
50
+ console.log("retGetSmg", retGetSmg);
51
+ }
52
+ async function main() {
53
+ console.log("Entering main function");
54
+ await init();
55
+ await addSmg();
56
+ }
57
+ ;
58
+ main();
59
+ // ts-node addSmg-ex.ts
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const bridge_compile_func_1 = require("../../testData/bridge.compile.func");
4
+ let filePath = "../../testData/bridge.compiled.json";
5
+ const compileContract_1 = require("../../utils/compileContract");
6
+ (async function main() {
7
+ let ret = await (0, compileContract_1.doCompile)(bridge_compile_func_1.conf, filePath);
8
+ if (ret) {
9
+ console.log(ret);
10
+ }
11
+ })();
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,58 @@
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
+ const fee_1 = require("../../fee/fee");
7
+ const config_ex_1 = require("../../config/config-ex");
8
+ const core_1 = require("@ton/core");
9
+ const Bridge_1 = require("../../Bridge");
10
+ const walletContract_1 = require("../../wallet/walletContract");
11
+ const client_1 = require("../../client/client");
12
+ const compileContract_1 = require("../../utils/compileContract");
13
+ const fs_2 = __importDefault(require("fs"));
14
+ const prvList = require('../../testData/prvlist');
15
+ const addressList = require('../../testData/addressList');
16
+ let deployer = null, smgFeeProxy = null, oracleAdmin = null, robotAdmin = null;
17
+ let client = null;
18
+ let bridge = null;
19
+ let deployerOpened = null;
20
+ let bridgeOpened = null;
21
+ let deployerValue = fee_1.TON_FEE.TRANS_FEE_DEPLOY;
22
+ const bridge_compile_func_1 = require("../../testData/bridge.compile.func");
23
+ let filePath = "../../testData/bridge.compiled.json";
24
+ async function buildCodeCell() {
25
+ await (0, compileContract_1.doCompile)(bridge_compile_func_1.conf, filePath);
26
+ let cr = JSON.parse(fs_2.default.readFileSync(filePath, 'utf-8'));
27
+ return core_1.Cell.fromBoc(Buffer.from(cr.codeBase64, "base64"))[0];
28
+ }
29
+ async function init() {
30
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configMainnet);
31
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configTestnet);
32
+ deployer = await (0, walletContract_1.getWalletByPrvKey)(Buffer.from(prvList[0], 'hex'));
33
+ smgFeeProxy = deployer;
34
+ oracleAdmin = deployer;
35
+ robotAdmin = deployer;
36
+ client = await (0, client_1.getClient)();
37
+ console.log("client=>", client);
38
+ let code = await buildCodeCell();
39
+ bridge = Bridge_1.Bridge.createFromConfig({
40
+ owner: deployer.address,
41
+ halt: 0,
42
+ init: 0,
43
+ smgFeeProxy: smgFeeProxy.address,
44
+ oracleAdmin: oracleAdmin.address,
45
+ operator: oracleAdmin.address,
46
+ }, code);
47
+ }
48
+ async function main() {
49
+ console.log(prvList);
50
+ console.log(addressList);
51
+ console.log("Entering main function");
52
+ await init();
53
+ bridgeOpened = await client.open(bridge);
54
+ let ret = await bridgeOpened.sendDeploy(await (0, walletContract_1.getSenderByPrvKey)(client, Buffer.from(prvList[0], 'hex')), deployerValue);
55
+ console.log("bridge address :", bridgeOpened.address);
56
+ console.log(ret);
57
+ }
58
+ main();
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const config_ex_1 = require("../../config/config-ex");
4
+ const core_1 = require("@ton/core");
5
+ const walletContract_1 = require("../../wallet/walletContract");
6
+ const client_1 = require("../../client/client");
7
+ const smgCfg = require('../../testData/smg.json');
8
+ const args = process.argv.slice(2);
9
+ const prvList = require('../../testData/prvlist');
10
+ let deployer = null, smgFeeProxy = null, oracleAdmin = null, robotAdmin = null;
11
+ let client = null;
12
+ const scAddresses = require('../../testData/contractAddress.json');
13
+ const bridgeAccess_1 = require("../../contractAccess/bridgeAccess");
14
+ const utils_1 = require("../../utils/utils");
15
+ const fee_1 = require("../../fee/fee");
16
+ async function init() {
17
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configMainnet);
18
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configTestnet);
19
+ deployer = await (0, walletContract_1.getWalletByPrvKey)(Buffer.from(prvList[0], 'hex'));
20
+ client = await (0, client_1.getClient)();
21
+ console.log("client=>", client);
22
+ }
23
+ const schnorr = require("../../sign/tools-secp256k1.js");
24
+ let tokenInfo = require('../../testData/tokenInfo.json');
25
+ async function setFee() {
26
+ let contractChainFee = (0, core_1.toNano)('0.01');
27
+ let contractTokenPairFee = (0, core_1.toNano)('0.02');
28
+ let agentFee = (0, core_1.toNano)('0.03');
29
+ let ba = bridgeAccess_1.BridgeAccess.create(client, scAddresses.bridgeAddress);
30
+ // set chain fee
31
+ for (let key of Object.keys(tokenInfo)) {
32
+ const queryID = await (0, utils_1.getQueryID)();
33
+ let via = await (0, walletContract_1.getSenderByPrvKey)(client, Buffer.from(prvList[0], 'hex'));
34
+ let ret = await ba.writeContract('sendSetChainFee', via, {
35
+ srcChainId: tokenInfo[key].srcChainId,
36
+ dstChainId: tokenInfo[key].dstChainId,
37
+ contractFee: Number(contractChainFee),
38
+ agentFee: Number(agentFee),
39
+ value: fee_1.TON_FEE.TRANS_FEE_NORMAL,
40
+ queryID,
41
+ });
42
+ ret = await ba.writeContract('sendSetTokenPairFee', via, {
43
+ tokenPairID: tokenInfo[key].tokenPairId,
44
+ fee: Number(contractTokenPairFee),
45
+ value: fee_1.TON_FEE.TRANS_FEE_NORMAL,
46
+ queryID,
47
+ });
48
+ let tokenPairFee = await ba.readContract('getTokenPairFee', [tokenInfo[key].tokenPairId]);
49
+ console.log("tokenpairIdFee", tokenInfo[key].tokenPairId, tokenPairFee);
50
+ let chainFee = await ba.readContract('getChainFee', [tokenInfo[key].srcChainId, tokenInfo[key].dstChainId]);
51
+ console.log("chainFee", "srcChainId", tokenInfo[key].srcChainId, "desChainId", tokenInfo[key].dstChainId, chainFee);
52
+ }
53
+ }
54
+ async function main() {
55
+ console.log("Entering main function");
56
+ await init();
57
+ await setFee();
58
+ }
59
+ ;
60
+ main();
61
+ // ts-node setFee-ex.ts
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const config_ex_1 = require("../../config/config-ex");
4
+ const walletContract_1 = require("../../wallet/walletContract");
5
+ const client_1 = require("../../client/client");
6
+ const smgCfg = require('../../testData/smg.json');
7
+ const args = process.argv.slice(2);
8
+ const prvList = require('../../testData/prvlist');
9
+ let deployer = null, feeProxy = null, oracleAdmin = null, robotAdmin = null;
10
+ let client = null;
11
+ const scAddresses = require('../../testData/contractAddress.json');
12
+ const bridgeAccess_1 = require("../../contractAccess/bridgeAccess");
13
+ const utils_1 = require("../../utils/utils");
14
+ const fee_1 = require("../../fee/fee");
15
+ async function init() {
16
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configMainnet);
17
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configTestnet);
18
+ deployer = await (0, walletContract_1.getWalletByPrvKey)(Buffer.from(prvList[0], 'hex'));
19
+ client = await (0, client_1.getClient)();
20
+ console.log("client=>", client);
21
+ feeProxy = await (0, walletContract_1.getWalletByPrvKey)(Buffer.from(prvList[4], 'hex'));
22
+ }
23
+ const schnorr = require("../../sign/tools-secp256k1.js");
24
+ let tokenInfo = require('../../testData/tokenInfo.json');
25
+ const setFeeGasValue = fee_1.TON_FEE.TRANS_FEE_NORMAL;
26
+ async function setFeeProxy() {
27
+ let ba = bridgeAccess_1.BridgeAccess.create(client, scAddresses.bridgeAddress);
28
+ // set chain fee
29
+ const queryID = await (0, utils_1.getQueryID)();
30
+ let via = await (0, walletContract_1.getSenderByPrvKey)(client, Buffer.from(prvList[0], 'hex'));
31
+ let ret = await ba.writeContract('sendSetFeeProxy', via, {
32
+ feeProxy: feeProxy.address, // EQAqx2ITzIiFmFdXx4DNsGo5jr0Ju7Q3pL9X_qzK11klOsEx
33
+ value: setFeeGasValue,
34
+ queryID,
35
+ });
36
+ await (0, utils_1.sleep)(3000);
37
+ let configInfo = await ba.readContract('getCrossConfig', []);
38
+ console.log("configInfo", configInfo);
39
+ }
40
+ async function main() {
41
+ console.log("Entering main function");
42
+ await init();
43
+ await setFeeProxy();
44
+ }
45
+ ;
46
+ main();
47
+ // ts-node setFeeProxy.ts
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const bridge_compile_func_1 = require("../../testData/bridge.compile.func");
4
+ let filePath = "../../testData/bridge.compiled.json";
5
+ const compileContract_1 = require("../../utils/compileContract");
6
+ const walletContract_1 = require("../../wallet/walletContract");
7
+ const client_1 = require("../../client/client");
8
+ const utils_1 = require("../../utils/utils");
9
+ const bridgeAccess_1 = require("../../contractAccess/bridgeAccess");
10
+ const fee_1 = require("../../fee/fee");
11
+ const prvList = require('../../testData/prvlist');
12
+ let client = null;
13
+ let queryID;
14
+ let deployer;
15
+ const config_ex_1 = require("../../config/config-ex");
16
+ const scAddresses = require('../../testData/contractAddress.json');
17
+ (async function main() {
18
+ await init();
19
+ let ret = await (0, compileContract_1.doCompile)(bridge_compile_func_1.conf, filePath);
20
+ if (ret) {
21
+ console.log(ret);
22
+ }
23
+ let newCode = ret.codeCell;
24
+ let ba = bridgeAccess_1.BridgeAccess.create(client, scAddresses.bridgeAddress);
25
+ // write contract
26
+ let via = await (0, walletContract_1.getSenderByPrvKey)(client, Buffer.from(prvList[0], 'hex'));
27
+ let opt = {
28
+ sender: via,
29
+ value: fee_1.TON_FEE.TRANS_FEE_NORMAL,
30
+ queryID,
31
+ code: newCode,
32
+ };
33
+ console.log("opt=>", opt);
34
+ ret = await ba.writeContract('sendUpgradeSC', via, opt);
35
+ console.log("sendUpgradeSC", ret);
36
+ })();
37
+ async function init() {
38
+ //await wanTonSdkInit(configMainnet);
39
+ //await wanTonSdkInit(configTestnet);
40
+ await (0, client_1.wanTonSdkInit)(config_ex_1.configTestTonApiNoDb);
41
+ deployer = await (0, walletContract_1.getWalletByPrvKey)(Buffer.from(prvList[0], 'hex'));
42
+ queryID = await (0, utils_1.getQueryID)();
43
+ client = await (0, client_1.getClient)();
44
+ }
@@ -0,0 +1 @@
1
+ export {};