@tonappchain/sdk 0.7.3-rc7 → 0.8.0-aa-alpha-test
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/README.md +0 -3
- package/dist/artifacts/dev/tac/internal/artifacts/contracts/interfaces/ICrossChainLayer.sol/ICrossChainLayer.json +0 -7
- package/dist/artifacts/dev/tac/internal/artifacts/contracts/interfaces/ISettings.sol/ISettings.json +0 -7
- package/dist/artifacts/dev/tac/internal/artifacts/contracts/interfaces/ITokenUtils.sol/ITokenUtils.json +0 -7
- package/dist/artifacts/dev/tac/internal/artifacts/contracts/smart-account/interfaces/ISAFactory.sol/ISAFactory.json +0 -7
- package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/ICrossChainLayer.d.ts +1 -5
- package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/ISettings.d.ts +1 -5
- package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/ITokenUtils.d.ts +1 -5
- package/dist/artifacts/dev/tac/internal/typechain-types/contracts/smart-account/interfaces/ISAFactory.d.ts +1 -5
- package/dist/artifacts/dev/ton/internal/build/Settings.compiled.json +1 -1
- package/dist/artifacts/dev/ton/internal/wrappers/Settings.d.ts +1 -0
- package/dist/artifacts/dev/ton/internal/wrappers/Settings.js +11 -7
- package/dist/artifacts/index.d.ts +5 -3
- package/dist/artifacts/index.js +6 -3
- package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/interfaces/ICrossChainLayer.sol/ICrossChainLayer.json +0 -7
- package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/interfaces/ISettings.sol/ISettings.json +0 -7
- package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/interfaces/ITokenUtils.sol/ITokenUtils.json +0 -7
- package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/smart-account/interfaces/ISAFactory.sol/ISAFactory.json +0 -7
- package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/ICrossChainLayer.d.ts +1 -5
- package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/ISettings.d.ts +1 -5
- package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/ITokenUtils.d.ts +1 -5
- package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/smart-account/interfaces/ISAFactory.d.ts +1 -5
- package/dist/artifacts/mainnet/ton/internal/build/CrossChainLayer.compiled.json +1 -1
- package/dist/artifacts/mainnet/ton/internal/build/Executor.compiled.json +1 -1
- package/dist/artifacts/mainnet/ton/internal/build/JettonMinter.compiled.json +1 -1
- package/dist/artifacts/mainnet/ton/internal/build/JettonProxy.compiled.json +1 -1
- package/dist/artifacts/mainnet/ton/internal/build/JettonWallet.compiled.json +1 -1
- package/dist/artifacts/mainnet/ton/internal/build/NFTCollection.compiled.json +1 -1
- package/dist/artifacts/mainnet/ton/internal/build/NFTItem.compiled.json +1 -1
- package/dist/artifacts/mainnet/ton/internal/build/NFTProxy.compiled.json +1 -1
- package/dist/artifacts/mainnet/ton/internal/build/Settings.compiled.json +1 -1
- package/dist/artifacts/mainnet/ton/internal/wrappers/CrossChainLayer.d.ts +65 -6
- package/dist/artifacts/mainnet/ton/internal/wrappers/CrossChainLayer.js +169 -18
- package/dist/artifacts/mainnet/ton/internal/wrappers/JettonMinter.d.ts +4 -2
- package/dist/artifacts/mainnet/ton/internal/wrappers/JettonMinter.js +5 -3
- package/dist/artifacts/mainnet/ton/internal/wrappers/JettonProxy.d.ts +9 -0
- package/dist/artifacts/mainnet/ton/internal/wrappers/JettonProxy.js +11 -2
- package/dist/artifacts/mainnet/ton/internal/wrappers/JettonWallet.d.ts +7 -0
- package/dist/artifacts/mainnet/ton/internal/wrappers/JettonWallet.js +9 -2
- package/dist/artifacts/mainnet/ton/internal/wrappers/NFTCollection.d.ts +11 -1
- package/dist/artifacts/mainnet/ton/internal/wrappers/NFTCollection.js +17 -5
- package/dist/artifacts/mainnet/ton/internal/wrappers/NFTItem.d.ts +9 -1
- package/dist/artifacts/mainnet/ton/internal/wrappers/NFTItem.js +15 -5
- package/dist/artifacts/mainnet/ton/internal/wrappers/NFTProxy.d.ts +9 -1
- package/dist/artifacts/mainnet/ton/internal/wrappers/NFTProxy.js +16 -6
- package/dist/artifacts/mainnet/ton/internal/wrappers/Settings.d.ts +2 -0
- package/dist/artifacts/mainnet/ton/internal/wrappers/Settings.js +11 -6
- package/dist/artifacts/mainnet/ton/internal/wrappers/utils/CrossChainLayerPayload.d.ts +10 -0
- package/dist/artifacts/mainnet/ton/internal/wrappers/utils/CrossChainLayerPayload.js +24 -0
- package/dist/artifacts/mainnet/ton/internal/wrappers/utils/MerkleRoots.d.ts +2 -1
- package/dist/artifacts/mainnet/ton/internal/wrappers/utils/MerkleRoots.js +9 -1
- package/dist/artifacts/testnet/tac/internal/artifacts/contracts/interfaces/ICrossChainLayer.sol/ICrossChainLayer.json +0 -7
- package/dist/artifacts/testnet/tac/internal/artifacts/contracts/interfaces/ISettings.sol/ISettings.json +0 -7
- package/dist/artifacts/testnet/tac/internal/artifacts/contracts/interfaces/ITokenUtils.sol/ITokenUtils.json +0 -7
- package/dist/artifacts/testnet/tac/internal/artifacts/contracts/smart-account/interfaces/ISAFactory.sol/ISAFactory.json +0 -7
- package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/ICrossChainLayer.d.ts +1 -5
- package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/ISettings.d.ts +1 -5
- package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/ITokenUtils.d.ts +1 -5
- package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/smart-account/interfaces/ISAFactory.d.ts +1 -5
- package/dist/artifacts/testnet/ton/internal/build/Settings.compiled.json +1 -1
- package/dist/artifacts/testnet/ton/internal/wrappers/Settings.d.ts +1 -0
- package/dist/artifacts/testnet/ton/internal/wrappers/Settings.js +11 -7
- package/dist/src/accountAbstraction/BaseAccountAPI.d.ts +62 -0
- package/dist/src/accountAbstraction/BaseAccountAPI.js +163 -0
- package/dist/src/accountAbstraction/Ed25519.d.ts +47 -0
- package/dist/src/accountAbstraction/Ed25519.js +100 -0
- package/dist/src/accountAbstraction/HttpRpcClient.d.ts +26 -0
- package/dist/src/accountAbstraction/HttpRpcClient.js +45 -0
- package/dist/src/accountAbstraction/PaymasterAPI.d.ts +21 -0
- package/dist/src/accountAbstraction/PaymasterAPI.js +18 -0
- package/dist/src/accountAbstraction/Permit2.d.ts +37 -0
- package/dist/src/accountAbstraction/Permit2.js +41 -0
- package/dist/src/accountAbstraction/PermitFlow.d.ts +43 -0
- package/dist/src/accountAbstraction/PermitFlow.js +80 -0
- package/dist/src/accountAbstraction/TacAccountAPI.d.ts +53 -0
- package/dist/src/accountAbstraction/TacAccountAPI.js +84 -0
- package/dist/src/accountAbstraction/TacAccountSdk.d.ts +101 -0
- package/dist/src/accountAbstraction/TacAccountSdk.js +163 -0
- package/dist/src/accountAbstraction/TacERC20PaymasterAPI.d.ts +59 -0
- package/dist/src/accountAbstraction/TacERC20PaymasterAPI.js +88 -0
- package/dist/src/accountAbstraction/TransactionDetailsForUserOp.d.ts +10 -0
- package/dist/src/accountAbstraction/TransactionDetailsForUserOp.js +2 -0
- package/dist/src/accountAbstraction/abi.d.ts +3 -0
- package/dist/src/accountAbstraction/abi.js +32 -0
- package/dist/src/accountAbstraction/index.d.ts +24 -0
- package/dist/src/accountAbstraction/index.js +44 -0
- package/dist/src/accountAbstraction/internal/entryPointAbi.d.ts +1 -0
- package/dist/src/accountAbstraction/internal/entryPointAbi.js +16 -0
- package/dist/src/accountAbstraction/internal/userOp.d.ts +54 -0
- package/dist/src/accountAbstraction/internal/userOp.js +72 -0
- package/dist/src/accountAbstraction/networks.d.ts +22 -0
- package/dist/src/accountAbstraction/networks.js +19 -0
- package/dist/src/accountAbstraction/signer.d.ts +12 -0
- package/dist/src/accountAbstraction/signer.js +14 -0
- package/dist/src/adapters/RetryableContractOpener.js +5 -2
- package/dist/src/adapters/ToncenterV3Indexer.js +1 -1
- package/dist/src/assets/AssetCache.d.ts +4 -4
- package/dist/src/assets/AssetCache.js +11 -6
- package/dist/src/assets/AssetFactory.js +2 -2
- package/dist/src/errors/index.d.ts +1 -1
- package/dist/src/errors/index.js +5 -3
- package/dist/src/errors/instances.d.ts +2 -0
- package/dist/src/errors/instances.js +4 -1
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.js +4 -1
- package/dist/src/interfaces/IConfiguration.d.ts +2 -2
- package/dist/src/interfaces/IOperationTracker.d.ts +14 -1
- package/dist/src/interfaces/ITacSDK.d.ts +1 -21
- package/dist/src/sdk/Artifacts.d.ts +3 -0
- package/dist/src/sdk/Artifacts.js +17 -0
- package/dist/src/sdk/Configuration.d.ts +4 -4
- package/dist/src/sdk/Configuration.js +8 -3
- package/dist/src/sdk/Consts.d.ts +0 -1
- package/dist/src/sdk/Consts.js +1 -2
- package/dist/src/sdk/LiteSequencerClient.js +2 -1
- package/dist/src/sdk/OperationTracker.d.ts +6 -3
- package/dist/src/sdk/OperationTracker.js +44 -19
- package/dist/src/sdk/StartTracking.d.ts +8 -0
- package/dist/src/sdk/StartTracking.js +19 -1
- package/dist/src/sdk/TACTransactionManager.js +5 -5
- package/dist/src/sdk/TONTransactionManager.d.ts +1 -0
- package/dist/src/sdk/TONTransactionManager.js +29 -16
- package/dist/src/sdk/TacExplorerClient.js +4 -3
- package/dist/src/sdk/TacSdk.d.ts +1 -5
- package/dist/src/sdk/TacSdk.js +5 -52
- package/dist/src/sdk/TxFinalizer.js +1 -1
- package/dist/src/sdk/Utils.js +37 -4
- package/dist/src/structs/InternalStruct.d.ts +2 -1
- package/dist/src/structs/Struct.d.ts +4 -4
- package/package.json +1 -1
|
@@ -7,7 +7,7 @@ const Consts_1 = require("./Consts");
|
|
|
7
7
|
const Logger_1 = require("./Logger");
|
|
8
8
|
const Utils_1 = require("./Utils");
|
|
9
9
|
class TonTxFinalizer {
|
|
10
|
-
constructor(apiConfig, logger = new Logger_1.NoopLogger(), httpClient = new AxiosHttpClient_1.AxiosHttpClient()) {
|
|
10
|
+
constructor(apiConfig, logger = new Logger_1.NoopLogger(), httpClient = new AxiosHttpClient_1.AxiosHttpClient({ timeout: Consts_1.DEFAULT_HTTP_CLIENT_TIMEOUT_MS })) {
|
|
11
11
|
this.apiConfig = apiConfig;
|
|
12
12
|
this.logger = logger;
|
|
13
13
|
this.httpClient = httpClient;
|
package/dist/src/sdk/Utils.js
CHANGED
|
@@ -108,11 +108,44 @@ const convertKeysToCamelCase = (data) => {
|
|
|
108
108
|
return data;
|
|
109
109
|
};
|
|
110
110
|
exports.convertKeysToCamelCase = convertKeysToCamelCase;
|
|
111
|
+
function formatFiniteNumber(amount) {
|
|
112
|
+
const amountString = amount.toString();
|
|
113
|
+
if (!amountString.includes('e')) {
|
|
114
|
+
return amountString;
|
|
115
|
+
}
|
|
116
|
+
const [coefficient, exponentString] = amountString.split('e');
|
|
117
|
+
const exponent = Number(exponentString);
|
|
118
|
+
const [integerPart, fractionalPart = ''] = coefficient.split('.');
|
|
119
|
+
const digits = integerPart + fractionalPart;
|
|
120
|
+
const decimalIndex = integerPart.length + exponent;
|
|
121
|
+
let expanded;
|
|
122
|
+
if (decimalIndex <= 0) {
|
|
123
|
+
expanded = `0.${'0'.repeat(-decimalIndex)}${digits}`;
|
|
124
|
+
}
|
|
125
|
+
else if (decimalIndex >= digits.length) {
|
|
126
|
+
expanded = `${digits}${'0'.repeat(decimalIndex - digits.length)}`;
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
expanded = `${digits.slice(0, decimalIndex)}.${digits.slice(decimalIndex)}`;
|
|
130
|
+
}
|
|
131
|
+
return expanded;
|
|
132
|
+
}
|
|
111
133
|
const calculateRawAmount = (amount, decimals) => {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
134
|
+
if (!Number.isFinite(amount)) {
|
|
135
|
+
throw (0, errors_1.invalidAmountError)('Amount must be finite');
|
|
136
|
+
}
|
|
137
|
+
if (amount < 0) {
|
|
138
|
+
throw (0, errors_1.invalidAmountError)('Amount must be non-negative');
|
|
139
|
+
}
|
|
140
|
+
if (!Number.isInteger(decimals) || decimals < 0) {
|
|
141
|
+
throw (0, errors_1.invalidAmountError)('Token decimals must be a non-negative integer');
|
|
142
|
+
}
|
|
143
|
+
const amountString = formatFiniteNumber(amount);
|
|
144
|
+
const [integerPart, fractionalPart = ''] = amountString.split('.');
|
|
145
|
+
if (fractionalPart.length > decimals) {
|
|
146
|
+
throw (0, errors_1.invalidAmountError)('Amount has more fractional digits than token decimals');
|
|
147
|
+
}
|
|
148
|
+
return BigInt(integerPart + fractionalPart.padEnd(decimals, '0'));
|
|
116
149
|
};
|
|
117
150
|
exports.calculateRawAmount = calculateRawAmount;
|
|
118
151
|
const calculateAmount = (rawAmount, decimals) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Address, Cell, Message } from '@ton/ton';
|
|
2
2
|
import { AbstractProvider, ethers } from 'ethers';
|
|
3
3
|
import { ICrossChainLayer, ISAFactory, ISettings, ITokenUtils } from '../../artifacts/tacTypes';
|
|
4
|
-
import { ContractOpener } from '../interfaces';
|
|
4
|
+
import { ContractOpener, IToncenterV3Indexer } from '../interfaces';
|
|
5
5
|
import { CurrencyType, ExecutionStagesByOperationId, ExecutionStagesV2ByOperationId, Network, OperationIdsByShardsKey, OperationIdWithLogIndex, OperationType, OperationTypeV2Info, StatusInfosByOperationId, SuggestedTVMExecutorFee, TACSimulationResult, ToncenterV3IndexedTransaction, TransactionLinker } from './Struct';
|
|
6
6
|
export type ShardMessage = {
|
|
7
7
|
address: string;
|
|
@@ -37,6 +37,7 @@ export type RandomNumberByTimestamp = {
|
|
|
37
37
|
};
|
|
38
38
|
export type InternalTONParams = {
|
|
39
39
|
contractOpener: ContractOpener;
|
|
40
|
+
tonIndexer?: IToncenterV3Indexer;
|
|
40
41
|
jettonProxyAddress: string;
|
|
41
42
|
nftProxyAddress: string;
|
|
42
43
|
crossChainLayerAddress: string;
|
|
@@ -468,7 +468,7 @@ export type CrossChainTransactionOptions = {
|
|
|
468
468
|
* Retry policy used while resolving the operation ID.
|
|
469
469
|
* Use this to control timeout, attempts, delay, logger, callbacks, and success criteria.
|
|
470
470
|
*/
|
|
471
|
-
|
|
471
|
+
waitOperationIdOptions?: WaitOptions<string>;
|
|
472
472
|
/**
|
|
473
473
|
* If true, waits for full cross-chain finalization after the operation ID is known:
|
|
474
474
|
* the SDK waits for a final operation type, fetches stage profiling, and validates
|
|
@@ -489,10 +489,10 @@ export type CrossChainTransactionOptions = {
|
|
|
489
489
|
*/
|
|
490
490
|
evmDataBuilder?: evmDataBuilder;
|
|
491
491
|
};
|
|
492
|
-
export type BatchCrossChainTransactionOptions = Omit<CrossChainTransactionOptions, 'waitOperationId' | '
|
|
492
|
+
export type BatchCrossChainTransactionOptions = Omit<CrossChainTransactionOptions, 'waitOperationId' | 'waitOperationIdOptions' | 'ensureTxExecuted' | 'waitFinalization' | 'finalizationWaitOptions'>;
|
|
493
493
|
export type CrossChainTransactionsOptions = {
|
|
494
494
|
waitOperationIds?: boolean;
|
|
495
|
-
|
|
495
|
+
waitOperationIdOptions?: WaitOptions<OperationIdsByShardsKey>;
|
|
496
496
|
};
|
|
497
497
|
export type CrossChainTransactionToTONOptions = {
|
|
498
498
|
/**
|
|
@@ -522,7 +522,7 @@ export type CrossChainTransactionToTONOptions = {
|
|
|
522
522
|
* Retry policy used while resolving the operation ID.
|
|
523
523
|
* Use this to control timeout, attempts, delay, logger, callbacks, and success criteria.
|
|
524
524
|
*/
|
|
525
|
-
|
|
525
|
+
waitOperationIdOptions?: WaitOptions<string>;
|
|
526
526
|
/**
|
|
527
527
|
* Wait options used to finalize the cross-chain operation after operationId resolution.
|
|
528
528
|
* Use this to configure retries, delay, logger, successCheck, and onSuccess callback
|