Comparing version 10.4.0 to 10.4.1
@@ -41,2 +41,3 @@ /// <reference types="node" /> | ||
export declare type RawStateInit = { | ||
splitDepth: number | null; | ||
code: Cell | null; | ||
@@ -46,7 +47,3 @@ data: Cell | null; | ||
}; | ||
export declare function parseStateInit(slice: Slice): { | ||
data: Cell | null; | ||
code: Cell | null; | ||
special: RawTickTock | null; | ||
}; | ||
export declare function parseStateInit(slice: Slice): RawStateInit; | ||
export declare type RawMessage = { | ||
@@ -53,0 +50,0 @@ info: RawCommonMessageInfo; |
@@ -94,4 +94,5 @@ "use strict"; | ||
function parseStateInit(slice) { | ||
let splitDepth = null; | ||
if (slice.readBit()) { | ||
throw Error('Unsupported'); | ||
splitDepth = slice.readUintNumber(5); | ||
} | ||
@@ -106,3 +107,3 @@ const special = slice.readBit() ? parseRawTickTock(slice) : null; | ||
} | ||
return { data, code, special }; | ||
return { splitDepth, data, code, special }; | ||
} | ||
@@ -109,0 +110,0 @@ exports.parseStateInit = parseStateInit; |
@@ -32,2 +32,7 @@ "use strict"; | ||
}); | ||
it('should parse account state with exotic cells', () => { | ||
const state = 'te6ccgEBBAEAvwADb8AHLZ17WF9YMMz6rkRVUhzi0cOYteH7l+BZW9ybRSzYHaIIgRIC9I0foAAAEg6NNnsJHad80bNAAQIDAA2gAAAA7wqEAKL/ACDdIIIBTJe6lzDtRNDXCx/gpPJggQIA1xgg1wsf7UTQ0x/T/9FRErryoSL5AVQQRPkQ8qL4AAHTHzEg10qW0wfUAvsA3tGkyMsfy//J7VQASAAAAAILXgY0fNeWQMlsiKiA5yU8EEFCoKA5GZXLKMVp/5+6ug=='; | ||
const cell = __1.Cell.fromBoc(Buffer.from(state, 'base64'))[0]; | ||
(0, parse_1.parseAccountState)(cell.beginParse()); | ||
}); | ||
}); |
@@ -25,2 +25,3 @@ /// <reference types="node" /> | ||
toString(indent?: string): string; | ||
toDebugString(indent?: string): string; | ||
withReference(cell: Cell): this; | ||
@@ -27,0 +28,0 @@ withData(src: string): this; |
@@ -56,2 +56,14 @@ "use strict"; | ||
} | ||
toDebugString(indent) { | ||
let id = indent || ''; | ||
if (this.isExotic) { | ||
id += '(exotic)'; | ||
} | ||
let s = id + 'x{' + this.bits.toFiftHex() + '}\n'; | ||
for (let k in this.refs) { | ||
const i = this.refs[k]; | ||
s += i.toString(id + ' '); | ||
} | ||
return s; | ||
} | ||
withReference(cell) { | ||
@@ -58,0 +70,0 @@ this.refs.push(cell); |
import { Address } from "../address/Address"; | ||
import { TonClient } from "../client/TonClient"; | ||
export declare type KnownInterface = 'org.ton.introspection.v0' | 'com.tonwhales.nominators:v0'; | ||
export declare type KnownInterface = 'org.ton.introspection.v0' | 'com.tonwhales.nominators:v0' | 'org.ton.jetton.master.v1' | 'org.ton.jetton.wallet.v1'; | ||
export declare type SupportedInterface = { | ||
@@ -5,0 +5,0 @@ type: 'known'; |
@@ -7,3 +7,5 @@ "use strict"; | ||
['123515602279859691144772641439386770278']: 'org.ton.introspection.v0', | ||
['256184278959413194623484780286929323492']: 'com.tonwhales.nominators:v0' | ||
['256184278959413194623484780286929323492']: 'com.tonwhales.nominators:v0', | ||
['242422353946785872806511191513850808027']: 'org.ton.jetton.master.v1', | ||
['311736387032003861293477945447179662681']: 'org.ton.jetton.wallet.v1', | ||
}; | ||
@@ -10,0 +12,0 @@ /** |
@@ -112,2 +112,17 @@ "use strict"; | ||
} | ||
function parseJettonWallet(op, sc) { | ||
if (op === 0xd53276db /* excesses */) { | ||
let queryId = sc.readUint(64); | ||
return { | ||
type: 'jetton::excesses', | ||
data: { | ||
'query_id': queryId | ||
} | ||
}; | ||
} | ||
return null; | ||
} | ||
function parseJettonMaster(op, sc) { | ||
return null; | ||
} | ||
function parseSupportedMessage(knownInteface, message) { | ||
@@ -128,2 +143,9 @@ try { | ||
} | ||
// Jettons | ||
if (knownInteface === 'org.ton.jetton.wallet.v1') { | ||
return parseJettonWallet(op, sc); | ||
} | ||
if (knownInteface === 'org.ton.jetton.master.v1') { | ||
return parseJettonMaster(op, sc); | ||
} | ||
} | ||
@@ -130,0 +152,0 @@ catch (e) { |
{ | ||
"name": "ton", | ||
"version": "10.4.0", | ||
"version": "10.4.1", | ||
"repository": "https://github.com/tonwhales/ton.git", | ||
@@ -5,0 +5,0 @@ "author": "Steve Korshakov <steve@korshakov.com>", |
364706
210
9404