@vbyte/btc-dev 1.1.0 → 1.1.2
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/meta/locktime.d.ts +1 -1
- package/dist/lib/meta/locktime.js +5 -5
- package/dist/lib/meta/ref.d.ts +1 -1
- package/dist/lib/meta/ref.js +6 -6
- package/dist/lib/meta/scribe.d.ts +5 -3
- package/dist/lib/meta/scribe.js +21 -18
- package/dist/lib/meta/sequence.d.ts +1 -1
- package/dist/lib/meta/sequence.js +5 -5
- package/dist/lib/script/decode.d.ts +2 -1
- package/dist/lib/script/encode.d.ts +1 -1
- package/dist/lib/script/encode.js +3 -3
- package/dist/lib/tx/util.d.ts +5 -4
- package/dist/lib/tx/util.js +14 -12
- package/dist/main.cjs +61 -56
- package/dist/main.cjs.map +1 -1
- package/dist/module.mjs +61 -56
- package/dist/module.mjs.map +1 -1
- package/dist/package.json +1 -1
- package/dist/script.js +6 -6
- package/dist/script.js.map +1 -1
- package/dist/types/meta.d.ts +3 -3
- package/package.json +1 -1
- package/src/lib/meta/locktime.ts +1 -1
- package/src/lib/meta/ref.ts +1 -1
- package/src/lib/meta/scribe.ts +29 -24
- package/src/lib/meta/sequence.ts +1 -1
- package/src/lib/script/decode.ts +2 -2
- package/src/lib/script/encode.ts +4 -5
- package/src/lib/tx/util.ts +21 -19
- package/src/types/meta.ts +3 -3
package/dist/module.mjs
CHANGED
|
@@ -8696,11 +8696,11 @@ var index$8 = /*#__PURE__*/Object.freeze({
|
|
|
8696
8696
|
});
|
|
8697
8697
|
|
|
8698
8698
|
const LOCKTIME_THRESHOLD = 500000000;
|
|
8699
|
-
var
|
|
8700
|
-
(function (
|
|
8701
|
-
|
|
8702
|
-
|
|
8703
|
-
})(
|
|
8699
|
+
var LocktimeField;
|
|
8700
|
+
(function (LocktimeField) {
|
|
8701
|
+
LocktimeField.encode = encode_locktime;
|
|
8702
|
+
LocktimeField.decode = decode_locktime;
|
|
8703
|
+
})(LocktimeField || (LocktimeField = {}));
|
|
8704
8704
|
function encode_locktime(locktime) {
|
|
8705
8705
|
switch (locktime.type) {
|
|
8706
8706
|
case 'timelock':
|
|
@@ -8732,27 +8732,27 @@ function decode_locktime(locktime) {
|
|
|
8732
8732
|
}
|
|
8733
8733
|
}
|
|
8734
8734
|
|
|
8735
|
-
var
|
|
8736
|
-
(function (
|
|
8737
|
-
|
|
8735
|
+
var RefPointer;
|
|
8736
|
+
(function (RefPointer) {
|
|
8737
|
+
RefPointer.outpoint = {
|
|
8738
8738
|
encode: encode_outpoint,
|
|
8739
8739
|
decode: decode_outpoint,
|
|
8740
8740
|
verify: verify_outpoint,
|
|
8741
8741
|
assert: assert_outpoint,
|
|
8742
8742
|
};
|
|
8743
|
-
|
|
8743
|
+
RefPointer.record_id = {
|
|
8744
8744
|
encode: encode_inscription_id,
|
|
8745
8745
|
decode: decode_inscription_id,
|
|
8746
8746
|
verify: verify_inscription_id,
|
|
8747
8747
|
assert: assert_inscription_id,
|
|
8748
8748
|
};
|
|
8749
|
-
|
|
8749
|
+
RefPointer.rune_id = {
|
|
8750
8750
|
encode: encode_rune_id,
|
|
8751
8751
|
decode: decode_rune_id,
|
|
8752
8752
|
verify: verify_rune_id,
|
|
8753
8753
|
assert: assert_rune_id,
|
|
8754
8754
|
};
|
|
8755
|
-
})(
|
|
8755
|
+
})(RefPointer || (RefPointer = {}));
|
|
8756
8756
|
function encode_inscription_id(txid, order = 0) {
|
|
8757
8757
|
return `${txid}i${order}`;
|
|
8758
8758
|
}
|
|
@@ -8970,15 +8970,15 @@ function is_valid_op(word) {
|
|
|
8970
8970
|
const MAX_WORD_SIZE = 520;
|
|
8971
8971
|
function encode_script(words, varint = false) {
|
|
8972
8972
|
if (words.length === 0)
|
|
8973
|
-
return
|
|
8973
|
+
return Buff.num(0, 1);
|
|
8974
8974
|
const bytes = [];
|
|
8975
8975
|
for (const word of words) {
|
|
8976
8976
|
bytes.push(encode_script_word(word));
|
|
8977
8977
|
}
|
|
8978
8978
|
const buffer = Buff.join(bytes);
|
|
8979
8979
|
return (varint)
|
|
8980
|
-
? buffer.prepend(Buff.varint(buffer.length, 'le'))
|
|
8981
|
-
: buffer
|
|
8980
|
+
? buffer.prepend(Buff.varint(buffer.length, 'le'))
|
|
8981
|
+
: buffer;
|
|
8982
8982
|
}
|
|
8983
8983
|
function encode_script_word(word) {
|
|
8984
8984
|
let buff;
|
|
@@ -9103,17 +9103,17 @@ function is_valid_script(script) {
|
|
|
9103
9103
|
const _0n = BigInt(0);
|
|
9104
9104
|
const _1n = BigInt(1);
|
|
9105
9105
|
const _26n = BigInt(26);
|
|
9106
|
-
var
|
|
9107
|
-
(function (
|
|
9108
|
-
|
|
9109
|
-
|
|
9110
|
-
})(
|
|
9106
|
+
var InscriptionUtil;
|
|
9107
|
+
(function (InscriptionUtil) {
|
|
9108
|
+
InscriptionUtil.encode = encode_inscription;
|
|
9109
|
+
InscriptionUtil.decode = decode_inscription;
|
|
9110
|
+
})(InscriptionUtil || (InscriptionUtil = {}));
|
|
9111
9111
|
function decode_inscription(script) {
|
|
9112
9112
|
const envelopes = parse_envelopes(script);
|
|
9113
9113
|
return envelopes.map(parse_record);
|
|
9114
9114
|
}
|
|
9115
9115
|
function encode_inscription(data) {
|
|
9116
|
-
return data.map(create_envelope)
|
|
9116
|
+
return Buff.join(data.map(create_envelope));
|
|
9117
9117
|
}
|
|
9118
9118
|
function create_envelope(data) {
|
|
9119
9119
|
let asm = ['OP_0', 'OP_IF', '6f7264'];
|
|
@@ -9192,7 +9192,7 @@ function parse_record(envelope) {
|
|
|
9192
9192
|
i += 1;
|
|
9193
9193
|
break;
|
|
9194
9194
|
case 'OP_WITHIN':
|
|
9195
|
-
record.ref = envelope[i + 1];
|
|
9195
|
+
record.ref = decode_bytes(envelope[i + 1]);
|
|
9196
9196
|
i += 1;
|
|
9197
9197
|
break;
|
|
9198
9198
|
case 'OP_NOP':
|
|
@@ -9206,6 +9206,9 @@ function parse_record(envelope) {
|
|
|
9206
9206
|
}
|
|
9207
9207
|
return record;
|
|
9208
9208
|
}
|
|
9209
|
+
function decode_bytes(bytes) {
|
|
9210
|
+
return Buff.bytes(bytes).hex;
|
|
9211
|
+
}
|
|
9209
9212
|
function encode_id(identifier) {
|
|
9210
9213
|
Assert.ok(identifier.includes('i'), 'identifier must include an index');
|
|
9211
9214
|
const parts = identifier.split('i');
|
|
@@ -9214,8 +9217,8 @@ function encode_id(identifier) {
|
|
|
9214
9217
|
const txid = bytes.reverse().hex;
|
|
9215
9218
|
return (idx !== 0) ? txid + Buff.num(idx).hex : txid;
|
|
9216
9219
|
}
|
|
9217
|
-
function decode_id(
|
|
9218
|
-
const bytes = Buff.
|
|
9220
|
+
function decode_id(identifier) {
|
|
9221
|
+
const bytes = Buff.bytes(identifier);
|
|
9219
9222
|
const idx = bytes.at(-1) ?? 0;
|
|
9220
9223
|
const txid = bytes.slice(0, -1).reverse().hex;
|
|
9221
9224
|
return txid + 'i' + String(idx);
|
|
@@ -9223,14 +9226,14 @@ function decode_id(hexstr) {
|
|
|
9223
9226
|
function encode_pointer(pointer) {
|
|
9224
9227
|
return Buff.num(pointer).reverse().hex;
|
|
9225
9228
|
}
|
|
9226
|
-
function decode_pointer(
|
|
9227
|
-
return Buff.
|
|
9229
|
+
function decode_pointer(bytes) {
|
|
9230
|
+
return Buff.bytes(bytes).reverse().num;
|
|
9228
9231
|
}
|
|
9229
9232
|
function encode_label(label) {
|
|
9230
9233
|
return Buff.str(label).hex;
|
|
9231
9234
|
}
|
|
9232
|
-
function decode_label(
|
|
9233
|
-
return Buff.
|
|
9235
|
+
function decode_label(label) {
|
|
9236
|
+
return Buff.bytes(label).str;
|
|
9234
9237
|
}
|
|
9235
9238
|
function encode_content(content) {
|
|
9236
9239
|
const bytes = Buff.is_hex(content)
|
|
@@ -9250,9 +9253,9 @@ function encode_content(content) {
|
|
|
9250
9253
|
}
|
|
9251
9254
|
return chunks;
|
|
9252
9255
|
}
|
|
9253
|
-
function decode_content(
|
|
9254
|
-
const data = Buff.join(
|
|
9255
|
-
return (
|
|
9256
|
+
function decode_content(chunks, format = 'hex') {
|
|
9257
|
+
const data = Buff.join(chunks);
|
|
9258
|
+
return (format === 'hex')
|
|
9256
9259
|
? data.hex
|
|
9257
9260
|
: data.str;
|
|
9258
9261
|
}
|
|
@@ -9270,8 +9273,8 @@ function encode_rune_label(label) {
|
|
|
9270
9273
|
big = big - _1n;
|
|
9271
9274
|
return Buff.big(big).reverse().hex;
|
|
9272
9275
|
}
|
|
9273
|
-
function decode_rune_label(
|
|
9274
|
-
let big = Buff.
|
|
9276
|
+
function decode_rune_label(label) {
|
|
9277
|
+
let big = Buff.bytes(label).reverse().big;
|
|
9275
9278
|
big = big + _1n;
|
|
9276
9279
|
let result = '';
|
|
9277
9280
|
while (big > _0n) {
|
|
@@ -9294,11 +9297,11 @@ const TIMELOCK_TYPE = 0x00400000;
|
|
|
9294
9297
|
const TIMELOCK_VALUE_MASK = 0x0000FFFF;
|
|
9295
9298
|
const TIMELOCK_VALUE_MAX = 0xFFFF;
|
|
9296
9299
|
const TIMELOCK_GRANULARITY = 512;
|
|
9297
|
-
var
|
|
9298
|
-
(function (
|
|
9299
|
-
|
|
9300
|
-
|
|
9301
|
-
})(
|
|
9300
|
+
var SequenceField;
|
|
9301
|
+
(function (SequenceField) {
|
|
9302
|
+
SequenceField.encode = encode_sequence;
|
|
9303
|
+
SequenceField.decode = decode_sequence;
|
|
9304
|
+
})(SequenceField || (SequenceField = {}));
|
|
9302
9305
|
function encode_sequence(data) {
|
|
9303
9306
|
if (data.mode === 'height') {
|
|
9304
9307
|
const height = parse_height(data.height);
|
|
@@ -9357,10 +9360,10 @@ function parse_height(height) {
|
|
|
9357
9360
|
|
|
9358
9361
|
var index$7 = /*#__PURE__*/Object.freeze({
|
|
9359
9362
|
__proto__: null,
|
|
9360
|
-
get
|
|
9361
|
-
get
|
|
9362
|
-
get
|
|
9363
|
-
get
|
|
9363
|
+
get InscriptionUtil () { return InscriptionUtil; },
|
|
9364
|
+
get LocktimeField () { return LocktimeField; },
|
|
9365
|
+
get RefPointer () { return RefPointer; },
|
|
9366
|
+
get SequenceField () { return SequenceField; },
|
|
9364
9367
|
decode_inscription: decode_inscription,
|
|
9365
9368
|
decode_locktime: decode_locktime,
|
|
9366
9369
|
decode_sequence: decode_sequence,
|
|
@@ -9674,26 +9677,28 @@ function encode_script_data(script) {
|
|
|
9674
9677
|
}
|
|
9675
9678
|
|
|
9676
9679
|
function is_return_script(script) {
|
|
9677
|
-
|
|
9680
|
+
const bytes = Buff.bytes(script);
|
|
9681
|
+
return bytes.at(0) === 0x6a;
|
|
9678
9682
|
}
|
|
9679
|
-
function
|
|
9683
|
+
function get_vout_script_info(script) {
|
|
9680
9684
|
return {
|
|
9681
|
-
type:
|
|
9682
|
-
version:
|
|
9685
|
+
type: get_vout_script_type(script),
|
|
9686
|
+
version: get_vout_script_version(script)
|
|
9683
9687
|
};
|
|
9684
9688
|
}
|
|
9685
|
-
function
|
|
9689
|
+
function get_vout_script_type(script) {
|
|
9690
|
+
const hex = Buff.bytes(script).hex;
|
|
9686
9691
|
for (const [type, regex] of Object.entries(LOCK_SCRIPT_REGEX)) {
|
|
9687
|
-
if (regex.test(
|
|
9692
|
+
if (regex.test(hex))
|
|
9688
9693
|
return type;
|
|
9689
9694
|
}
|
|
9690
|
-
return
|
|
9695
|
+
return null;
|
|
9691
9696
|
}
|
|
9692
|
-
function
|
|
9693
|
-
const
|
|
9694
|
-
switch (
|
|
9695
|
-
case
|
|
9696
|
-
case
|
|
9697
|
+
function get_vout_script_version(script) {
|
|
9698
|
+
const version = Buff.bytes(script);
|
|
9699
|
+
switch (version.at(0)) {
|
|
9700
|
+
case 0x00: return 0;
|
|
9701
|
+
case 0x51: return 1;
|
|
9697
9702
|
default: return null;
|
|
9698
9703
|
}
|
|
9699
9704
|
}
|
|
@@ -10002,10 +10007,10 @@ var index$4 = /*#__PURE__*/Object.freeze({
|
|
|
10002
10007
|
get_txout_size: get_txout_size,
|
|
10003
10008
|
get_txsize: get_txsize,
|
|
10004
10009
|
get_vin_size: get_vin_size,
|
|
10005
|
-
|
|
10010
|
+
get_vout_script_info: get_vout_script_info,
|
|
10011
|
+
get_vout_script_type: get_vout_script_type,
|
|
10012
|
+
get_vout_script_version: get_vout_script_version,
|
|
10006
10013
|
get_vout_size: get_vout_size,
|
|
10007
|
-
get_vout_type: get_vout_type,
|
|
10008
|
-
get_vout_version: get_vout_version,
|
|
10009
10014
|
get_vsize: get_vsize,
|
|
10010
10015
|
is_return_script: is_return_script,
|
|
10011
10016
|
normalize_prevout: normalize_prevout,
|