@pezkuwi/util 14.0.10 → 14.0.11
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/array/chunk.d.ts +15 -0
- package/array/chunk.js +27 -0
- package/array/filter.d.ts +16 -0
- package/array/filter.js +19 -0
- package/array/flatten.d.ts +15 -0
- package/array/flatten.js +39 -0
- package/array/index.d.ts +10 -0
- package/array/index.js +10 -0
- package/array/range.d.ts +16 -0
- package/array/range.js +25 -0
- 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/assert.js +39 -0
- package/bi/consts.d.ts +90 -0
- package/bi/consts.js +91 -0
- package/bi/helpers.d.ts +2 -0
- package/bi/helpers.js +16 -0
- package/bi/index.d.ts +9 -0
- 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/bn/consts.js +91 -0
- package/bn/fromHex.d.ts +1 -0
- package/bn/fromHex.js +1 -0
- package/bn/index.d.ts +11 -0
- package/bn/index.js +11 -0
- package/bn/min.d.ts +29 -0
- package/bn/min.js +29 -0
- package/bn/sqrt.d.ts +16 -0
- package/bn/sqrt.js +38 -0
- package/bn/toBn.d.ts +19 -0
- package/bn/toBn.js +37 -0
- package/bn/toHex.d.ts +18 -0
- package/bn/toHex.js +20 -0
- package/bn/toU8a.d.ts +17 -0
- package/bn/toU8a.js +33 -0
- package/buffer/index.d.ts +4 -0
- package/buffer/index.js +4 -0
- package/buffer/toU8a.d.ts +15 -0
- package/buffer/toU8a.js +17 -0
- package/bundle-pezkuwi-util.js +4830 -0
- package/bundle.d.ts +28 -0
- 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/cjs/compact/index.d.ts +24 -0
- 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/cjs/format/index.d.ts +6 -0
- 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/cjs/hex/index.d.ts +12 -0
- 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/cjs/is/bigInt.js +20 -0
- package/cjs/is/bn.d.ts +17 -0
- package/cjs/is/bn.js +22 -0
- package/cjs/is/boolean.d.ts +15 -0
- package/cjs/is/boolean.js +20 -0
- 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/cjs/is/error.js +21 -0
- 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/cjs/is/index.d.ts +33 -0
- 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/cjs/is/ip.js +44 -0
- package/cjs/is/jsonObject.d.ts +27 -0
- package/cjs/is/jsonObject.js +40 -0
- package/cjs/is/null.d.ts +15 -0
- package/cjs/is/null.js +20 -0
- package/cjs/is/number.d.ts +15 -0
- package/cjs/is/number.js +20 -0
- 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/cjs/is/string.js +20 -0
- 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/cjs/is/undefined.js +20 -0
- 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/cjs/number/index.d.ts +5 -0
- 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/cjs/object/index.d.ts +7 -0
- 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/cjs/promisify.js +30 -0
- package/cjs/string/camelCase.d.ts +13 -0
- package/cjs/string/camelCase.js +62 -0
- package/cjs/string/index.d.ts +8 -0
- 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/cjs/string/shorten.js +22 -0
- 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/cjs/u8a/index.d.ts +18 -0
- 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/compact/addLength.js +20 -0
- 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/compact/stripLength.js +21 -0
- 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/has.js +16 -0
- package/hex/addPrefix.d.ts +16 -0
- package/hex/addPrefix.js +20 -0
- package/hex/fixLength.d.ts +18 -0
- package/hex/fixLength.js +27 -0
- package/hex/hasPrefix.d.ts +16 -0
- package/hex/hasPrefix.js +18 -0
- package/hex/index.d.ts +12 -0
- package/hex/index.js +12 -0
- package/hex/stripPrefix.d.ts +15 -0
- package/hex/stripPrefix.js +27 -0
- package/hex/toBigInt.d.ts +6 -0
- package/hex/toBigInt.js +12 -0
- package/hex/toBn.d.ts +21 -0
- package/hex/toBn.js +32 -0
- package/hex/toNumber.d.ts +15 -0
- package/hex/toNumber.js +20 -0
- package/hex/toString.d.ts +15 -0
- package/hex/toString.js +19 -0
- 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/is/bn.js +19 -0
- 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/is/jsonObject.js +37 -0
- 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/is/observable.js +16 -0
- package/is/promise.d.ts +1 -0
- package/is/promise.js +2 -0
- package/is/riscv.d.ts +7 -0
- package/is/riscv.js +17 -0
- 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/is/wasm.js +12 -0
- 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/number/toHex.js +20 -0
- package/number/toU8a.d.ts +15 -0
- package/number/toU8a.js +19 -0
- 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 +1956 -12
- package/packageDetect.d.ts +1 -0
- package/packageDetect.js +5 -0
- 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/string/lowerFirst.js +37 -0
- package/string/shorten.d.ts +16 -0
- package/string/shorten.js +19 -0
- package/string/toHex.d.ts +16 -0
- package/string/toHex.js +19 -0
- package/string/toU8a.d.ts +16 -0
- package/string/toU8a.js +21 -0
- 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/u8a/sorted.js +18 -0
- 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/u8a/toBuffer.js +21 -0
- 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/u8a/toString.js +21 -0
- package/u8a/toU8a.d.ts +19 -0
- package/u8a/toU8a.js +39 -0
- package/u8a/wrap.d.ts +22 -0
- package/u8a/wrap.js +43 -0
package/cjs/bn/toHex.js
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.bnToHex = bnToHex;
|
|
4
|
+
const index_js_1 = require("../u8a/index.js");
|
|
5
|
+
const toU8a_js_1 = require("./toU8a.js");
|
|
6
|
+
/**
|
|
7
|
+
* @name bnToHex
|
|
8
|
+
* @summary Creates a hex value from a BN.js bignumber object.
|
|
9
|
+
* @description
|
|
10
|
+
* `null` inputs returns a `0x` result, BN values return the actual value as a `0x` prefixed hex value. Anything that is not a BN object throws an error. With `bitLength` set, it fixes the number to the specified length.
|
|
11
|
+
* @example
|
|
12
|
+
* <BR>
|
|
13
|
+
*
|
|
14
|
+
* ```javascript
|
|
15
|
+
* import BN from 'bn.js';
|
|
16
|
+
* import { bnToHex } from '@pezkuwi/util';
|
|
17
|
+
*
|
|
18
|
+
* bnToHex(new BN(0x123456)); // => '0x123456'
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
function bnToHex(value, { bitLength = -1, isLe = false, isNegative = false } = {}) {
|
|
22
|
+
return (0, index_js_1.u8aToHex)((0, toU8a_js_1.bnToU8a)(value, { bitLength, isLe, isNegative }));
|
|
23
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { NumberOptions, ToBn } from '../types.js';
|
|
2
|
+
import type { BN } from './bn.js';
|
|
3
|
+
/**
|
|
4
|
+
* @name bnToU8a
|
|
5
|
+
* @summary Creates a Uint8Array object from a BN.
|
|
6
|
+
* @description
|
|
7
|
+
* `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.
|
|
8
|
+
* @example
|
|
9
|
+
* <BR>
|
|
10
|
+
*
|
|
11
|
+
* ```javascript
|
|
12
|
+
* import { bnToU8a } from '@pezkuwi/util';
|
|
13
|
+
*
|
|
14
|
+
* bnToU8a(new BN(0x1234)); // => [0x12, 0x34]
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export declare function bnToU8a<ExtToBn extends ToBn>(value?: ExtToBn | BN | bigint | number | null, { bitLength, isLe, isNegative }?: NumberOptions): Uint8Array;
|
package/cjs/bn/toU8a.js
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.bnToU8a = bnToU8a;
|
|
4
|
+
const toBn_js_1 = require("./toBn.js");
|
|
5
|
+
const DEFAULT_OPTS = { bitLength: -1, isLe: true, isNegative: false };
|
|
6
|
+
/**
|
|
7
|
+
* @name bnToU8a
|
|
8
|
+
* @summary Creates a Uint8Array object from a BN.
|
|
9
|
+
* @description
|
|
10
|
+
* `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.
|
|
11
|
+
* @example
|
|
12
|
+
* <BR>
|
|
13
|
+
*
|
|
14
|
+
* ```javascript
|
|
15
|
+
* import { bnToU8a } from '@pezkuwi/util';
|
|
16
|
+
*
|
|
17
|
+
* bnToU8a(new BN(0x1234)); // => [0x12, 0x34]
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
function bnToU8a(value, { bitLength = -1, isLe = true, isNegative = false } = DEFAULT_OPTS) {
|
|
21
|
+
const valueBn = (0, toBn_js_1.bnToBn)(value);
|
|
22
|
+
const byteLength = bitLength === -1
|
|
23
|
+
? Math.ceil(valueBn.bitLength() / 8)
|
|
24
|
+
: Math.ceil((bitLength || 0) / 8);
|
|
25
|
+
if (!value) {
|
|
26
|
+
return bitLength === -1
|
|
27
|
+
? new Uint8Array(1)
|
|
28
|
+
: new Uint8Array(byteLength);
|
|
29
|
+
}
|
|
30
|
+
const output = new Uint8Array(byteLength);
|
|
31
|
+
const bn = isNegative
|
|
32
|
+
? valueBn.toTwos(byteLength * 8)
|
|
33
|
+
: valueBn;
|
|
34
|
+
output.set(bn.toArray(isLe ? 'le' : 'be', byteLength), 0);
|
|
35
|
+
return output;
|
|
36
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.bufferToU8a = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @summary Utility methods to convert to and from `Buffer` objects
|
|
6
|
+
*/
|
|
7
|
+
var toU8a_js_1 = require("./toU8a.js");
|
|
8
|
+
Object.defineProperty(exports, "bufferToU8a", { enumerable: true, get: function () { return toU8a_js_1.bufferToU8a; } });
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name bufferToU8a
|
|
3
|
+
* @summary Creates a Uint8Array value from a Buffer object.
|
|
4
|
+
* @description
|
|
5
|
+
* `null` inputs returns an empty result, `Buffer` values return the actual value as a `Uint8Array`. Anything that is not a `Buffer` object throws an error.
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { bufferToU8a } from '@pezkuwi/util';
|
|
11
|
+
*
|
|
12
|
+
* bufferToU8a(Buffer.from([1, 2, 3]));
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export declare function bufferToU8a(buffer?: Uint8Array | number[] | null): Uint8Array;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.bufferToU8a = bufferToU8a;
|
|
4
|
+
/**
|
|
5
|
+
* @name bufferToU8a
|
|
6
|
+
* @summary Creates a Uint8Array value from a Buffer object.
|
|
7
|
+
* @description
|
|
8
|
+
* `null` inputs returns an empty result, `Buffer` values return the actual value as a `Uint8Array`. Anything that is not a `Buffer` object throws an error.
|
|
9
|
+
* @example
|
|
10
|
+
* <BR>
|
|
11
|
+
*
|
|
12
|
+
* ```javascript
|
|
13
|
+
* import { bufferToU8a } from '@pezkuwi/util';
|
|
14
|
+
*
|
|
15
|
+
* bufferToU8a(Buffer.from([1, 2, 3]));
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
function bufferToU8a(buffer) {
|
|
19
|
+
return new Uint8Array(buffer || []);
|
|
20
|
+
}
|
package/cjs/bundle.d.ts
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Utility methods for this package are split into groups
|
|
3
|
+
*/
|
|
4
|
+
export { packageInfo } from './packageInfo.js';
|
|
5
|
+
export * from './array/index.js';
|
|
6
|
+
export * from './assert.js';
|
|
7
|
+
export * from './bi/index.js';
|
|
8
|
+
export * from './bn/index.js';
|
|
9
|
+
export * from './buffer/index.js';
|
|
10
|
+
export * from './compact/index.js';
|
|
11
|
+
export * from './detectPackage.js';
|
|
12
|
+
export * from './extractTime.js';
|
|
13
|
+
export * from './float/index.js';
|
|
14
|
+
export * from './format/index.js';
|
|
15
|
+
export * from './has.js';
|
|
16
|
+
export * from './hex/index.js';
|
|
17
|
+
export * from './is/index.js';
|
|
18
|
+
export * from './lazy.js';
|
|
19
|
+
export * from './logger.js';
|
|
20
|
+
export * from './memoize.js';
|
|
21
|
+
export * from './nextTick.js';
|
|
22
|
+
export * from './noop.js';
|
|
23
|
+
export * from './number/index.js';
|
|
24
|
+
export * from './object/index.js';
|
|
25
|
+
export * from './promisify.js';
|
|
26
|
+
export * from './string/index.js';
|
|
27
|
+
export * from './stringify.js';
|
|
28
|
+
export * from './u8a/index.js';
|
package/cjs/bundle.js
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.packageInfo = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
/**
|
|
6
|
+
* @summary Utility methods for this package are split into groups
|
|
7
|
+
*/
|
|
8
|
+
var packageInfo_js_1 = require("./packageInfo.js");
|
|
9
|
+
Object.defineProperty(exports, "packageInfo", { enumerable: true, get: function () { return packageInfo_js_1.packageInfo; } });
|
|
10
|
+
tslib_1.__exportStar(require("./array/index.js"), exports);
|
|
11
|
+
tslib_1.__exportStar(require("./assert.js"), exports);
|
|
12
|
+
tslib_1.__exportStar(require("./bi/index.js"), exports);
|
|
13
|
+
tslib_1.__exportStar(require("./bn/index.js"), exports);
|
|
14
|
+
tslib_1.__exportStar(require("./buffer/index.js"), exports);
|
|
15
|
+
tslib_1.__exportStar(require("./compact/index.js"), exports);
|
|
16
|
+
tslib_1.__exportStar(require("./detectPackage.js"), exports);
|
|
17
|
+
tslib_1.__exportStar(require("./extractTime.js"), exports);
|
|
18
|
+
tslib_1.__exportStar(require("./float/index.js"), exports);
|
|
19
|
+
tslib_1.__exportStar(require("./format/index.js"), exports);
|
|
20
|
+
tslib_1.__exportStar(require("./has.js"), exports);
|
|
21
|
+
tslib_1.__exportStar(require("./hex/index.js"), exports);
|
|
22
|
+
tslib_1.__exportStar(require("./is/index.js"), exports);
|
|
23
|
+
tslib_1.__exportStar(require("./lazy.js"), exports);
|
|
24
|
+
tslib_1.__exportStar(require("./logger.js"), exports);
|
|
25
|
+
tslib_1.__exportStar(require("./memoize.js"), exports);
|
|
26
|
+
tslib_1.__exportStar(require("./nextTick.js"), exports);
|
|
27
|
+
tslib_1.__exportStar(require("./noop.js"), exports);
|
|
28
|
+
tslib_1.__exportStar(require("./number/index.js"), exports);
|
|
29
|
+
tslib_1.__exportStar(require("./object/index.js"), exports);
|
|
30
|
+
tslib_1.__exportStar(require("./promisify.js"), exports);
|
|
31
|
+
tslib_1.__exportStar(require("./string/index.js"), exports);
|
|
32
|
+
tslib_1.__exportStar(require("./stringify.js"), exports);
|
|
33
|
+
tslib_1.__exportStar(require("./u8a/index.js"), exports);
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name compactAddLength
|
|
3
|
+
* @description Adds a length prefix to the input value
|
|
4
|
+
* @example
|
|
5
|
+
* <BR>
|
|
6
|
+
*
|
|
7
|
+
* ```javascript
|
|
8
|
+
* import { compactAddLength } from '@pezkuwi/util';
|
|
9
|
+
*
|
|
10
|
+
* console.log(compactAddLength(new Uint8Array([0xde, 0xad, 0xbe, 0xef]))); // Uint8Array([4 << 2, 0xde, 0xad, 0xbe, 0xef])
|
|
11
|
+
* ```
|
|
12
|
+
*/
|
|
13
|
+
export declare function compactAddLength(input: Uint8Array): Uint8Array;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.compactAddLength = compactAddLength;
|
|
4
|
+
const index_js_1 = require("../u8a/index.js");
|
|
5
|
+
const toU8a_js_1 = require("./toU8a.js");
|
|
6
|
+
/**
|
|
7
|
+
* @name compactAddLength
|
|
8
|
+
* @description Adds a length prefix to the input value
|
|
9
|
+
* @example
|
|
10
|
+
* <BR>
|
|
11
|
+
*
|
|
12
|
+
* ```javascript
|
|
13
|
+
* import { compactAddLength } from '@pezkuwi/util';
|
|
14
|
+
*
|
|
15
|
+
* console.log(compactAddLength(new Uint8Array([0xde, 0xad, 0xbe, 0xef]))); // Uint8Array([4 << 2, 0xde, 0xad, 0xbe, 0xef])
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
function compactAddLength(input) {
|
|
19
|
+
return (0, index_js_1.u8aConcatStrict)([
|
|
20
|
+
(0, toU8a_js_1.compactToU8a)(input.length),
|
|
21
|
+
input
|
|
22
|
+
]);
|
|
23
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { U8aLike } from '../types.js';
|
|
2
|
+
import { BN } from '../bn/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* @name compactFromU8a
|
|
5
|
+
* @description Retrives the offset and encoded length from a compact-prefixed value
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { compactFromU8a } from '@pezkuwi/util';
|
|
11
|
+
*
|
|
12
|
+
* const [offset, length] = compactFromU8a(new Uint8Array([254, 255, 3, 0]));
|
|
13
|
+
*
|
|
14
|
+
* console.log('value offset=', offset, 'length=', length); // 4, 0xffff
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export declare function compactFromU8a(input: U8aLike): [number, BN];
|
|
18
|
+
/**
|
|
19
|
+
* @name compactFromU8aLim
|
|
20
|
+
* @description A limited version of [[compactFromU8a]], accepting only Uint8Array inputs for values <= 48 bits
|
|
21
|
+
*/
|
|
22
|
+
export declare function compactFromU8aLim(u8a: Uint8Array): [number, number];
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.compactFromU8a = compactFromU8a;
|
|
4
|
+
exports.compactFromU8aLim = compactFromU8aLim;
|
|
5
|
+
const index_js_1 = require("../bn/index.js");
|
|
6
|
+
const index_js_2 = require("../u8a/index.js");
|
|
7
|
+
/**
|
|
8
|
+
* @name compactFromU8a
|
|
9
|
+
* @description Retrives the offset and encoded length from a compact-prefixed value
|
|
10
|
+
* @example
|
|
11
|
+
* <BR>
|
|
12
|
+
*
|
|
13
|
+
* ```javascript
|
|
14
|
+
* import { compactFromU8a } from '@pezkuwi/util';
|
|
15
|
+
*
|
|
16
|
+
* const [offset, length] = compactFromU8a(new Uint8Array([254, 255, 3, 0]));
|
|
17
|
+
*
|
|
18
|
+
* console.log('value offset=', offset, 'length=', length); // 4, 0xffff
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
function compactFromU8a(input) {
|
|
22
|
+
const u8a = (0, index_js_2.u8aToU8a)(input);
|
|
23
|
+
// The u8a is manually converted here for 1, 2 & 4 lengths, it is 2x faster
|
|
24
|
+
// than doing an additional call to u8aToBn (as with variable length)
|
|
25
|
+
switch (u8a[0] & 0b11) {
|
|
26
|
+
case 0b00:
|
|
27
|
+
return [1, new index_js_1.BN(u8a[0] >>> 2)];
|
|
28
|
+
case 0b01:
|
|
29
|
+
return [2, new index_js_1.BN((u8a[0] + (u8a[1] << 8)) >>> 2)];
|
|
30
|
+
case 0b10:
|
|
31
|
+
// for the 3rd byte, we don't << 24 - since JS converts all bitwise operators to
|
|
32
|
+
// 32-bit, in the case where the top-most bit is set this yields a negative value
|
|
33
|
+
return [4, new index_js_1.BN((u8a[0] + (u8a[1] << 8) + (u8a[2] << 16) + (u8a[3] * 0x1_00_00_00)) >>> 2)];
|
|
34
|
+
// 0b11
|
|
35
|
+
default: {
|
|
36
|
+
// add 5 to shifted (4 for base length, 1 for this byte)
|
|
37
|
+
const offset = (u8a[0] >>> 2) + 5;
|
|
38
|
+
// we unroll the loop
|
|
39
|
+
switch (offset) {
|
|
40
|
+
// there still could be 4 bytes data, similar to 0b10 above (with offsets)
|
|
41
|
+
case 5:
|
|
42
|
+
// for the 3rd byte, we don't << 24 - since JS converts all bitwise operators to
|
|
43
|
+
// 32-bit, in the case where the top-most bit is set this yields a negative value
|
|
44
|
+
return [5, new index_js_1.BN(u8a[1] + (u8a[2] << 8) + (u8a[3] << 16) + (u8a[4] * 0x1_00_00_00))];
|
|
45
|
+
case 6:
|
|
46
|
+
return [6, new index_js_1.BN(u8a[1] + (u8a[2] << 8) + (u8a[3] << 16) + ((u8a[4] + (u8a[5] << 8)) * 0x1_00_00_00))];
|
|
47
|
+
// 6 bytes data is the maximum, 48 bits (56 would overflow)
|
|
48
|
+
case 7:
|
|
49
|
+
return [7, new index_js_1.BN(u8a[1] + (u8a[2] << 8) + (u8a[3] << 16) + ((u8a[4] + (u8a[5] << 8) + (u8a[6] << 16)) * 0x1_00_00_00))];
|
|
50
|
+
// for anything else, use the non-unrolled version
|
|
51
|
+
default:
|
|
52
|
+
return [offset, (0, index_js_2.u8aToBn)(u8a.subarray(1, offset))];
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* @name compactFromU8aLim
|
|
59
|
+
* @description A limited version of [[compactFromU8a]], accepting only Uint8Array inputs for values <= 48 bits
|
|
60
|
+
*/
|
|
61
|
+
function compactFromU8aLim(u8a) {
|
|
62
|
+
// The u8a is manually converted here for 1, 2 & 4 lengths, it is 2x faster
|
|
63
|
+
// than doing an additional call to u8aToBn (as with variable length)
|
|
64
|
+
switch (u8a[0] & 0b11) {
|
|
65
|
+
case 0b00:
|
|
66
|
+
return [1, u8a[0] >>> 2];
|
|
67
|
+
case 0b01:
|
|
68
|
+
return [2, (u8a[0] + (u8a[1] << 8)) >>> 2];
|
|
69
|
+
case 0b10:
|
|
70
|
+
// for the 3rd byte, we don't << 24 - since JS converts all bitwise operators to
|
|
71
|
+
// 32-bit, in the case where the top-most bit is set this yields a negative value
|
|
72
|
+
return [4, (u8a[0] + (u8a[1] << 8) + (u8a[2] << 16) + (u8a[3] * 0x1_00_00_00)) >>> 2];
|
|
73
|
+
// 0b11
|
|
74
|
+
default: {
|
|
75
|
+
// add 5 to shifted (4 for base length, 1 for this byte)
|
|
76
|
+
// we unroll the loop
|
|
77
|
+
switch ((u8a[0] >>> 2) + 5) {
|
|
78
|
+
// there still could be 4 bytes data, similar to 0b10 above (with offsets)
|
|
79
|
+
case 5:
|
|
80
|
+
return [5, u8a[1] + (u8a[2] << 8) + (u8a[3] << 16) + (u8a[4] * 0x1_00_00_00)];
|
|
81
|
+
case 6:
|
|
82
|
+
return [6, u8a[1] + (u8a[2] << 8) + (u8a[3] << 16) + ((u8a[4] + (u8a[5] << 8)) * 0x1_00_00_00)];
|
|
83
|
+
// 6 bytes data is the maximum, 48 bits (56 would overflow)
|
|
84
|
+
case 7:
|
|
85
|
+
return [7, u8a[1] + (u8a[2] << 8) + (u8a[3] << 16) + ((u8a[4] + (u8a[5] << 8) + (u8a[6] << 16)) * 0x1_00_00_00)];
|
|
86
|
+
// for anything else, we are above the actual MAX_SAFE_INTEGER - bail out
|
|
87
|
+
default:
|
|
88
|
+
throw new Error('Compact input is > Number.MAX_SAFE_INTEGER');
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description
|
|
3
|
+
* Encoding and decoding of parity-codec compact numbers. The codec is created
|
|
4
|
+
* to take up the least amount of space for a specific number. It performs the
|
|
5
|
+
* same function as Length, however differs in that it uses a variable number of
|
|
6
|
+
* bytes to do the actual encoding. From the Rust implementation for compact
|
|
7
|
+
* encoding:
|
|
8
|
+
*
|
|
9
|
+
* 0b00 00 00 00 / 00 00 00 00 / 00 00 00 00 / 00 00 00 00
|
|
10
|
+
* (0 ... 2**6 - 1) (u8)
|
|
11
|
+
* xx xx xx 00
|
|
12
|
+
* (2**6 ... 2**14 - 1) (u8, u16) low LH high
|
|
13
|
+
* yL yL yL 01 / yH yH yH yL
|
|
14
|
+
* (2**14 ... 2**30 - 1) (u16, u32) low LMMH high
|
|
15
|
+
* zL zL zL 10 / zM zM zM zL / zM zM zM zM / zH zH zH zM
|
|
16
|
+
* (2**30 ... 2**536 - 1) (u32, u64, u128, U256, U512, U520) straight LE-encoded
|
|
17
|
+
* nn nn nn 11 [ / zz zz zz zz ]{4 + n}
|
|
18
|
+
*
|
|
19
|
+
* Note: we use *LOW BITS* of the LSB in LE encoding to encode the 2 bit key.
|
|
20
|
+
*/
|
|
21
|
+
export { compactAddLength } from './addLength.js';
|
|
22
|
+
export { compactFromU8a, compactFromU8aLim } from './fromU8a.js';
|
|
23
|
+
export { compactStripLength } from './stripLength.js';
|
|
24
|
+
export { compactToU8a } from './toU8a.js';
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.compactToU8a = exports.compactStripLength = exports.compactFromU8aLim = exports.compactFromU8a = exports.compactAddLength = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @description
|
|
6
|
+
* Encoding and decoding of parity-codec compact numbers. The codec is created
|
|
7
|
+
* to take up the least amount of space for a specific number. It performs the
|
|
8
|
+
* same function as Length, however differs in that it uses a variable number of
|
|
9
|
+
* bytes to do the actual encoding. From the Rust implementation for compact
|
|
10
|
+
* encoding:
|
|
11
|
+
*
|
|
12
|
+
* 0b00 00 00 00 / 00 00 00 00 / 00 00 00 00 / 00 00 00 00
|
|
13
|
+
* (0 ... 2**6 - 1) (u8)
|
|
14
|
+
* xx xx xx 00
|
|
15
|
+
* (2**6 ... 2**14 - 1) (u8, u16) low LH high
|
|
16
|
+
* yL yL yL 01 / yH yH yH yL
|
|
17
|
+
* (2**14 ... 2**30 - 1) (u16, u32) low LMMH high
|
|
18
|
+
* zL zL zL 10 / zM zM zM zL / zM zM zM zM / zH zH zH zM
|
|
19
|
+
* (2**30 ... 2**536 - 1) (u32, u64, u128, U256, U512, U520) straight LE-encoded
|
|
20
|
+
* nn nn nn 11 [ / zz zz zz zz ]{4 + n}
|
|
21
|
+
*
|
|
22
|
+
* Note: we use *LOW BITS* of the LSB in LE encoding to encode the 2 bit key.
|
|
23
|
+
*/
|
|
24
|
+
var addLength_js_1 = require("./addLength.js");
|
|
25
|
+
Object.defineProperty(exports, "compactAddLength", { enumerable: true, get: function () { return addLength_js_1.compactAddLength; } });
|
|
26
|
+
var fromU8a_js_1 = require("./fromU8a.js");
|
|
27
|
+
Object.defineProperty(exports, "compactFromU8a", { enumerable: true, get: function () { return fromU8a_js_1.compactFromU8a; } });
|
|
28
|
+
Object.defineProperty(exports, "compactFromU8aLim", { enumerable: true, get: function () { return fromU8a_js_1.compactFromU8aLim; } });
|
|
29
|
+
var stripLength_js_1 = require("./stripLength.js");
|
|
30
|
+
Object.defineProperty(exports, "compactStripLength", { enumerable: true, get: function () { return stripLength_js_1.compactStripLength; } });
|
|
31
|
+
var toU8a_js_1 = require("./toU8a.js");
|
|
32
|
+
Object.defineProperty(exports, "compactToU8a", { enumerable: true, get: function () { return toU8a_js_1.compactToU8a; } });
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name compactStripLength
|
|
3
|
+
* @description Removes the length prefix, returning both the total length (including the value + compact encoding) and the decoded value with the correct length
|
|
4
|
+
* @example
|
|
5
|
+
* <BR>
|
|
6
|
+
*
|
|
7
|
+
* ```javascript
|
|
8
|
+
* import { compactStripLength } from '@pezkuwi/util';
|
|
9
|
+
*
|
|
10
|
+
* console.log(compactStripLength(new Uint8Array([2 << 2, 0xde, 0xad]))); // [2, Uint8Array[0xde, 0xad]]
|
|
11
|
+
* ```
|
|
12
|
+
*/
|
|
13
|
+
export declare function compactStripLength(input: Uint8Array): [number, Uint8Array];
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.compactStripLength = compactStripLength;
|
|
4
|
+
const fromU8a_js_1 = require("./fromU8a.js");
|
|
5
|
+
/**
|
|
6
|
+
* @name compactStripLength
|
|
7
|
+
* @description Removes the length prefix, returning both the total length (including the value + compact encoding) and the decoded value with the correct length
|
|
8
|
+
* @example
|
|
9
|
+
* <BR>
|
|
10
|
+
*
|
|
11
|
+
* ```javascript
|
|
12
|
+
* import { compactStripLength } from '@pezkuwi/util';
|
|
13
|
+
*
|
|
14
|
+
* console.log(compactStripLength(new Uint8Array([2 << 2, 0xde, 0xad]))); // [2, Uint8Array[0xde, 0xad]]
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
function compactStripLength(input) {
|
|
18
|
+
const [offset, length] = (0, fromU8a_js_1.compactFromU8a)(input);
|
|
19
|
+
const total = offset + length.toNumber();
|
|
20
|
+
return [
|
|
21
|
+
total,
|
|
22
|
+
input.subarray(offset, total)
|
|
23
|
+
];
|
|
24
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { BN } from '../bn/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* @name compactToU8a
|
|
4
|
+
* @description Encodes a number into a compact representation
|
|
5
|
+
* @example
|
|
6
|
+
* <BR>
|
|
7
|
+
*
|
|
8
|
+
* ```javascript
|
|
9
|
+
* import { compactToU8a } from '@pezkuwi/util';
|
|
10
|
+
*
|
|
11
|
+
* console.log(compactToU8a(511, 32)); // Uint8Array([0b11111101, 0b00000111])
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
export declare function compactToU8a(value: BN | bigint | number): Uint8Array;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.compactToU8a = compactToU8a;
|
|
4
|
+
const index_js_1 = require("../bn/index.js");
|
|
5
|
+
const index_js_2 = require("../u8a/index.js");
|
|
6
|
+
const MAX_U8 = index_js_1.BN_TWO.pow(new index_js_1.BN(8 - 2)).isub(index_js_1.BN_ONE);
|
|
7
|
+
const MAX_U16 = index_js_1.BN_TWO.pow(new index_js_1.BN(16 - 2)).isub(index_js_1.BN_ONE);
|
|
8
|
+
const MAX_U32 = index_js_1.BN_TWO.pow(new index_js_1.BN(32 - 2)).isub(index_js_1.BN_ONE);
|
|
9
|
+
const BL_16 = { bitLength: 16 };
|
|
10
|
+
const BL_32 = { bitLength: 32 };
|
|
11
|
+
/**
|
|
12
|
+
* @name compactToU8a
|
|
13
|
+
* @description Encodes a number into a compact representation
|
|
14
|
+
* @example
|
|
15
|
+
* <BR>
|
|
16
|
+
*
|
|
17
|
+
* ```javascript
|
|
18
|
+
* import { compactToU8a } from '@pezkuwi/util';
|
|
19
|
+
*
|
|
20
|
+
* console.log(compactToU8a(511, 32)); // Uint8Array([0b11111101, 0b00000111])
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
function compactToU8a(value) {
|
|
24
|
+
const bn = (0, index_js_1.bnToBn)(value);
|
|
25
|
+
if (bn.lte(MAX_U8)) {
|
|
26
|
+
return new Uint8Array([bn.toNumber() << 2]);
|
|
27
|
+
}
|
|
28
|
+
else if (bn.lte(MAX_U16)) {
|
|
29
|
+
return (0, index_js_1.bnToU8a)(bn.shln(2).iadd(index_js_1.BN_ONE), BL_16);
|
|
30
|
+
}
|
|
31
|
+
else if (bn.lte(MAX_U32)) {
|
|
32
|
+
return (0, index_js_1.bnToU8a)(bn.shln(2).iadd(index_js_1.BN_TWO), BL_32);
|
|
33
|
+
}
|
|
34
|
+
const u8a = (0, index_js_1.bnToU8a)(bn);
|
|
35
|
+
let length = u8a.length;
|
|
36
|
+
// adjust to the minimum number of bytes
|
|
37
|
+
while (u8a[length - 1] === 0) {
|
|
38
|
+
length--;
|
|
39
|
+
}
|
|
40
|
+
if (length < 4) {
|
|
41
|
+
throw new Error('Invalid length, previous checks match anything less than 2^30');
|
|
42
|
+
}
|
|
43
|
+
return (0, index_js_2.u8aConcatStrict)([
|
|
44
|
+
// subtract 4 as minimum (also catered for in decoding)
|
|
45
|
+
new Uint8Array([((length - 4) << 2) + 0b11]),
|
|
46
|
+
u8a.subarray(0, length)
|
|
47
|
+
]);
|
|
48
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type BitLength = 8 | 16 | 32 | 64 | 128 | 256;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
interface VersionPath {
|
|
2
|
+
path: string;
|
|
3
|
+
type: string;
|
|
4
|
+
version: string;
|
|
5
|
+
}
|
|
6
|
+
interface PackageInfo extends VersionPath {
|
|
7
|
+
name: string;
|
|
8
|
+
}
|
|
9
|
+
type FnString = () => string | undefined;
|
|
10
|
+
export declare const POLKADOTJS_DISABLE_ESM_CJS_WARNING_FLAG = "POLKADOTJS_DISABLE_ESM_CJS_WARNING";
|
|
11
|
+
/**
|
|
12
|
+
* @name detectPackage
|
|
13
|
+
* @summary Checks that a specific package is only imported once
|
|
14
|
+
* @description A `@pezkuwi/*` version detection utility, checking for one occurrence of a package in addition to checking for dependency versions.
|
|
15
|
+
*/
|
|
16
|
+
export declare function detectPackage({ name, path, type, version }: PackageInfo, pathOrFn?: FnString | string | false | null, deps?: PackageInfo[]): void;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.POLKADOTJS_DISABLE_ESM_CJS_WARNING_FLAG = void 0;
|
|
4
|
+
exports.detectPackage = detectPackage;
|
|
5
|
+
const x_global_1 = require("@pezkuwi/x-global");
|
|
6
|
+
const function_js_1 = require("./is/function.js");
|
|
7
|
+
const DEDUPE = 'Either remove and explicitly install matching versions or dedupe using your package manager.\nThe following conflicting packages were found:';
|
|
8
|
+
exports.POLKADOTJS_DISABLE_ESM_CJS_WARNING_FLAG = 'POLKADOTJS_DISABLE_ESM_CJS_WARNING';
|
|
9
|
+
/** @internal */
|
|
10
|
+
function getEntry(name) {
|
|
11
|
+
const _global = x_global_1.xglobal;
|
|
12
|
+
if (!_global.__polkadotjs) {
|
|
13
|
+
_global.__polkadotjs = {};
|
|
14
|
+
}
|
|
15
|
+
if (!_global.__polkadotjs[name]) {
|
|
16
|
+
_global.__polkadotjs[name] = [];
|
|
17
|
+
}
|
|
18
|
+
return _global.__polkadotjs[name];
|
|
19
|
+
}
|
|
20
|
+
/** @internal */
|
|
21
|
+
function formatDisplay(all, fmt) {
|
|
22
|
+
let max = 0;
|
|
23
|
+
for (let i = 0, count = all.length; i < count; i++) {
|
|
24
|
+
max = Math.max(max, all[i].version.length);
|
|
25
|
+
}
|
|
26
|
+
return all
|
|
27
|
+
.map((d) => `\t${fmt(d.version.padEnd(max), d).join('\t')}`)
|
|
28
|
+
.join('\n');
|
|
29
|
+
}
|
|
30
|
+
/** @internal */
|
|
31
|
+
function formatInfo(version, { name }) {
|
|
32
|
+
return [
|
|
33
|
+
version,
|
|
34
|
+
name
|
|
35
|
+
];
|
|
36
|
+
}
|
|
37
|
+
/** @internal */
|
|
38
|
+
function formatVersion(version, { path, type }) {
|
|
39
|
+
let extracted;
|
|
40
|
+
if (path && path.length >= 5) {
|
|
41
|
+
const nmIndex = path.indexOf('node_modules');
|
|
42
|
+
extracted = nmIndex === -1
|
|
43
|
+
? path
|
|
44
|
+
: path.substring(nmIndex);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
extracted = '<unknown>';
|
|
48
|
+
}
|
|
49
|
+
return [
|
|
50
|
+
`${`${type || ''}`.padStart(3)} ${version}`,
|
|
51
|
+
extracted
|
|
52
|
+
];
|
|
53
|
+
}
|
|
54
|
+
/** @internal */
|
|
55
|
+
function getPath(infoPath, pathOrFn) {
|
|
56
|
+
if (infoPath) {
|
|
57
|
+
return infoPath;
|
|
58
|
+
}
|
|
59
|
+
else if ((0, function_js_1.isFunction)(pathOrFn)) {
|
|
60
|
+
try {
|
|
61
|
+
return pathOrFn() || '';
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
return '';
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return pathOrFn || '';
|
|
68
|
+
}
|
|
69
|
+
/** @internal */
|
|
70
|
+
function warn(pre, all, fmt) {
|
|
71
|
+
console.warn(`${pre}\n${DEDUPE}\n${formatDisplay(all, fmt)}`);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* @name detectPackage
|
|
75
|
+
* @summary Checks that a specific package is only imported once
|
|
76
|
+
* @description A `@pezkuwi/*` version detection utility, checking for one occurrence of a package in addition to checking for dependency versions.
|
|
77
|
+
*/
|
|
78
|
+
function detectPackage({ name, path, type, version }, pathOrFn, deps = []) {
|
|
79
|
+
if (!name.startsWith('@pezkuwi')) {
|
|
80
|
+
throw new Error(`Invalid package descriptor ${name}`);
|
|
81
|
+
}
|
|
82
|
+
const entry = getEntry(name);
|
|
83
|
+
entry.push({ path: getPath(path, pathOrFn), type, version });
|
|
84
|
+
// if we have more than one entry at DIFFERENT version types then warn. If there is
|
|
85
|
+
// more than one entry at the same version and ESM/CJS dual warnings are disabled,
|
|
86
|
+
// then do not display warnings
|
|
87
|
+
const entriesSameVersion = entry.every((e) => e.version === version);
|
|
88
|
+
const esmCjsWarningDisabled = x_global_1.xglobal.process?.env?.[exports.POLKADOTJS_DISABLE_ESM_CJS_WARNING_FLAG] === '1';
|
|
89
|
+
const multipleEntries = entry.length !== 1;
|
|
90
|
+
const disableWarnings = esmCjsWarningDisabled && entriesSameVersion;
|
|
91
|
+
if (multipleEntries && !disableWarnings) {
|
|
92
|
+
warn(`${name} has multiple versions, ensure that there is only one installed.`, entry, formatVersion);
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
const mismatches = deps.filter((d) => d && d.version !== version);
|
|
96
|
+
if (mismatches.length) {
|
|
97
|
+
warn(`${name} requires direct dependencies exactly matching version ${version}.`, mismatches, formatInfo);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|