From 528dff01c11ab7c25d0a56dd56a0f733818db77b Mon Sep 17 00:00:00 2001 From: junderw <junderwood@bitcoinbank.co.jp> Date: Fri, 28 Dec 2018 14:55:30 +0900 Subject: [PATCH] Add P2WSH --- src/templates/witnessscripthash/index.ts | 10 ++++++---- src/templates/witnessscripthash/input.ts | 16 ++++++---------- src/templates/witnessscripthash/output.ts | 7 ++----- src/types.ts | 2 +- 4 files changed, 15 insertions(+), 20 deletions(-) diff --git a/src/templates/witnessscripthash/index.ts b/src/templates/witnessscripthash/index.ts index 7192cfd..42aeb7b 100644 --- a/src/templates/witnessscripthash/index.ts +++ b/src/templates/witnessscripthash/index.ts @@ -1,5 +1,7 @@ -module.exports = { - input: require('./input'), - output: require('./output') +import * as input from './input' +import * as output from './output' + +export { + input, + output, } -export {} diff --git a/src/templates/witnessscripthash/input.ts b/src/templates/witnessscripthash/input.ts index c6d47e3..7f7e415 100644 --- a/src/templates/witnessscripthash/input.ts +++ b/src/templates/witnessscripthash/input.ts @@ -1,15 +1,14 @@ // <scriptSig> {serialized scriptPubKey script} -const bscript = require('../../script') -const types = require('../../types') +import * as bscript from '../../script' const typeforce = require('typeforce') -const p2ms = require('../multisig/') -const p2pk = require('../pubkey/') -const p2pkh = require('../pubkeyhash/') +import * as p2ms from '../multisig' +import * as p2pk from '../pubkey' +import * as p2pkh from '../pubkeyhash' -function check (chunks, allowIncomplete) { - typeforce(types.Array, chunks) +export function check (chunks: Array<Buffer>, allowIncomplete?: boolean): boolean { + typeforce(typeforce.Array, chunks) if (chunks.length < 1) return false const witnessScript = chunks[chunks.length - 1] @@ -35,6 +34,3 @@ function check (chunks, allowIncomplete) { return false } check.toJSON = function () { return 'witnessScriptHash input' } - -module.exports = { check } -export {} diff --git a/src/templates/witnessscripthash/output.ts b/src/templates/witnessscripthash/output.ts index 3bc327f..0b13cd1 100644 --- a/src/templates/witnessscripthash/output.ts +++ b/src/templates/witnessscripthash/output.ts @@ -1,9 +1,9 @@ // OP_0 {scriptHash} -const bscript = require('../../script') +import * as bscript from '../../script' const OPS = require('bitcoin-ops') -function check (script) { +export function check (script: Buffer | Array<number | Buffer>): boolean { const buffer = bscript.compile(script) return buffer.length === 34 && @@ -11,6 +11,3 @@ function check (script) { buffer[1] === 0x20 } check.toJSON = function () { return 'Witness scriptHash output' } - -module.exports = { check } -export {} diff --git a/src/types.ts b/src/types.ts index 790b95e..ad603c5 100644 --- a/src/types.ts +++ b/src/types.ts @@ -34,4 +34,4 @@ export const Buffer256bit = typeforce.BufferN(32) export const Hash160bit = typeforce.BufferN(20) export const Hash256bit = typeforce.BufferN(32) export * from 'typeforce' -export { Number } from 'typeforce' +export { Number, Array } from 'typeforce'