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.
- package/dist/Bridge.compile.d.ts +2 -0
- package/dist/Bridge.compile.js +9 -0
- package/dist/Bridge.d.ts +208 -0
- package/dist/Bridge.js +468 -0
- package/dist/Fake.compile.d.ts +2 -0
- package/dist/Fake.compile.js +9 -0
- package/dist/GroupApprove.compile.d.ts +2 -0
- package/dist/GroupApprove.compile.js +7 -0
- package/dist/GroupApprove.d.ts +124 -0
- package/dist/GroupApprove.js +181 -0
- package/dist/JettonMinter.compile.d.ts +2 -0
- package/dist/JettonMinter.compile.js +6 -0
- package/dist/JettonMinter.d.ts +45 -0
- package/dist/JettonMinter.js +124 -0
- package/dist/JettonWallet.compile.d.ts +2 -0
- package/dist/JettonWallet.compile.js +6 -0
- package/dist/JettonWallet.d.ts +26 -0
- package/dist/JettonWallet.js +103 -0
- package/dist/Signature.compile.d.ts +2 -0
- package/dist/Signature.compile.js +7 -0
- package/dist/Signature.d.ts +44 -0
- package/dist/Signature.js +106 -0
- package/dist/address.compile.d.ts +2 -0
- package/dist/address.compile.js +9 -0
- package/dist/client/client-interface.d.ts +35 -0
- package/dist/client/client-interface.js +9 -0
- package/dist/client/client.d.ts +22 -0
- package/dist/client/client.js +86 -0
- package/dist/client/tonapi-client.d.ts +4630 -0
- package/dist/client/tonapi-client.js +5376 -0
- package/dist/code/encode-decode.d.ts +132 -0
- package/dist/code/encode-decode.js +645 -0
- package/dist/code/userLock.d.ts +39 -0
- package/dist/code/userLock.js +284 -0
- package/dist/common.d.ts +9 -0
- package/dist/common.js +45 -0
- package/dist/config/config-ex.d.ts +7 -0
- package/dist/config/config-ex.js +73 -0
- package/dist/const/const-value.d.ts +21 -0
- package/dist/const/const-value.js +26 -0
- package/dist/contractAccess/bridgeAccess.d.ts +10 -0
- package/dist/contractAccess/bridgeAccess.js +55 -0
- package/dist/contractAccess/groupApproveAccess.d.ts +10 -0
- package/dist/contractAccess/groupApproveAccess.js +54 -0
- package/dist/db/Db.d.ts +24 -0
- package/dist/db/Db.js +739 -0
- package/dist/db/DbAccess.d.ts +24 -0
- package/dist/db/DbAccess.js +211 -0
- package/dist/db/common.d.ts +5 -0
- package/dist/db/common.js +114 -0
- package/dist/event/getEvents.d.ts +17 -0
- package/dist/event/getEvents.js +387 -0
- package/dist/example/db/createDb-ex.d.ts +1 -0
- package/{example/createDb-ex.ts → dist/example/db/createDb-ex.js} +3 -4
- package/dist/example/db/dbFeedTrans-ex.d.ts +1 -0
- package/{example/dbFeedTrans-ex.ts → dist/example/db/dbFeedTrans-ex.js} +9 -11
- package/dist/example/event/getAllEvents-ex.d.ts +1 -0
- package/dist/example/event/getAllEvents-ex.js +70 -0
- package/dist/example/event/getEventByHash-ex.d.ts +1 -0
- package/{example/getEventByHash-ex.ts → dist/example/event/getEventByHash-ex.js} +21 -25
- package/dist/example/event/getEventsByRange-ex.d.ts +1 -0
- package/dist/example/event/getEventsByRange-ex.js +58 -0
- package/dist/example/getAllTrans.d.ts +1 -0
- package/dist/example/getAllTrans.js +30 -0
- package/dist/example/jetton/getJettonInfo-ex.d.ts +1 -0
- package/dist/example/jetton/getJettonInfo-ex.js +32 -0
- package/dist/example/lock-release/smgRelease-ex.d.ts +1 -0
- package/dist/example/lock-release/smgRelease-ex.js +134 -0
- package/dist/example/lock-release/userLock-ex.d.ts +1 -0
- package/dist/example/lock-release/userLock-ex.js +69 -0
- package/dist/example/manage/addSmg-ex.d.ts +1 -0
- package/dist/example/manage/addSmg-ex.js +59 -0
- package/dist/example/manage/compileContract-ex.d.ts +1 -0
- package/dist/example/manage/compileContract-ex.js +11 -0
- package/dist/example/manage/deploy-ex.d.ts +1 -0
- package/dist/example/manage/deploy-ex.js +58 -0
- package/dist/example/manage/setFee-ex.d.ts +1 -0
- package/dist/example/manage/setFee-ex.js +61 -0
- package/dist/example/manage/setFeeProxy.d.ts +1 -0
- package/dist/example/manage/setFeeProxy.js +47 -0
- package/dist/example/manage/upgradeBridgeSc-ex.d.ts +1 -0
- package/dist/example/manage/upgradeBridgeSc-ex.js +44 -0
- package/dist/example/token/AddToken-ex.d.ts +1 -0
- package/dist/example/token/AddToken-ex.js +113 -0
- package/dist/example/token/addTokenPair-ex.d.ts +1 -0
- package/dist/example/token/addTokenPair-ex.js +59 -0
- package/dist/example/token/delTokenPair-ex.d.ts +1 -0
- package/dist/example/token/delTokenPair-ex.js +49 -0
- package/dist/example/token/getTokenPair-ex.d.ts +1 -0
- package/dist/example/token/getTokenPair-ex.js +39 -0
- package/dist/example/token/mintToken-ex.d.ts +1 -0
- package/dist/example/token/mintToken-ex.js +56 -0
- package/dist/example/tran/converTranToTonTran.d.ts +1 -0
- package/dist/example/tran/converTranToTonTran.js +32 -0
- package/dist/example/tran/getTransByRange-ex.d.ts +1 -0
- package/{example/getTransByRange-ex.ts → dist/example/tran/getTransByRange-ex.js} +26 -40
- package/dist/example/tran/getTransaction-ex.d.ts +1 -0
- package/dist/example/tran/getTransaction-ex.js +47 -0
- package/dist/example/tran/isTranSuccess-ex.d.ts +1 -0
- package/dist/example/tran/isTranSuccess-ex.js +27 -0
- package/dist/fee/fee.d.ts +12 -0
- package/dist/fee/fee.js +21 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.js +95 -0
- package/dist/jest.config.d.ts +3 -0
- package/dist/jest.config.js +8 -0
- package/dist/opcodes.d.ts +55 -0
- package/dist/opcodes.js +59 -0
- package/dist/sign/buildHash.d.ts +6 -0
- package/dist/sign/buildHash.js +39 -0
- package/dist/sign/rawTrans.d.ts +36 -0
- package/dist/sign/rawTrans.js +89 -0
- package/dist/sign/tools-secp256k1.d.ts +21 -0
- package/{sign → dist/sign}/tools-secp256k1.js +18 -44
- package/dist/testData/JettonMinter.compile.func.d.ts +2 -0
- package/dist/testData/JettonMinter.compile.func.js +13 -0
- package/dist/testData/JettonWallet.compile.func.d.ts +2 -0
- package/dist/testData/JettonWallet.compile.func.js +13 -0
- package/dist/testData/bridge.compile.func.d.ts +2 -0
- package/dist/testData/bridge.compile.func.js +13 -0
- package/dist/transResult/transResult.d.ts +29 -0
- package/dist/transResult/transResult.js +528 -0
- package/dist/utils/compileContract.d.ts +13 -0
- package/dist/utils/compileContract.js +54 -0
- package/dist/utils/logger.d.ts +16 -0
- package/dist/utils/logger.js +94 -0
- package/dist/utils/utils.d.ts +26 -0
- package/dist/utils/utils.js +330 -0
- package/dist/wallet/balance.d.ts +5 -0
- package/dist/wallet/balance.js +29 -0
- package/dist/wallet/jetton.d.ts +16 -0
- package/dist/wallet/jetton.js +171 -0
- package/dist/wallet/walletContract.d.ts +31 -0
- package/dist/wallet/walletContract.js +106 -0
- package/package.json +8 -6
- package/Bridge.compile.ts +0 -8
- package/Bridge.ts +0 -645
- package/Bridge.ts.org +0 -647
- package/Fake.compile.ts +0 -8
- package/GroupApprove.compile.ts +0 -6
- package/GroupApprove.ts +0 -274
- package/JettonMinter.compile.ts +0 -5
- package/JettonMinter.ts +0 -135
- package/JettonWallet.compile.ts +0 -5
- package/JettonWallet.ts +0 -127
- package/Signature.compile.ts +0 -6
- package/Signature.ts +0 -105
- package/address.compile.ts +0 -8
- package/client/1.json +0 -1730
- package/client/client.ts +0 -73
- package/client/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -15
- package/code/decode.spec.ts +0 -81
- package/code/encode-decode.ts +0 -622
- package/code/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -20
- package/code/log/wan-ton-sdk.out.2025-01-20 +0 -0
- package/code/userLock.ts +0 -291
- package/common.ts +0 -62
- package/config/config-ex.ts +0 -25
- package/config/config.ts +0 -1
- package/const/const-value.ts +0 -33
- package/contractAccess/bridgeAccess.ts +0 -60
- package/contractAccess/groupApproveAccess.ts +0 -59
- package/data/EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs.json +0 -7348
- package/db/Db.spec.ts +0 -193
- package/db/Db.ts +0 -736
- package/db/DbAccess.spec.ts +0 -23
- package/db/DbAccess.ts +0 -186
- package/db/common.ts +0 -94
- package/db/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -15
- package/db/log/wan-ton-sdk.out.2025-04-21 +0 -0
- package/event/getEvents.ts +0 -441
- package/event/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -15
- package/event/log/wan-ton-sdk.out.2024-12-19 +0 -0
- package/example/0:1.txt +0 -1
- package/example/AddToken-ex.ts +0 -148
- package/example/README.md +0 -21
- package/example/addSmg-ex.ts +0 -78
- package/example/addTokenPair-ex.ts +0 -73
- package/example/compileContract-ex.ts +0 -10
- package/example/converTranToTonTran.ts +0 -43
- package/example/delTokenPair-ex.ts +0 -63
- package/example/deploy-ex.ts +0 -68
- package/example/getAllEvents-ex.ts +0 -61
- package/example/getAllTrans.ts +0 -32
- package/example/getContractState-ex.ts +0 -33
- package/example/getEvents-ex.ts +0 -55
- package/example/getJettonInfo-ex.ts +0 -44
- package/example/getTokenPair-ex.ts +0 -47
- package/example/getTransaction-ex.ts +0 -62
- package/example/isTranSuccess-ex.ts +0 -33
- package/example/locateTx-ex.ts +0 -44
- package/example/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -55
- package/example/log/wan-ton-sdk.out.2025-04-21 +0 -447
- package/example/log/wan-ton-sdk.out.2025-04-22 +0 -1918
- package/example/log/wan-ton-sdk.out.2025-04-23 +0 -4216
- package/example/log/wan-ton-sdk.out.2025-04-24.gz +0 -0
- package/example/log/wan-ton-sdk.out.2025-04-25 +0 -46814
- package/example/log/wan-ton-sdk.out.2025-04-27.gz +0 -0
- package/example/log/wan-ton-sdk.out.2025-04-28 +0 -4966
- package/example/log/wan-ton-sdk.out.2025-04-29 +0 -1328
- package/example/log/wan-ton-sdk.out.2025-04-30 +0 -9
- package/example/mintToken-ex.ts +0 -82
- package/example/setFee-ex.ts +0 -82
- package/example/setFeeProxy.ts +0 -70
- package/example/smgRelease-ex.ts +0 -173
- package/example/upgradeBridgeSc-ex.ts +0 -49
- package/example/userLock-ex.ts +0 -78
- package/fee/fee.ts +0 -23
- package/index.ts +0 -76
- package/jest.config.ts +0 -9
- package/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -20
- package/log/wan-ton-sdk.out.2025-04-21 +0 -0
- package/log/wan-ton-sdk.out.2025-04-30 +0 -10
- package/opcodes.ts +0 -58
- package/publish.sh +0 -78
- package/sign/buildHash.ts +0 -47
- package/sign/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -15
- package/sign/log/wan-ton-sdk.out.2025-04-14 +0 -3
- package/sign/rawTrans.spec.ts +0 -117
- package/sign/rawTrans.ts +0 -122
- package/testData/JettonMinter.compile.func.ts +0 -8
- package/testData/JettonWallet.compile.func.ts +0 -8
- package/testData/addressList.json +0 -6
- package/testData/bridge.compile.func.ts +0 -8
- package/testData/bridge.compiled.json +0 -1
- package/testData/contractAddress.json +0 -7
- package/testData/jettonTokenInfo.json +0 -14
- package/testData/prvlist.json +0 -6
- package/testData/smg.json +0 -5
- package/testData/tokenInfo.json +0 -23
- package/transResult/transResult.ts +0 -608
- package/tsconfig.json +0 -19
- package/utils/.compiled.json +0 -1
- package/utils/compileContract.ts +0 -60
- package/utils/log/.ba8901062aebb86bf525b42c65ff84f9485419e4-audit.json +0 -15
- package/utils/log/wan-ton-sdk.out.2025-01-08 +0 -0
- package/utils/logger.spec.ts +0 -14
- package/utils/logger.ts +0 -96
- package/utils/utils.spec.ts +0 -21
- package/utils/utils.ts +0 -295
- package/wallet/balance.ts +0 -29
- package/wallet/jetton.spec.ts +0 -27
- package/wallet/jetton.ts +0 -159
- package/wallet/walletContract.spec.ts +0 -111
- package/wallet/walletContract.ts +0 -105
- /package/{client/log/wan-ton-sdk.out.2024-12-19 → dist/config/config.d.ts} +0 -0
- /package/{code/log/wan-ton-sdk.out.2025-01-15 → dist/config/config.js} +0 -0
@@ -0,0 +1,24 @@
|
|
1
|
+
import { TonTransaction } from "./Db";
|
2
|
+
export declare class DBAccess {
|
3
|
+
private dbs;
|
4
|
+
private inited;
|
5
|
+
private scanTran;
|
6
|
+
constructor();
|
7
|
+
init(scanTran: boolean): Promise<void>;
|
8
|
+
clear(): Promise<void>;
|
9
|
+
static getDBAccess(): DBAccess;
|
10
|
+
addDbByName(dbName: string): Promise<void>;
|
11
|
+
removeDbByName(dbName: string): Promise<void>;
|
12
|
+
setTranHandleFlag(dbName: string, tran: TonTransaction, finishOrNot: boolean): Promise<void>;
|
13
|
+
getTxByTxHash(dbName: string, txHash: string): Promise<import("@ton/core").Transaction>;
|
14
|
+
getTxByHashLt(dbName: string, txHash: string, lt: string): Promise<import("@ton/core").Transaction>;
|
15
|
+
getTxByMsg(dbName: string, msgHash: string, bodyHash: string, lt: bigint): Promise<import("@ton/core").Transaction>;
|
16
|
+
getTxsByLtRange(dbName: string, lt: bigint, to_lt: bigint): Promise<import("@ton/core").Transaction[]>;
|
17
|
+
getParentTx(dbName: string, tran: TonTransaction): Promise<import("@ton/core").Transaction>;
|
18
|
+
getChildTxs(dbName: string, tran: TonTransaction): Promise<import("@ton/core").Transaction[]>;
|
19
|
+
getAllTransNotHandled(dbName: string): Promise<import("@ton/core").Transaction[]>;
|
20
|
+
getAllTransNotHandledByRange(dbName: string, lt: bigint, to_lt: bigint): Promise<import("@ton/core").Transaction[]>;
|
21
|
+
getTxByOnlyMsgHash(dbName: string, msgCellHash: string): Promise<import("@ton/core").Transaction[]>;
|
22
|
+
getDbNameFinal(dbName: string): string;
|
23
|
+
has(dbName: string): boolean;
|
24
|
+
}
|
@@ -0,0 +1,211 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.DBAccess = void 0;
|
4
|
+
const DB = require("../db/Db").DB;
|
5
|
+
const RangeOpen = require("../db/Db").RangeOpen;
|
6
|
+
const common_1 = require("./common");
|
7
|
+
const common_2 = require("./common");
|
8
|
+
const core_1 = require("@ton/core");
|
9
|
+
const client_1 = require("../client/client");
|
10
|
+
const utils_1 = require("../utils/utils");
|
11
|
+
const logger_1 = require("../utils/logger");
|
12
|
+
let dbAccess = null;
|
13
|
+
async function runAsyncTask(db, scanTran = true) {
|
14
|
+
logger_1.logger.info("DbAccess runAsyncTask......", "dbName", db.getDbName(), "scanTran", scanTran);
|
15
|
+
if (scanTran) {
|
16
|
+
await db.feedTrans();
|
17
|
+
}
|
18
|
+
}
|
19
|
+
class DBAccess {
|
20
|
+
constructor() {
|
21
|
+
this.dbs = new Map();
|
22
|
+
this.inited = false;
|
23
|
+
this.scanTran = true;
|
24
|
+
}
|
25
|
+
async init(scanTran) {
|
26
|
+
logger_1.logger.info("begin DbAccess init", "scanTran", scanTran);
|
27
|
+
if (this.inited) {
|
28
|
+
return;
|
29
|
+
}
|
30
|
+
let dbNames = [];
|
31
|
+
await (0, utils_1.ensureDirectoryExists)((0, client_1.getDBDataDir)());
|
32
|
+
(0, common_2.listJsonFiles)((0, client_1.getDBDataDir)(), dbNames);
|
33
|
+
for (let dbName of dbNames) {
|
34
|
+
let db = new DB(dbName);
|
35
|
+
await db.init(dbName);
|
36
|
+
this.dbs.set(dbName, db);
|
37
|
+
await runAsyncTask(db, scanTran);
|
38
|
+
}
|
39
|
+
this.inited = true;
|
40
|
+
this.scanTran = scanTran;
|
41
|
+
logger_1.logger.info("end DbAccess init");
|
42
|
+
}
|
43
|
+
async clear() {
|
44
|
+
for (let key of this.dbs.keys()) {
|
45
|
+
let db = this.dbs.get(key);
|
46
|
+
await db.stopFeedTrans();
|
47
|
+
await db.clearDb();
|
48
|
+
db = null;
|
49
|
+
}
|
50
|
+
this.dbs.clear();
|
51
|
+
}
|
52
|
+
static getDBAccess() {
|
53
|
+
if (!(0, client_1.getGlobalTonConfig)().usingDbCache) {
|
54
|
+
return null;
|
55
|
+
}
|
56
|
+
if (dbAccess == null) {
|
57
|
+
dbAccess = new DBAccess();
|
58
|
+
return dbAccess;
|
59
|
+
}
|
60
|
+
else {
|
61
|
+
return dbAccess;
|
62
|
+
}
|
63
|
+
}
|
64
|
+
async addDbByName(dbName) {
|
65
|
+
logger_1.logger.info("before addDbByName", "dbName", dbName, "dbs.length", this.dbs.size);
|
66
|
+
if (this.has(dbName)) {
|
67
|
+
throw new Error(`db ${dbName} already exists`);
|
68
|
+
}
|
69
|
+
let dbNameFinal = this.getDbNameFinal(dbName);
|
70
|
+
let db = new DB(dbNameFinal);
|
71
|
+
await db.init(dbNameFinal);
|
72
|
+
this.dbs.set(db.getDbName(), db);
|
73
|
+
logger_1.logger.info("after addDbByName", "dbName", dbName, "dbNameFinal", dbNameFinal, "dbs.length", this.dbs.size);
|
74
|
+
await runAsyncTask(db, this.scanTran);
|
75
|
+
}
|
76
|
+
async removeDbByName(dbName) {
|
77
|
+
if (!this.has(dbName)) {
|
78
|
+
throw new Error(`db ${dbName} not exists`);
|
79
|
+
}
|
80
|
+
await (this.dbs.get(this.getDbNameFinal(dbName))).stopFeedTrans();
|
81
|
+
this.dbs.delete(this.getDbNameFinal(dbName));
|
82
|
+
}
|
83
|
+
async setTranHandleFlag(dbName, tran, finishOrNot) {
|
84
|
+
if (!this.has(dbName)) {
|
85
|
+
throw new Error(`db ${dbName} not exists`);
|
86
|
+
}
|
87
|
+
await this.dbs.get(this.getDbNameFinal(dbName)).setTranHandleFlag(tran, finishOrNot);
|
88
|
+
}
|
89
|
+
async getTxByTxHash(dbName, txHash) {
|
90
|
+
if (!this.has(dbName)) {
|
91
|
+
throw new Error(`db ${dbName} not exists`);
|
92
|
+
}
|
93
|
+
let tonTran = await this.dbs.get(this.getDbNameFinal(dbName)).getTxByTxHash(txHash);
|
94
|
+
if (!tonTran || (tonTran.length == 0)) {
|
95
|
+
return null;
|
96
|
+
}
|
97
|
+
return ((0, common_1.convertTonTransToTrans)(tonTran))[0];
|
98
|
+
}
|
99
|
+
async getTxByHashLt(dbName, txHash, lt) {
|
100
|
+
logger_1.logger.info("Entering getTxByHashLt........", "dbName", dbName, "txHash", txHash, "lt", lt);
|
101
|
+
if (!this.has(dbName)) {
|
102
|
+
throw new Error(`db ${dbName} not exists`);
|
103
|
+
}
|
104
|
+
let tonTran = await this.dbs.get(this.getDbNameFinal(dbName)).getTxByHashLt(txHash, lt);
|
105
|
+
if (!tonTran || (tonTran.length == 0)) {
|
106
|
+
return null;
|
107
|
+
}
|
108
|
+
logger_1.logger.info("Entering getTxByHashLt before convertTonTransToTrans........", "dbName", dbName, "txHash", txHash, "lt", lt, "tonTran.length", tonTran.length);
|
109
|
+
return ((0, common_1.convertTonTransToTrans)(tonTran))[0];
|
110
|
+
}
|
111
|
+
async getTxByMsg(dbName, msgHash, bodyHash, lt) {
|
112
|
+
logger_1.logger.info("Entering getTxByMsg........", "dbName", dbName, "msgHash", msgHash, "bodyHash", bodyHash, "lt", lt.toString(10));
|
113
|
+
if (!this.has(dbName)) {
|
114
|
+
throw new Error(`db ${dbName} not exists`);
|
115
|
+
}
|
116
|
+
let tonTran = await this.dbs.get(this.getDbNameFinal(dbName)).getTxByMsg(msgHash, bodyHash, lt);
|
117
|
+
if (!tonTran || (tonTran.length == 0)) {
|
118
|
+
return null;
|
119
|
+
}
|
120
|
+
logger_1.logger.info("Ending getTxByMsg success........", "dbName", dbName, "msgHash", msgHash, "bodyHash", bodyHash, "lt", lt.toString(10), "tonTran.length", tonTran.length);
|
121
|
+
return ((0, common_1.convertTonTransToTrans)([tonTran[0]]))[0];
|
122
|
+
}
|
123
|
+
async getTxsByLtRange(dbName, lt, to_lt) {
|
124
|
+
logger_1.logger.info("Entering getTxsByLtRange........", "dbName", dbName, "lt", lt, "to_lt", to_lt);
|
125
|
+
if (!this.has(dbName)) {
|
126
|
+
throw new Error(`db ${dbName} not exists`);
|
127
|
+
}
|
128
|
+
let tonTran = await this.dbs.get(this.getDbNameFinal(dbName)).getTxsByLtRange(lt, to_lt);
|
129
|
+
if (!tonTran || (tonTran.length == 0)) {
|
130
|
+
return null;
|
131
|
+
}
|
132
|
+
return (0, common_1.convertTonTransToTrans)(tonTran);
|
133
|
+
}
|
134
|
+
async getParentTx(dbName, tran) {
|
135
|
+
if (!this.has(dbName)) {
|
136
|
+
throw new Error(`db ${dbName} not exists`);
|
137
|
+
}
|
138
|
+
let ret = await this.dbs.get(this.getDbNameFinal(dbName)).getParentTx(tran);
|
139
|
+
if (!ret || ret.length == 0) {
|
140
|
+
return null;
|
141
|
+
}
|
142
|
+
else {
|
143
|
+
return (0, common_1.convertTonTransToTrans)(ret)[0];
|
144
|
+
}
|
145
|
+
}
|
146
|
+
async getChildTxs(dbName, tran) {
|
147
|
+
if (!this.has(dbName)) {
|
148
|
+
throw new Error(`db ${dbName} not exists`);
|
149
|
+
}
|
150
|
+
let ret = await this.dbs.get(this.getDbNameFinal(dbName)).getChildTxs(tran);
|
151
|
+
if (!ret || ret.length == 0) {
|
152
|
+
return null;
|
153
|
+
}
|
154
|
+
else {
|
155
|
+
return (0, common_1.convertTonTransToTrans)(ret);
|
156
|
+
}
|
157
|
+
}
|
158
|
+
async getAllTransNotHandled(dbName) {
|
159
|
+
logger_1.logger.info("begin getAllTransNotHandled", "dbName", dbName);
|
160
|
+
if (!this.has(dbName)) {
|
161
|
+
throw new Error(`db ${dbName} not exists`);
|
162
|
+
}
|
163
|
+
let ret = await this.dbs.get(this.getDbNameFinal(dbName)).getAllTransNotHandled();
|
164
|
+
if (!ret || ret.length == 0) {
|
165
|
+
return null;
|
166
|
+
}
|
167
|
+
else {
|
168
|
+
logger_1.logger.info("end getAllTransNotHandled", "dbName", dbName);
|
169
|
+
logger_1.logger.info("begin convertTonTransToTrans", "dbName", dbName, "tran.length", ret.length);
|
170
|
+
let finalRet = (0, common_1.convertTonTransToTrans)(ret);
|
171
|
+
logger_1.logger.info("end convertTonTransToTrans", "dbName", dbName, "tran.length", ret.length);
|
172
|
+
return finalRet;
|
173
|
+
}
|
174
|
+
}
|
175
|
+
async getAllTransNotHandledByRange(dbName, lt, to_lt) {
|
176
|
+
if (!this.has(dbName)) {
|
177
|
+
throw new Error(`db ${dbName} not exists`);
|
178
|
+
}
|
179
|
+
let ret = await this.dbs.get(this.getDbNameFinal(dbName)).getAllTransNotHandledByRange(lt, to_lt);
|
180
|
+
if (!ret || ret.length == 0) {
|
181
|
+
return null;
|
182
|
+
}
|
183
|
+
else {
|
184
|
+
return (0, common_1.convertTonTransToTrans)(ret);
|
185
|
+
}
|
186
|
+
}
|
187
|
+
async getTxByOnlyMsgHash(dbName, msgCellHash) {
|
188
|
+
if (!this.has(dbName)) {
|
189
|
+
throw new Error(`db ${dbName} not exists`);
|
190
|
+
}
|
191
|
+
let ret = await this.dbs.get(this.getDbNameFinal(dbName)).getTxByOnlyMsgHash(msgCellHash);
|
192
|
+
if (!ret || ret.length == 0) {
|
193
|
+
return null;
|
194
|
+
}
|
195
|
+
else {
|
196
|
+
return (0, common_1.convertTonTransToTrans)(ret);
|
197
|
+
}
|
198
|
+
}
|
199
|
+
getDbNameFinal(dbName) {
|
200
|
+
let dbNameFinal = dbName;
|
201
|
+
if (core_1.Address.parse(dbName).toString() != dbName) {
|
202
|
+
dbNameFinal = core_1.Address.parse(dbName).toString();
|
203
|
+
}
|
204
|
+
return dbNameFinal;
|
205
|
+
}
|
206
|
+
has(dbName) {
|
207
|
+
let dbAliasName = core_1.Address.parse(dbName).toString();
|
208
|
+
return this.dbs.has(dbName) || this.dbs.has(dbAliasName);
|
209
|
+
}
|
210
|
+
}
|
211
|
+
exports.DBAccess = DBAccess;
|
@@ -0,0 +1,5 @@
|
|
1
|
+
import { Transaction } from "@ton/core";
|
2
|
+
import { TonTransaction } from "./Db";
|
3
|
+
export declare function listJsonFiles(dir: string, fileList?: string[]): string[];
|
4
|
+
export declare function convertTranToTonTrans(trans: Transaction[]): TonTransaction[];
|
5
|
+
export declare function convertTonTransToTrans(tonTrans: TonTransaction[]): Transaction[];
|
@@ -0,0 +1,114 @@
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
+
}) : function(o, v) {
|
16
|
+
o["default"] = v;
|
17
|
+
});
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
19
|
+
var ownKeys = function(o) {
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
21
|
+
var ar = [];
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
23
|
+
return ar;
|
24
|
+
};
|
25
|
+
return ownKeys(o);
|
26
|
+
};
|
27
|
+
return function (mod) {
|
28
|
+
if (mod && mod.__esModule) return mod;
|
29
|
+
var result = {};
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
31
|
+
__setModuleDefault(result, mod);
|
32
|
+
return result;
|
33
|
+
};
|
34
|
+
})();
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
36
|
+
exports.listJsonFiles = listJsonFiles;
|
37
|
+
exports.convertTranToTonTrans = convertTranToTonTrans;
|
38
|
+
exports.convertTonTransToTrans = convertTonTransToTrans;
|
39
|
+
const fs = __importStar(require("fs"));
|
40
|
+
const path = __importStar(require("path"));
|
41
|
+
const core_1 = require("@ton/core");
|
42
|
+
const core_2 = require("@ton/core");
|
43
|
+
const utils_1 = require("../utils/utils");
|
44
|
+
const logger_1 = require("../utils/logger");
|
45
|
+
function listJsonFiles(dir, fileList = []) {
|
46
|
+
const files = fs.readdirSync(dir);
|
47
|
+
logger_1.logger.info("files", files);
|
48
|
+
for (const file of files) {
|
49
|
+
const filePath = path.join(dir, file);
|
50
|
+
const stat = fs.statSync(filePath);
|
51
|
+
if (stat.isDirectory()) {
|
52
|
+
listJsonFiles(filePath, fileList);
|
53
|
+
}
|
54
|
+
else if (path.extname(filePath) === '.json') {
|
55
|
+
fileList.push(file.slice(0, file.length - 5));
|
56
|
+
}
|
57
|
+
}
|
58
|
+
return fileList;
|
59
|
+
}
|
60
|
+
function convertTranToTonTrans(trans) {
|
61
|
+
let tonTrans = [];
|
62
|
+
for (let tran of trans) {
|
63
|
+
const inMessageCell = (0, core_1.beginCell)().store((0, core_1.storeMessage)(tran.inMessage)).endCell();
|
64
|
+
let inMessageHash = inMessageCell.hash().toString('hex');
|
65
|
+
let inMessageBodyCellHash = tran.inMessage.body.hash().toString('hex');
|
66
|
+
let cii = tran.inMessage.info;
|
67
|
+
let outMsgs = [];
|
68
|
+
for (let key of tran.outMessages.keys()) {
|
69
|
+
let om = tran.outMessages.get(key);
|
70
|
+
let ciiOut = om.info;
|
71
|
+
const outMessageCell = (0, core_1.beginCell)().store((0, core_1.storeMessage)(om)).endCell();
|
72
|
+
let outMessageHash = outMessageCell.hash().toString('hex');
|
73
|
+
let outMessageBodyCellHash = om.body.hash().toString('hex');
|
74
|
+
let outMsg = {
|
75
|
+
dst: ciiOut.dest.toString(),
|
76
|
+
outMsgHash: outMessageHash,
|
77
|
+
outBodyHash: outMessageBodyCellHash,
|
78
|
+
createdLt: ciiOut.createdLt,
|
79
|
+
createAt: BigInt(ciiOut.createdAt),
|
80
|
+
};
|
81
|
+
outMsgs.push(outMsg);
|
82
|
+
}
|
83
|
+
let tonTranTemp = {
|
84
|
+
hash: tran.hash().toString('base64'),
|
85
|
+
lt: tran.lt,
|
86
|
+
raw: tran.raw.toBoc().toString('base64'),
|
87
|
+
in: {
|
88
|
+
src: cii?.src?.toString(),
|
89
|
+
inMsgHash: inMessageHash,
|
90
|
+
inBodyHash: inMessageBodyCellHash,
|
91
|
+
createdLt: cii.createdLt,
|
92
|
+
createAt: cii?.createdAt ? BigInt(cii.createdAt) : BigInt(0),
|
93
|
+
},
|
94
|
+
out: outMsgs,
|
95
|
+
emitEventOrNot: false,
|
96
|
+
};
|
97
|
+
tonTrans.push(tonTranTemp);
|
98
|
+
}
|
99
|
+
return tonTrans;
|
100
|
+
}
|
101
|
+
function convertTonTransToTrans(tonTrans) {
|
102
|
+
let trans = [];
|
103
|
+
for (let tonTran of tonTrans) {
|
104
|
+
try {
|
105
|
+
let tranCell = core_1.Cell.fromBase64(tonTran.raw);
|
106
|
+
let tranTemp = (0, core_2.loadTransaction)(tranCell.asSlice());
|
107
|
+
trans.push(tranTemp);
|
108
|
+
}
|
109
|
+
catch (err) {
|
110
|
+
logger_1.logger.error("convertTonTransToTrans", "tonTran", tonTran, "err", (0, utils_1.formatError)(err));
|
111
|
+
}
|
112
|
+
}
|
113
|
+
return trans;
|
114
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { Cell, Transaction } from "@ton/core";
|
2
|
+
import { WanTonClient } from "../client/client-interface";
|
3
|
+
export declare function getEvents(client: WanTonClient, scAddress: string, limit: number, lt?: string, to_lt?: string, eventName?: string, hash?: string): Promise<any>;
|
4
|
+
export declare function getTransactions(client: WanTonClient, scAddress: string, opts: {
|
5
|
+
limit: number;
|
6
|
+
lt?: string;
|
7
|
+
hash?: string;
|
8
|
+
to_lt?: string;
|
9
|
+
inclusive?: boolean;
|
10
|
+
archival?: boolean;
|
11
|
+
}): Promise<any>;
|
12
|
+
export declare function getAllTransactions(client: WanTonClient, scAddress: string, limit: number, retry: number): Promise<any[]>;
|
13
|
+
export declare function getEventFromTran(client: WanTonClient, tran: Transaction, scAddress: string): Promise<any>;
|
14
|
+
export declare function getTransaction(client: WanTonClient, scAddress: string, lt: string, tranHash: string): Promise<any>;
|
15
|
+
export declare function getTransactionFromDb(client: WanTonClient, scAddress: string, lt: string, tranHash: string): Promise<any>;
|
16
|
+
export declare function getEventByTranHash(client: WanTonClient, scAddress: string, lt: string, tranHash: string): Promise<any>;
|
17
|
+
export declare function getOpCodeFromCell(cell: Cell): Promise<number>;
|