Comparing version 13.11.2 to 14.0.0
@@ -272,14 +272,26 @@ "use strict"; | ||
exports.TonClient = TonClient; | ||
function parseStackEntry(s) { | ||
switch (s["@type"]) { | ||
case "tvm.stackEntryNumber": | ||
return { type: 'int', value: BigInt(s.number.number) }; | ||
case "tvm.stackEntryCell": | ||
return { type: 'cell', cell: core_1.Cell.fromBase64(s.cell) }; | ||
function parseStackEntry(x) { | ||
const typeName = x['@type']; | ||
switch (typeName) { | ||
case 'tvm.list': | ||
case 'tvm.tuple': | ||
return x.elements.map(parseStackEntry); | ||
case 'tvm.cell': | ||
return core_1.Cell.fromBoc(Buffer.from(x.bytes, 'base64'))[0]; | ||
case 'tvm.slice': | ||
return core_1.Cell.fromBoc(Buffer.from(x.bytes, 'base64'))[0]; | ||
case 'tvm.stackEntryCell': | ||
return parseStackEntry(x.cell); | ||
case 'tvm.stackEntrySlice': | ||
return parseStackEntry(x.slice); | ||
case 'tvm.stackEntryTuple': | ||
return { type: 'tuple', items: s.tuple.elements.map(parseStackEntry) }; | ||
return parseStackEntry(x.tuple); | ||
case 'tvm.stackEntryList': | ||
return { type: 'list', items: s.list.elements.map(parseStackEntry) }; | ||
return parseStackEntry(x.list); | ||
case 'tvm.stackEntryNumber': | ||
return parseStackEntry(x.number); | ||
case 'tvm.numberDecimal': | ||
return BigInt(x.number); | ||
default: | ||
throw Error("Unsupported item type: " + s["@type"]); | ||
throw Error('Unsupported item type: ' + typeName); | ||
} | ||
@@ -310,10 +322,6 @@ } | ||
else if (s[0] === 'tuple' || s[0] === 'list') { | ||
// toncenter.com missbehaviour | ||
if (s[1].elements.length === 0) { | ||
return { type: 'null' }; | ||
} | ||
return { | ||
type: s[0], | ||
items: s[1].elements.map(parseStackEntry) | ||
}; | ||
return { type: 'tuple', items: s[1].elements.map(parseStackEntry) }; | ||
} | ||
@@ -320,0 +328,0 @@ else { |
@@ -20,2 +20,4 @@ /** | ||
export { WalletContractV4 } from './wallets/WalletContractV4'; | ||
export { WalletContractV5Beta } from './wallets/WalletContractV5Beta'; | ||
export { WalletContractV5R1 } from './wallets/WalletContractV5R1'; | ||
export { JettonMaster } from './jetton/JettonMaster'; | ||
@@ -22,0 +24,0 @@ export { JettonWallet } from './jetton/JettonWallet'; |
@@ -24,3 +24,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.computeStorageFees = exports.computeMessageForwardFees = exports.computeGasPrices = exports.computeFwdFees = exports.computeExternalMessageFees = exports.loadConfigParamsAsSlice = exports.loadConfigParamById = exports.parseFullConfig = exports.parseVotingSetup = exports.parseValidatorSet = exports.parseProposalSetup = exports.parseBridge = exports.configParseWorkchainDescriptor = exports.configParseValidatorSet = exports.configParseMsgPrices = exports.configParseMasterAddressRequired = exports.configParseMasterAddress = exports.configParseGasLimitsPrices = exports.configParseBridge = exports.configParse40 = exports.configParse29 = exports.configParse28 = exports.configParse18 = exports.configParse17 = exports.configParse16 = exports.configParse15 = exports.configParse13 = exports.configParse12 = exports.configParse8 = exports.configParse5 = exports.ElectorContract = exports.MultisigWallet = exports.MultisigOrderBuilder = exports.MultisigOrder = exports.JettonWallet = exports.JettonMaster = exports.WalletContractV4 = exports.WalletContractV3R2 = exports.WalletContractV3R1 = exports.WalletContractV2R2 = exports.WalletContractV2R1 = exports.WalletContractV1R3 = exports.WalletContractV1R2 = exports.WalletContractV1R1 = exports.TonClient4 = exports.TonClient = exports.HttpApi = void 0; | ||
exports.computeStorageFees = exports.computeMessageForwardFees = exports.computeGasPrices = exports.computeFwdFees = exports.computeExternalMessageFees = exports.loadConfigParamsAsSlice = exports.loadConfigParamById = exports.parseFullConfig = exports.parseVotingSetup = exports.parseValidatorSet = exports.parseProposalSetup = exports.parseBridge = exports.configParseWorkchainDescriptor = exports.configParseValidatorSet = exports.configParseMsgPrices = exports.configParseMasterAddressRequired = exports.configParseMasterAddress = exports.configParseGasLimitsPrices = exports.configParseBridge = exports.configParse40 = exports.configParse29 = exports.configParse28 = exports.configParse18 = exports.configParse17 = exports.configParse16 = exports.configParse15 = exports.configParse13 = exports.configParse12 = exports.configParse8 = exports.configParse5 = exports.ElectorContract = exports.MultisigWallet = exports.MultisigOrderBuilder = exports.MultisigOrder = exports.JettonWallet = exports.JettonMaster = exports.WalletContractV5R1 = exports.WalletContractV5Beta = exports.WalletContractV4 = exports.WalletContractV3R2 = exports.WalletContractV3R1 = exports.WalletContractV2R2 = exports.WalletContractV2R1 = exports.WalletContractV1R3 = exports.WalletContractV1R2 = exports.WalletContractV1R1 = exports.TonClient4 = exports.TonClient = exports.HttpApi = void 0; | ||
__exportStar(require("@ton/core"), exports); | ||
@@ -58,2 +58,6 @@ // | ||
Object.defineProperty(exports, "WalletContractV4", { enumerable: true, get: function () { return WalletContractV4_1.WalletContractV4; } }); | ||
var WalletContractV5Beta_1 = require("./wallets/WalletContractV5Beta"); | ||
Object.defineProperty(exports, "WalletContractV5Beta", { enumerable: true, get: function () { return WalletContractV5Beta_1.WalletContractV5Beta; } }); | ||
var WalletContractV5R1_1 = require("./wallets/WalletContractV5R1"); | ||
Object.defineProperty(exports, "WalletContractV5R1", { enumerable: true, get: function () { return WalletContractV5R1_1.WalletContractV5R1; } }); | ||
// | ||
@@ -60,0 +64,0 @@ // Jettons |
@@ -86,3 +86,3 @@ "use strict"; | ||
await sender.send({ | ||
sendMode: 3, | ||
sendMode: core_1.SendMode.PAY_GAS_SEPARATELY + core_1.SendMode.IGNORE_ERRORS, | ||
to: this.address, | ||
@@ -89,0 +89,0 @@ value: value, |
@@ -9,4 +9,9 @@ /** | ||
/// <reference types="node" /> | ||
import { MessageRelaxed } from "@ton/core"; | ||
import { Builder, Cell, MessageRelaxed, OutActionSendMsg } from "@ton/core"; | ||
import { Maybe } from "../../utils/maybe"; | ||
import { WalletV5BetaPackedCell, WalletV5BetaSendArgs, WalletV5BetaSendArgsExtensionAuth } from "../v5beta/WalletContractV5Beta"; | ||
import { Wallet4SendArgsSignable, Wallet4SendArgsSigned } from "../WalletContractV4"; | ||
import { WalletV3SendArgsSignable, WalletV3SendArgsSigned } from "../WalletContractV3Types"; | ||
import { OutActionExtended } from "../v5beta/WalletV5OutActions"; | ||
import { Wallet5VR1SendArgsExtensionAuth, WalletV5R1PackedCell, WalletV5R1SendArgs } from "../v5r1/WalletContractV5R1"; | ||
export declare function createWalletTransferV1(args: { | ||
@@ -17,3 +22,3 @@ seqno: number; | ||
secretKey: Buffer; | ||
}): import("@ton/core").Cell; | ||
}): Cell; | ||
export declare function createWalletTransferV2(args: { | ||
@@ -25,18 +30,22 @@ seqno: number; | ||
timeout?: Maybe<number>; | ||
}): import("@ton/core").Cell; | ||
export declare function createWalletTransferV3(args: { | ||
seqno: number; | ||
}): Cell; | ||
export declare function createWalletTransferV3<T extends WalletV3SendArgsSignable | WalletV3SendArgsSigned>(args: T & { | ||
sendMode: number; | ||
walletId: number; | ||
messages: MessageRelaxed[]; | ||
secretKey: Buffer; | ||
timeout?: Maybe<number>; | ||
}): import("@ton/core").Cell; | ||
export declare function createWalletTransferV4(args: { | ||
seqno: number; | ||
}): T extends WalletV3SendArgsSignable ? Promise<Cell> : Cell; | ||
export declare function createWalletTransferV4<T extends Wallet4SendArgsSignable | Wallet4SendArgsSigned>(args: T & { | ||
sendMode: number; | ||
walletId: number; | ||
messages: MessageRelaxed[]; | ||
secretKey: Buffer; | ||
timeout?: Maybe<number>; | ||
}): import("@ton/core").Cell; | ||
}): T extends Wallet4SendArgsSignable ? Promise<Cell> : Cell; | ||
export declare function createWalletTransferV5Beta<T extends WalletV5BetaSendArgs>(args: T extends WalletV5BetaSendArgsExtensionAuth ? T & { | ||
actions: (OutActionSendMsg | OutActionExtended)[]; | ||
} : T & { | ||
actions: (OutActionSendMsg | OutActionExtended)[]; | ||
walletId: (builder: Builder) => void; | ||
}): WalletV5BetaPackedCell<T>; | ||
export declare function createWalletTransferV5R1<T extends WalletV5R1SendArgs>(args: T extends Wallet5VR1SendArgsExtensionAuth ? T & { | ||
actions: (OutActionSendMsg | OutActionExtended)[]; | ||
} : T & { | ||
actions: (OutActionSendMsg | OutActionExtended)[]; | ||
walletId: (builder: Builder) => void; | ||
}): WalletV5R1PackedCell<T>; |
@@ -10,5 +10,24 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.createWalletTransferV4 = exports.createWalletTransferV3 = exports.createWalletTransferV2 = exports.createWalletTransferV1 = void 0; | ||
exports.createWalletTransferV5R1 = exports.createWalletTransferV5Beta = exports.createWalletTransferV4 = exports.createWalletTransferV3 = exports.createWalletTransferV2 = exports.createWalletTransferV1 = void 0; | ||
const core_1 = require("@ton/core"); | ||
const crypto_1 = require("@ton/crypto"); | ||
const WalletContractV5Beta_1 = require("../v5beta/WalletContractV5Beta"); | ||
const WalletV5BetaActions_1 = require("../v5beta/WalletV5BetaActions"); | ||
const singer_1 = require("./singer"); | ||
const WalletContractV5R1_1 = require("../v5r1/WalletContractV5R1"); | ||
const WalletV5R1Actions_1 = require("../v5r1/WalletV5R1Actions"); | ||
function packSignatureToFront(signature, signingMessage) { | ||
const body = (0, core_1.beginCell)() | ||
.storeBuffer(signature) | ||
.storeBuilder(signingMessage) | ||
.endCell(); | ||
return body; | ||
} | ||
function packSignatureToTail(signature, signingMessage) { | ||
const body = (0, core_1.beginCell)() | ||
.storeBuilder(signingMessage) | ||
.storeBuffer(signature) | ||
.endCell(); | ||
return body; | ||
} | ||
function createWalletTransferV1(args) { | ||
@@ -83,10 +102,3 @@ // Create message | ||
} | ||
// Sign message | ||
let signature = (0, crypto_1.sign)(signingMessage.endCell().hash(), args.secretKey); | ||
// Body | ||
const body = (0, core_1.beginCell)() | ||
.storeBuffer(signature) | ||
.storeBuilder(signingMessage) | ||
.endCell(); | ||
return body; | ||
return (0, singer_1.signPayload)(args, signingMessage, packSignatureToFront); | ||
} | ||
@@ -115,11 +127,67 @@ exports.createWalletTransferV3 = createWalletTransferV3; | ||
} | ||
// Sign message | ||
let signature = (0, crypto_1.sign)(signingMessage.endCell().hash(), args.secretKey); | ||
// Body | ||
const body = (0, core_1.beginCell)() | ||
.storeBuffer(signature) | ||
.storeBuilder(signingMessage) | ||
.endCell(); | ||
return body; | ||
return (0, singer_1.signPayload)(args, signingMessage, packSignatureToFront); | ||
} | ||
exports.createWalletTransferV4 = createWalletTransferV4; | ||
function createWalletTransferV5Beta(args) { | ||
// Check number of actions | ||
if (args.actions.length > 255) { | ||
throw Error("Maximum number of OutActions in a single request is 255"); | ||
} | ||
if (args.authType === 'extension') { | ||
return (0, core_1.beginCell)() | ||
.storeUint(WalletContractV5Beta_1.WalletContractV5Beta.OpCodes.auth_extension, 32) | ||
.store((0, WalletV5BetaActions_1.storeOutListExtendedV5Beta)(args.actions)) | ||
.endCell(); | ||
} | ||
const signingMessage = (0, core_1.beginCell)() | ||
.storeUint(args.authType === 'internal' | ||
? WalletContractV5Beta_1.WalletContractV5Beta.OpCodes.auth_signed_internal | ||
: WalletContractV5Beta_1.WalletContractV5Beta.OpCodes.auth_signed_external, 32) | ||
.store(args.walletId); | ||
if (args.seqno === 0) { | ||
for (let i = 0; i < 32; i++) { | ||
signingMessage.storeBit(1); | ||
} | ||
} | ||
else { | ||
signingMessage.storeUint(args.timeout || Math.floor(Date.now() / 1e3) + 60, 32); // Default timeout: 60 seconds | ||
} | ||
signingMessage | ||
.storeUint(args.seqno, 32) | ||
.store((0, WalletV5BetaActions_1.storeOutListExtendedV5Beta)(args.actions)); | ||
return (0, singer_1.signPayload)(args, signingMessage, packSignatureToTail); | ||
} | ||
exports.createWalletTransferV5Beta = createWalletTransferV5Beta; | ||
function createWalletTransferV5R1(args) { | ||
// Check number of actions | ||
if (args.actions.length > 255) { | ||
throw Error("Maximum number of OutActions in a single request is 255"); | ||
} | ||
args = { ...args }; | ||
if (args.authType === 'extension') { | ||
return (0, core_1.beginCell)() | ||
.storeUint(WalletContractV5R1_1.WalletContractV5R1.OpCodes.auth_extension, 32) | ||
.storeUint(args.queryId ?? 0, 64) | ||
.store((0, WalletV5R1Actions_1.storeOutListExtendedV5R1)(args.actions)) | ||
.endCell(); | ||
} | ||
args.actions = (0, WalletV5R1Actions_1.patchV5R1ActionsSendMode)(args.actions, args.authType); | ||
const signingMessage = (0, core_1.beginCell)() | ||
.storeUint(args.authType === 'internal' | ||
? WalletContractV5R1_1.WalletContractV5R1.OpCodes.auth_signed_internal | ||
: WalletContractV5R1_1.WalletContractV5R1.OpCodes.auth_signed_external, 32) | ||
.store(args.walletId); | ||
if (args.seqno === 0) { | ||
for (let i = 0; i < 32; i++) { | ||
signingMessage.storeBit(1); | ||
} | ||
} | ||
else { | ||
signingMessage.storeUint(args.timeout || Math.floor(Date.now() / 1e3) + 60, 32); // Default timeout: 60 seconds | ||
} | ||
signingMessage | ||
.storeUint(args.seqno, 32) | ||
.store((0, WalletV5R1Actions_1.storeOutListExtendedV5R1)(args.actions)); | ||
return (0, singer_1.signPayload)(args, signingMessage, packSignatureToTail); | ||
} | ||
exports.createWalletTransferV5R1 = createWalletTransferV5R1; |
@@ -11,2 +11,3 @@ /** | ||
import { Maybe } from "../utils/maybe"; | ||
import { WalletV3SendArgsSignable, WalletV3SendArgsSigned } from "./WalletContractV3Types"; | ||
export declare class WalletContractV3R1 implements Contract { | ||
@@ -52,9 +53,3 @@ static create(args: { | ||
*/ | ||
createTransfer(args: { | ||
seqno: number; | ||
secretKey: Buffer; | ||
messages: MessageRelaxed[]; | ||
sendMode?: Maybe<SendMode>; | ||
timeout?: Maybe<number>; | ||
}): Cell; | ||
createTransfer<T extends WalletV3SendArgsSigned | WalletV3SendArgsSignable>(args: T): T extends WalletV3SendArgsSignable ? Promise<Cell> : Cell; | ||
/** | ||
@@ -61,0 +56,0 @@ * Create sender |
@@ -74,12 +74,5 @@ "use strict"; | ||
createTransfer(args) { | ||
let sendMode = core_1.SendMode.PAY_GAS_SEPARATELY; | ||
if (args.sendMode !== null && args.sendMode !== undefined) { | ||
sendMode = args.sendMode; | ||
} | ||
return (0, createWalletTransfer_1.createWalletTransferV3)({ | ||
seqno: args.seqno, | ||
sendMode, | ||
secretKey: args.secretKey, | ||
messages: args.messages, | ||
timeout: args.timeout, | ||
...args, | ||
sendMode: args.sendMode ?? core_1.SendMode.PAY_GAS_SEPARATELY, | ||
walletId: this.walletId | ||
@@ -86,0 +79,0 @@ }); |
@@ -11,2 +11,3 @@ /** | ||
import { Maybe } from "../utils/maybe"; | ||
import { WalletV3SendArgsSignable, WalletV3SendArgsSigned } from "./WalletContractV3Types"; | ||
export declare class WalletContractV3R2 implements Contract { | ||
@@ -52,9 +53,3 @@ static create(args: { | ||
*/ | ||
createTransfer(args: { | ||
seqno: number; | ||
sendMode?: Maybe<SendMode>; | ||
secretKey: Buffer; | ||
messages: MessageRelaxed[]; | ||
timeout?: Maybe<number>; | ||
}): Cell; | ||
createTransfer<T extends WalletV3SendArgsSigned | WalletV3SendArgsSignable>(args: T): T extends WalletV3SendArgsSignable ? Promise<Cell> : Cell; | ||
/** | ||
@@ -61,0 +56,0 @@ * Create sender |
@@ -74,12 +74,5 @@ "use strict"; | ||
createTransfer(args) { | ||
let sendMode = core_1.SendMode.PAY_GAS_SEPARATELY; | ||
if (args.sendMode !== null && args.sendMode !== undefined) { | ||
sendMode = args.sendMode; | ||
} | ||
return (0, createWalletTransfer_1.createWalletTransferV3)({ | ||
seqno: args.seqno, | ||
sendMode, | ||
secretKey: args.secretKey, | ||
messages: args.messages, | ||
timeout: args.timeout, | ||
...args, | ||
sendMode: args.sendMode ?? core_1.SendMode.PAY_GAS_SEPARATELY, | ||
walletId: this.walletId | ||
@@ -86,0 +79,0 @@ }); |
@@ -11,2 +11,11 @@ /** | ||
import { Maybe } from "../utils/maybe"; | ||
import { SendArgsSignable, SendArgsSigned } from "./signing/singer"; | ||
export type WalletV4BasicSendArgs = { | ||
seqno: number; | ||
messages: MessageRelaxed[]; | ||
sendMode?: Maybe<SendMode>; | ||
timeout?: Maybe<number>; | ||
}; | ||
export type Wallet4SendArgsSigned = WalletV4BasicSendArgs & SendArgsSigned; | ||
export type Wallet4SendArgsSignable = WalletV4BasicSendArgs & SendArgsSignable; | ||
export declare class WalletContractV4 implements Contract { | ||
@@ -52,9 +61,3 @@ static create(args: { | ||
*/ | ||
createTransfer(args: { | ||
seqno: number; | ||
secretKey: Buffer; | ||
messages: MessageRelaxed[]; | ||
sendMode?: Maybe<SendMode>; | ||
timeout?: Maybe<number>; | ||
}): Cell; | ||
createTransfer<T extends Wallet4SendArgsSigned | Wallet4SendArgsSignable>(args: T): T extends Wallet4SendArgsSignable ? Promise<Cell> : Cell; | ||
/** | ||
@@ -61,0 +64,0 @@ * Create sender |
@@ -75,12 +75,5 @@ "use strict"; | ||
createTransfer(args) { | ||
let sendMode = core_1.SendMode.PAY_GAS_SEPARATELY; | ||
if (args.sendMode !== null && args.sendMode !== undefined) { | ||
sendMode = args.sendMode; | ||
} | ||
return (0, createWalletTransfer_1.createWalletTransferV4)({ | ||
seqno: args.seqno, | ||
sendMode, | ||
secretKey: args.secretKey, | ||
messages: args.messages, | ||
timeout: args.timeout, | ||
...args, | ||
sendMode: args.sendMode ?? core_1.SendMode.PAY_GAS_SEPARATELY, | ||
walletId: this.walletId | ||
@@ -87,0 +80,0 @@ }); |
{ | ||
"name": "@ton/ton", | ||
"version": "13.11.2", | ||
"version": "14.0.0", | ||
"repository": "https://github.com/ton-org/ton.git", | ||
@@ -5,0 +5,0 @@ "author": "Whales Corp. <developers@whalescorp.com>", |
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
430279
125
11263
5