@t402/tron 1.0.0 → 2.0.0
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/cjs/exact/client/index.js +5 -1
- package/dist/cjs/exact/client/index.js.map +1 -1
- package/dist/cjs/exact/facilitator/index.js +22 -9
- package/dist/cjs/exact/facilitator/index.js.map +1 -1
- package/dist/cjs/exact/server/index.d.ts +3 -6
- package/dist/cjs/exact/server/index.js +96 -143
- package/dist/cjs/exact/server/index.js.map +1 -1
- package/dist/cjs/index.js +147 -169
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/{chunk-A2E6FJU3.mjs → chunk-2JPJ3ITE.mjs} +6 -5
- package/dist/esm/{chunk-A2E6FJU3.mjs.map → chunk-2JPJ3ITE.mjs.map} +1 -1
- package/dist/esm/{chunk-L773HPM3.mjs → chunk-7ON767JA.mjs} +36 -63
- package/dist/esm/{chunk-L773HPM3.mjs.map → chunk-7ON767JA.mjs.map} +1 -1
- package/dist/esm/{chunk-CH6GR2VO.mjs → chunk-FSYJTWWP.mjs} +23 -13
- package/dist/esm/chunk-FSYJTWWP.mjs.map +1 -0
- package/dist/esm/{chunk-RHOZZ6XV.mjs → chunk-S7NVYXWH.mjs} +55 -82
- package/dist/esm/chunk-S7NVYXWH.mjs.map +1 -0
- package/dist/esm/exact/client/index.mjs +2 -2
- package/dist/esm/exact/facilitator/index.mjs +2 -2
- package/dist/esm/exact/server/index.d.mts +3 -6
- package/dist/esm/exact/server/index.mjs +2 -2
- package/dist/esm/index.mjs +4 -10
- package/dist/esm/index.mjs.map +1 -1
- package/package.json +16 -16
- package/dist/esm/chunk-CH6GR2VO.mjs.map +0 -1
- package/dist/esm/chunk-RHOZZ6XV.mjs.map +0 -1
package/dist/cjs/index.js
CHANGED
|
@@ -3,9 +3,7 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var
|
|
7
|
-
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
8
|
-
};
|
|
6
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
9
7
|
var __export = (target, all) => {
|
|
10
8
|
for (var name in all)
|
|
11
9
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -19,142 +17,7 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
19
17
|
return to;
|
|
20
18
|
};
|
|
21
19
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
22
|
-
|
|
23
|
-
// src/constants.ts
|
|
24
|
-
var TRON_MAINNET_CAIP2, TRON_NILE_CAIP2, TRON_SHASTA_CAIP2, TRON_NETWORKS, TRON_MAINNET_ENDPOINT, TRON_NILE_ENDPOINT, TRON_SHASTA_ENDPOINT, NETWORK_ENDPOINTS, TRC20_TRANSFER_SELECTOR, TRC20_APPROVE_SELECTOR, TRC20_BALANCE_OF_SELECTOR, DEFAULT_FEE_LIMIT, MIN_FEE_LIMIT, MAX_FEE_LIMIT, SUN_PER_TRX, SCHEME_EXACT, DEFAULT_VALIDITY_DURATION, MIN_VALIDITY_BUFFER, TRON_ADDRESS_PREFIX, TRON_ADDRESS_LENGTH, TRON_ADDRESS_HEX_PREFIX, USDT_ADDRESSES, DEFAULT_USDT_DECIMALS, DEFAULT_TRX_DECIMALS;
|
|
25
|
-
var init_constants = __esm({
|
|
26
|
-
"src/constants.ts"() {
|
|
27
|
-
"use strict";
|
|
28
|
-
TRON_MAINNET_CAIP2 = "tron:mainnet";
|
|
29
|
-
TRON_NILE_CAIP2 = "tron:nile";
|
|
30
|
-
TRON_SHASTA_CAIP2 = "tron:shasta";
|
|
31
|
-
TRON_NETWORKS = [TRON_MAINNET_CAIP2, TRON_NILE_CAIP2, TRON_SHASTA_CAIP2];
|
|
32
|
-
TRON_MAINNET_ENDPOINT = "https://api.trongrid.io";
|
|
33
|
-
TRON_NILE_ENDPOINT = "https://api.nileex.io";
|
|
34
|
-
TRON_SHASTA_ENDPOINT = "https://api.shasta.trongrid.io";
|
|
35
|
-
NETWORK_ENDPOINTS = {
|
|
36
|
-
[TRON_MAINNET_CAIP2]: TRON_MAINNET_ENDPOINT,
|
|
37
|
-
[TRON_NILE_CAIP2]: TRON_NILE_ENDPOINT,
|
|
38
|
-
[TRON_SHASTA_CAIP2]: TRON_SHASTA_ENDPOINT
|
|
39
|
-
};
|
|
40
|
-
TRC20_TRANSFER_SELECTOR = "a9059cbb";
|
|
41
|
-
TRC20_APPROVE_SELECTOR = "095ea7b3";
|
|
42
|
-
TRC20_BALANCE_OF_SELECTOR = "70a08231";
|
|
43
|
-
DEFAULT_FEE_LIMIT = 1e8;
|
|
44
|
-
MIN_FEE_LIMIT = 1e7;
|
|
45
|
-
MAX_FEE_LIMIT = 1e9;
|
|
46
|
-
SUN_PER_TRX = 1e6;
|
|
47
|
-
SCHEME_EXACT = "exact";
|
|
48
|
-
DEFAULT_VALIDITY_DURATION = 3600;
|
|
49
|
-
MIN_VALIDITY_BUFFER = 30;
|
|
50
|
-
TRON_ADDRESS_PREFIX = "T";
|
|
51
|
-
TRON_ADDRESS_LENGTH = 34;
|
|
52
|
-
TRON_ADDRESS_HEX_PREFIX = 65;
|
|
53
|
-
USDT_ADDRESSES = {
|
|
54
|
-
[TRON_MAINNET_CAIP2]: "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
|
|
55
|
-
[TRON_NILE_CAIP2]: "TXYZopYRdj2D9XRtbG411XZZ3kM5VkAeBf",
|
|
56
|
-
[TRON_SHASTA_CAIP2]: "TG3XXyExBkPp9nzdajDZsozEu4BkaSJozs"
|
|
57
|
-
};
|
|
58
|
-
DEFAULT_USDT_DECIMALS = 6;
|
|
59
|
-
DEFAULT_TRX_DECIMALS = 6;
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
|
-
|
|
63
|
-
// src/tokens.ts
|
|
64
|
-
var tokens_exports = {};
|
|
65
|
-
__export(tokens_exports, {
|
|
66
|
-
TRC20_REGISTRY: () => TRC20_REGISTRY,
|
|
67
|
-
getDefaultToken: () => getDefaultToken,
|
|
68
|
-
getNetworkTokens: () => getNetworkTokens,
|
|
69
|
-
getNetworksForToken: () => getNetworksForToken,
|
|
70
|
-
getSupportedNetworks: () => getSupportedNetworks,
|
|
71
|
-
getTRC20Config: () => getTRC20Config,
|
|
72
|
-
getTokenByAddress: () => getTokenByAddress,
|
|
73
|
-
getUsdtNetworks: () => getUsdtNetworks,
|
|
74
|
-
isNetworkSupported: () => isNetworkSupported
|
|
75
|
-
});
|
|
76
|
-
function getTRC20Config(network, symbol) {
|
|
77
|
-
const registry = TRC20_REGISTRY[network];
|
|
78
|
-
if (!registry) return void 0;
|
|
79
|
-
return registry.tokens[symbol];
|
|
80
|
-
}
|
|
81
|
-
function getNetworkTokens(network) {
|
|
82
|
-
const registry = TRC20_REGISTRY[network];
|
|
83
|
-
if (!registry) return [];
|
|
84
|
-
return Object.values(registry.tokens);
|
|
85
|
-
}
|
|
86
|
-
function getDefaultToken(network) {
|
|
87
|
-
const registry = TRC20_REGISTRY[network];
|
|
88
|
-
return registry?.defaultToken;
|
|
89
|
-
}
|
|
90
|
-
function getTokenByAddress(network, contractAddress) {
|
|
91
|
-
const registry = TRC20_REGISTRY[network];
|
|
92
|
-
if (!registry) return void 0;
|
|
93
|
-
const upperAddress = contractAddress.toUpperCase();
|
|
94
|
-
return Object.values(registry.tokens).find(
|
|
95
|
-
(token) => token.contractAddress.toUpperCase() === upperAddress
|
|
96
|
-
);
|
|
97
|
-
}
|
|
98
|
-
function getNetworksForToken(symbol) {
|
|
99
|
-
return Object.entries(TRC20_REGISTRY).filter(([_, registry]) => symbol in registry.tokens).map(([network]) => network);
|
|
100
|
-
}
|
|
101
|
-
function getUsdtNetworks() {
|
|
102
|
-
return getNetworksForToken("USDT");
|
|
103
|
-
}
|
|
104
|
-
function isNetworkSupported(network) {
|
|
105
|
-
return network in TRC20_REGISTRY;
|
|
106
|
-
}
|
|
107
|
-
function getSupportedNetworks() {
|
|
108
|
-
return Object.keys(TRC20_REGISTRY);
|
|
109
|
-
}
|
|
110
|
-
var USDT_MAINNET, USDT_NILE, USDT_SHASTA, TRC20_REGISTRY;
|
|
111
|
-
var init_tokens = __esm({
|
|
112
|
-
"src/tokens.ts"() {
|
|
113
|
-
"use strict";
|
|
114
|
-
init_constants();
|
|
115
|
-
USDT_MAINNET = {
|
|
116
|
-
contractAddress: USDT_ADDRESSES[TRON_MAINNET_CAIP2],
|
|
117
|
-
symbol: "USDT",
|
|
118
|
-
name: "Tether USD",
|
|
119
|
-
decimals: DEFAULT_USDT_DECIMALS
|
|
120
|
-
};
|
|
121
|
-
USDT_NILE = {
|
|
122
|
-
contractAddress: USDT_ADDRESSES[TRON_NILE_CAIP2],
|
|
123
|
-
symbol: "USDT",
|
|
124
|
-
name: "Tether USD",
|
|
125
|
-
decimals: DEFAULT_USDT_DECIMALS
|
|
126
|
-
};
|
|
127
|
-
USDT_SHASTA = {
|
|
128
|
-
contractAddress: USDT_ADDRESSES[TRON_SHASTA_CAIP2],
|
|
129
|
-
symbol: "USDT",
|
|
130
|
-
name: "Tether USD",
|
|
131
|
-
decimals: DEFAULT_USDT_DECIMALS
|
|
132
|
-
};
|
|
133
|
-
TRC20_REGISTRY = {
|
|
134
|
-
[TRON_MAINNET_CAIP2]: {
|
|
135
|
-
network: TRON_MAINNET_CAIP2,
|
|
136
|
-
defaultToken: USDT_MAINNET,
|
|
137
|
-
tokens: {
|
|
138
|
-
USDT: USDT_MAINNET
|
|
139
|
-
}
|
|
140
|
-
},
|
|
141
|
-
[TRON_NILE_CAIP2]: {
|
|
142
|
-
network: TRON_NILE_CAIP2,
|
|
143
|
-
defaultToken: USDT_NILE,
|
|
144
|
-
tokens: {
|
|
145
|
-
USDT: USDT_NILE
|
|
146
|
-
}
|
|
147
|
-
},
|
|
148
|
-
[TRON_SHASTA_CAIP2]: {
|
|
149
|
-
network: TRON_SHASTA_CAIP2,
|
|
150
|
-
defaultToken: USDT_SHASTA,
|
|
151
|
-
tokens: {
|
|
152
|
-
USDT: USDT_SHASTA
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
};
|
|
156
|
-
}
|
|
157
|
-
});
|
|
20
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
158
21
|
|
|
159
22
|
// src/index.ts
|
|
160
23
|
var src_exports = {};
|
|
@@ -209,11 +72,119 @@ __export(src_exports, {
|
|
|
209
72
|
validateTronAddress: () => validateTronAddress
|
|
210
73
|
});
|
|
211
74
|
module.exports = __toCommonJS(src_exports);
|
|
212
|
-
|
|
213
|
-
|
|
75
|
+
|
|
76
|
+
// src/constants.ts
|
|
77
|
+
var TRON_MAINNET_CAIP2 = "tron:mainnet";
|
|
78
|
+
var TRON_NILE_CAIP2 = "tron:nile";
|
|
79
|
+
var TRON_SHASTA_CAIP2 = "tron:shasta";
|
|
80
|
+
var TRON_NETWORKS = [TRON_MAINNET_CAIP2, TRON_NILE_CAIP2, TRON_SHASTA_CAIP2];
|
|
81
|
+
var TRON_MAINNET_ENDPOINT = "https://api.trongrid.io";
|
|
82
|
+
var TRON_NILE_ENDPOINT = "https://api.nileex.io";
|
|
83
|
+
var TRON_SHASTA_ENDPOINT = "https://api.shasta.trongrid.io";
|
|
84
|
+
var NETWORK_ENDPOINTS = {
|
|
85
|
+
[TRON_MAINNET_CAIP2]: TRON_MAINNET_ENDPOINT,
|
|
86
|
+
[TRON_NILE_CAIP2]: TRON_NILE_ENDPOINT,
|
|
87
|
+
[TRON_SHASTA_CAIP2]: TRON_SHASTA_ENDPOINT
|
|
88
|
+
};
|
|
89
|
+
var TRC20_TRANSFER_SELECTOR = "a9059cbb";
|
|
90
|
+
var TRC20_APPROVE_SELECTOR = "095ea7b3";
|
|
91
|
+
var TRC20_BALANCE_OF_SELECTOR = "70a08231";
|
|
92
|
+
var DEFAULT_FEE_LIMIT = 1e8;
|
|
93
|
+
var MIN_FEE_LIMIT = 1e7;
|
|
94
|
+
var MAX_FEE_LIMIT = 1e9;
|
|
95
|
+
var SUN_PER_TRX = 1e6;
|
|
96
|
+
var SCHEME_EXACT = "exact";
|
|
97
|
+
var DEFAULT_VALIDITY_DURATION = 3600;
|
|
98
|
+
var MIN_VALIDITY_BUFFER = 30;
|
|
99
|
+
var TRON_ADDRESS_PREFIX = "T";
|
|
100
|
+
var TRON_ADDRESS_LENGTH = 34;
|
|
101
|
+
var TRON_ADDRESS_HEX_PREFIX = 65;
|
|
102
|
+
var USDT_ADDRESSES = {
|
|
103
|
+
[TRON_MAINNET_CAIP2]: "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
|
|
104
|
+
[TRON_NILE_CAIP2]: "TXYZopYRdj2D9XRtbG411XZZ3kM5VkAeBf",
|
|
105
|
+
[TRON_SHASTA_CAIP2]: "TG3XXyExBkPp9nzdajDZsozEu4BkaSJozs"
|
|
106
|
+
};
|
|
107
|
+
var DEFAULT_USDT_DECIMALS = 6;
|
|
108
|
+
var DEFAULT_TRX_DECIMALS = 6;
|
|
109
|
+
|
|
110
|
+
// src/tokens.ts
|
|
111
|
+
var USDT_MAINNET = {
|
|
112
|
+
contractAddress: USDT_ADDRESSES[TRON_MAINNET_CAIP2],
|
|
113
|
+
symbol: "USDT",
|
|
114
|
+
name: "Tether USD",
|
|
115
|
+
decimals: DEFAULT_USDT_DECIMALS
|
|
116
|
+
};
|
|
117
|
+
var USDT_NILE = {
|
|
118
|
+
contractAddress: USDT_ADDRESSES[TRON_NILE_CAIP2],
|
|
119
|
+
symbol: "USDT",
|
|
120
|
+
name: "Tether USD",
|
|
121
|
+
decimals: DEFAULT_USDT_DECIMALS
|
|
122
|
+
};
|
|
123
|
+
var USDT_SHASTA = {
|
|
124
|
+
contractAddress: USDT_ADDRESSES[TRON_SHASTA_CAIP2],
|
|
125
|
+
symbol: "USDT",
|
|
126
|
+
name: "Tether USD",
|
|
127
|
+
decimals: DEFAULT_USDT_DECIMALS
|
|
128
|
+
};
|
|
129
|
+
var TRC20_REGISTRY = {
|
|
130
|
+
[TRON_MAINNET_CAIP2]: {
|
|
131
|
+
network: TRON_MAINNET_CAIP2,
|
|
132
|
+
defaultToken: USDT_MAINNET,
|
|
133
|
+
tokens: {
|
|
134
|
+
USDT: USDT_MAINNET
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
[TRON_NILE_CAIP2]: {
|
|
138
|
+
network: TRON_NILE_CAIP2,
|
|
139
|
+
defaultToken: USDT_NILE,
|
|
140
|
+
tokens: {
|
|
141
|
+
USDT: USDT_NILE
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
[TRON_SHASTA_CAIP2]: {
|
|
145
|
+
network: TRON_SHASTA_CAIP2,
|
|
146
|
+
defaultToken: USDT_SHASTA,
|
|
147
|
+
tokens: {
|
|
148
|
+
USDT: USDT_SHASTA
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
function getTRC20Config(network, symbol) {
|
|
153
|
+
const registry = TRC20_REGISTRY[network];
|
|
154
|
+
if (!registry) return void 0;
|
|
155
|
+
return registry.tokens[symbol];
|
|
156
|
+
}
|
|
157
|
+
function getNetworkTokens(network) {
|
|
158
|
+
const registry = TRC20_REGISTRY[network];
|
|
159
|
+
if (!registry) return [];
|
|
160
|
+
return Object.values(registry.tokens);
|
|
161
|
+
}
|
|
162
|
+
function getDefaultToken(network) {
|
|
163
|
+
const registry = TRC20_REGISTRY[network];
|
|
164
|
+
return registry?.defaultToken;
|
|
165
|
+
}
|
|
166
|
+
function getTokenByAddress(network, contractAddress) {
|
|
167
|
+
const registry = TRC20_REGISTRY[network];
|
|
168
|
+
if (!registry) return void 0;
|
|
169
|
+
const upperAddress = contractAddress.toUpperCase();
|
|
170
|
+
return Object.values(registry.tokens).find(
|
|
171
|
+
(token) => token.contractAddress.toUpperCase() === upperAddress
|
|
172
|
+
);
|
|
173
|
+
}
|
|
174
|
+
function getNetworksForToken(symbol) {
|
|
175
|
+
return Object.entries(TRC20_REGISTRY).filter(([_, registry]) => symbol in registry.tokens).map(([network]) => network);
|
|
176
|
+
}
|
|
177
|
+
function getUsdtNetworks() {
|
|
178
|
+
return getNetworksForToken("USDT");
|
|
179
|
+
}
|
|
180
|
+
function isNetworkSupported(network) {
|
|
181
|
+
return network in TRC20_REGISTRY;
|
|
182
|
+
}
|
|
183
|
+
function getSupportedNetworks() {
|
|
184
|
+
return Object.keys(TRC20_REGISTRY);
|
|
185
|
+
}
|
|
214
186
|
|
|
215
187
|
// src/utils.ts
|
|
216
|
-
init_constants();
|
|
217
188
|
function normalizeNetwork(network) {
|
|
218
189
|
if (TRON_NETWORKS.includes(network)) {
|
|
219
190
|
return network;
|
|
@@ -314,10 +285,11 @@ function estimateTransactionFee(isActivated = true) {
|
|
|
314
285
|
}
|
|
315
286
|
|
|
316
287
|
// src/exact/client/scheme.ts
|
|
317
|
-
init_constants();
|
|
318
288
|
var ExactTronScheme = class {
|
|
319
289
|
constructor(signer, config) {
|
|
320
|
-
this
|
|
290
|
+
__publicField(this, "scheme", SCHEME_EXACT);
|
|
291
|
+
__publicField(this, "signer");
|
|
292
|
+
__publicField(this, "config");
|
|
321
293
|
this.signer = signer;
|
|
322
294
|
this.config = config ?? {};
|
|
323
295
|
}
|
|
@@ -399,13 +371,12 @@ function registerExactTronScheme(client, config) {
|
|
|
399
371
|
}
|
|
400
372
|
|
|
401
373
|
// src/exact/server/scheme.ts
|
|
402
|
-
init_constants();
|
|
403
|
-
init_tokens();
|
|
404
374
|
var ExactTronScheme2 = class {
|
|
405
375
|
constructor(config) {
|
|
406
|
-
this
|
|
407
|
-
this
|
|
408
|
-
this
|
|
376
|
+
__publicField(this, "scheme", SCHEME_EXACT);
|
|
377
|
+
__publicField(this, "_config");
|
|
378
|
+
__publicField(this, "moneyParsers", []);
|
|
379
|
+
this._config = config ?? {};
|
|
409
380
|
}
|
|
410
381
|
/**
|
|
411
382
|
* Register a custom money parser
|
|
@@ -463,7 +434,7 @@ var ExactTronScheme2 = class {
|
|
|
463
434
|
async enhancePaymentRequirements(requirements, supportedKind, extensionKeys) {
|
|
464
435
|
void extensionKeys;
|
|
465
436
|
const network = normalizeNetwork(String(requirements.network));
|
|
466
|
-
let tokenConfig = requirements.asset ? getTRC20Config(network, requirements.asset) ||
|
|
437
|
+
let tokenConfig = requirements.asset ? getTRC20Config(network, requirements.asset) || getTokenByAddress(network, requirements.asset) : getDefaultToken(network);
|
|
467
438
|
if (!tokenConfig) {
|
|
468
439
|
tokenConfig = getDefaultToken(network);
|
|
469
440
|
}
|
|
@@ -507,10 +478,14 @@ var ExactTronScheme2 = class {
|
|
|
507
478
|
throw new Error(`Invalid price type: ${typeof price}`);
|
|
508
479
|
}
|
|
509
480
|
/**
|
|
510
|
-
* Default money to asset conversion
|
|
481
|
+
* Default money to asset conversion
|
|
482
|
+
* Uses preferredToken from config if set, otherwise falls back to network default
|
|
511
483
|
*/
|
|
512
484
|
defaultMoneyConversion(decimalAmount, network) {
|
|
513
|
-
|
|
485
|
+
let tokenConfig = this._config.preferredToken ? getTRC20Config(network, this._config.preferredToken) : void 0;
|
|
486
|
+
if (!tokenConfig) {
|
|
487
|
+
tokenConfig = getDefaultToken(network);
|
|
488
|
+
}
|
|
514
489
|
if (!tokenConfig) {
|
|
515
490
|
throw new Error(`No default token for network: ${network}`);
|
|
516
491
|
}
|
|
@@ -535,13 +510,6 @@ var ExactTronScheme2 = class {
|
|
|
535
510
|
}
|
|
536
511
|
return tokenConfig.contractAddress;
|
|
537
512
|
}
|
|
538
|
-
/**
|
|
539
|
-
* Get token config by contract address
|
|
540
|
-
*/
|
|
541
|
-
getTokenByAddress(network, address) {
|
|
542
|
-
const { getTokenByAddress: getTokenByAddress2 } = (init_tokens(), __toCommonJS(tokens_exports));
|
|
543
|
-
return getTokenByAddress2(network, address);
|
|
544
|
-
}
|
|
545
513
|
};
|
|
546
514
|
|
|
547
515
|
// src/exact/server/register.ts
|
|
@@ -558,11 +526,12 @@ function registerExactTronScheme2(server, config = {}) {
|
|
|
558
526
|
}
|
|
559
527
|
|
|
560
528
|
// src/exact/facilitator/scheme.ts
|
|
561
|
-
init_constants();
|
|
562
529
|
var ExactTronScheme3 = class {
|
|
563
530
|
constructor(signer, config) {
|
|
564
|
-
this
|
|
565
|
-
this
|
|
531
|
+
__publicField(this, "scheme", SCHEME_EXACT);
|
|
532
|
+
__publicField(this, "caipFamily", "tron:*");
|
|
533
|
+
__publicField(this, "signer");
|
|
534
|
+
__publicField(this, "config");
|
|
566
535
|
this.signer = signer;
|
|
567
536
|
this.config = config ?? {};
|
|
568
537
|
}
|
|
@@ -605,6 +574,13 @@ var ExactTronScheme3 = class {
|
|
|
605
574
|
*/
|
|
606
575
|
async verify(payload, requirements) {
|
|
607
576
|
const tronPayload = payload.payload;
|
|
577
|
+
if (!tronPayload?.authorization?.from || !tronPayload?.signedTransaction) {
|
|
578
|
+
return {
|
|
579
|
+
isValid: false,
|
|
580
|
+
invalidReason: "invalid_payload_structure",
|
|
581
|
+
payer: ""
|
|
582
|
+
};
|
|
583
|
+
}
|
|
608
584
|
const authorization = tronPayload.authorization;
|
|
609
585
|
if (payload.accepted.scheme !== SCHEME_EXACT || requirements.scheme !== SCHEME_EXACT) {
|
|
610
586
|
return {
|
|
@@ -631,13 +607,6 @@ var ExactTronScheme3 = class {
|
|
|
631
607
|
payer: authorization.from
|
|
632
608
|
};
|
|
633
609
|
}
|
|
634
|
-
if (!tronPayload || !tronPayload.signedTransaction || !authorization) {
|
|
635
|
-
return {
|
|
636
|
-
isValid: false,
|
|
637
|
-
invalidReason: "invalid_payload_structure",
|
|
638
|
-
payer: authorization?.from || ""
|
|
639
|
-
};
|
|
640
|
-
}
|
|
641
610
|
if (!validateTronAddress(authorization.from)) {
|
|
642
611
|
return {
|
|
643
612
|
isValid: false,
|
|
@@ -747,6 +716,15 @@ var ExactTronScheme3 = class {
|
|
|
747
716
|
*/
|
|
748
717
|
async settle(payload, requirements) {
|
|
749
718
|
const tronPayload = payload.payload;
|
|
719
|
+
if (!tronPayload?.authorization?.from || !tronPayload?.signedTransaction) {
|
|
720
|
+
return {
|
|
721
|
+
success: false,
|
|
722
|
+
network: payload.accepted.network,
|
|
723
|
+
transaction: "",
|
|
724
|
+
errorReason: "invalid_payload_structure",
|
|
725
|
+
payer: ""
|
|
726
|
+
};
|
|
727
|
+
}
|
|
750
728
|
const verifyResult = await this.verify(payload, requirements);
|
|
751
729
|
if (!verifyResult.isValid) {
|
|
752
730
|
return {
|