UNPKG

meta-contract-debug

Version:

Meta Contract SDK

39 lines (38 loc) 1.12 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ContractAdapter = void 0; const mvc_scrypt_1 = require("mvc-scrypt"); const mvc = require("../mvc"); class ContractAdapter { constructor(contract) { this._contract = contract; } get lockingScript() { return this._contract.lockingScript; } get txContext() { return this._contract.txContext; } get dataPart() { return this._contract.dataPart; } get codePart() { return this._contract.codePart; } setTxContext(txContext) { this._contract.txContext = txContext; } setDataPart(dataPart) { this._contract.setDataPartInASM(dataPart); } //取OP_RETURN之前的hash getCodeHash() { let codePart = this.codePart.toBuffer(); return (0, mvc_scrypt_1.toHex)(mvc.crypto.Hash.sha256ripemd160(codePart)); } //取整体的hash getScriptHash() { return (0, mvc_scrypt_1.toHex)(mvc.crypto.Hash.sha256ripemd160(this.lockingScript.toBuffer())); } } exports.ContractAdapter = ContractAdapter;