@pezkuwi/util 14.0.1 → 14.0.3
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
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { bnToBn } from '../bn/toBn.js';
|
|
2
|
+
import { isBoolean } from '../is/boolean.js';
|
|
3
|
+
import { formatDecimal } from './formatDecimal.js';
|
|
4
|
+
import { getSeparator } from './getSeparator.js';
|
|
5
|
+
import { calcSi, findSi, SI, SI_MID } from './si.js';
|
|
6
|
+
const DEFAULT_DECIMALS = 0;
|
|
7
|
+
const DEFAULT_UNIT = SI[SI_MID].text;
|
|
8
|
+
let defaultDecimals = DEFAULT_DECIMALS;
|
|
9
|
+
let defaultUnit = DEFAULT_UNIT;
|
|
10
|
+
function _formatBalance(input, { decimals = defaultDecimals, forceUnit, locale = 'en', withAll = false, withSi = true, withSiFull = false, withUnit = true, withZero = true } = {}) {
|
|
11
|
+
// we only work with string inputs here - convert anything
|
|
12
|
+
// into the string-only value
|
|
13
|
+
let text = bnToBn(input).toString();
|
|
14
|
+
if (text.length === 0 || text === '0') {
|
|
15
|
+
return '0';
|
|
16
|
+
}
|
|
17
|
+
// strip the negative sign so we can work with clean groupings, re-add this in the
|
|
18
|
+
// end when we return the result (from here on we work with positive numbers)
|
|
19
|
+
let sign = '';
|
|
20
|
+
if (text[0].startsWith('-')) {
|
|
21
|
+
sign = '-';
|
|
22
|
+
text = text.substring(1);
|
|
23
|
+
}
|
|
24
|
+
// We start at midpoint (8) minus 1 - this means that values display as
|
|
25
|
+
// 123.4567 instead of 0.1234 k (so we always have the most relevant).
|
|
26
|
+
const si = calcSi(text, decimals, forceUnit);
|
|
27
|
+
const mid = text.length - (decimals + si.power);
|
|
28
|
+
const pre = mid <= 0 ? '0' : text.substring(0, mid);
|
|
29
|
+
// get the post from the midpoint onward and then first add max decimals
|
|
30
|
+
// before trimming to the correct (calculated) amount of decimals again
|
|
31
|
+
let post = text
|
|
32
|
+
.padStart(mid < 0 ? decimals : 1, '0')
|
|
33
|
+
.substring(mid < 0 ? 0 : mid)
|
|
34
|
+
.padEnd(withAll ? Math.max(decimals, 4) : 4, '0')
|
|
35
|
+
.substring(0, withAll ? Math.max(4, decimals + si.power) : 4);
|
|
36
|
+
// remove all trailing 0's (if required via flag)
|
|
37
|
+
if (!withZero) {
|
|
38
|
+
let end = post.length - 1;
|
|
39
|
+
// This looks inefficient, however it is better to do the checks and
|
|
40
|
+
// only make one final slice than it is to do it in multiples
|
|
41
|
+
do {
|
|
42
|
+
if (post[end] === '0') {
|
|
43
|
+
end--;
|
|
44
|
+
}
|
|
45
|
+
} while (post[end] === '0');
|
|
46
|
+
post = post.substring(0, end + 1);
|
|
47
|
+
}
|
|
48
|
+
// the display unit
|
|
49
|
+
const unit = isBoolean(withUnit)
|
|
50
|
+
? SI[SI_MID].text
|
|
51
|
+
: withUnit;
|
|
52
|
+
// format the units for display based on the flags
|
|
53
|
+
const units = withSi || withSiFull
|
|
54
|
+
? si.value === '-'
|
|
55
|
+
? withUnit
|
|
56
|
+
? ` ${unit}`
|
|
57
|
+
: ''
|
|
58
|
+
: ` ${withSiFull ? `${si.text}${withUnit ? ' ' : ''}` : si.value}${withUnit ? unit : ''}`
|
|
59
|
+
: '';
|
|
60
|
+
const { decimal, thousand } = getSeparator(locale);
|
|
61
|
+
return `${sign}${formatDecimal(pre, thousand)}${post && `${decimal}${post}`}${units}`;
|
|
62
|
+
}
|
|
63
|
+
export const formatBalance = _formatBalance;
|
|
64
|
+
formatBalance.calcSi = (text, decimals = defaultDecimals) => calcSi(text, decimals);
|
|
65
|
+
formatBalance.findSi = findSi;
|
|
66
|
+
formatBalance.getDefaults = () => {
|
|
67
|
+
return {
|
|
68
|
+
decimals: defaultDecimals,
|
|
69
|
+
unit: defaultUnit
|
|
70
|
+
};
|
|
71
|
+
};
|
|
72
|
+
formatBalance.getOptions = (decimals = defaultDecimals) => {
|
|
73
|
+
return SI.filter(({ power }) => power < 0
|
|
74
|
+
? (decimals + power) >= 0
|
|
75
|
+
: true);
|
|
76
|
+
};
|
|
77
|
+
formatBalance.setDefaults = ({ decimals, unit }) => {
|
|
78
|
+
defaultDecimals = (Array.isArray(decimals)
|
|
79
|
+
? decimals[0]
|
|
80
|
+
: decimals) ?? defaultDecimals;
|
|
81
|
+
defaultUnit = (Array.isArray(unit)
|
|
82
|
+
? unit[0]
|
|
83
|
+
: unit) ?? defaultUnit;
|
|
84
|
+
SI[SI_MID].text = defaultUnit;
|
|
85
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** @internal */
|
|
2
|
+
function zeroPad(value) {
|
|
3
|
+
return value.toString().padStart(2, '0');
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* @name formatDate
|
|
7
|
+
* @description Formats a date in CCYY-MM-DD HH:MM:SS format
|
|
8
|
+
*/
|
|
9
|
+
export function formatDate(date) {
|
|
10
|
+
const year = date.getFullYear().toString();
|
|
11
|
+
const month = zeroPad((date.getMonth() + 1));
|
|
12
|
+
const day = zeroPad(date.getDate());
|
|
13
|
+
const hour = zeroPad(date.getHours());
|
|
14
|
+
const minute = zeroPad(date.getMinutes());
|
|
15
|
+
const second = zeroPad(date.getSeconds());
|
|
16
|
+
return `${year}-${month}-${day} ${hour}:${minute}:${second}`;
|
|
17
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const NUMBER_REGEX = new RegExp('(\\d+?)(?=(\\d{3})+(?!\\d)|$)', 'g');
|
|
2
|
+
/**
|
|
3
|
+
* @name formatDecimal
|
|
4
|
+
* @description Formats a number into string format with thousand separators
|
|
5
|
+
*/
|
|
6
|
+
export function formatDecimal(value, separator = ',') {
|
|
7
|
+
// We can do this by adjusting the regx, however for the sake of clarity
|
|
8
|
+
// we rather strip and re-add the negative sign in the output
|
|
9
|
+
const isNegative = value[0].startsWith('-');
|
|
10
|
+
const matched = isNegative
|
|
11
|
+
? value.substring(1).match(NUMBER_REGEX)
|
|
12
|
+
: value.match(NUMBER_REGEX);
|
|
13
|
+
return matched
|
|
14
|
+
? `${isNegative ? '-' : ''}${matched.join(separator)}`
|
|
15
|
+
: value;
|
|
16
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { BN } from '../bn/bn.js';
|
|
2
|
+
import type { ToBn } from '../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* @name formatElapsed
|
|
5
|
+
* @description Formats an elapsed value into s, m, h or day segments
|
|
6
|
+
*/
|
|
7
|
+
export declare function formatElapsed<ExtToBn extends ToBn>(now?: Date | null, value?: bigint | BN | ExtToBn | Date | number | null): string;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { bnToBn } from '../bn/toBn.js';
|
|
2
|
+
/** @internal */
|
|
3
|
+
function formatValue(elapsed) {
|
|
4
|
+
if (elapsed < 15) {
|
|
5
|
+
return `${elapsed.toFixed(1)}s`;
|
|
6
|
+
}
|
|
7
|
+
else if (elapsed < 60) {
|
|
8
|
+
return `${elapsed | 0}s`;
|
|
9
|
+
}
|
|
10
|
+
else if (elapsed < 3600) {
|
|
11
|
+
return `${elapsed / 60 | 0}m`;
|
|
12
|
+
}
|
|
13
|
+
return `${elapsed / 3600 | 0}h`;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* @name formatElapsed
|
|
17
|
+
* @description Formats an elapsed value into s, m, h or day segments
|
|
18
|
+
*/
|
|
19
|
+
export function formatElapsed(now, value) {
|
|
20
|
+
const tsNow = now?.getTime() || 0;
|
|
21
|
+
const tsValue = value instanceof Date
|
|
22
|
+
? value.getTime()
|
|
23
|
+
: bnToBn(value).toNumber();
|
|
24
|
+
return (tsNow && tsValue)
|
|
25
|
+
? formatValue(Math.max(Math.abs(tsNow - tsValue), 0) / 1000)
|
|
26
|
+
: '0.0s';
|
|
27
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { BN } from '../bn/bn.js';
|
|
2
|
+
import type { ToBn } from '../types.js';
|
|
3
|
+
interface Options {
|
|
4
|
+
/**
|
|
5
|
+
* @description The locale to use
|
|
6
|
+
*/
|
|
7
|
+
locale?: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* @name formatNumber
|
|
11
|
+
* @description Formats a number into string format with thousand separators
|
|
12
|
+
*/
|
|
13
|
+
export declare function formatNumber<ExtToBn extends ToBn>(value?: ExtToBn | BN | bigint | number | null, { locale }?: Options): string;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { bnToBn } from '../bn/toBn.js';
|
|
2
|
+
import { formatDecimal } from './formatDecimal.js';
|
|
3
|
+
import { getSeparator } from './getSeparator.js';
|
|
4
|
+
/**
|
|
5
|
+
* @name formatNumber
|
|
6
|
+
* @description Formats a number into string format with thousand separators
|
|
7
|
+
*/
|
|
8
|
+
export function formatNumber(value, { locale = 'en' } = {}) {
|
|
9
|
+
const { thousand } = getSeparator(locale);
|
|
10
|
+
return formatDecimal(bnToBn(value).toString(), thousand);
|
|
11
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the decimal and thousand separator of a locale
|
|
3
|
+
* @param locale
|
|
4
|
+
* @returns {decimal: string, thousand: string}
|
|
5
|
+
*/
|
|
6
|
+
export function getSeparator(locale) {
|
|
7
|
+
return {
|
|
8
|
+
decimal: (0.1).toLocaleString(locale, { useGrouping: false }).charAt(1),
|
|
9
|
+
thousand: (1000).toLocaleString(locale, { useGrouping: true }).replace(/\d/g, '').charAt(0)
|
|
10
|
+
};
|
|
11
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { formatBalance } from './formatBalance.js';
|
|
2
|
+
export { formatDate } from './formatDate.js';
|
|
3
|
+
export { formatDecimal } from './formatDecimal.js';
|
|
4
|
+
export { formatElapsed } from './formatElapsed.js';
|
|
5
|
+
export { formatNumber } from './formatNumber.js';
|
|
6
|
+
export { calcSi, findSi } from './si.js';
|
package/format/index.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { formatBalance } from './formatBalance.js';
|
|
2
|
+
export { formatDate } from './formatDate.js';
|
|
3
|
+
export { formatDecimal } from './formatDecimal.js';
|
|
4
|
+
export { formatElapsed } from './formatElapsed.js';
|
|
5
|
+
export { formatNumber } from './formatNumber.js';
|
|
6
|
+
export { calcSi, findSi } from './si.js';
|
package/format/si.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { SiDef } from '../types.js';
|
|
2
|
+
/** @internal */
|
|
3
|
+
export declare const SI_MID = 8;
|
|
4
|
+
/** @internal */
|
|
5
|
+
export declare const SI: SiDef[];
|
|
6
|
+
/** @internal */
|
|
7
|
+
export declare function findSi(type: string): SiDef;
|
|
8
|
+
/** @internal */
|
|
9
|
+
export declare function calcSi(text: string, decimals: number, forceUnit?: string): SiDef;
|
package/format/si.js
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/** @internal */
|
|
2
|
+
export const SI_MID = 8;
|
|
3
|
+
/** @internal */
|
|
4
|
+
export const SI = [
|
|
5
|
+
{ power: -24, text: 'yocto', value: 'y' },
|
|
6
|
+
{ power: -21, text: 'zepto', value: 'z' },
|
|
7
|
+
{ power: -18, text: 'atto', value: 'a' },
|
|
8
|
+
{ power: -15, text: 'femto', value: 'f' },
|
|
9
|
+
{ power: -12, text: 'pico', value: 'p' },
|
|
10
|
+
{ power: -9, text: 'nano', value: 'n' },
|
|
11
|
+
{ power: -6, text: 'micro', value: 'µ' },
|
|
12
|
+
{ power: -3, text: 'milli', value: 'm' },
|
|
13
|
+
{ power: 0, text: 'Unit', value: '-' }, // position 8
|
|
14
|
+
{ power: 3, text: 'Kilo', value: 'k' },
|
|
15
|
+
{ power: 6, text: 'Mill', value: 'M' }, // Mega, M
|
|
16
|
+
{ power: 9, text: 'Bill', value: 'B' }, // Giga, G
|
|
17
|
+
{ power: 12, text: 'Tril', value: 'T' }, // Tera, T
|
|
18
|
+
{ power: 15, text: 'Peta', value: 'P' },
|
|
19
|
+
{ power: 18, text: 'Exa', value: 'E' },
|
|
20
|
+
{ power: 21, text: 'Zeta', value: 'Z' },
|
|
21
|
+
{ power: 24, text: 'Yotta', value: 'Y' }
|
|
22
|
+
];
|
|
23
|
+
/** @internal */
|
|
24
|
+
export function findSi(type) {
|
|
25
|
+
// use a loop here, better RN support (which doesn't have [].find)
|
|
26
|
+
for (let i = 0, count = SI.length; i < count; i++) {
|
|
27
|
+
if (SI[i].value === type) {
|
|
28
|
+
return SI[i];
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return SI[SI_MID];
|
|
32
|
+
}
|
|
33
|
+
/** @internal */
|
|
34
|
+
export function calcSi(text, decimals, forceUnit) {
|
|
35
|
+
if (forceUnit) {
|
|
36
|
+
return findSi(forceUnit);
|
|
37
|
+
}
|
|
38
|
+
const siDefIndex = (SI_MID - 1) + Math.ceil((text.length - decimals) / 3);
|
|
39
|
+
return SI[siDefIndex] || SI[siDefIndex < 0 ? 0 : SI.length - 1];
|
|
40
|
+
}
|
package/has.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** true if the environment has proper BigInt support */
|
|
2
|
+
export declare const hasBigInt: boolean;
|
|
3
|
+
/** true if the environment is CJS */
|
|
4
|
+
export declare const hasCjs: boolean;
|
|
5
|
+
/** true if the environment has __dirname available */
|
|
6
|
+
export declare const hasDirname: boolean;
|
|
7
|
+
/** true if the environment is ESM */
|
|
8
|
+
export declare const hasEsm: boolean;
|
|
9
|
+
/** true if the environment has WebAssembly available */
|
|
10
|
+
export declare const hasWasm: boolean;
|
|
11
|
+
/** true if the environment has support for Buffer (typically Node.js) */
|
|
12
|
+
export declare const hasBuffer: boolean;
|
|
13
|
+
/** true if the environment has process available (typically Node.js) */
|
|
14
|
+
export declare const hasProcess: boolean;
|
package/{src/has.ts → has.js}
RENAMED
|
@@ -1,38 +1,16 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
import type { BufferClass } from './types.js';
|
|
5
|
-
|
|
6
1
|
import { BigInt } from '@pezkuwi/x-bigint';
|
|
7
2
|
import { xglobal } from '@pezkuwi/x-global';
|
|
8
|
-
|
|
9
|
-
// Since we run in very different environments, we have to ensure we have all
|
|
10
|
-
// the types used here for detection (some of these may require Node definitions,
|
|
11
|
-
// which are not available in Deno/browser)
|
|
12
|
-
declare const __dirname: unknown;
|
|
13
|
-
declare const module: unknown;
|
|
14
|
-
declare const require: unknown;
|
|
15
|
-
|
|
16
3
|
/** true if the environment has proper BigInt support */
|
|
17
4
|
export const hasBigInt = typeof BigInt === 'function' && typeof BigInt.asIntN === 'function';
|
|
18
|
-
|
|
19
5
|
/** true if the environment is CJS */
|
|
20
6
|
export const hasCjs = typeof require === 'function' && typeof module !== 'undefined';
|
|
21
|
-
|
|
22
7
|
/** true if the environment has __dirname available */
|
|
23
8
|
export const hasDirname = typeof __dirname !== 'undefined';
|
|
24
|
-
|
|
25
9
|
/** true if the environment is ESM */
|
|
26
10
|
export const hasEsm = !hasCjs;
|
|
27
|
-
|
|
28
11
|
/** true if the environment has WebAssembly available */
|
|
29
12
|
export const hasWasm = typeof WebAssembly !== 'undefined';
|
|
30
|
-
|
|
31
|
-
// NOTE We check the following on globalThis, avoiding specific polyfill detection
|
|
32
|
-
// that some bundlers such as parcel would add (this is a check, not a use)
|
|
33
|
-
|
|
34
13
|
/** true if the environment has support for Buffer (typically Node.js) */
|
|
35
|
-
export const hasBuffer = typeof xglobal.Buffer === 'function' && typeof
|
|
36
|
-
|
|
14
|
+
export const hasBuffer = typeof xglobal.Buffer === 'function' && typeof xglobal.Buffer.isBuffer === 'function';
|
|
37
15
|
/** true if the environment has process available (typically Node.js) */
|
|
38
16
|
export const hasProcess = typeof xglobal.process === 'object';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { HexString } from '../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* @name hexAddPrefix
|
|
4
|
+
* @summary Adds the `0x` prefix to string values.
|
|
5
|
+
* @description
|
|
6
|
+
* Returns a `0x` prefixed string from the input value. If the input is already prefixed, it is returned unchanged.
|
|
7
|
+
* @example
|
|
8
|
+
* <BR>
|
|
9
|
+
*
|
|
10
|
+
* ```javascript
|
|
11
|
+
* import { hexAddPrefix } from '@polkadot/util';
|
|
12
|
+
*
|
|
13
|
+
* console.log('With prefix', hexAddPrefix('0a0b12')); // => 0x0a0b12
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export declare function hexAddPrefix(value?: string | null): HexString;
|
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
import type { HexString } from '../types.js';
|
|
5
|
-
|
|
6
1
|
import { hexHasPrefix } from './hasPrefix.js';
|
|
7
|
-
|
|
8
2
|
/**
|
|
9
3
|
* @name hexAddPrefix
|
|
10
4
|
* @summary Adds the `0x` prefix to string values.
|
|
@@ -19,8 +13,8 @@ import { hexHasPrefix } from './hasPrefix.js';
|
|
|
19
13
|
* console.log('With prefix', hexAddPrefix('0a0b12')); // => 0x0a0b12
|
|
20
14
|
* ```
|
|
21
15
|
*/
|
|
22
|
-
export function hexAddPrefix
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
16
|
+
export function hexAddPrefix(value) {
|
|
17
|
+
return value && hexHasPrefix(value)
|
|
18
|
+
? value
|
|
19
|
+
: `0x${value && value.length % 2 === 1 ? '0' : ''}${value || ''}`;
|
|
26
20
|
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { HexString } from '../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* @name hexFixLength
|
|
4
|
+
* @summary Shifts a hex string to a specific bitLength
|
|
5
|
+
* @description
|
|
6
|
+
* Returns a `0x` prefixed string with the specified number of bits contained in the return value. (If bitLength is -1, length checking is not done). Values with more bits are trimmed to the specified length. Input values with less bits are returned as-is by default. When `withPadding` is set, shorter values are padded with `0`.
|
|
7
|
+
* @example
|
|
8
|
+
* <BR>
|
|
9
|
+
*
|
|
10
|
+
* ```javascript
|
|
11
|
+
* import { hexFixLength } from '@polkadot/util';
|
|
12
|
+
*
|
|
13
|
+
* console.log('fixed', hexFixLength('0x12', 16)); // => 0x12
|
|
14
|
+
* console.log('fixed', hexFixLength('0x12', 16, true)); // => 0x0012
|
|
15
|
+
* console.log('fixed', hexFixLength('0x0012', 8)); // => 0x12
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare function hexFixLength(value: string, bitLength?: number, withPadding?: boolean): HexString;
|
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
import type { HexString } from '../types.js';
|
|
5
|
-
|
|
6
1
|
import { hexAddPrefix } from './addPrefix.js';
|
|
7
2
|
import { hexStripPrefix } from './stripPrefix.js';
|
|
8
|
-
|
|
9
3
|
/**
|
|
10
4
|
* @name hexFixLength
|
|
11
5
|
* @summary Shifts a hex string to a specific bitLength
|
|
@@ -22,15 +16,12 @@ import { hexStripPrefix } from './stripPrefix.js';
|
|
|
22
16
|
* console.log('fixed', hexFixLength('0x0012', 8)); // => 0x12
|
|
23
17
|
* ```
|
|
24
18
|
*/
|
|
25
|
-
export function hexFixLength
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
? hexStripPrefix(value).slice(-1 * strLength)
|
|
34
|
-
: `${'0'.repeat(strLength)}${hexStripPrefix(value)}`.slice(-1 * strLength)
|
|
35
|
-
);
|
|
19
|
+
export function hexFixLength(value, bitLength = -1, withPadding = false) {
|
|
20
|
+
const strLength = Math.ceil(bitLength / 4);
|
|
21
|
+
const hexLength = strLength + 2;
|
|
22
|
+
return hexAddPrefix((bitLength === -1 || value.length === hexLength || (!withPadding && value.length < hexLength))
|
|
23
|
+
? hexStripPrefix(value)
|
|
24
|
+
: (value.length > hexLength)
|
|
25
|
+
? hexStripPrefix(value).slice(-1 * strLength)
|
|
26
|
+
: `${'0'.repeat(strLength)}${hexStripPrefix(value)}`.slice(-1 * strLength));
|
|
36
27
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { HexString } from '../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* @name hexHasPrefix
|
|
4
|
+
* @summary Tests for the existence of a `0x` prefix.
|
|
5
|
+
* @description
|
|
6
|
+
* Checks for a valid hex input value and if the start matched `0x`
|
|
7
|
+
* @example
|
|
8
|
+
* <BR>
|
|
9
|
+
*
|
|
10
|
+
* ```javascript
|
|
11
|
+
* import { hexHasPrefix } from '@polkadot/util';
|
|
12
|
+
*
|
|
13
|
+
* console.log('has prefix', hexHasPrefix('0x1234')); // => true
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export declare function hexHasPrefix(value?: string | null): value is HexString;
|
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
import type { HexString } from '../types.js';
|
|
5
|
-
|
|
6
1
|
import { isHex } from '../is/hex.js';
|
|
7
|
-
|
|
8
2
|
/**
|
|
9
3
|
* @name hexHasPrefix
|
|
10
4
|
* @summary Tests for the existence of a `0x` prefix.
|
|
@@ -19,6 +13,6 @@ import { isHex } from '../is/hex.js';
|
|
|
19
13
|
* console.log('has prefix', hexHasPrefix('0x1234')); // => true
|
|
20
14
|
* ```
|
|
21
15
|
*/
|
|
22
|
-
export function hexHasPrefix
|
|
23
|
-
|
|
16
|
+
export function hexHasPrefix(value) {
|
|
17
|
+
return !!value && isHex(value, -1);
|
|
24
18
|
}
|
package/hex/index.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Internal utilities to create and test for hex values
|
|
3
|
+
*/
|
|
4
|
+
export { hexAddPrefix } from './addPrefix.js';
|
|
5
|
+
export { hexFixLength } from './fixLength.js';
|
|
6
|
+
export { hexHasPrefix } from './hasPrefix.js';
|
|
7
|
+
export { hexStripPrefix } from './stripPrefix.js';
|
|
8
|
+
export { hexToBigInt } from './toBigInt.js';
|
|
9
|
+
export { hexToBn } from './toBn.js';
|
|
10
|
+
export { hexToNumber } from './toNumber.js';
|
|
11
|
+
export { hexToString } from './toString.js';
|
|
12
|
+
export { hexToU8a } from './toU8a.js';
|
package/hex/index.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Internal utilities to create and test for hex values
|
|
3
|
+
*/
|
|
4
|
+
export { hexAddPrefix } from './addPrefix.js';
|
|
5
|
+
export { hexFixLength } from './fixLength.js';
|
|
6
|
+
export { hexHasPrefix } from './hasPrefix.js';
|
|
7
|
+
export { hexStripPrefix } from './stripPrefix.js';
|
|
8
|
+
export { hexToBigInt } from './toBigInt.js';
|
|
9
|
+
export { hexToBn } from './toBn.js';
|
|
10
|
+
export { hexToNumber } from './toNumber.js';
|
|
11
|
+
export { hexToString } from './toString.js';
|
|
12
|
+
export { hexToU8a } from './toU8a.js';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name hexStripPrefix
|
|
3
|
+
* @summary Strips any leading `0x` prefix.
|
|
4
|
+
* @description
|
|
5
|
+
* Tests for the existence of a `0x` prefix, and returns the value without the prefix. Un-prefixed values are returned as-is.
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { hexStripPrefix } from '@polkadot/util';
|
|
11
|
+
*
|
|
12
|
+
* console.log('stripped', hexStripPrefix('0x1234')); // => 1234
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export declare function hexStripPrefix(value?: string | null): string;
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
1
|
import { REGEX_HEX_NOPREFIX, REGEX_HEX_PREFIXED } from '../is/hex.js';
|
|
5
|
-
|
|
6
2
|
/**
|
|
7
3
|
* @name hexStripPrefix
|
|
8
4
|
* @summary Strips any leading `0x` prefix.
|
|
@@ -17,14 +13,15 @@ import { REGEX_HEX_NOPREFIX, REGEX_HEX_PREFIXED } from '../is/hex.js';
|
|
|
17
13
|
* console.log('stripped', hexStripPrefix('0x1234')); // => 1234
|
|
18
14
|
* ```
|
|
19
15
|
*/
|
|
20
|
-
export function hexStripPrefix
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
16
|
+
export function hexStripPrefix(value) {
|
|
17
|
+
if (!value || value === '0x') {
|
|
18
|
+
return '';
|
|
19
|
+
}
|
|
20
|
+
else if (REGEX_HEX_PREFIXED.test(value)) {
|
|
21
|
+
return value.substring(2);
|
|
22
|
+
}
|
|
23
|
+
else if (REGEX_HEX_NOPREFIX.test(value)) {
|
|
24
|
+
return value;
|
|
25
|
+
}
|
|
26
|
+
throw new Error(`Expected hex value to convert, found '${value}'`);
|
|
30
27
|
}
|
package/hex/toBigInt.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BigInt } from '@pezkuwi/x-bigint';
|
|
2
|
+
import { u8aToBigInt } from '../u8a/toBigInt.js';
|
|
3
|
+
import { hexToU8a } from './toU8a.js';
|
|
4
|
+
/**
|
|
5
|
+
* @name hexToBigInt
|
|
6
|
+
* @summary Creates a BigInt instance object from a hex string.
|
|
7
|
+
*/
|
|
8
|
+
export function hexToBigInt(value, { isLe = false, isNegative = false } = {}) {
|
|
9
|
+
return !value || value === '0x'
|
|
10
|
+
? BigInt(0)
|
|
11
|
+
: u8aToBigInt(hexToU8a(value), { isLe, isNegative });
|
|
12
|
+
}
|
package/hex/toBn.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ToBnOptions } from '../types.js';
|
|
2
|
+
import { BN } from '../bn/bn.js';
|
|
3
|
+
/**
|
|
4
|
+
* @name hexToBn
|
|
5
|
+
* @summary Creates a BN.js object from a hex string.
|
|
6
|
+
* @description
|
|
7
|
+
* `null` inputs returns a `BN(0)` result. Hex input values return the actual value converted to a BN. Anything that is not a hex string (including the `0x` prefix) throws an error.
|
|
8
|
+
* @param _value The value to convert
|
|
9
|
+
* @param _options Options to pass while converting
|
|
10
|
+
* @param _options.isLe Convert using Little Endian
|
|
11
|
+
* @param _options.isNegative Convert using two's complement
|
|
12
|
+
* @example
|
|
13
|
+
* <BR>
|
|
14
|
+
*
|
|
15
|
+
* ```javascript
|
|
16
|
+
* import { hexToBn } from '@polkadot/util';
|
|
17
|
+
*
|
|
18
|
+
* hexToBn('0x123480001f'); // => BN(0x123480001f)
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export declare function hexToBn(value?: string | null, { isLe, isNegative }?: ToBnOptions): BN;
|
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
// Copyright 2017-2025 @polkadot/util authors & contributors
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
import type { ToBnOptions } from '../types.js';
|
|
5
|
-
|
|
6
1
|
import { BN } from '../bn/bn.js';
|
|
7
2
|
import { hexStripPrefix } from './stripPrefix.js';
|
|
8
|
-
|
|
9
3
|
/**
|
|
10
4
|
* @name hexToBn
|
|
11
5
|
* @summary Creates a BN.js object from a hex string.
|
|
@@ -24,17 +18,15 @@ import { hexStripPrefix } from './stripPrefix.js';
|
|
|
24
18
|
* hexToBn('0x123480001f'); // => BN(0x123480001f)
|
|
25
19
|
* ```
|
|
26
20
|
*/
|
|
27
|
-
export function hexToBn
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
? bn.fromTwos(stripped.length * 4)
|
|
39
|
-
: bn;
|
|
21
|
+
export function hexToBn(value, { isLe = false, isNegative = false } = {}) {
|
|
22
|
+
if (!value || value === '0x') {
|
|
23
|
+
return new BN(0);
|
|
24
|
+
}
|
|
25
|
+
const stripped = hexStripPrefix(value);
|
|
26
|
+
const bn = new BN(stripped, 16, isLe ? 'le' : 'be');
|
|
27
|
+
// fromTwos takes as parameter the number of bits, which is the hex length
|
|
28
|
+
// multiplied by 4 (2 bytes being 8 bits)
|
|
29
|
+
return isNegative
|
|
30
|
+
? bn.fromTwos(stripped.length * 4)
|
|
31
|
+
: bn;
|
|
40
32
|
}
|