@vbyte/btc-dev 1.1.4 → 1.1.6
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/dist/lib/address/api.d.ts +1 -1
- package/dist/lib/address/api.js +8 -8
- package/dist/lib/script/index.d.ts +1 -115
- package/dist/lib/script/index.js +1 -5
- package/dist/main.cjs +41 -12
- package/dist/main.cjs.map +1 -1
- package/dist/module.mjs +41 -12
- package/dist/module.mjs.map +1 -1
- package/dist/package.json +1 -1
- package/dist/script.js +8 -8
- package/dist/script.js.map +1 -1
- package/package.json +1 -1
- package/src/lib/address/api.ts +13 -13
- package/src/lib/script/index.ts +5 -13
package/dist/module.mjs
CHANGED
|
@@ -8311,6 +8311,16 @@ var _const = /*#__PURE__*/Object.freeze({
|
|
|
8311
8311
|
TX_SIZE: TX_SIZE
|
|
8312
8312
|
});
|
|
8313
8313
|
|
|
8314
|
+
function is_return_script(script) {
|
|
8315
|
+
const bytes = Buff.bytes(script);
|
|
8316
|
+
return bytes.at(0) === 0x6a;
|
|
8317
|
+
}
|
|
8318
|
+
function get_lock_script_info(script) {
|
|
8319
|
+
return {
|
|
8320
|
+
type: get_lock_script_type(script),
|
|
8321
|
+
version: get_lock_script_version(script)
|
|
8322
|
+
};
|
|
8323
|
+
}
|
|
8314
8324
|
function get_lock_script_type(script) {
|
|
8315
8325
|
const hex = Buff.bytes(script).hex;
|
|
8316
8326
|
for (const [type, regex] of Object.entries(LOCK_SCRIPT_REGEX)) {
|
|
@@ -8319,6 +8329,14 @@ function get_lock_script_type(script) {
|
|
|
8319
8329
|
}
|
|
8320
8330
|
return null;
|
|
8321
8331
|
}
|
|
8332
|
+
function get_lock_script_version(script) {
|
|
8333
|
+
const version = Buff.bytes(script);
|
|
8334
|
+
switch (version.at(0)) {
|
|
8335
|
+
case 0x00: return 0;
|
|
8336
|
+
case 0x51: return 1;
|
|
8337
|
+
default: return null;
|
|
8338
|
+
}
|
|
8339
|
+
}
|
|
8322
8340
|
function is_p2pkh_script(script) {
|
|
8323
8341
|
const hex = Buff.bytes(script).hex;
|
|
8324
8342
|
return LOCK_SCRIPT_REGEX['p2pkh'].test(hex);
|
|
@@ -8339,6 +8357,10 @@ function is_p2tr_script(script) {
|
|
|
8339
8357
|
const hex = Buff.bytes(script).hex;
|
|
8340
8358
|
return LOCK_SCRIPT_REGEX['p2tr'].test(hex);
|
|
8341
8359
|
}
|
|
8360
|
+
function is_opreturn_script(script) {
|
|
8361
|
+
const hex = Buff.bytes(script).hex;
|
|
8362
|
+
return LOCK_SCRIPT_REGEX['opreturn'].test(hex);
|
|
8363
|
+
}
|
|
8342
8364
|
|
|
8343
8365
|
function get_address_script(script_key, script_type) {
|
|
8344
8366
|
switch (script_type) {
|
|
@@ -8662,24 +8684,24 @@ function decode_p2tr_script(script) {
|
|
|
8662
8684
|
return bytes.slice(2, 34);
|
|
8663
8685
|
}
|
|
8664
8686
|
|
|
8665
|
-
function
|
|
8687
|
+
function get_address(script, network = 'main') {
|
|
8666
8688
|
const bytes = Buff.bytes(script);
|
|
8667
8689
|
const type = get_lock_script_type(bytes);
|
|
8668
8690
|
if (type === null)
|
|
8669
|
-
throw new Error('
|
|
8691
|
+
throw new Error('unknown locking script: ' + bytes.hex);
|
|
8670
8692
|
switch (type) {
|
|
8671
8693
|
case LOCK_SCRIPT_TYPE.P2PKH:
|
|
8672
|
-
return P2PKH.
|
|
8694
|
+
return P2PKH.encode_address(script, network);
|
|
8673
8695
|
case LOCK_SCRIPT_TYPE.P2SH:
|
|
8674
|
-
return P2SH.
|
|
8696
|
+
return P2SH.encode_address(script, network);
|
|
8675
8697
|
case LOCK_SCRIPT_TYPE.P2WPKH:
|
|
8676
|
-
return P2WPKH.
|
|
8698
|
+
return P2WPKH.encode_address(script, network);
|
|
8677
8699
|
case LOCK_SCRIPT_TYPE.P2WSH:
|
|
8678
|
-
return P2WSH.
|
|
8700
|
+
return P2WSH.encode_address(script, network);
|
|
8679
8701
|
case LOCK_SCRIPT_TYPE.P2TR:
|
|
8680
|
-
return P2TR.
|
|
8702
|
+
return P2TR.encode_address(script, network);
|
|
8681
8703
|
default:
|
|
8682
|
-
throw new Error('
|
|
8704
|
+
throw new Error('unknown script type: ' + type);
|
|
8683
8705
|
}
|
|
8684
8706
|
}
|
|
8685
8707
|
function parse_address(address) {
|
|
@@ -8693,7 +8715,7 @@ var index$8 = /*#__PURE__*/Object.freeze({
|
|
|
8693
8715
|
get P2TR () { return P2TR; },
|
|
8694
8716
|
get P2WPKH () { return P2WPKH; },
|
|
8695
8717
|
get P2WSH () { return P2WSH; },
|
|
8696
|
-
|
|
8718
|
+
get_address: get_address,
|
|
8697
8719
|
parse_address: parse_address
|
|
8698
8720
|
});
|
|
8699
8721
|
|
|
@@ -9393,13 +9415,10 @@ function parse_script_pubkeys(script) {
|
|
|
9393
9415
|
|
|
9394
9416
|
var ScriptUtil;
|
|
9395
9417
|
(function (ScriptUtil) {
|
|
9396
|
-
ScriptUtil.prefix_size = prefix_script_size;
|
|
9397
9418
|
ScriptUtil.parse = parse_script;
|
|
9398
9419
|
ScriptUtil.decode = decode_script;
|
|
9399
9420
|
ScriptUtil.encode = encode_script;
|
|
9400
9421
|
ScriptUtil.is_valid = is_valid_script;
|
|
9401
|
-
ScriptUtil.get_pubkeys = parse_script_pubkeys;
|
|
9402
|
-
ScriptUtil.OPCODES = OPCODE_MAP;
|
|
9403
9422
|
})(ScriptUtil || (ScriptUtil = {}));
|
|
9404
9423
|
|
|
9405
9424
|
var index$6 = /*#__PURE__*/Object.freeze({
|
|
@@ -9410,9 +9429,19 @@ var index$6 = /*#__PURE__*/Object.freeze({
|
|
|
9410
9429
|
encode_script: encode_script,
|
|
9411
9430
|
encode_script_word: encode_script_word,
|
|
9412
9431
|
get_asm_code: get_asm_code,
|
|
9432
|
+
get_lock_script_info: get_lock_script_info,
|
|
9433
|
+
get_lock_script_type: get_lock_script_type,
|
|
9434
|
+
get_lock_script_version: get_lock_script_version,
|
|
9413
9435
|
get_op_code: get_op_code,
|
|
9414
9436
|
get_op_type: get_op_type,
|
|
9415
9437
|
get_size_varint: get_size_varint,
|
|
9438
|
+
is_opreturn_script: is_opreturn_script,
|
|
9439
|
+
is_p2pkh_script: is_p2pkh_script,
|
|
9440
|
+
is_p2sh_script: is_p2sh_script,
|
|
9441
|
+
is_p2tr_script: is_p2tr_script,
|
|
9442
|
+
is_p2wpkh_script: is_p2wpkh_script,
|
|
9443
|
+
is_p2wsh_script: is_p2wsh_script,
|
|
9444
|
+
is_return_script: is_return_script,
|
|
9416
9445
|
is_valid_op: is_valid_op,
|
|
9417
9446
|
is_valid_script: is_valid_script,
|
|
9418
9447
|
parse_script: parse_script,
|