@pezkuwi/util 14.0.1 → 14.0.4
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/LICENSE +201 -0
- package/README.md +4 -4
- package/array/chunk.d.ts +15 -0
- package/array/chunk.js +27 -0
- package/array/filter.d.ts +16 -0
- package/{src/array/filter.ts → array/filter.js} +3 -8
- package/array/flatten.d.ts +15 -0
- package/array/flatten.js +39 -0
- package/{src/array/index.ts → array/index.d.ts} +0 -4
- package/array/index.js +10 -0
- package/array/range.d.ts +16 -0
- package/{src/array/range.ts → array/range.js} +9 -15
- package/array/shuffle.d.ts +5 -0
- package/array/shuffle.js +19 -0
- package/array/unzip.d.ts +5 -0
- package/array/unzip.js +13 -0
- package/array/zip.d.ts +5 -0
- package/array/zip.js +12 -0
- package/assert.d.ts +29 -0
- package/{src/assert.ts → assert.js} +11 -22
- package/bi/consts.d.ts +90 -0
- package/{src/bi/consts.ts → bi/consts.js} +0 -21
- package/bi/helpers.d.ts +2 -0
- package/bi/helpers.js +16 -0
- package/{src/bi/index.ts → bi/index.d.ts} +0 -7
- package/bi/index.js +9 -0
- package/bi/min.d.ts +10 -0
- package/bi/min.js +11 -0
- package/bi/sqrt.d.ts +7 -0
- package/bi/sqrt.js +29 -0
- package/bi/toBigInt.d.ts +7 -0
- package/bi/toBigInt.js +25 -0
- package/bi/toHex.d.ts +7 -0
- package/bi/toHex.js +9 -0
- package/bi/toU8a.d.ts +7 -0
- package/bi/toU8a.js +49 -0
- package/bn/bn.d.ts +2 -0
- package/bn/bn.js +2 -0
- package/bn/consts.d.ts +91 -0
- package/{src/bn/consts.ts → bn/consts.js} +18 -39
- package/bn/fromHex.d.ts +1 -0
- package/bn/fromHex.js +1 -0
- package/{src/bn/index.ts → bn/index.d.ts} +0 -7
- package/bn/index.js +11 -0
- package/bn/min.d.ts +29 -0
- package/{src/bn/min.ts → bn/min.js} +2 -9
- package/bn/sqrt.d.ts +16 -0
- package/bn/sqrt.js +38 -0
- package/bn/toBn.d.ts +19 -0
- package/{src/bn/toBn.ts → bn/toBn.js} +14 -20
- package/bn/toHex.d.ts +18 -0
- package/{src/bn/toHex.ts → bn/toHex.js} +2 -9
- package/bn/toU8a.d.ts +17 -0
- package/bn/toU8a.js +33 -0
- package/{src/buffer/index.ts → buffer/index.d.ts} +0 -4
- package/buffer/index.js +4 -0
- package/buffer/toU8a.d.ts +15 -0
- package/{src/buffer/toU8a.ts → buffer/toU8a.js} +2 -5
- package/bundle-polkadot-util.js +4829 -0
- package/{src/bundle.ts → bundle.d.ts} +0 -7
- package/bundle.js +28 -0
- package/cjs/array/chunk.d.ts +15 -0
- package/cjs/array/chunk.js +30 -0
- package/cjs/array/filter.d.ts +16 -0
- package/cjs/array/filter.js +22 -0
- package/cjs/array/flatten.d.ts +15 -0
- package/cjs/array/flatten.js +42 -0
- package/cjs/array/index.d.ts +10 -0
- package/cjs/array/index.js +20 -0
- package/cjs/array/range.d.ts +16 -0
- package/cjs/array/range.js +28 -0
- package/cjs/array/shuffle.d.ts +5 -0
- package/cjs/array/shuffle.js +22 -0
- package/cjs/array/unzip.d.ts +5 -0
- package/cjs/array/unzip.js +16 -0
- package/cjs/array/zip.d.ts +5 -0
- package/cjs/array/zip.js +15 -0
- package/cjs/assert.d.ts +29 -0
- package/cjs/assert.js +44 -0
- package/cjs/bi/consts.d.ts +90 -0
- package/cjs/bi/consts.js +94 -0
- package/cjs/bi/helpers.d.ts +2 -0
- package/cjs/bi/helpers.js +19 -0
- package/cjs/bi/index.d.ts +9 -0
- package/cjs/bi/index.js +19 -0
- package/cjs/bi/min.d.ts +10 -0
- package/cjs/bi/min.js +14 -0
- package/cjs/bi/sqrt.d.ts +7 -0
- package/cjs/bi/sqrt.js +32 -0
- package/cjs/bi/toBigInt.d.ts +7 -0
- package/cjs/bi/toBigInt.js +28 -0
- package/cjs/bi/toHex.d.ts +7 -0
- package/cjs/bi/toHex.js +12 -0
- package/cjs/bi/toU8a.d.ts +7 -0
- package/cjs/bi/toU8a.js +52 -0
- package/cjs/bn/bn.d.ts +2 -0
- package/cjs/bn/bn.js +6 -0
- package/cjs/bn/consts.d.ts +91 -0
- package/cjs/bn/consts.js +94 -0
- package/cjs/bn/fromHex.d.ts +1 -0
- package/cjs/bn/fromHex.js +5 -0
- package/cjs/bn/index.d.ts +11 -0
- package/cjs/bn/index.js +23 -0
- package/cjs/bn/min.d.ts +29 -0
- package/cjs/bn/min.js +32 -0
- package/cjs/bn/sqrt.d.ts +16 -0
- package/cjs/bn/sqrt.js +41 -0
- package/cjs/bn/toBn.d.ts +19 -0
- package/cjs/bn/toBn.js +40 -0
- package/cjs/bn/toHex.d.ts +18 -0
- package/cjs/bn/toHex.js +23 -0
- package/cjs/bn/toU8a.d.ts +17 -0
- package/cjs/bn/toU8a.js +36 -0
- package/cjs/buffer/index.d.ts +4 -0
- package/cjs/buffer/index.js +8 -0
- package/cjs/buffer/toU8a.d.ts +15 -0
- package/cjs/buffer/toU8a.js +20 -0
- package/cjs/bundle.d.ts +28 -0
- package/cjs/bundle.js +33 -0
- package/cjs/compact/addLength.d.ts +13 -0
- package/cjs/compact/addLength.js +23 -0
- package/cjs/compact/defaults.d.ts +3 -0
- package/cjs/compact/defaults.js +5 -0
- package/cjs/compact/fromU8a.d.ts +22 -0
- package/cjs/compact/fromU8a.js +92 -0
- package/{src/compact/index.ts → cjs/compact/index.d.ts} +0 -4
- package/cjs/compact/index.js +32 -0
- package/cjs/compact/stripLength.d.ts +13 -0
- package/cjs/compact/stripLength.js +24 -0
- package/cjs/compact/toU8a.d.ts +14 -0
- package/cjs/compact/toU8a.js +48 -0
- package/cjs/compact/types.d.ts +1 -0
- package/cjs/compact/types.js +2 -0
- package/cjs/detectPackage.d.ts +17 -0
- package/cjs/detectPackage.js +100 -0
- package/cjs/extractTime.d.ts +14 -0
- package/cjs/extractTime.js +56 -0
- package/cjs/float/index.d.ts +1 -0
- package/cjs/float/index.js +5 -0
- package/cjs/float/toU8a.d.ts +11 -0
- package/cjs/float/toU8a.js +22 -0
- package/cjs/format/formatBalance.d.ts +54 -0
- package/cjs/format/formatBalance.js +88 -0
- package/cjs/format/formatDate.d.ts +5 -0
- package/cjs/format/formatDate.js +20 -0
- package/cjs/format/formatDecimal.d.ts +5 -0
- package/cjs/format/formatDecimal.js +19 -0
- package/cjs/format/formatElapsed.d.ts +7 -0
- package/cjs/format/formatElapsed.js +30 -0
- package/cjs/format/formatNumber.d.ts +14 -0
- package/cjs/format/formatNumber.js +14 -0
- package/cjs/format/getSeparator.d.ts +9 -0
- package/cjs/format/getSeparator.js +14 -0
- package/{src/format/index.ts → cjs/format/index.d.ts} +0 -3
- package/cjs/format/index.js +16 -0
- package/cjs/format/si.d.ts +9 -0
- package/cjs/format/si.js +45 -0
- package/cjs/has.d.ts +14 -0
- package/cjs/has.js +19 -0
- package/cjs/hex/addPrefix.d.ts +16 -0
- package/cjs/hex/addPrefix.js +23 -0
- package/cjs/hex/fixLength.d.ts +18 -0
- package/cjs/hex/fixLength.js +30 -0
- package/cjs/hex/hasPrefix.d.ts +16 -0
- package/cjs/hex/hasPrefix.js +21 -0
- package/{src/hex/index.ts → cjs/hex/index.d.ts} +0 -4
- package/cjs/hex/index.js +24 -0
- package/cjs/hex/stripPrefix.d.ts +15 -0
- package/cjs/hex/stripPrefix.js +30 -0
- package/cjs/hex/toBigInt.d.ts +6 -0
- package/cjs/hex/toBigInt.js +15 -0
- package/cjs/hex/toBn.d.ts +21 -0
- package/cjs/hex/toBn.js +35 -0
- package/cjs/hex/toNumber.d.ts +15 -0
- package/cjs/hex/toNumber.js +23 -0
- package/cjs/hex/toString.d.ts +15 -0
- package/cjs/hex/toString.js +22 -0
- package/cjs/hex/toU8a.d.ts +16 -0
- package/cjs/hex/toU8a.js +57 -0
- package/cjs/hex/toU8aBuffer.d.ts +16 -0
- package/cjs/hex/toU8aBuffer.js +43 -0
- package/cjs/index.d.ts +2 -0
- package/cjs/index.js +5 -0
- package/cjs/is/array.d.ts +5 -0
- package/cjs/is/array.js +10 -0
- package/cjs/is/ascii.d.ts +8 -0
- package/cjs/is/ascii.js +43 -0
- package/cjs/is/bigInt.d.ts +15 -0
- package/{src/is/bigInt.ts → cjs/is/bigInt.js} +5 -5
- package/cjs/is/bn.d.ts +17 -0
- package/cjs/is/bn.js +22 -0
- package/cjs/is/boolean.d.ts +15 -0
- package/{src/is/boolean.ts → cjs/is/boolean.js} +5 -5
- package/cjs/is/buffer.d.ts +16 -0
- package/cjs/is/buffer.js +24 -0
- package/cjs/is/childClass.d.ts +17 -0
- package/cjs/is/childClass.js +26 -0
- package/cjs/is/class.d.ts +6 -0
- package/cjs/is/class.js +9 -0
- package/cjs/is/codec.d.ts +12 -0
- package/cjs/is/codec.js +9 -0
- package/cjs/is/compact.d.ts +13 -0
- package/cjs/is/compact.js +9 -0
- package/cjs/is/error.d.ts +15 -0
- package/{src/is/error.ts → cjs/is/error.js} +6 -8
- package/cjs/is/function.d.ts +17 -0
- package/cjs/is/function.js +20 -0
- package/cjs/is/helpers.d.ts +3 -0
- package/cjs/is/helpers.js +19 -0
- package/cjs/is/hex.d.ts +19 -0
- package/cjs/is/hex.js +27 -0
- package/{src/is/index.ts → cjs/is/index.d.ts} +0 -3
- package/cjs/is/index.js +66 -0
- package/cjs/is/instanceOf.d.ts +15 -0
- package/cjs/is/instanceOf.js +21 -0
- package/cjs/is/ip.d.ts +18 -0
- package/{src/is/ip.ts → cjs/is/ip.js} +9 -21
- package/cjs/is/jsonObject.d.ts +27 -0
- package/cjs/is/jsonObject.js +40 -0
- package/cjs/is/null.d.ts +15 -0
- package/{src/is/null.ts → cjs/is/null.js} +5 -5
- package/cjs/is/number.d.ts +15 -0
- package/{src/is/number.ts → cjs/is/number.js} +5 -5
- package/cjs/is/object.d.ts +18 -0
- package/cjs/is/object.js +21 -0
- package/cjs/is/observable.d.ts +16 -0
- package/cjs/is/observable.js +19 -0
- package/cjs/is/promise.d.ts +1 -0
- package/cjs/is/promise.js +5 -0
- package/cjs/is/riscv.d.ts +7 -0
- package/cjs/is/riscv.js +20 -0
- package/cjs/is/string.d.ts +16 -0
- package/{src/is/string.ts → cjs/is/string.js} +5 -7
- package/cjs/is/testChain.d.ts +1 -0
- package/cjs/is/testChain.js +10 -0
- package/cjs/is/toBigInt.d.ts +2 -0
- package/cjs/is/toBigInt.js +5 -0
- package/cjs/is/toBn.d.ts +2 -0
- package/cjs/is/toBn.js +5 -0
- package/cjs/is/u8a.d.ts +15 -0
- package/cjs/is/u8a.js +23 -0
- package/cjs/is/undefined.d.ts +15 -0
- package/{src/is/undefined.ts → cjs/is/undefined.js} +5 -6
- package/cjs/is/utf8.d.ts +7 -0
- package/cjs/is/utf8.js +200 -0
- package/cjs/is/wasm.d.ts +7 -0
- package/cjs/is/wasm.js +15 -0
- package/cjs/lazy.d.ts +14 -0
- package/cjs/lazy.js +55 -0
- package/cjs/logger.d.ts +17 -0
- package/cjs/logger.js +122 -0
- package/cjs/memoize.d.ts +10 -0
- package/cjs/memoize.js +33 -0
- package/cjs/nextTick.d.ts +5 -0
- package/cjs/nextTick.js +27 -0
- package/cjs/noop.d.ts +8 -0
- package/cjs/noop.js +16 -0
- package/{src/number/index.ts → cjs/number/index.d.ts} +0 -4
- package/cjs/number/index.js +10 -0
- package/cjs/number/toHex.d.ts +17 -0
- package/cjs/number/toHex.js +23 -0
- package/cjs/number/toU8a.d.ts +15 -0
- package/cjs/number/toU8a.js +22 -0
- package/cjs/object/clear.d.ts +5 -0
- package/cjs/object/clear.js +14 -0
- package/cjs/object/copy.d.ts +5 -0
- package/cjs/object/copy.js +11 -0
- package/cjs/object/entries.d.ts +9 -0
- package/cjs/object/entries.js +10 -0
- package/{src/object/index.ts → cjs/object/index.d.ts} +0 -3
- package/cjs/object/index.js +18 -0
- package/cjs/object/keys.d.ts +5 -0
- package/cjs/object/keys.js +10 -0
- package/cjs/object/property.d.ts +10 -0
- package/cjs/object/property.js +38 -0
- package/cjs/object/spread.d.ts +6 -0
- package/cjs/object/spread.js +34 -0
- package/cjs/object/values.d.ts +5 -0
- package/cjs/object/values.js +10 -0
- package/cjs/package.json +3 -0
- package/cjs/packageDetect.d.ts +1 -0
- package/cjs/packageDetect.js +7 -0
- package/cjs/packageInfo.d.ts +6 -0
- package/cjs/packageInfo.js +4 -0
- package/cjs/promisify.d.ts +16 -0
- package/{src/promisify.ts → cjs/promisify.js} +14 -14
- package/cjs/string/camelCase.d.ts +13 -0
- package/cjs/string/camelCase.js +62 -0
- package/{src/string/index.ts → cjs/string/index.d.ts} +0 -4
- package/cjs/string/index.js +18 -0
- package/cjs/string/lowerFirst.d.ts +31 -0
- package/cjs/string/lowerFirst.js +40 -0
- package/cjs/string/shorten.d.ts +16 -0
- package/{src/string/shorten.ts → cjs/string/shorten.js} +7 -9
- package/cjs/string/toHex.d.ts +16 -0
- package/cjs/string/toHex.js +22 -0
- package/cjs/string/toU8a.d.ts +16 -0
- package/cjs/string/toU8a.js +24 -0
- package/cjs/stringify.d.ts +6 -0
- package/cjs/stringify.js +18 -0
- package/cjs/types.d.ts +62 -0
- package/cjs/types.js +2 -0
- package/cjs/u8a/cmp.d.ts +17 -0
- package/cjs/u8a/cmp.js +49 -0
- package/cjs/u8a/concat.d.ts +24 -0
- package/cjs/u8a/concat.js +51 -0
- package/cjs/u8a/concatBuffer.d.ts +19 -0
- package/cjs/u8a/concatBuffer.js +29 -0
- package/cjs/u8a/empty.d.ts +7 -0
- package/cjs/u8a/empty.js +20 -0
- package/cjs/u8a/eq.d.ts +15 -0
- package/cjs/u8a/eq.js +40 -0
- package/cjs/u8a/fixLength.d.ts +17 -0
- package/cjs/u8a/fixLength.js +31 -0
- package/{src/u8a/index.ts → cjs/u8a/index.d.ts} +0 -4
- package/cjs/u8a/index.js +42 -0
- package/cjs/u8a/sorted.d.ts +15 -0
- package/cjs/u8a/sorted.js +21 -0
- package/cjs/u8a/toBigInt.d.ts +6 -0
- package/cjs/u8a/toBigInt.js +73 -0
- package/cjs/u8a/toBn.d.ts +21 -0
- package/cjs/u8a/toBn.js +81 -0
- package/cjs/u8a/toBuffer.d.ts +16 -0
- package/cjs/u8a/toBuffer.js +24 -0
- package/cjs/u8a/toFloat.d.ts +11 -0
- package/cjs/u8a/toFloat.js +20 -0
- package/cjs/u8a/toHex.d.ts +16 -0
- package/cjs/u8a/toHex.js +56 -0
- package/cjs/u8a/toHexBuffer.d.ts +16 -0
- package/cjs/u8a/toHexBuffer.js +25 -0
- package/cjs/u8a/toNumber.d.ts +6 -0
- package/cjs/u8a/toNumber.js +61 -0
- package/cjs/u8a/toString.d.ts +15 -0
- package/cjs/u8a/toString.js +24 -0
- package/cjs/u8a/toU8a.d.ts +19 -0
- package/cjs/u8a/toU8a.js +42 -0
- package/cjs/u8a/wrap.d.ts +22 -0
- package/cjs/u8a/wrap.js +49 -0
- package/compact/addLength.d.ts +13 -0
- package/{src/compact/addLength.ts → compact/addLength.js} +5 -9
- package/compact/defaults.d.ts +3 -0
- package/compact/defaults.js +2 -0
- package/compact/fromU8a.d.ts +22 -0
- package/compact/fromU8a.js +88 -0
- package/compact/index.d.ts +24 -0
- package/compact/index.js +24 -0
- package/compact/stripLength.d.ts +13 -0
- package/{src/compact/stripLength.ts → compact/stripLength.js} +7 -12
- package/compact/toU8a.d.ts +14 -0
- package/compact/toU8a.js +45 -0
- package/compact/types.d.ts +1 -0
- package/compact/types.js +1 -0
- package/detectPackage.d.ts +17 -0
- package/detectPackage.js +96 -0
- package/extractTime.d.ts +14 -0
- package/extractTime.js +53 -0
- package/float/index.d.ts +1 -0
- package/float/index.js +1 -0
- package/float/toU8a.d.ts +11 -0
- package/float/toU8a.js +19 -0
- package/format/formatBalance.d.ts +54 -0
- package/format/formatBalance.js +85 -0
- package/format/formatDate.d.ts +5 -0
- package/format/formatDate.js +17 -0
- package/format/formatDecimal.d.ts +5 -0
- package/format/formatDecimal.js +16 -0
- package/format/formatElapsed.d.ts +7 -0
- package/format/formatElapsed.js +27 -0
- package/format/formatNumber.d.ts +14 -0
- package/format/formatNumber.js +11 -0
- package/format/getSeparator.d.ts +9 -0
- package/format/getSeparator.js +11 -0
- package/format/index.d.ts +6 -0
- package/format/index.js +6 -0
- package/format/si.d.ts +9 -0
- package/format/si.js +40 -0
- package/has.d.ts +14 -0
- package/{src/has.ts → has.js} +1 -23
- package/hex/addPrefix.d.ts +16 -0
- package/{src/hex/addPrefix.ts → hex/addPrefix.js} +4 -10
- package/hex/fixLength.d.ts +18 -0
- package/{src/hex/fixLength.ts → hex/fixLength.js} +8 -17
- package/hex/hasPrefix.d.ts +16 -0
- package/{src/hex/hasPrefix.ts → hex/hasPrefix.js} +2 -8
- package/hex/index.d.ts +12 -0
- package/hex/index.js +12 -0
- package/hex/stripPrefix.d.ts +15 -0
- package/{src/hex/stripPrefix.ts → hex/stripPrefix.js} +11 -14
- package/hex/toBigInt.d.ts +6 -0
- package/hex/toBigInt.js +12 -0
- package/hex/toBn.d.ts +21 -0
- package/{src/hex/toBn.ts → hex/toBn.js} +11 -19
- package/hex/toNumber.d.ts +15 -0
- package/{src/hex/toNumber.ts → hex/toNumber.js} +4 -8
- package/hex/toString.d.ts +15 -0
- package/{src/hex/toString.ts → hex/toString.js} +2 -8
- package/hex/toU8a.d.ts +16 -0
- package/hex/toU8a.js +54 -0
- package/hex/toU8aBuffer.d.ts +16 -0
- package/hex/toU8aBuffer.js +40 -0
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/is/array.d.ts +5 -0
- package/is/array.js +7 -0
- package/is/ascii.d.ts +8 -0
- package/is/ascii.js +40 -0
- package/is/bigInt.d.ts +15 -0
- package/is/bigInt.js +17 -0
- package/is/bn.d.ts +17 -0
- package/{src/is/bn.ts → is/bn.js} +2 -6
- package/is/boolean.d.ts +15 -0
- package/is/boolean.js +17 -0
- package/is/buffer.d.ts +16 -0
- package/is/buffer.js +21 -0
- package/is/childClass.d.ts +17 -0
- package/is/childClass.js +23 -0
- package/is/class.d.ts +6 -0
- package/is/class.js +6 -0
- package/is/codec.d.ts +12 -0
- package/is/codec.js +6 -0
- package/is/compact.d.ts +13 -0
- package/is/compact.js +6 -0
- package/is/error.d.ts +15 -0
- package/is/error.js +18 -0
- package/is/function.d.ts +17 -0
- package/is/function.js +17 -0
- package/is/helpers.d.ts +3 -0
- package/is/helpers.js +14 -0
- package/is/hex.d.ts +19 -0
- package/is/hex.js +23 -0
- package/is/index.d.ts +33 -0
- package/is/index.js +33 -0
- package/is/instanceOf.d.ts +15 -0
- package/is/instanceOf.js +18 -0
- package/is/ip.d.ts +18 -0
- package/is/ip.js +41 -0
- package/is/jsonObject.d.ts +27 -0
- package/{src/is/jsonObject.ts → is/jsonObject.js} +11 -19
- package/is/null.d.ts +15 -0
- package/is/null.js +17 -0
- package/is/number.d.ts +15 -0
- package/is/number.js +17 -0
- package/is/object.d.ts +18 -0
- package/is/object.js +18 -0
- package/is/observable.d.ts +16 -0
- package/{src/is/observable.ts → is/observable.js} +1 -7
- package/is/promise.d.ts +1 -0
- package/is/promise.js +2 -0
- package/is/riscv.d.ts +7 -0
- package/{src/is/riscv.ts → is/riscv.js} +6 -16
- package/is/string.d.ts +16 -0
- package/is/string.js +17 -0
- package/is/testChain.d.ts +1 -0
- package/is/testChain.js +7 -0
- package/is/toBigInt.d.ts +2 -0
- package/is/toBigInt.js +2 -0
- package/is/toBn.d.ts +2 -0
- package/is/toBn.js +2 -0
- package/is/u8a.d.ts +15 -0
- package/is/u8a.js +20 -0
- package/is/undefined.d.ts +15 -0
- package/is/undefined.js +17 -0
- package/is/utf8.d.ts +7 -0
- package/is/utf8.js +197 -0
- package/is/wasm.d.ts +7 -0
- package/{src/is/wasm.ts → is/wasm.js} +2 -7
- package/lazy.d.ts +14 -0
- package/lazy.js +51 -0
- package/logger.d.ts +17 -0
- package/logger.js +118 -0
- package/memoize.d.ts +10 -0
- package/memoize.js +30 -0
- package/nextTick.d.ts +5 -0
- package/nextTick.js +24 -0
- package/noop.d.ts +8 -0
- package/noop.js +12 -0
- package/number/index.d.ts +5 -0
- package/number/index.js +5 -0
- package/number/toHex.d.ts +17 -0
- package/{src/number/toHex.ts → number/toHex.js} +3 -10
- package/number/toU8a.d.ts +15 -0
- package/{src/number/toU8a.ts → number/toU8a.js} +2 -8
- package/object/clear.d.ts +5 -0
- package/object/clear.js +11 -0
- package/object/copy.d.ts +5 -0
- package/object/copy.js +8 -0
- package/object/entries.d.ts +9 -0
- package/object/entries.js +7 -0
- package/object/index.d.ts +7 -0
- package/object/index.js +7 -0
- package/object/keys.d.ts +5 -0
- package/object/keys.js +7 -0
- package/object/property.d.ts +10 -0
- package/object/property.js +34 -0
- package/object/spread.d.ts +6 -0
- package/object/spread.js +31 -0
- package/object/values.d.ts +5 -0
- package/object/values.js +7 -0
- package/package.json +1957 -10
- package/packageDetect.d.ts +1 -0
- package/{src/packageDetect.ts → packageDetect.js} +0 -8
- package/packageInfo.d.ts +6 -0
- package/packageInfo.js +1 -0
- package/promisify.d.ts +16 -0
- package/promisify.js +27 -0
- package/string/camelCase.d.ts +13 -0
- package/string/camelCase.js +59 -0
- package/string/index.d.ts +8 -0
- package/string/index.js +8 -0
- package/string/lowerFirst.d.ts +31 -0
- package/{src/string/lowerFirst.ts → string/lowerFirst.js} +4 -13
- package/string/shorten.d.ts +16 -0
- package/string/shorten.js +19 -0
- package/string/toHex.d.ts +16 -0
- package/{src/string/toHex.ts → string/toHex.js} +2 -10
- package/string/toU8a.d.ts +16 -0
- package/{src/string/toU8a.ts → string/toU8a.js} +4 -11
- package/stringify.d.ts +6 -0
- package/stringify.js +15 -0
- package/types.d.ts +62 -0
- package/types.js +1 -0
- package/u8a/cmp.d.ts +17 -0
- package/u8a/cmp.js +46 -0
- package/u8a/concat.d.ts +24 -0
- package/u8a/concat.js +47 -0
- package/u8a/concatBuffer.d.ts +19 -0
- package/u8a/concatBuffer.js +26 -0
- package/u8a/empty.d.ts +7 -0
- package/u8a/empty.js +17 -0
- package/u8a/eq.d.ts +15 -0
- package/u8a/eq.js +37 -0
- package/u8a/fixLength.d.ts +17 -0
- package/u8a/fixLength.js +28 -0
- package/u8a/index.d.ts +18 -0
- package/u8a/index.js +18 -0
- package/u8a/sorted.d.ts +15 -0
- package/{src/u8a/sorted.ts → u8a/sorted.js} +2 -6
- package/u8a/toBigInt.d.ts +6 -0
- package/u8a/toBigInt.js +70 -0
- package/u8a/toBn.d.ts +21 -0
- package/u8a/toBn.js +78 -0
- package/u8a/toBuffer.d.ts +16 -0
- package/{src/u8a/toBuffer.ts → u8a/toBuffer.js} +4 -11
- package/u8a/toFloat.d.ts +11 -0
- package/u8a/toFloat.js +17 -0
- package/u8a/toHex.d.ts +16 -0
- package/u8a/toHex.js +53 -0
- package/u8a/toHexBuffer.d.ts +16 -0
- package/u8a/toHexBuffer.js +22 -0
- package/u8a/toNumber.d.ts +6 -0
- package/u8a/toNumber.js +58 -0
- package/u8a/toString.d.ts +15 -0
- package/{src/u8a/toString.ts → u8a/toString.js} +4 -9
- package/u8a/toU8a.d.ts +19 -0
- package/{src/u8a/toU8a.ts → u8a/toU8a.js} +16 -23
- package/u8a/wrap.d.ts +22 -0
- package/u8a/wrap.js +43 -0
- package/src/array/chunk.spec.ts +0 -29
- package/src/array/chunk.ts +0 -35
- package/src/array/filter.spec.ts +0 -20
- package/src/array/flatten.spec.ts +0 -33
- package/src/array/flatten.ts +0 -51
- package/src/array/range.spec.ts +0 -29
- package/src/array/shuffle.spec.ts +0 -39
- package/src/array/shuffle.ts +0 -27
- package/src/array/unzip.spec.ts +0 -14
- package/src/array/unzip.ts +0 -18
- package/src/array/zip.spec.ts +0 -26
- package/src/array/zip.ts +0 -17
- package/src/assert.spec.ts +0 -40
- package/src/bi/helpers.ts +0 -23
- package/src/bi/max.spec.ts +0 -32
- package/src/bi/min.spec.ts +0 -26
- package/src/bi/min.ts +0 -16
- package/src/bi/sqrt.spec.ts +0 -59
- package/src/bi/sqrt.ts +0 -43
- package/src/bi/toBigInt.spec.ts +0 -69
- package/src/bi/toBigInt.ts +0 -33
- package/src/bi/toHex.spec.ts +0 -56
- package/src/bi/toHex.ts +0 -16
- package/src/bi/toU8a.spec.ts +0 -99
- package/src/bi/toU8a.ts +0 -72
- package/src/bn/bn.ts +0 -6
- package/src/bn/consts.spec.ts +0 -38
- package/src/bn/fromHex.spec.ts +0 -15
- package/src/bn/fromHex.ts +0 -4
- package/src/bn/max.spec.ts +0 -32
- package/src/bn/min.spec.ts +0 -26
- package/src/bn/sqrt.spec.ts +0 -37
- package/src/bn/sqrt.ts +0 -50
- package/src/bn/toBn.spec.ts +0 -53
- package/src/bn/toHex.spec.ts +0 -50
- package/src/bn/toU8a.spec.ts +0 -60
- package/src/bn/toU8a.ts +0 -45
- package/src/buffer/toU8a.spec.ts +0 -20
- package/src/compact/addLength.spec.ts +0 -14
- package/src/compact/defaults.ts +0 -7
- package/src/compact/fromU8a.spec.ts +0 -84
- package/src/compact/fromU8a.ts +0 -109
- package/src/compact/stripLength.spec.ts +0 -17
- package/src/compact/toU8a.spec.ts +0 -59
- package/src/compact/toU8a.ts +0 -53
- package/src/compact/types.ts +0 -4
- package/src/detectPackage.spec.ts +0 -110
- package/src/detectPackage.ts +0 -138
- package/src/extractTime.spec.ts +0 -21
- package/src/extractTime.ts +0 -71
- package/src/float/index.ts +0 -4
- package/src/float/toU8a.spec.ts +0 -52
- package/src/float/toU8a.ts +0 -30
- package/src/format/formatBalance.spec.ts +0 -296
- package/src/format/formatBalance.ts +0 -177
- package/src/format/formatDate.spec.ts +0 -17
- package/src/format/formatDate.ts +0 -22
- package/src/format/formatDecimal.spec.ts +0 -28
- package/src/format/formatDecimal.ts +0 -22
- package/src/format/formatElapsed.spec.ts +0 -44
- package/src/format/formatElapsed.ts +0 -35
- package/src/format/formatNumber.spec.ts +0 -60
- package/src/format/formatNumber.ts +0 -29
- package/src/format/getSeparator.spec.ts +0 -53
- package/src/format/getSeparator.ts +0 -15
- package/src/format/si.ts +0 -52
- package/src/has.spec.ts +0 -12
- package/src/hex/addPrefix.spec.ts +0 -32
- package/src/hex/fixLength.spec.ts +0 -38
- package/src/hex/hasPrefix.spec.ts +0 -32
- package/src/hex/stripPrefix.spec.ts +0 -44
- package/src/hex/toBigInt.spec.ts +0 -74
- package/src/hex/toBigInt.ts +0 -19
- package/src/hex/toBn.spec.ts +0 -74
- package/src/hex/toNumber.spec.ts +0 -20
- package/src/hex/toString.spec.ts +0 -20
- package/src/hex/toU8a.spec.ts +0 -76
- package/src/hex/toU8a.ts +0 -68
- package/src/hex/toU8aBuffer.spec.ts +0 -38
- package/src/hex/toU8aBuffer.ts +0 -52
- package/src/index.spec.ts +0 -12
- package/src/index.ts +0 -6
- package/src/is/array.spec.ts +0 -20
- package/src/is/array.ts +0 -10
- package/src/is/ascii.spec.ts +0 -49
- package/src/is/ascii.ts +0 -52
- package/src/is/bigInt.spec.ts +0 -26
- package/src/is/bn.spec.ts +0 -21
- package/src/is/boolean.spec.ts +0 -26
- package/src/is/buffer.spec.ts +0 -26
- package/src/is/buffer.ts +0 -28
- package/src/is/childClass.spec.ts +0 -36
- package/src/is/childClass.ts +0 -29
- package/src/is/class.spec.ts +0 -37
- package/src/is/class.ts +0 -12
- package/src/is/codec.spec.ts +0 -52
- package/src/is/codec.ts +0 -26
- package/src/is/compact.spec.ts +0 -27
- package/src/is/compact.ts +0 -19
- package/src/is/error.spec.ts +0 -20
- package/src/is/function.spec.ts +0 -20
- package/src/is/function.ts +0 -23
- package/src/is/helpers.ts +0 -23
- package/src/is/hex.spec.ts +0 -77
- package/src/is/hex.ts +0 -36
- package/src/is/instanceOf.spec.ts +0 -48
- package/src/is/instanceOf.ts +0 -24
- package/src/is/ip.spec.ts +0 -50
- package/src/is/jsonObject.spec.ts +0 -51
- package/src/is/null.spec.ts +0 -20
- package/src/is/number.spec.ts +0 -20
- package/src/is/object.spec.ts +0 -32
- package/src/is/object.ts +0 -24
- package/src/is/observable.spec.ts +0 -26
- package/src/is/promise.spec.ts +0 -32
- package/src/is/promise.ts +0 -6
- package/src/is/riscv.spec.ts +0 -36
- package/src/is/string.spec.ts +0 -32
- package/src/is/testChain.spec.ts +0 -25
- package/src/is/testChain.ts +0 -12
- package/src/is/toBigInt.spec.ts +0 -22
- package/src/is/toBigInt.ts +0 -8
- package/src/is/toBn.spec.ts +0 -25
- package/src/is/toBn.ts +0 -8
- package/src/is/u8a.spec.ts +0 -42
- package/src/is/u8a.ts +0 -25
- package/src/is/undefined.spec.ts +0 -23
- package/src/is/utf8.spec.ts +0 -42
- package/src/is/utf8.ts +0 -207
- package/src/is/wasm.spec.ts +0 -20
- package/src/lazy.spec.ts +0 -71
- package/src/lazy.ts +0 -63
- package/src/logger.spec.ts +0 -188
- package/src/logger.ts +0 -160
- package/src/memoize.spec.ts +0 -79
- package/src/memoize.ts +0 -49
- package/src/mod.ts +0 -4
- package/src/nextTick.ts +0 -26
- package/src/noop.ts +0 -16
- package/src/number/toHex.spec.ts +0 -44
- package/src/number/toU8a.spec.ts +0 -50
- package/src/object/clear.spec.ts +0 -14
- package/src/object/clear.ts +0 -16
- package/src/object/copy.spec.ts +0 -17
- package/src/object/copy.ts +0 -12
- package/src/object/entries.spec.ts +0 -20
- package/src/object/entries.ts +0 -12
- package/src/object/keys.spec.ts +0 -19
- package/src/object/keys.ts +0 -10
- package/src/object/property.spec.ts +0 -149
- package/src/object/property.ts +0 -39
- package/src/object/spread.spec.ts +0 -36
- package/src/object/spread.ts +0 -38
- package/src/object/values.spec.ts +0 -19
- package/src/object/values.ts +0 -10
- package/src/packageInfo.ts +0 -6
- package/src/promisify.spec.ts +0 -50
- package/src/string/camelCase.spec.ts +0 -119
- package/src/string/camelCase.ts +0 -79
- package/src/string/lowerFirst.spec.ts +0 -41
- package/src/string/pascalCase.spec.ts +0 -26
- package/src/string/shorten.spec.ts +0 -38
- package/src/string/toHex.spec.ts +0 -26
- package/src/string/toU8a.spec.ts +0 -31
- package/src/string/upperFirst.spec.ts +0 -41
- package/src/stringify.spec.ts +0 -33
- package/src/stringify.ts +0 -20
- package/src/test/index.ts +0 -4
- package/src/test/performance.ts +0 -92
- package/src/types.ts +0 -100
- package/src/u8a/cmp.spec.ts +0 -62
- package/src/u8a/cmp.ts +0 -50
- package/src/u8a/concat.spec.ts +0 -42
- package/src/u8a/concat.ts +0 -60
- package/src/u8a/concatBuffer.ts +0 -34
- package/src/u8a/empty.spec.ts +0 -46
- package/src/u8a/empty.ts +0 -22
- package/src/u8a/eq.spec.ts +0 -113
- package/src/u8a/eq.ts +0 -46
- package/src/u8a/fixLength.spec.ts +0 -34
- package/src/u8a/fixLength.ts +0 -34
- package/src/u8a/sorted.spec.ts +0 -20
- package/src/u8a/toBigInt.spec.ts +0 -106
- package/src/u8a/toBigInt.ts +0 -100
- package/src/u8a/toBn.spec.ts +0 -106
- package/src/u8a/toBn.ts +0 -101
- package/src/u8a/toBuffer.spec.ts +0 -20
- package/src/u8a/toFloat.spec.ts +0 -86
- package/src/u8a/toFloat.ts +0 -26
- package/src/u8a/toHex.spec.ts +0 -94
- package/src/u8a/toHex.ts +0 -68
- package/src/u8a/toHexBuffer.spec.ts +0 -63
- package/src/u8a/toHexBuffer.ts +0 -30
- package/src/u8a/toNumber.spec.ts +0 -47
- package/src/u8a/toNumber.ts +0 -80
- package/src/u8a/toString.spec.ts +0 -36
- package/src/u8a/toU8a.spec.ts +0 -63
- package/src/u8a/wrap.spec.ts +0 -139
- package/src/u8a/wrap.ts +0 -65
- package/tsconfig.build.json +0 -19
- package/tsconfig.spec.json +0 -17
package/src/bn/toBn.spec.ts
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
/// <reference types="@polkadot/dev-test/globals.d.ts" />
|
|
5
|
-
|
|
6
|
-
import { BN, bnToBn } from './index.js';
|
|
7
|
-
|
|
8
|
-
describe('bnToBn', (): void => {
|
|
9
|
-
it('converts null values to 0x00', (): void => {
|
|
10
|
-
expect(
|
|
11
|
-
bnToBn(null).toNumber()
|
|
12
|
-
).toEqual(0);
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('converts BN values to BN', (): void => {
|
|
16
|
-
expect(
|
|
17
|
-
bnToBn(new BN(128)).toNumber()
|
|
18
|
-
).toEqual(128);
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
it('converts BigInt values to BN', (): void => {
|
|
22
|
-
expect(
|
|
23
|
-
bnToBn(128821n).toNumber()
|
|
24
|
-
).toEqual(128821);
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
it('converts number values to BN', (): void => {
|
|
28
|
-
expect(
|
|
29
|
-
bnToBn(128).toNumber()
|
|
30
|
-
).toEqual(128);
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
it('converts string to BN', (): void => {
|
|
34
|
-
expect(
|
|
35
|
-
bnToBn('123').toNumber()
|
|
36
|
-
).toEqual(123);
|
|
37
|
-
});
|
|
38
|
-
|
|
39
|
-
it('converts hex to BN', (): void => {
|
|
40
|
-
expect(
|
|
41
|
-
bnToBn('0x0123').toNumber()
|
|
42
|
-
).toEqual(0x123);
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
it('converts Compact to BN', (): void => {
|
|
46
|
-
expect(
|
|
47
|
-
bnToBn({
|
|
48
|
-
something: 'test',
|
|
49
|
-
toBn: (): BN => new BN(1234)
|
|
50
|
-
}).toNumber()
|
|
51
|
-
).toEqual(1234);
|
|
52
|
-
});
|
|
53
|
-
});
|
package/src/bn/toHex.spec.ts
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
/// <reference types="@polkadot/dev-test/globals.d.ts" />
|
|
5
|
-
|
|
6
|
-
import { BN, bnToHex } from './index.js';
|
|
7
|
-
|
|
8
|
-
describe('bnToHex', (): void => {
|
|
9
|
-
it('converts null values to 0x00', (): void => {
|
|
10
|
-
expect(
|
|
11
|
-
bnToHex(null)
|
|
12
|
-
).toBe('0x00');
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('converts null values to 0x00000000 (with bitLength)', (): void => {
|
|
16
|
-
expect(
|
|
17
|
-
bnToHex(null, { bitLength: 32 })
|
|
18
|
-
).toBe('0x00000000');
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
it('converts BN values to a prefixed hex representation', (): void => {
|
|
22
|
-
expect(
|
|
23
|
-
bnToHex(new BN(128))
|
|
24
|
-
).toBe('0x80');
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
it('converts BN values to a prefixed hex representation (bitLength)', (): void => {
|
|
28
|
-
expect(
|
|
29
|
-
bnToHex(new BN(128), { bitLength: 16 })
|
|
30
|
-
).toBe('0x0080');
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
it('converts BN values to a prefixed hex representation (LE)', (): void => {
|
|
34
|
-
expect(
|
|
35
|
-
bnToHex(new BN(128), { bitLength: 16, isLe: true })
|
|
36
|
-
).toBe('0x8000');
|
|
37
|
-
});
|
|
38
|
-
|
|
39
|
-
it('handles negative numbers', (): void => {
|
|
40
|
-
expect(
|
|
41
|
-
bnToHex(new BN(-1234), { isNegative: true })
|
|
42
|
-
).toBe('0xfb2e');
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
it('handles negative numbers (with bitLength)', (): void => {
|
|
46
|
-
expect(
|
|
47
|
-
bnToHex(new BN(-1234), { bitLength: 32, isNegative: true })
|
|
48
|
-
).toBe('0xfffffb2e');
|
|
49
|
-
});
|
|
50
|
-
});
|
package/src/bn/toU8a.spec.ts
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
/// <reference types="@polkadot/dev-test/globals.d.ts" />
|
|
5
|
-
|
|
6
|
-
import { arrayRange } from '../array/index.js';
|
|
7
|
-
import { TESTS } from '../bi/toU8a.spec.js';
|
|
8
|
-
import { perf } from '../test/index.js';
|
|
9
|
-
import { BN, bnToU8a } from './index.js';
|
|
10
|
-
|
|
11
|
-
const ptest = arrayRange(65536).map((v) => [v]);
|
|
12
|
-
|
|
13
|
-
describe('bnToU8a', (): void => {
|
|
14
|
-
it('converts null values to 0x00', (): void => {
|
|
15
|
-
expect(
|
|
16
|
-
bnToU8a(null)
|
|
17
|
-
).toEqual(new Uint8Array(1));
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
it('converts null values to 0x00000000 (bitLength)', (): void => {
|
|
21
|
-
expect(
|
|
22
|
-
bnToU8a(null, { bitLength: 32 })
|
|
23
|
-
).toEqual(new Uint8Array([0, 0, 0, 0]));
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
it('converts BN values to a prefixed hex representation', (): void => {
|
|
27
|
-
expect(
|
|
28
|
-
bnToU8a(new BN(0x123456), { isLe: false })
|
|
29
|
-
).toEqual(new Uint8Array([0x12, 0x34, 0x56]));
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
it('converts BN values to a prefixed hex representation (bitLength)', (): void => {
|
|
33
|
-
expect(
|
|
34
|
-
bnToU8a(new BN(0x123456), { bitLength: 32, isLe: false })
|
|
35
|
-
).toEqual(new Uint8Array([0x00, 0x12, 0x34, 0x56]));
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
it('converts using little endian (as set)', (): void => {
|
|
39
|
-
expect(
|
|
40
|
-
bnToU8a(new BN(0x123456), { bitLength: 32, isLe: true })
|
|
41
|
-
).toEqual(new Uint8Array([0x56, 0x34, 0x12, 0x00]));
|
|
42
|
-
});
|
|
43
|
-
|
|
44
|
-
describe('conversion tests', (): void => {
|
|
45
|
-
TESTS.forEach(([isLe, isNegative, numarr, strval], i): void => {
|
|
46
|
-
const bitLength = numarr.length * 8;
|
|
47
|
-
|
|
48
|
-
it(`#${i}: converts from ${strval} (bitLength=${bitLength}, isLe=${isLe}, isNegative=${isNegative})`, (): void => {
|
|
49
|
-
expect(
|
|
50
|
-
bnToU8a(
|
|
51
|
-
new BN(strval),
|
|
52
|
-
{ bitLength, isLe, isNegative }
|
|
53
|
-
)
|
|
54
|
-
).toEqual(new Uint8Array(numarr));
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
|
|
59
|
-
perf('bnToU8a', 250000, ptest, bnToU8a);
|
|
60
|
-
});
|
package/src/bn/toU8a.ts
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
import type { NumberOptions, ToBn } from '../types.js';
|
|
5
|
-
import type { BN } from './bn.js';
|
|
6
|
-
|
|
7
|
-
import { bnToBn } from './toBn.js';
|
|
8
|
-
|
|
9
|
-
const DEFAULT_OPTS: NumberOptions = { bitLength: -1, isLe: true, isNegative: false };
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* @name bnToU8a
|
|
13
|
-
* @summary Creates a Uint8Array object from a BN.
|
|
14
|
-
* @description
|
|
15
|
-
* `null`/`undefined`/`NaN` inputs returns an empty `Uint8Array` result. `BN` input values return the actual bytes value converted to a `Uint8Array`. Optionally convert using little-endian format if `isLE` is set.
|
|
16
|
-
* @example
|
|
17
|
-
* <BR>
|
|
18
|
-
*
|
|
19
|
-
* ```javascript
|
|
20
|
-
* import { bnToU8a } from '@pezkuwi/util';
|
|
21
|
-
*
|
|
22
|
-
* bnToU8a(new BN(0x1234)); // => [0x12, 0x34]
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
export function bnToU8a <ExtToBn extends ToBn> (value?: ExtToBn | BN | bigint | number | null, { bitLength = -1, isLe = true, isNegative = false } = DEFAULT_OPTS): Uint8Array {
|
|
26
|
-
const valueBn = bnToBn(value);
|
|
27
|
-
const byteLength = bitLength === -1
|
|
28
|
-
? Math.ceil(valueBn.bitLength() / 8)
|
|
29
|
-
: Math.ceil((bitLength || 0) / 8);
|
|
30
|
-
|
|
31
|
-
if (!value) {
|
|
32
|
-
return bitLength === -1
|
|
33
|
-
? new Uint8Array(1)
|
|
34
|
-
: new Uint8Array(byteLength);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
const output = new Uint8Array(byteLength);
|
|
38
|
-
const bn = isNegative
|
|
39
|
-
? valueBn.toTwos(byteLength * 8)
|
|
40
|
-
: valueBn;
|
|
41
|
-
|
|
42
|
-
output.set(bn.toArray(isLe ? 'le' : 'be', byteLength), 0);
|
|
43
|
-
|
|
44
|
-
return output;
|
|
45
|
-
}
|
package/src/buffer/toU8a.spec.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
/// <reference types="@polkadot/dev-test/globals.d.ts" />
|
|
5
|
-
|
|
6
|
-
import { bufferToU8a } from './index.js';
|
|
7
|
-
|
|
8
|
-
describe('bufferToU8a', (): void => {
|
|
9
|
-
it('returns an empty buffer when null provided', (): void => {
|
|
10
|
-
expect(
|
|
11
|
-
bufferToU8a(null)
|
|
12
|
-
).toEqual(new Uint8Array());
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('returns a Uint8Buffer with the correct values', (): void => {
|
|
16
|
-
expect(
|
|
17
|
-
bufferToU8a(Buffer.from([128, 0, 10]))
|
|
18
|
-
).toEqual(new Uint8Array([128, 0, 10]));
|
|
19
|
-
});
|
|
20
|
-
});
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
/// <reference types="@polkadot/dev-test/globals.d.ts" />
|
|
5
|
-
|
|
6
|
-
import { compactAddLength } from './index.js';
|
|
7
|
-
|
|
8
|
-
describe('compactAddLength', (): void => {
|
|
9
|
-
it('correctly adds the length prefix', (): void => {
|
|
10
|
-
expect(
|
|
11
|
-
compactAddLength(Uint8Array.from([12, 13]))
|
|
12
|
-
).toEqual(Uint8Array.from([2 << 2, 12, 13]));
|
|
13
|
-
});
|
|
14
|
-
});
|
package/src/compact/defaults.ts
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
/// <reference types="@polkadot/dev-test/globals.d.ts" />
|
|
5
|
-
|
|
6
|
-
import { BN } from '../bn/bn.js';
|
|
7
|
-
import { hexToU8a } from '../hex/toU8a.js';
|
|
8
|
-
import { perf } from '../test/index.js';
|
|
9
|
-
import { compactFromU8a, compactFromU8aLim } from './index.js';
|
|
10
|
-
|
|
11
|
-
describe('compactFromU8a', (): void => {
|
|
12
|
-
it('decoded u8 value', (): void => {
|
|
13
|
-
expect(
|
|
14
|
-
compactFromU8a(new Uint8Array([0b11111100]))
|
|
15
|
-
).toEqual([1, new BN(63)]);
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
it('decodes from same u16 encoded value', (): void => {
|
|
19
|
-
expect(
|
|
20
|
-
compactFromU8a(new Uint8Array([0b11111101, 0b00000111])).toString()
|
|
21
|
-
).toEqual(
|
|
22
|
-
[2, new BN(511)].toString()
|
|
23
|
-
);
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
it('decodes from same u32 encoded value (short)', (): void => {
|
|
27
|
-
expect(
|
|
28
|
-
compactFromU8a(new Uint8Array([254, 255, 3, 0])).toString()
|
|
29
|
-
).toEqual(
|
|
30
|
-
[4, new BN(0xffff)].toString()
|
|
31
|
-
);
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
it('decodes from same u32 encoded value (short, max)', (): void => {
|
|
35
|
-
expect(
|
|
36
|
-
compactFromU8a(new Uint8Array([254, 255, 255, 255])).toString()
|
|
37
|
-
).toEqual(
|
|
38
|
-
[4, new BN(1073741823)].toString()
|
|
39
|
-
);
|
|
40
|
-
});
|
|
41
|
-
|
|
42
|
-
it('decodes from same u32 encoded value (full)', (): void => {
|
|
43
|
-
expect(
|
|
44
|
-
compactFromU8a(new Uint8Array([3, 249, 255, 255, 255]))
|
|
45
|
-
).toEqual([5, new BN(0xfffffff9)]);
|
|
46
|
-
});
|
|
47
|
-
|
|
48
|
-
it('decodes from same u32 as u64 encoded value (full, default)', (): void => {
|
|
49
|
-
expect(
|
|
50
|
-
compactFromU8a(new Uint8Array([3 + ((4 - 4) << 2), 249, 255, 255, 255]))
|
|
51
|
-
).toEqual([5, new BN(0xfffffff9)]);
|
|
52
|
-
});
|
|
53
|
-
|
|
54
|
-
it('decodes an actual value', (): void => {
|
|
55
|
-
expect(
|
|
56
|
-
compactFromU8a(
|
|
57
|
-
hexToU8a('0x0b00407a10f35a')
|
|
58
|
-
)
|
|
59
|
-
).toEqual([7, new BN('5af3107a4000', 16)]);
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
it('decodes an actual value (Buffer)', (): void => {
|
|
63
|
-
expect(
|
|
64
|
-
compactFromU8a(
|
|
65
|
-
Buffer.from('0b00407a10f35a', 'hex')
|
|
66
|
-
)
|
|
67
|
-
).toEqual([7, new BN('5af3107a4000', 16)]);
|
|
68
|
-
});
|
|
69
|
-
|
|
70
|
-
it('decodes an actual value (100000000)', (): void => {
|
|
71
|
-
expect(
|
|
72
|
-
compactFromU8a(
|
|
73
|
-
hexToU8a('0x0284d717')
|
|
74
|
-
)[1].toString()
|
|
75
|
-
).toEqual('100000000');
|
|
76
|
-
});
|
|
77
|
-
|
|
78
|
-
perf('compactFromU8a (u8)', 1_000_000, [[new Uint8Array([63 << 2])]], compactFromU8a);
|
|
79
|
-
perf('compactFromU8a (u16)', 1_000_000, [[new Uint8Array([0b11111101, 0b00000111])]], compactFromU8a);
|
|
80
|
-
perf('compactFromU8a (u32)', 1_000_000, [[new Uint8Array([254, 255, 3, 0])]], compactFromU8a);
|
|
81
|
-
perf('compactFromU8aLim (u32)', 1_000_000, [[new Uint8Array([254, 255, 3, 0])]], compactFromU8aLim);
|
|
82
|
-
perf('compactFromU8a (u48)', 1_000_000, [[hexToU8a('0x0b00407a10f35a')]], compactFromU8a);
|
|
83
|
-
perf('compactFromU8a (u96)', 250_000, [[new Uint8Array([23, 52, 0x40, 0x7a, 0x10, 0xf3, 0x5a, 0, 0, 18])]], compactFromU8a);
|
|
84
|
-
});
|
package/src/compact/fromU8a.ts
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
import type { U8aLike } from '../types.js';
|
|
5
|
-
|
|
6
|
-
import { BN } from '../bn/index.js';
|
|
7
|
-
import { u8aToBn, u8aToU8a } from '../u8a/index.js';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* @name compactFromU8a
|
|
11
|
-
* @description Retrives the offset and encoded length from a compact-prefixed value
|
|
12
|
-
* @example
|
|
13
|
-
* <BR>
|
|
14
|
-
*
|
|
15
|
-
* ```javascript
|
|
16
|
-
* import { compactFromU8a } from '@pezkuwi/util';
|
|
17
|
-
*
|
|
18
|
-
* const [offset, length] = compactFromU8a(new Uint8Array([254, 255, 3, 0]));
|
|
19
|
-
*
|
|
20
|
-
* console.log('value offset=', offset, 'length=', length); // 4, 0xffff
|
|
21
|
-
* ```
|
|
22
|
-
*/
|
|
23
|
-
export function compactFromU8a (input: U8aLike): [number, BN] {
|
|
24
|
-
const u8a = u8aToU8a(input);
|
|
25
|
-
|
|
26
|
-
// The u8a is manually converted here for 1, 2 & 4 lengths, it is 2x faster
|
|
27
|
-
// than doing an additional call to u8aToBn (as with variable length)
|
|
28
|
-
switch (u8a[0] & 0b11) {
|
|
29
|
-
case 0b00:
|
|
30
|
-
return [1, new BN(u8a[0] >>> 2)];
|
|
31
|
-
|
|
32
|
-
case 0b01:
|
|
33
|
-
return [2, new BN((u8a[0] + (u8a[1] << 8)) >>> 2)];
|
|
34
|
-
|
|
35
|
-
case 0b10:
|
|
36
|
-
// for the 3rd byte, we don't << 24 - since JS converts all bitwise operators to
|
|
37
|
-
// 32-bit, in the case where the top-most bit is set this yields a negative value
|
|
38
|
-
return [4, new BN((u8a[0] + (u8a[1] << 8) + (u8a[2] << 16) + (u8a[3] * 0x1_00_00_00)) >>> 2)];
|
|
39
|
-
|
|
40
|
-
// 0b11
|
|
41
|
-
default: {
|
|
42
|
-
// add 5 to shifted (4 for base length, 1 for this byte)
|
|
43
|
-
const offset = (u8a[0] >>> 2) + 5;
|
|
44
|
-
|
|
45
|
-
// we unroll the loop
|
|
46
|
-
switch (offset) {
|
|
47
|
-
// there still could be 4 bytes data, similar to 0b10 above (with offsets)
|
|
48
|
-
case 5:
|
|
49
|
-
// for the 3rd byte, we don't << 24 - since JS converts all bitwise operators to
|
|
50
|
-
// 32-bit, in the case where the top-most bit is set this yields a negative value
|
|
51
|
-
return [5, new BN(u8a[1] + (u8a[2] << 8) + (u8a[3] << 16) + (u8a[4] * 0x1_00_00_00))];
|
|
52
|
-
|
|
53
|
-
case 6:
|
|
54
|
-
return [6, new BN(u8a[1] + (u8a[2] << 8) + (u8a[3] << 16) + ((u8a[4] + (u8a[5] << 8)) * 0x1_00_00_00))];
|
|
55
|
-
|
|
56
|
-
// 6 bytes data is the maximum, 48 bits (56 would overflow)
|
|
57
|
-
case 7:
|
|
58
|
-
return [7, new BN(u8a[1] + (u8a[2] << 8) + (u8a[3] << 16) + ((u8a[4] + (u8a[5] << 8) + (u8a[6] << 16)) * 0x1_00_00_00))];
|
|
59
|
-
|
|
60
|
-
// for anything else, use the non-unrolled version
|
|
61
|
-
default:
|
|
62
|
-
return [offset, u8aToBn(u8a.subarray(1, offset))];
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* @name compactFromU8aLim
|
|
70
|
-
* @description A limited version of [[compactFromU8a]], accepting only Uint8Array inputs for values <= 48 bits
|
|
71
|
-
*/
|
|
72
|
-
export function compactFromU8aLim (u8a: Uint8Array): [number, number] {
|
|
73
|
-
// The u8a is manually converted here for 1, 2 & 4 lengths, it is 2x faster
|
|
74
|
-
// than doing an additional call to u8aToBn (as with variable length)
|
|
75
|
-
switch (u8a[0] & 0b11) {
|
|
76
|
-
case 0b00:
|
|
77
|
-
return [1, u8a[0] >>> 2];
|
|
78
|
-
|
|
79
|
-
case 0b01:
|
|
80
|
-
return [2, (u8a[0] + (u8a[1] << 8)) >>> 2];
|
|
81
|
-
|
|
82
|
-
case 0b10:
|
|
83
|
-
// for the 3rd byte, we don't << 24 - since JS converts all bitwise operators to
|
|
84
|
-
// 32-bit, in the case where the top-most bit is set this yields a negative value
|
|
85
|
-
return [4, (u8a[0] + (u8a[1] << 8) + (u8a[2] << 16) + (u8a[3] * 0x1_00_00_00)) >>> 2];
|
|
86
|
-
|
|
87
|
-
// 0b11
|
|
88
|
-
default: {
|
|
89
|
-
// add 5 to shifted (4 for base length, 1 for this byte)
|
|
90
|
-
// we unroll the loop
|
|
91
|
-
switch ((u8a[0] >>> 2) + 5) {
|
|
92
|
-
// there still could be 4 bytes data, similar to 0b10 above (with offsets)
|
|
93
|
-
case 5:
|
|
94
|
-
return [5, u8a[1] + (u8a[2] << 8) + (u8a[3] << 16) + (u8a[4] * 0x1_00_00_00)];
|
|
95
|
-
|
|
96
|
-
case 6:
|
|
97
|
-
return [6, u8a[1] + (u8a[2] << 8) + (u8a[3] << 16) + ((u8a[4] + (u8a[5] << 8)) * 0x1_00_00_00)];
|
|
98
|
-
|
|
99
|
-
// 6 bytes data is the maximum, 48 bits (56 would overflow)
|
|
100
|
-
case 7:
|
|
101
|
-
return [7, u8a[1] + (u8a[2] << 8) + (u8a[3] << 16) + ((u8a[4] + (u8a[5] << 8) + (u8a[6] << 16)) * 0x1_00_00_00)];
|
|
102
|
-
|
|
103
|
-
// for anything else, we are above the actual MAX_SAFE_INTEGER - bail out
|
|
104
|
-
default:
|
|
105
|
-
throw new Error('Compact input is > Number.MAX_SAFE_INTEGER');
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
/// <reference types="@polkadot/dev-test/globals.d.ts" />
|
|
5
|
-
|
|
6
|
-
import { compactStripLength } from './index.js';
|
|
7
|
-
|
|
8
|
-
describe('compactStripLength', (): void => {
|
|
9
|
-
it('correctly removes the length prefix', (): void => {
|
|
10
|
-
expect(
|
|
11
|
-
compactStripLength(Uint8Array.from([2 << 2, 12, 13]))
|
|
12
|
-
).toEqual([
|
|
13
|
-
3,
|
|
14
|
-
Uint8Array.from([12, 13])
|
|
15
|
-
]);
|
|
16
|
-
});
|
|
17
|
-
});
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
/// <reference types="@polkadot/dev-test/globals.d.ts" />
|
|
5
|
-
|
|
6
|
-
import { BN } from '../bn/index.js';
|
|
7
|
-
import { compactToU8a } from './index.js';
|
|
8
|
-
|
|
9
|
-
const TESTS: [output: string | Uint8Array, input: BN | number][] = [
|
|
10
|
-
// Rust tests
|
|
11
|
-
// Copied from https://github.com/paritytech/parity-codec/blob/master/src/codec.rs
|
|
12
|
-
['00', new BN('0')],
|
|
13
|
-
['fc', new BN('63')],
|
|
14
|
-
['01 01', new BN('64')],
|
|
15
|
-
['fd ff', new BN('16383')],
|
|
16
|
-
['02 00 01 00', new BN('16384')],
|
|
17
|
-
['fe ff ff ff', new BN('1073741823')],
|
|
18
|
-
['03 00 00 00 40', new BN('1073741824')],
|
|
19
|
-
['03 ff ff ff ff', new BN(`${1}${'0'.repeat(32)}`, 2).subn(1)],
|
|
20
|
-
['07 00 00 00 00 01', new BN(`${1}${'0'.repeat(32)}`, 2)],
|
|
21
|
-
['0b 00 00 00 00 00 01', new BN(`${1}${'0'.repeat(40)}`, 2)],
|
|
22
|
-
['0f 00 00 00 00 00 00 01', new BN(`${1}${'0'.repeat(48)}`, 2)],
|
|
23
|
-
['0f ff ff ff ff ff ff ff', new BN(`${1}${'0'.repeat(56)}`, 2).subn(1)],
|
|
24
|
-
['13 00 00 00 00 00 00 00 01', new BN(`${1}${'0'.repeat(56)}`, 2)],
|
|
25
|
-
['13 ff ff ff ff ff ff ff ff', new BN(`${1}${'0'.repeat(64)}`, 2).subn(1)],
|
|
26
|
-
// own tests
|
|
27
|
-
[new Uint8Array([18 << 2]), 18],
|
|
28
|
-
[new Uint8Array([0b11111100]), 63],
|
|
29
|
-
[new Uint8Array([0xbd, 0x01]), 111],
|
|
30
|
-
[new Uint8Array([0b11111101, 0b00000111]), 511],
|
|
31
|
-
[new Uint8Array([253, 127]), 0x1fff],
|
|
32
|
-
[new Uint8Array([254, 255, 3, 0]), 0xffff],
|
|
33
|
-
[new Uint8Array([3 + ((4 - 4) << 2), 249, 255, 255, 255]), 0xfffffff9],
|
|
34
|
-
[new Uint8Array([3 + ((6 - 4) << 2), 0x00, 0x40, 0x7a, 0x10, 0xf3, 0x5a]), new BN('00005af3107a4000', 16)],
|
|
35
|
-
[new Uint8Array([23, 52, 0x40, 0x7a, 0x10, 0xf3, 0x5a, 0, 0, 18]), new BN('1200005af3107a4034', 16)]
|
|
36
|
-
];
|
|
37
|
-
|
|
38
|
-
describe('encode', (): void => {
|
|
39
|
-
it('does not modify the original', (): void => {
|
|
40
|
-
const original = new BN(123456);
|
|
41
|
-
|
|
42
|
-
expect(compactToU8a(original)).toEqual(new Uint8Array([2, 137, 7, 0]));
|
|
43
|
-
expect(original.toString()).toEqual('123456');
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
describe('conversion tests', (): void => {
|
|
47
|
-
TESTS.forEach(([output, input], i): void => {
|
|
48
|
-
it(`#${i}: encodes ${input.toString()}`, (): void => {
|
|
49
|
-
expect(
|
|
50
|
-
compactToU8a(input)
|
|
51
|
-
).toEqual(
|
|
52
|
-
output instanceof Uint8Array
|
|
53
|
-
? output
|
|
54
|
-
: Uint8Array.from(output.split(' ').map((s) => parseInt(s, 16)))
|
|
55
|
-
);
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
});
|
package/src/compact/toU8a.ts
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
import { BN, BN_ONE, BN_TWO, bnToBn, bnToU8a } from '../bn/index.js';
|
|
5
|
-
import { u8aConcatStrict } from '../u8a/index.js';
|
|
6
|
-
|
|
7
|
-
const MAX_U8 = BN_TWO.pow(new BN(8 - 2)).isub(BN_ONE);
|
|
8
|
-
const MAX_U16 = BN_TWO.pow(new BN(16 - 2)).isub(BN_ONE);
|
|
9
|
-
const MAX_U32 = BN_TWO.pow(new BN(32 - 2)).isub(BN_ONE);
|
|
10
|
-
const BL_16 = { bitLength: 16 };
|
|
11
|
-
const BL_32 = { bitLength: 32 };
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* @name compactToU8a
|
|
15
|
-
* @description Encodes a number into a compact representation
|
|
16
|
-
* @example
|
|
17
|
-
* <BR>
|
|
18
|
-
*
|
|
19
|
-
* ```javascript
|
|
20
|
-
* import { compactToU8a } from '@pezkuwi/util';
|
|
21
|
-
*
|
|
22
|
-
* console.log(compactToU8a(511, 32)); // Uint8Array([0b11111101, 0b00000111])
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
export function compactToU8a (value: BN | bigint | number): Uint8Array {
|
|
26
|
-
const bn = bnToBn(value);
|
|
27
|
-
|
|
28
|
-
if (bn.lte(MAX_U8)) {
|
|
29
|
-
return new Uint8Array([bn.toNumber() << 2]);
|
|
30
|
-
} else if (bn.lte(MAX_U16)) {
|
|
31
|
-
return bnToU8a(bn.shln(2).iadd(BN_ONE), BL_16);
|
|
32
|
-
} else if (bn.lte(MAX_U32)) {
|
|
33
|
-
return bnToU8a(bn.shln(2).iadd(BN_TWO), BL_32);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
const u8a = bnToU8a(bn);
|
|
37
|
-
let length = u8a.length;
|
|
38
|
-
|
|
39
|
-
// adjust to the minimum number of bytes
|
|
40
|
-
while (u8a[length - 1] === 0) {
|
|
41
|
-
length--;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
if (length < 4) {
|
|
45
|
-
throw new Error('Invalid length, previous checks match anything less than 2^30');
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
return u8aConcatStrict([
|
|
49
|
-
// subtract 4 as minimum (also catered for in decoding)
|
|
50
|
-
new Uint8Array([((length - 4) << 2) + 0b11]),
|
|
51
|
-
u8a.subarray(0, length)
|
|
52
|
-
]);
|
|
53
|
-
}
|
package/src/compact/types.ts
DELETED