@affluent-org/sdk 0.0.1
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/.prettierrc +11 -0
- package/Refactoring.md +548 -0
- package/dist/_compiled/Account.compiled.json +1 -0
- package/dist/_compiled/Receipt.compiled.json +1 -0
- package/dist/_compiled/WTONWallet.compiled.json +1 -0
- package/dist/_compiled/index.d.ts +4 -0
- package/dist/_compiled/index.js +12 -0
- package/dist/affluent.d.ts +14 -0
- package/dist/affluent.js +20 -0
- package/dist/constants/constants.d.ts +2 -0
- package/dist/constants/constants.js +5 -0
- package/dist/constants/contracts.d.ts +9 -0
- package/dist/constants/contracts.js +18 -0
- package/dist/context.d.ts +43 -0
- package/dist/context.js +90 -0
- package/dist/contracts/common/type.d.ts +16 -0
- package/dist/contracts/common/type.js +2 -0
- package/dist/contracts/common/utils.d.ts +3 -0
- package/dist/contracts/common/utils.js +16 -0
- package/dist/contracts/core/account/index.d.ts +38 -0
- package/dist/contracts/core/account/index.js +128 -0
- package/dist/contracts/core/account/type.d.ts +18 -0
- package/dist/contracts/core/account/type.js +2 -0
- package/dist/contracts/core/pool/index.d.ts +149 -0
- package/dist/contracts/core/pool/index.js +379 -0
- package/dist/contracts/core/pool/serializer.d.ts +15 -0
- package/dist/contracts/core/pool/serializer.js +307 -0
- package/dist/contracts/core/pool/type.d.ts +136 -0
- package/dist/contracts/core/pool/type.js +2 -0
- package/dist/contracts/dedust-farm/MockDedustFarm.d.ts +41 -0
- package/dist/contracts/dedust-farm/MockDedustFarm.js +79 -0
- package/dist/contracts/external/tonstaker.d.ts +18 -0
- package/dist/contracts/external/tonstaker.js +26 -0
- package/dist/contracts/factory/factory.d.ts +24 -0
- package/dist/contracts/factory/factory.js +58 -0
- package/dist/contracts/factory/type.d.ts +11 -0
- package/dist/contracts/factory/type.js +2 -0
- package/dist/contracts/farm/distributor.d.ts +43 -0
- package/dist/contracts/farm/distributor.js +83 -0
- package/dist/contracts/farm/receipt.d.ts +40 -0
- package/dist/contracts/farm/receipt.js +68 -0
- package/dist/contracts/irm/jump-irm/serializer.d.ts +4 -0
- package/dist/contracts/irm/jump-irm/serializer.js +26 -0
- package/dist/contracts/irm/jump-irm/type.d.ts +8 -0
- package/dist/contracts/irm/jump-irm/type.js +2 -0
- package/dist/contracts/jetton/jetton-minter.d.ts +23 -0
- package/dist/contracts/jetton/jetton-minter.js +46 -0
- package/dist/contracts/jetton/jetton-wallet.d.ts +67 -0
- package/dist/contracts/jetton/jetton-wallet.js +119 -0
- package/dist/contracts/jetton/type.d.ts +7 -0
- package/dist/contracts/jetton/type.js +2 -0
- package/dist/contracts/liquid_token/dedust/minter.d.ts +56 -0
- package/dist/contracts/liquid_token/dedust/minter.js +112 -0
- package/dist/contracts/liquid_token/dedust/wallet.d.ts +127 -0
- package/dist/contracts/liquid_token/dedust/wallet.js +213 -0
- package/dist/contracts/liquid_token/stonfi/LFStonfiJettonMinter.d.ts +53 -0
- package/dist/contracts/liquid_token/stonfi/LFStonfiJettonMinter.js +110 -0
- package/dist/contracts/liquid_token/stonfi/LFStonfiJettonWallet.d.ts +169 -0
- package/dist/contracts/liquid_token/stonfi/LFStonfiJettonWallet.js +288 -0
- package/dist/contracts/oracle/composite-onchain-oracle/index.d.ts +108 -0
- package/dist/contracts/oracle/composite-onchain-oracle/index.js +185 -0
- package/dist/contracts/oracle/parser.d.ts +7 -0
- package/dist/contracts/oracle/parser.js +77 -0
- package/dist/contracts/oracle/redstone-onchain-oracle/index.d.ts +56 -0
- package/dist/contracts/oracle/redstone-onchain-oracle/index.js +159 -0
- package/dist/contracts/oracle/redstone-onchain-oracle/serializer.d.ts +4 -0
- package/dist/contracts/oracle/redstone-onchain-oracle/serializer.js +137 -0
- package/dist/contracts/oracle/redstone-onchain-oracle/type.d.ts +57 -0
- package/dist/contracts/oracle/redstone-onchain-oracle/type.js +18 -0
- package/dist/contracts/oracle/redstone-oracle/serializer.d.ts +3 -0
- package/dist/contracts/oracle/redstone-oracle/serializer.js +30 -0
- package/dist/contracts/oracle/redstone-oracle/type.d.ts +9 -0
- package/dist/contracts/oracle/redstone-oracle/type.js +2 -0
- package/dist/contracts/oracle/redstone-parser.d.ts +9 -0
- package/dist/contracts/oracle/redstone-parser.js +58 -0
- package/dist/contracts/rfq/rfq_auction/index.d.ts +216 -0
- package/dist/contracts/rfq/rfq_auction/index.js +334 -0
- package/dist/contracts/rfq/rfq_batch/index.d.ts +346 -0
- package/dist/contracts/rfq/rfq_batch/index.js +448 -0
- package/dist/contracts/rfq/rfq_event_emitter/index.d.ts +132 -0
- package/dist/contracts/rfq/rfq_event_emitter/index.js +143 -0
- package/dist/contracts/stonfi-farm/MockStonfiFarmItem.d.ts +41 -0
- package/dist/contracts/stonfi-farm/MockStonfiFarmItem.js +83 -0
- package/dist/contracts/stonfi-farm/MockStonfiFarmMinter.d.ts +45 -0
- package/dist/contracts/stonfi-farm/MockStonfiFarmMinter.js +92 -0
- package/dist/contracts/unknown-contract/index.d.ts +14 -0
- package/dist/contracts/unknown-contract/index.js +18 -0
- package/dist/contracts/vault/share-vault/index.d.ts +206 -0
- package/dist/contracts/vault/share-vault/index.js +373 -0
- package/dist/contracts/vault/strategy-vault/codec.d.ts +710 -0
- package/dist/contracts/vault/strategy-vault/codec.js +1256 -0
- package/dist/contracts/vault/strategy-vault/computation.d.ts +11 -0
- package/dist/contracts/vault/strategy-vault/computation.js +56 -0
- package/dist/contracts/vault/strategy-vault/constants.d.ts +163 -0
- package/dist/contracts/vault/strategy-vault/constants.js +170 -0
- package/dist/contracts/vault/strategy-vault/index.d.ts +587 -0
- package/dist/contracts/vault/strategy-vault/index.js +406 -0
- package/dist/contracts/vault/strategy-vault/type.d.ts +115 -0
- package/dist/contracts/vault/strategy-vault/type.js +2 -0
- package/dist/contracts/wton/jetton-minter.d.ts +35 -0
- package/dist/contracts/wton/jetton-minter.js +71 -0
- package/dist/contracts/wton/jetton-wallet.d.ts +90 -0
- package/dist/contracts/wton/jetton-wallet.js +153 -0
- package/dist/contracts/wton/type.d.ts +7 -0
- package/dist/contracts/wton/type.js +2 -0
- package/dist/index.d.ts +34 -0
- package/dist/index.js +65 -0
- package/dist/lib/assert.d.ts +1 -0
- package/dist/lib/assert.js +9 -0
- package/dist/lib/query-cache.d.ts +5 -0
- package/dist/lib/query-cache.js +57 -0
- package/dist/lib/send-msg.d.ts +11 -0
- package/dist/lib/send-msg.js +9 -0
- package/dist/services/composite-oracle/computation.d.ts +55 -0
- package/dist/services/composite-oracle/computation.js +295 -0
- package/dist/services/composite-oracle/index.d.ts +45 -0
- package/dist/services/composite-oracle/index.js +110 -0
- package/dist/services/composite-oracle/query.d.ts +36 -0
- package/dist/services/composite-oracle/query.js +251 -0
- package/dist/services/composite-oracle/types.d.ts +82 -0
- package/dist/services/composite-oracle/types.js +11 -0
- package/dist/services/pool/computation.d.ts +75 -0
- package/dist/services/pool/computation.js +219 -0
- package/dist/services/pool/index.d.ts +94 -0
- package/dist/services/pool/index.js +139 -0
- package/dist/services/pool/oracle.d.ts +20 -0
- package/dist/services/pool/oracle.js +61 -0
- package/dist/services/pool/owner/index.d.ts +37 -0
- package/dist/services/pool/owner/index.js +76 -0
- package/dist/services/pool/owner/types.d.ts +18 -0
- package/dist/services/pool/owner/types.js +2 -0
- package/dist/services/pool/query.d.ts +64 -0
- package/dist/services/pool/query.js +282 -0
- package/dist/services/pool/user/index.d.ts +86 -0
- package/dist/services/pool/user/index.js +285 -0
- package/dist/services/pool/user/types.d.ts +44 -0
- package/dist/services/pool/user/types.js +2 -0
- package/dist/services/rfq-auction/index.d.ts +81 -0
- package/dist/services/rfq-auction/index.js +93 -0
- package/dist/services/rfq-auction/oracle.d.ts +19 -0
- package/dist/services/rfq-auction/oracle.js +60 -0
- package/dist/services/rfq-auction/query.d.ts +50 -0
- package/dist/services/rfq-auction/query.js +19 -0
- package/dist/services/rfq-auction/user/index.d.ts +63 -0
- package/dist/services/rfq-auction/user/index.js +218 -0
- package/dist/services/rfq-auction/user/types.d.ts +29 -0
- package/dist/services/rfq-auction/user/types.js +2 -0
- package/dist/services/rfq-batch/index.d.ts +78 -0
- package/dist/services/rfq-batch/index.js +132 -0
- package/dist/services/rfq-batch/oracle.d.ts +22 -0
- package/dist/services/rfq-batch/oracle.js +54 -0
- package/dist/services/rfq-batch/query.d.ts +46 -0
- package/dist/services/rfq-batch/query.js +34 -0
- package/dist/services/rfq-batch/user/index.d.ts +79 -0
- package/dist/services/rfq-batch/user/index.js +171 -0
- package/dist/services/rfq-batch/user/types.d.ts +37 -0
- package/dist/services/rfq-batch/user/types.js +2 -0
- package/dist/services/share-vault/computation.d.ts +24 -0
- package/dist/services/share-vault/computation.js +42 -0
- package/dist/services/share-vault/index.d.ts +90 -0
- package/dist/services/share-vault/index.js +128 -0
- package/dist/services/share-vault/manager/index.d.ts +40 -0
- package/dist/services/share-vault/manager/index.js +111 -0
- package/dist/services/share-vault/manager/types.d.ts +23 -0
- package/dist/services/share-vault/manager/types.js +2 -0
- package/dist/services/share-vault/owner/index.d.ts +64 -0
- package/dist/services/share-vault/owner/index.js +122 -0
- package/dist/services/share-vault/owner/types.d.ts +33 -0
- package/dist/services/share-vault/owner/types.js +2 -0
- package/dist/services/share-vault/query.d.ts +34 -0
- package/dist/services/share-vault/query.js +138 -0
- package/dist/services/share-vault/user/index.d.ts +33 -0
- package/dist/services/share-vault/user/index.js +106 -0
- package/dist/services/share-vault/user/types.d.ts +13 -0
- package/dist/services/share-vault/user/types.js +2 -0
- package/dist/services/strategy-vault/index.d.ts +2124 -0
- package/dist/services/strategy-vault/index.js +268 -0
- package/dist/services/strategy-vault/manager/index.d.ts +1968 -0
- package/dist/services/strategy-vault/manager/index.js +475 -0
- package/dist/services/strategy-vault/manager/types.d.ts +144 -0
- package/dist/services/strategy-vault/manager/types.js +2 -0
- package/dist/services/strategy-vault/oracle.d.ts +66 -0
- package/dist/services/strategy-vault/oracle.js +162 -0
- package/dist/services/strategy-vault/owner/index.d.ts +277 -0
- package/dist/services/strategy-vault/owner/index.js +333 -0
- package/dist/services/strategy-vault/owner/types.d.ts +146 -0
- package/dist/services/strategy-vault/owner/types.js +2 -0
- package/dist/services/strategy-vault/query.d.ts +138 -0
- package/dist/services/strategy-vault/query.js +59 -0
- package/dist/services/strategy-vault/user/index.d.ts +89 -0
- package/dist/services/strategy-vault/user/index.js +219 -0
- package/dist/services/strategy-vault/user/types.d.ts +46 -0
- package/dist/services/strategy-vault/user/types.js +2 -0
- package/dist/types/sender.d.ts +7 -0
- package/dist/types/sender.js +2 -0
- package/dist/utils/action-parser.d.ts +7 -0
- package/dist/utils/action-parser.js +20 -0
- package/dist/utils/external-message-hash.d.ts +45 -0
- package/dist/utils/external-message-hash.js +65 -0
- package/dist/utils/oracle/redstone/readonlyCachedRedstone.d.ts +3 -0
- package/dist/utils/oracle/redstone/readonlyCachedRedstone.js +25 -0
- package/dist/utils/oracle/redstone/redstoneHelper.d.ts +21 -0
- package/dist/utils/oracle/redstone/redstoneHelper.js +228 -0
- package/dist/utils/parser.d.ts +40 -0
- package/dist/utils/parser.js +580 -0
- package/dist/utils/pending-tracker/index.d.ts +14 -0
- package/dist/utils/pending-tracker/index.js +34 -0
- package/dist/utils/pending-tracker/trackable-sender.d.ts +16 -0
- package/dist/utils/pending-tracker/trackable-sender.js +87 -0
- package/dist/utils/pending-tracker/type.d.ts +78 -0
- package/dist/utils/pending-tracker/type.js +2 -0
- package/dist/utils/pending-tracker/v3-client.d.ts +31 -0
- package/dist/utils/pending-tracker/v3-client.js +104 -0
- package/dist/utils/risk_calculator/risk_calculator.d.ts +45 -0
- package/dist/utils/risk_calculator/risk_calculator.js +332 -0
- package/dist/utils/utils.d.ts +5 -0
- package/dist/utils/utils.js +12 -0
- package/package.json +46 -0
|
@@ -0,0 +1,580 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseActionNotification = parseActionNotification;
|
|
4
|
+
exports.parseJettonTransfer = parseJettonTransfer;
|
|
5
|
+
exports.parseJettonInternalTransfer = parseJettonInternalTransfer;
|
|
6
|
+
exports.parseProvideAggregatedPool = parseProvideAggregatedPool;
|
|
7
|
+
exports.parseExcesses = parseExcesses;
|
|
8
|
+
exports.parseTx = parseTx;
|
|
9
|
+
const core_1 = require("@ton/core");
|
|
10
|
+
const pool_1 = require("../contracts/core/pool");
|
|
11
|
+
const serializer_1 = require("../contracts/core/pool/serializer");
|
|
12
|
+
const jetton_wallet_1 = require("../contracts/jetton/jetton-wallet");
|
|
13
|
+
const share_vault_1 = require("../contracts/vault/share-vault");
|
|
14
|
+
const redstone_onchain_oracle_1 = require("../contracts/oracle/redstone-onchain-oracle");
|
|
15
|
+
const parser_1 = require("../contracts/oracle/parser");
|
|
16
|
+
const LFStonfiJettonWallet_1 = require("../contracts/liquid_token/stonfi/LFStonfiJettonWallet");
|
|
17
|
+
const strategy_vault_1 = require("../contracts/vault/strategy-vault");
|
|
18
|
+
const rfq_auction_1 = require("../contracts/rfq/rfq_auction");
|
|
19
|
+
const jetton_wallet_2 = require("../contracts/wton/jetton-wallet");
|
|
20
|
+
function parseActionNotification(cell) {
|
|
21
|
+
const ds = cell.beginParse();
|
|
22
|
+
const opCode = ds.loadUint(32);
|
|
23
|
+
if (opCode !== pool_1.Pool.Op.ActionNotification)
|
|
24
|
+
return null;
|
|
25
|
+
const queryId = ds.loadUintBig(64);
|
|
26
|
+
const actionOpCode = ds.loadUint(32);
|
|
27
|
+
const errorCode = ds.loadUint(16);
|
|
28
|
+
if (errorCode === 0) {
|
|
29
|
+
if (actionOpCode === pool_1.Pool.Op.Supply) {
|
|
30
|
+
return (0, serializer_1.parseSuccessActionNotificationMsgBody)(cell);
|
|
31
|
+
}
|
|
32
|
+
else if (actionOpCode === pool_1.Pool.Op.Withdraw) {
|
|
33
|
+
return (0, serializer_1.parseSuccessActionNotificationMsgBody)(cell);
|
|
34
|
+
}
|
|
35
|
+
else if (actionOpCode === pool_1.Pool.Op.Borrow) {
|
|
36
|
+
return (0, serializer_1.parseSuccessActionNotificationMsgBody)(cell);
|
|
37
|
+
}
|
|
38
|
+
else if (actionOpCode === pool_1.Pool.Op.Repay) {
|
|
39
|
+
return (0, serializer_1.parseSuccessRepayActionNotificationMsgBody)(cell);
|
|
40
|
+
}
|
|
41
|
+
else if (actionOpCode === pool_1.Pool.Op.Liquidate) {
|
|
42
|
+
return (0, serializer_1.parseSuccessLiquidationActionNotificationMsgBody)(cell);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
if (actionOpCode === jetton_wallet_1.JettonWallet.Op.TransferNotification) {
|
|
47
|
+
ds.loadCoins();
|
|
48
|
+
ds.loadAddress();
|
|
49
|
+
const forwardDS = ds.loadRef().beginParse();
|
|
50
|
+
forwardDS.loadAddress();
|
|
51
|
+
const subOp = forwardDS.loadUint(32);
|
|
52
|
+
if (subOp === pool_1.Pool.Op.Supply) {
|
|
53
|
+
return (0, serializer_1.parseFailTransferInActionNotificationMsgBody)(cell);
|
|
54
|
+
}
|
|
55
|
+
else if (subOp === pool_1.Pool.Op.Repay) {
|
|
56
|
+
return (0, serializer_1.parseFailTransferInActionNotificationMsgBody)(cell);
|
|
57
|
+
}
|
|
58
|
+
else if (subOp === pool_1.Pool.Op.Liquidate) {
|
|
59
|
+
return (0, serializer_1.parseFailLiquidateActionNotificationMsgBody)(cell);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
else if (actionOpCode === pool_1.Pool.Op.withdraw) {
|
|
63
|
+
return (0, serializer_1.parseFailTransferOutActionNotificationMsgBody)(cell);
|
|
64
|
+
}
|
|
65
|
+
else if (actionOpCode === pool_1.Pool.Op.borrow) {
|
|
66
|
+
return (0, serializer_1.parseFailTransferOutActionNotificationMsgBody)(cell);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
71
|
+
function parseJettonTransfer(cell) {
|
|
72
|
+
const ds = cell.beginParse();
|
|
73
|
+
const opcode = ds.loadUint(32);
|
|
74
|
+
const queryId = ds.loadUintBig(64);
|
|
75
|
+
const amount = ds.loadCoins();
|
|
76
|
+
const recipient = ds.loadAddress();
|
|
77
|
+
const response = ds.loadMaybeAddress();
|
|
78
|
+
ds.loadBit();
|
|
79
|
+
const forwardTonAmount = ds.loadCoins();
|
|
80
|
+
const forwardPayload = ds;
|
|
81
|
+
return {
|
|
82
|
+
type: "JettonWallet.Op.Transfer",
|
|
83
|
+
opcode,
|
|
84
|
+
queryId,
|
|
85
|
+
amount,
|
|
86
|
+
recipient,
|
|
87
|
+
response,
|
|
88
|
+
forwardTonAmount,
|
|
89
|
+
forwardPayload,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
function parseJettonInternalTransfer(cell) {
|
|
93
|
+
const ds = cell.beginParse();
|
|
94
|
+
const opcode = ds.loadUint(32);
|
|
95
|
+
const queryId = ds.loadUintBig(64);
|
|
96
|
+
const amount = ds.loadCoins();
|
|
97
|
+
const fromAddress = ds.loadMaybeAddress();
|
|
98
|
+
const response = ds.loadMaybeAddress();
|
|
99
|
+
const forwardTonAmount = ds.loadCoins();
|
|
100
|
+
const forwardPayload = ds;
|
|
101
|
+
return {
|
|
102
|
+
type: "JettonWallet.Op.InternalTransfer",
|
|
103
|
+
opcode,
|
|
104
|
+
queryId,
|
|
105
|
+
amount,
|
|
106
|
+
fromAddress,
|
|
107
|
+
response,
|
|
108
|
+
forwardTonAmount,
|
|
109
|
+
forwardPayload,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
function parseProvideAggregatedPool(cell) {
|
|
113
|
+
const ds = cell.beginParse();
|
|
114
|
+
const opcode = ds.loadUint(32);
|
|
115
|
+
const queryId = ds.loadUintBig(64);
|
|
116
|
+
const pools = ds.loadDict(core_1.Dictionary.Keys.Address(), core_1.Dictionary.Values.Bool()).keys();
|
|
117
|
+
const forwardPayload = ds;
|
|
118
|
+
return {
|
|
119
|
+
type: "ShareVault.Op.ProvideAggregatedPool",
|
|
120
|
+
opcode,
|
|
121
|
+
queryId,
|
|
122
|
+
pools,
|
|
123
|
+
forwardPayload,
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
function parseExcesses(cell) {
|
|
127
|
+
const ds = cell.beginParse();
|
|
128
|
+
const opcode = ds.loadUint(32);
|
|
129
|
+
const queryId = ds.loadUintBig(64);
|
|
130
|
+
return {
|
|
131
|
+
type: "JettonWallet.Op.Excesses",
|
|
132
|
+
opcode,
|
|
133
|
+
queryId,
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
function parseTx(cell) {
|
|
137
|
+
try {
|
|
138
|
+
const ds = cell.beginParse();
|
|
139
|
+
const opCode = ds.loadUint(32);
|
|
140
|
+
const queryId = ds.loadUintBig(64);
|
|
141
|
+
if (opCode === jetton_wallet_1.JettonWallet.Op.Transfer) {
|
|
142
|
+
return parseJettonTransfer(cell);
|
|
143
|
+
}
|
|
144
|
+
else if (opCode === jetton_wallet_1.JettonWallet.Op.InternalTransfer) {
|
|
145
|
+
return parseJettonInternalTransfer(cell);
|
|
146
|
+
}
|
|
147
|
+
else if (opCode === share_vault_1.ShareVault.Op.ProvideAggregatedPool) {
|
|
148
|
+
return parseProvideAggregatedPool(cell);
|
|
149
|
+
}
|
|
150
|
+
else if (opCode === jetton_wallet_1.JettonWallet.Op.Excesses) {
|
|
151
|
+
return parseExcesses(cell);
|
|
152
|
+
}
|
|
153
|
+
else if (opCode === pool_1.Pool.Op.Withdraw || opCode === pool_1.Pool.Op.Borrow) {
|
|
154
|
+
return (0, serializer_1.parseTransferOutMsgBody)(cell);
|
|
155
|
+
}
|
|
156
|
+
else if (opCode === share_vault_1.ShareVault.Op.TakeAggregatedPool) {
|
|
157
|
+
const aggregatorIndex = ds.loadCoins();
|
|
158
|
+
const aggregatedDict = ds.loadMaybeRef();
|
|
159
|
+
const actorAddress = ds.loadAddress();
|
|
160
|
+
const actionOp = ds.loadUint(32);
|
|
161
|
+
const amount = ds.loadCoins();
|
|
162
|
+
const createTime = ds.loadUint(40);
|
|
163
|
+
return {
|
|
164
|
+
aggregatorIndex,
|
|
165
|
+
aggregatedDict,
|
|
166
|
+
actionOp,
|
|
167
|
+
actorAddress,
|
|
168
|
+
amount,
|
|
169
|
+
createTime,
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
else if (opCode === redstone_onchain_oracle_1.RedstoneOnchainOracle.Op.TakeOraclePrice) {
|
|
173
|
+
const DictioryValueOraclePrice = {
|
|
174
|
+
serialize: (src, builder) => { },
|
|
175
|
+
parse: (src) => {
|
|
176
|
+
const price = src.loadCoins();
|
|
177
|
+
const assetType = src.loadUint(8);
|
|
178
|
+
// const totalSupplyShare = src.loadCoins();
|
|
179
|
+
// const totalBorrowShare = src.loadCoins();
|
|
180
|
+
// const isCollateral = src.loadBoolean();
|
|
181
|
+
// const riskFactor = src.loadUint(14);
|
|
182
|
+
// const liquidationIncentiveRate = src.loadUint(14);
|
|
183
|
+
return {
|
|
184
|
+
price,
|
|
185
|
+
assetType,
|
|
186
|
+
};
|
|
187
|
+
},
|
|
188
|
+
};
|
|
189
|
+
const _dict = ds.loadRef();
|
|
190
|
+
const dict = _dict.beginParse().loadDictDirect(core_1.Dictionary.Keys.Address(), DictioryValueOraclePrice);
|
|
191
|
+
return {
|
|
192
|
+
dict,
|
|
193
|
+
};
|
|
194
|
+
// const aggregatorIndex = ds.loadCoins();
|
|
195
|
+
// const aggregatedDict = ds.loadMaybeRef();
|
|
196
|
+
// const actorAddress = ds.loadAddress();
|
|
197
|
+
// const actionOp = ds.loadUint(32);
|
|
198
|
+
// const amount = ds.loadCoins();
|
|
199
|
+
// const createTime = ds.loadUint(40);
|
|
200
|
+
// return {
|
|
201
|
+
// aggregatorIndex,
|
|
202
|
+
// aggregatedDict,
|
|
203
|
+
// actionOp,
|
|
204
|
+
// actorAddress,
|
|
205
|
+
// amount,
|
|
206
|
+
// createTime
|
|
207
|
+
// };
|
|
208
|
+
}
|
|
209
|
+
else if (opCode === redstone_onchain_oracle_1.RedstoneOnchainOracle.Op.ProvideOraclePrice) {
|
|
210
|
+
const DictioryValueOraclePrice = {
|
|
211
|
+
serialize: (src, builder) => { },
|
|
212
|
+
parse: (src) => {
|
|
213
|
+
const price = src.loadCoins();
|
|
214
|
+
const assetType = src.loadUint(8);
|
|
215
|
+
// const totalSupplyShare = src.loadCoins();
|
|
216
|
+
// const totalBorrowShare = src.loadCoins();
|
|
217
|
+
// const isCollateral = src.loadBoolean();
|
|
218
|
+
// const riskFactor = src.loadUint(14);
|
|
219
|
+
// const liquidationIncentiveRate = src.loadUint(14);
|
|
220
|
+
return {
|
|
221
|
+
price,
|
|
222
|
+
assetType,
|
|
223
|
+
};
|
|
224
|
+
},
|
|
225
|
+
};
|
|
226
|
+
const oracleCs = ds.loadRef().beginParse();
|
|
227
|
+
const oracleConfigCell = oracleCs.loadRef();
|
|
228
|
+
const oracleParamsCell = oracleCs.loadRef();
|
|
229
|
+
// console.log(parseOracleConfig(oracleConfigCell));
|
|
230
|
+
// console.log(parseOracleParams(oracleParamsCell));
|
|
231
|
+
// // console.log(oracleParamsCs.toString())
|
|
232
|
+
// // const feedIdAssetDict = oracleConfigCs.loadDict();
|
|
233
|
+
// oracleConfigCs.loadBit();
|
|
234
|
+
// const signer_count_threshold = oracleConfigCs.loadCoins();
|
|
235
|
+
// const signers = oracleConfigCs.loadRef();
|
|
236
|
+
// // const assetInfoDict =
|
|
237
|
+
// oracleConfigCs.loadBit();
|
|
238
|
+
// // console.log(signer_count_threshold);
|
|
239
|
+
// const dataFeed = oracleParamsCs.loadRef();
|
|
240
|
+
// const redstone_payload = oracleParamsCs.loadRef();
|
|
241
|
+
// const request_asset = oracleParamsCs.loadRef();
|
|
242
|
+
// console.log({
|
|
243
|
+
// dataFeed,
|
|
244
|
+
// redstone_payload,
|
|
245
|
+
// request_asset
|
|
246
|
+
// });
|
|
247
|
+
// const aggregatorIndex = ds.loadCoins();
|
|
248
|
+
// const aggregatedDict = ds.loadMaybeRef();
|
|
249
|
+
// const actorAddress = ds.loadAddress();
|
|
250
|
+
// const actionOp = ds.loadUint(32);
|
|
251
|
+
// const amount = ds.loadCoins();
|
|
252
|
+
// const createTime = ds.loadUint(40);
|
|
253
|
+
// return {
|
|
254
|
+
// aggregatorIndex,
|
|
255
|
+
// aggregatedDict,
|
|
256
|
+
// actionOp,
|
|
257
|
+
// actorAddress,
|
|
258
|
+
// amount,
|
|
259
|
+
// createTime
|
|
260
|
+
// };
|
|
261
|
+
}
|
|
262
|
+
else if (opCode === pool_1.Pool.Op.ExecuteAction) {
|
|
263
|
+
try {
|
|
264
|
+
const summarizedData = ds.loadRef();
|
|
265
|
+
const sdata = summarizedData.beginParse();
|
|
266
|
+
const version = sdata.loadUint(16);
|
|
267
|
+
const maxLoanLeverageRatio = sdata.loadUint(20);
|
|
268
|
+
const maxLoanVarRatio = sdata.loadUint(14);
|
|
269
|
+
const maxLiquidateLeverageRatio = sdata.loadUint(20);
|
|
270
|
+
const maxLiquidateVarRatio = sdata.loadUint(14);
|
|
271
|
+
const minLiquidateCloseRatio = sdata.loadUint(14);
|
|
272
|
+
const maxLiquidateCloseRatio = sdata.loadUint(14);
|
|
273
|
+
const _dict = sdata.loadDict(core_1.Dictionary.Keys.Address(), DictioryValueSummarizedAsset);
|
|
274
|
+
const assets = _dict.keys().reduce((acc, cur) => {
|
|
275
|
+
acc[cur.toString()] = _dict.get(cur);
|
|
276
|
+
return acc;
|
|
277
|
+
}, {});
|
|
278
|
+
const oracle = {};
|
|
279
|
+
if (ds.remainingRefs > 0) {
|
|
280
|
+
const DictioryValueOraclePrice = {
|
|
281
|
+
serialize: (src, builder) => { },
|
|
282
|
+
parse: (src) => {
|
|
283
|
+
const price = src.loadCoins();
|
|
284
|
+
const assetType = src.loadUint(8);
|
|
285
|
+
return { price };
|
|
286
|
+
},
|
|
287
|
+
};
|
|
288
|
+
const _oracle = ds.loadRef().beginParse().loadDictDirect(core_1.Dictionary.Keys.Address(), DictioryValueOraclePrice);
|
|
289
|
+
_oracle.keys().forEach((key) => {
|
|
290
|
+
oracle[key.toString()] = _oracle.get(key);
|
|
291
|
+
});
|
|
292
|
+
}
|
|
293
|
+
console.log(oracle);
|
|
294
|
+
const opcode = ds.loadUint(32);
|
|
295
|
+
// console.log(_dict);
|
|
296
|
+
// Supply: 0x480074d8,
|
|
297
|
+
// Withdraw: 0xcb03bfaf,
|
|
298
|
+
// Borrow: 0xcfc248e4,
|
|
299
|
+
// Repay: 0xee555a2c,
|
|
300
|
+
// Liquidate: 0xcc52bae3,
|
|
301
|
+
if (opcode === pool_1.Pool.Op.Borrow || opcode === pool_1.Pool.Op.Withdraw || opCode === pool_1.Pool.Op.Liquidate) {
|
|
302
|
+
const DictioryValueOraclePrice = {
|
|
303
|
+
serialize: (src, builder) => { },
|
|
304
|
+
parse: (src) => {
|
|
305
|
+
const price = src.loadCoins();
|
|
306
|
+
// const assetType = src.loadUint(8);
|
|
307
|
+
return { price };
|
|
308
|
+
},
|
|
309
|
+
};
|
|
310
|
+
// const oracleData = ds.loadRef().beginParse().loadDictDirect(Dictionary.Keys.Address(), DictioryValueOraclePrice);
|
|
311
|
+
}
|
|
312
|
+
return {
|
|
313
|
+
type: "Pool.Op.ExecuteActionToAccount",
|
|
314
|
+
version: version,
|
|
315
|
+
maxLoanLeverageRatio,
|
|
316
|
+
maxLoanVarRatio,
|
|
317
|
+
maxLiquidateLeverageRatio,
|
|
318
|
+
maxLiquidateVarRatio,
|
|
319
|
+
minLiquidateCloseRatio,
|
|
320
|
+
maxLiquidateCloseRatio,
|
|
321
|
+
assets: assets,
|
|
322
|
+
oracle,
|
|
323
|
+
};
|
|
324
|
+
}
|
|
325
|
+
catch (e) {
|
|
326
|
+
return null;
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
else if (opCode === LFStonfiJettonWallet_1.LFStonfiJettonWallet.Op.Farm) {
|
|
330
|
+
const amount = ds.loadCoins();
|
|
331
|
+
const responseAddress = ds.loadAddress();
|
|
332
|
+
const forwardTonAmount = ds.loadCoins();
|
|
333
|
+
return {
|
|
334
|
+
type: "LFStonfiJettonWallet.Op.Farm",
|
|
335
|
+
opcode: opCode,
|
|
336
|
+
queryId,
|
|
337
|
+
amount,
|
|
338
|
+
responseAddress,
|
|
339
|
+
forwardTonAmount,
|
|
340
|
+
};
|
|
341
|
+
}
|
|
342
|
+
else if (opCode === pool_1.Pool.Op.UpdateAccountStatus) {
|
|
343
|
+
}
|
|
344
|
+
else if (opCode === strategy_vault_1.StrategyVault.Op.SetAssetConfig) {
|
|
345
|
+
const assetAddress = ds.loadAddress();
|
|
346
|
+
const isWhitelisted = ds.loadBoolean();
|
|
347
|
+
const isDepositable = ds.loadBoolean();
|
|
348
|
+
const isWithdrawable = ds.loadBoolean();
|
|
349
|
+
const exposureCap = ds.loadUint(14);
|
|
350
|
+
return {
|
|
351
|
+
type: "StrategyVault.Op.SetAssetConfig",
|
|
352
|
+
opcode: opCode,
|
|
353
|
+
queryId,
|
|
354
|
+
assetAddress,
|
|
355
|
+
isWhitelisted,
|
|
356
|
+
isDepositable,
|
|
357
|
+
isWithdrawable,
|
|
358
|
+
exposureCap,
|
|
359
|
+
};
|
|
360
|
+
}
|
|
361
|
+
else if (opCode === strategy_vault_1.StrategyVault.Op.ExecuteStrategy) {
|
|
362
|
+
const subOp = ds.loadUint(32);
|
|
363
|
+
if (subOp === strategy_vault_1.StrategyVault.Op.CreateRFQ) {
|
|
364
|
+
const oracleParams = ds.loadMaybeRef();
|
|
365
|
+
const rfqIndex = ds.loadCoins();
|
|
366
|
+
const sellAsset = ds.loadAddress();
|
|
367
|
+
const buyAsset = ds.loadAddress();
|
|
368
|
+
const sellAssetAmount = ds.loadCoins();
|
|
369
|
+
const minBuyAssetAmount = ds.loadCoins();
|
|
370
|
+
const maxBuyAssetAmount = ds.loadCoins();
|
|
371
|
+
const additionalDataCS = ds.loadRef().beginParse();
|
|
372
|
+
const sellAssetRFQWallet = additionalDataCS.loadAddress();
|
|
373
|
+
const buyAssetRFQWallet = additionalDataCS.loadAddress();
|
|
374
|
+
const period = additionalDataCS.loadUint(40);
|
|
375
|
+
const allowSellerCancel = additionalDataCS.loadBoolean();
|
|
376
|
+
const allowBidderCancel = additionalDataCS.loadBoolean();
|
|
377
|
+
const isAmountBid = additionalDataCS.loadBoolean();
|
|
378
|
+
const rfqId = ds.loadUint(14);
|
|
379
|
+
return {
|
|
380
|
+
type: "StrategyVault.Op.CancelRFQ",
|
|
381
|
+
opcode: opCode,
|
|
382
|
+
queryId,
|
|
383
|
+
oracleParams,
|
|
384
|
+
rfqIndex,
|
|
385
|
+
sellAsset,
|
|
386
|
+
buyAsset,
|
|
387
|
+
sellAssetAmount,
|
|
388
|
+
minBuyAssetAmount,
|
|
389
|
+
maxBuyAssetAmount,
|
|
390
|
+
sellAssetRFQWallet,
|
|
391
|
+
buyAssetRFQWallet,
|
|
392
|
+
period,
|
|
393
|
+
allowSellerCancel,
|
|
394
|
+
allowBidderCancel,
|
|
395
|
+
isAmountBid,
|
|
396
|
+
rfqId,
|
|
397
|
+
};
|
|
398
|
+
}
|
|
399
|
+
}
|
|
400
|
+
else if (opCode === strategy_vault_1.StrategyVault.Op.ProvideAggregatedData) {
|
|
401
|
+
const assetData = ds.loadMaybeRef();
|
|
402
|
+
const poolData = ds.loadMaybeRef();
|
|
403
|
+
const vaultData = ds.loadMaybeRef();
|
|
404
|
+
const subOp = ds.loadUint(32);
|
|
405
|
+
if (subOp === strategy_vault_1.StrategyVault.Op.Deposit) {
|
|
406
|
+
const assetAddress = ds.loadAddress();
|
|
407
|
+
const fromAddress = ds.loadAddress();
|
|
408
|
+
const amount = ds.loadCoins();
|
|
409
|
+
const forwardTonAmount = ds.loadCoins();
|
|
410
|
+
const forwardPayload = ds.loadMaybeRef();
|
|
411
|
+
return {
|
|
412
|
+
type: "StrategyVault.Op.TakeAggregatedData",
|
|
413
|
+
opcode: opCode,
|
|
414
|
+
queryId,
|
|
415
|
+
assetData,
|
|
416
|
+
poolData,
|
|
417
|
+
vaultData,
|
|
418
|
+
subOp: {
|
|
419
|
+
subOpType: "StrategyVault.Op.Deposit",
|
|
420
|
+
assetAddress,
|
|
421
|
+
fromAddress,
|
|
422
|
+
amount,
|
|
423
|
+
forwardTonAmount,
|
|
424
|
+
forwardPayload,
|
|
425
|
+
},
|
|
426
|
+
};
|
|
427
|
+
}
|
|
428
|
+
}
|
|
429
|
+
else if (opCode === strategy_vault_1.StrategyVault.Op.TakeAggregatedData) {
|
|
430
|
+
const aggregatorIndex = ds.loadCoins();
|
|
431
|
+
const assetData = ds.loadMaybeRef();
|
|
432
|
+
const poolData = ds.loadMaybeRef();
|
|
433
|
+
const vaultData = ds.loadMaybeRef();
|
|
434
|
+
const subOp = ds.loadUint(32);
|
|
435
|
+
if (subOp === strategy_vault_1.StrategyVault.Op.Deposit) {
|
|
436
|
+
const assetAddress = ds.loadAddress();
|
|
437
|
+
const fromAddress = ds.loadAddress();
|
|
438
|
+
const amount = ds.loadCoins();
|
|
439
|
+
const forwardTonAmount = ds.loadCoins();
|
|
440
|
+
const forwardPayload = ds.loadMaybeRef();
|
|
441
|
+
return {
|
|
442
|
+
type: "StrategyVault.Op.TakeAggregatedData",
|
|
443
|
+
opcode: opCode,
|
|
444
|
+
queryId,
|
|
445
|
+
assetData,
|
|
446
|
+
poolData,
|
|
447
|
+
vaultData,
|
|
448
|
+
subOp: {
|
|
449
|
+
subOpType: "StrategyVault.Op.Deposit",
|
|
450
|
+
assetAddress,
|
|
451
|
+
fromAddress,
|
|
452
|
+
amount,
|
|
453
|
+
forwardTonAmount,
|
|
454
|
+
forwardPayload,
|
|
455
|
+
},
|
|
456
|
+
};
|
|
457
|
+
}
|
|
458
|
+
else if (subOp === strategy_vault_1.StrategyVault.Op.Withdraw) {
|
|
459
|
+
const assetAddress = ds.loadAddress();
|
|
460
|
+
const toAddress = ds.loadAddress();
|
|
461
|
+
const amount = ds.loadCoins();
|
|
462
|
+
const forwardTonAmount = ds.loadCoins();
|
|
463
|
+
const forwardPayload = ds.loadMaybeRef();
|
|
464
|
+
return {
|
|
465
|
+
type: "StrategyVault.Op.TakeAggregatedData",
|
|
466
|
+
opcode: opCode,
|
|
467
|
+
queryId,
|
|
468
|
+
aggregatorIndex,
|
|
469
|
+
assetData,
|
|
470
|
+
poolData,
|
|
471
|
+
vaultData,
|
|
472
|
+
subOp: {
|
|
473
|
+
subOpType: "StrategyVault.Op.Withdraw",
|
|
474
|
+
assetAddress,
|
|
475
|
+
toAddress,
|
|
476
|
+
amount,
|
|
477
|
+
forwardTonAmount,
|
|
478
|
+
forwardPayload,
|
|
479
|
+
},
|
|
480
|
+
};
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
else if (opCode === rfq_auction_1.RFQAuction.Op.Settle) {
|
|
484
|
+
const oracleParams = ds.loadMaybeRef();
|
|
485
|
+
return {
|
|
486
|
+
type: "RFQAuction.Op.Settle",
|
|
487
|
+
opcode: opCode,
|
|
488
|
+
queryId,
|
|
489
|
+
oracleParams: oracleParams && (0, parser_1.parseOracleParams)(oracleParams),
|
|
490
|
+
};
|
|
491
|
+
}
|
|
492
|
+
else if (opCode === jetton_wallet_2.WTONWallet.Op.ExternalTransfer) {
|
|
493
|
+
const amount = ds.loadCoins();
|
|
494
|
+
const recipient = ds.loadAddress();
|
|
495
|
+
const forwardTonAmount = ds.loadCoins();
|
|
496
|
+
const forwardPayload = ds.loadMaybeRef();
|
|
497
|
+
let subMessage = {};
|
|
498
|
+
if (forwardPayload) {
|
|
499
|
+
const forwardPayloadCs = forwardPayload.beginParse();
|
|
500
|
+
const forwardPayloadOp = forwardPayloadCs.loadUint(32);
|
|
501
|
+
if (forwardPayloadOp === strategy_vault_1.StrategyVault.Op.Deposit) {
|
|
502
|
+
// console.log(forwardPayloadOp);
|
|
503
|
+
subMessage.subOp = "StrategyVault.Op.Deposit";
|
|
504
|
+
}
|
|
505
|
+
else if (forwardPayloadOp === strategy_vault_1.StrategyVault.Op.Withdraw) {
|
|
506
|
+
// subMessage = parseTakeAggregatedPool(forwardPayload);
|
|
507
|
+
}
|
|
508
|
+
}
|
|
509
|
+
return {
|
|
510
|
+
type: "WTONWallet.Op.ExternalTransfer",
|
|
511
|
+
opcode: opCode,
|
|
512
|
+
queryId,
|
|
513
|
+
amount,
|
|
514
|
+
recipient,
|
|
515
|
+
forwardTonAmount,
|
|
516
|
+
forwardPayloadParsed: subMessage,
|
|
517
|
+
};
|
|
518
|
+
}
|
|
519
|
+
else if (opCode === jetton_wallet_1.JettonWallet.Op.BurnNotification) {
|
|
520
|
+
const amount = ds.loadCoins();
|
|
521
|
+
const fromAddress = ds.loadAddress();
|
|
522
|
+
const response = ds.loadAddress();
|
|
523
|
+
const additionalData = ds.loadRef().beginParse();
|
|
524
|
+
const subOp = additionalData.loadUint(32);
|
|
525
|
+
if (subOp === strategy_vault_1.StrategyVault.Op.Withdraw) {
|
|
526
|
+
const assetAddress = additionalData.loadAddress();
|
|
527
|
+
const oracleParams = additionalData.loadMaybeRef()?.hash();
|
|
528
|
+
const forwardTonAmount = additionalData.loadCoins();
|
|
529
|
+
const forwardPayload = additionalData.loadMaybeRef()?.hash();
|
|
530
|
+
return {
|
|
531
|
+
type: "JettonWallet.Op.Burn(StrategyVault.Op.Withdraw)",
|
|
532
|
+
opcode: opCode,
|
|
533
|
+
queryId,
|
|
534
|
+
fromAddress,
|
|
535
|
+
amount,
|
|
536
|
+
assetAddress,
|
|
537
|
+
oracleParams,
|
|
538
|
+
forwardTonAmount,
|
|
539
|
+
forwardPayload,
|
|
540
|
+
subOp: {
|
|
541
|
+
subOpType: "StrategyVault.Op.Withdraw",
|
|
542
|
+
},
|
|
543
|
+
};
|
|
544
|
+
}
|
|
545
|
+
const forwardTonAmount = ds.loadCoins();
|
|
546
|
+
const forwardPayload = ds.loadMaybeRef();
|
|
547
|
+
return {
|
|
548
|
+
type: "JettonWallet.Op.Burn",
|
|
549
|
+
opcode: opCode,
|
|
550
|
+
queryId,
|
|
551
|
+
amount,
|
|
552
|
+
forwardTonAmount,
|
|
553
|
+
};
|
|
554
|
+
}
|
|
555
|
+
}
|
|
556
|
+
catch (e) {
|
|
557
|
+
return null;
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
const DictioryValueSummarizedAsset = {
|
|
561
|
+
serialize: (src, builder) => { },
|
|
562
|
+
parse: (src) => {
|
|
563
|
+
const totalSupplyAmount = src.loadCoins();
|
|
564
|
+
const totalBorrowAmount = src.loadCoins();
|
|
565
|
+
const totalSupplyShare = src.loadCoins();
|
|
566
|
+
const totalBorrowShare = src.loadCoins();
|
|
567
|
+
const isCollateral = src.loadBoolean();
|
|
568
|
+
const riskFactor = src.loadUint(14);
|
|
569
|
+
const liquidationIncentiveRate = src.loadUint(14);
|
|
570
|
+
return {
|
|
571
|
+
totalSupplyAmount,
|
|
572
|
+
totalBorrowAmount,
|
|
573
|
+
totalSupplyShare,
|
|
574
|
+
totalBorrowShare,
|
|
575
|
+
isCollateral,
|
|
576
|
+
riskFactor,
|
|
577
|
+
liquidationIncentiveRate,
|
|
578
|
+
};
|
|
579
|
+
},
|
|
580
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { InternalMessageInput } from "../../lib/send-msg";
|
|
2
|
+
import { TrackableSender, SendResult } from "./type";
|
|
3
|
+
export * from "./type";
|
|
4
|
+
export * from "./v3-client";
|
|
5
|
+
export { createTrackableSender, createTrackableSenderFromMnemonic, TrackableSenderConfig, } from "./trackable-sender";
|
|
6
|
+
/**
|
|
7
|
+
* Send a message using TrackableSender and return tracking info (extMsgHash)
|
|
8
|
+
*
|
|
9
|
+
* Use ToncenterV3Client.waitForTrace(extMsgHash) to wait for completion.
|
|
10
|
+
*/
|
|
11
|
+
export declare function sendMsgTracked<T>(sender: TrackableSender, msg: Promise<{
|
|
12
|
+
opts: T;
|
|
13
|
+
input: InternalMessageInput;
|
|
14
|
+
}>): Promise<T & SendResult>;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.createTrackableSenderFromMnemonic = exports.createTrackableSender = void 0;
|
|
18
|
+
exports.sendMsgTracked = sendMsgTracked;
|
|
19
|
+
const core_1 = require("@ton/core");
|
|
20
|
+
__exportStar(require("./type"), exports);
|
|
21
|
+
__exportStar(require("./v3-client"), exports);
|
|
22
|
+
var trackable_sender_1 = require("./trackable-sender");
|
|
23
|
+
Object.defineProperty(exports, "createTrackableSender", { enumerable: true, get: function () { return trackable_sender_1.createTrackableSender; } });
|
|
24
|
+
Object.defineProperty(exports, "createTrackableSenderFromMnemonic", { enumerable: true, get: function () { return trackable_sender_1.createTrackableSenderFromMnemonic; } });
|
|
25
|
+
/**
|
|
26
|
+
* Send a message using TrackableSender and return tracking info (extMsgHash)
|
|
27
|
+
*
|
|
28
|
+
* Use ToncenterV3Client.waitForTrace(extMsgHash) to wait for completion.
|
|
29
|
+
*/
|
|
30
|
+
async function sendMsgTracked(sender, msg) {
|
|
31
|
+
const { opts, input } = await msg;
|
|
32
|
+
const result = await sender.send({ ...input, sendMode: core_1.SendMode.PAY_GAS_SEPARATELY });
|
|
33
|
+
return { ...opts, ...result };
|
|
34
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TonClient, WalletContractV5R1 } from "@ton/ton";
|
|
2
|
+
import { KeyPair } from "@ton/crypto";
|
|
3
|
+
import { TrackableSender } from "./type";
|
|
4
|
+
export interface TrackableSenderConfig {
|
|
5
|
+
client: TonClient;
|
|
6
|
+
wallet: WalletContractV5R1;
|
|
7
|
+
keyPair: KeyPair;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Create a TrackableSender from wallet contract and key pair
|
|
11
|
+
*/
|
|
12
|
+
export declare function createTrackableSender(config: TrackableSenderConfig): TrackableSender;
|
|
13
|
+
/**
|
|
14
|
+
* Create a TrackableSender from mnemonic
|
|
15
|
+
*/
|
|
16
|
+
export declare function createTrackableSenderFromMnemonic(client: TonClient, mnemonic: string[], workchain?: number): Promise<TrackableSender>;
|