From 656be73b333322623144f5ff09254e64408bc3e4 Mon Sep 17 00:00:00 2001 From: Chris Duncan Date: Tue, 30 Jun 2026 15:10:47 -0700 Subject: [PATCH] Fix decimal padding args. --- src/lib/convert/dec.ts | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/lib/convert/dec.ts b/src/lib/convert/dec.ts index 575a929..5f8f4fe 100644 --- a/src/lib/convert/dec.ts +++ b/src/lib/convert/dec.ts @@ -3,17 +3,18 @@ export const dec = Object.freeze({ /** - * Convert a decimal integer to a Uint8Array of bytes. Fractional part is truncated. + * Convert a decimal integer to a Uint8Array of bytes. Fractional part is + * truncated. * * @param {bigint|number|string} decimal - Integer to convert - * @param {number} [padding=0] - Minimum length of the resulting array padded as necessary with starting 0x00 bytes + * @param {number} [padding=1] - Minimum length of the resulting array padded as necessary with starting 0x00 bytes * @returns {Uint8Array} Byte array representation of the input decimal */ - toBytes (decimal: bigint | number | string, padding: number = 0): Uint8Array { + toBytes (decimal: bigint | number | string, padding: number = 1): Uint8Array { if (decimal == null) { throw new TypeError(`Failed to convert '${decimal}' from decimal to bytes`) } - if (typeof padding !== 'number') { + if (typeof padding !== 'number' || padding < 1 || padding > 0xffffffff) { throw new TypeError('Invalid padding') } let integer = BigInt(decimal) @@ -32,14 +33,14 @@ export const dec = Object.freeze({ * Convert a decimal integer to a hexadecimal string. * * @param {(bigint|number|string)} decimal - Integer to convert - * @param {number} [padding=0] - Minimum length of the resulting string padded as necessary with starting zeroes + * @param {number} [padding=1] - Minimum length of the resulting string padded as necessary with starting zeroes * @returns {string} Hexadecimal string representation of the input decimal */ - toHex (decimal: bigint | number | string, padding: number = 0): string { + toHex (decimal: bigint | number | string, padding: number = 1): string { if (decimal == null) { throw new TypeError(`Failed to convert '${decimal}' from decimal to hex`) } - if (typeof padding !== 'number') { + if (typeof padding !== 'number' || padding < 1 || padding > 0x1fffffffe) { throw new TypeError('Invalid padding') } try { -- 2.52.0