@pezkuwi/util 14.0.10 → 14.0.12
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/build/bundle-pezkuwi-util.js +148 -127
- package/build/cjs/packageInfo.js +1 -1
- package/build/cjs/u8a/wrap.d.ts +3 -3
- package/build/package.json +8 -8
- package/build/packageInfo.js +1 -1
- package/build/u8a/wrap.d.ts +3 -3
- package/build-deno/packageInfo.ts +1 -1
- package/build-tsc/u8a/wrap.d.ts +3 -3
- package/build-tsc-cjs/packageInfo.js +1 -1
- package/build-tsc-esm/packageInfo.js +1 -1
- 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 +1958 -11
- 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/src/packageInfo.ts +1 -1
- package/src/u8a/toHex.spec.ts +1 -1
- package/src/u8a/toHexBuffer.spec.ts +1 -1
- 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/tsconfig.build.tsbuildinfo +1 -1
- package/tsconfig.spec.tsbuildinfo +1 -1
- 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/array/chunk.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name arrayChunk
|
|
3
|
+
* @summary Split T[] into T[][] based on the defind size
|
|
4
|
+
* @description
|
|
5
|
+
* Returns a set ao arrays based on the chunksize
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { arrayChunk } from '@pezkuwi/util';
|
|
11
|
+
*
|
|
12
|
+
* arrayChunk([1, 2, 3, 4, 5]); // [[1, 2], [3, 4], [5]]
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export declare function arrayChunk<T>(array: T[], chunkSize: number): T[][];
|
package/array/chunk.js
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name arrayChunk
|
|
3
|
+
* @summary Split T[] into T[][] based on the defind size
|
|
4
|
+
* @description
|
|
5
|
+
* Returns a set ao arrays based on the chunksize
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { arrayChunk } from '@pezkuwi/util';
|
|
11
|
+
*
|
|
12
|
+
* arrayChunk([1, 2, 3, 4, 5]); // [[1, 2], [3, 4], [5]]
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export function arrayChunk(array, chunkSize) {
|
|
16
|
+
const outputSize = Math.ceil(array.length / chunkSize);
|
|
17
|
+
// shortcut for the single-split case
|
|
18
|
+
if (outputSize === 1) {
|
|
19
|
+
return [array];
|
|
20
|
+
}
|
|
21
|
+
const output = Array(outputSize);
|
|
22
|
+
for (let i = 0; i < outputSize; i++) {
|
|
23
|
+
const offset = i * chunkSize;
|
|
24
|
+
output[i] = array.slice(offset, offset + chunkSize);
|
|
25
|
+
}
|
|
26
|
+
return output;
|
|
27
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name arrayFilter
|
|
3
|
+
* @summary Filters undefined and (optionally) null values from an array
|
|
4
|
+
* @description
|
|
5
|
+
* Returns a new array with all `undefined` values removed. Optionally, when `allowNulls = false`, it removes the `null` values as well
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { arrayFilter } from '@pezkuwi/util';
|
|
11
|
+
*
|
|
12
|
+
* arrayFilter([0, void 0, true, null, false, '']); // [0, true, null, false, '']
|
|
13
|
+
* arrayFilter([0, void 0, true, null, false, ''], false); // [0, true, false, '']
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export declare function arrayFilter<T = unknown>(array: readonly (T | null | undefined)[], allowNulls?: boolean): T[];
|
package/array/filter.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name arrayFilter
|
|
3
|
+
* @summary Filters undefined and (optionally) null values from an array
|
|
4
|
+
* @description
|
|
5
|
+
* Returns a new array with all `undefined` values removed. Optionally, when `allowNulls = false`, it removes the `null` values as well
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { arrayFilter } from '@pezkuwi/util';
|
|
11
|
+
*
|
|
12
|
+
* arrayFilter([0, void 0, true, null, false, '']); // [0, true, null, false, '']
|
|
13
|
+
* arrayFilter([0, void 0, true, null, false, ''], false); // [0, true, false, '']
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export function arrayFilter(array, allowNulls = true) {
|
|
17
|
+
return array.filter((v) => v !== undefined &&
|
|
18
|
+
(allowNulls || v !== null));
|
|
19
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name arrayFlatten
|
|
3
|
+
* @summary Merge T[][] into T[]
|
|
4
|
+
* @description
|
|
5
|
+
* Returns a new array with all arrays merged into one
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { arrayFlatten } from '@pezkuwi/util';
|
|
11
|
+
*
|
|
12
|
+
* arrayFlatten([[1, 2], [3, 4], [5]]); // [1, 2, 3, 4, 5]
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export declare function arrayFlatten<T>(arrays: readonly T[][]): T[];
|
package/array/flatten.js
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name arrayFlatten
|
|
3
|
+
* @summary Merge T[][] into T[]
|
|
4
|
+
* @description
|
|
5
|
+
* Returns a new array with all arrays merged into one
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { arrayFlatten } from '@pezkuwi/util';
|
|
11
|
+
*
|
|
12
|
+
* arrayFlatten([[1, 2], [3, 4], [5]]); // [1, 2, 3, 4, 5]
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export function arrayFlatten(arrays) {
|
|
16
|
+
const num = arrays.length;
|
|
17
|
+
// shortcuts for the empty & single-entry case
|
|
18
|
+
if (num === 0) {
|
|
19
|
+
return [];
|
|
20
|
+
}
|
|
21
|
+
else if (num === 1) {
|
|
22
|
+
return arrays[0];
|
|
23
|
+
}
|
|
24
|
+
// pre-allocate based on the combined size
|
|
25
|
+
let size = 0;
|
|
26
|
+
for (let i = 0; i < num; i++) {
|
|
27
|
+
size += arrays[i].length;
|
|
28
|
+
}
|
|
29
|
+
const output = new Array(size);
|
|
30
|
+
let i = -1;
|
|
31
|
+
for (let j = 0; j < num; j++) {
|
|
32
|
+
const a = arrays[j];
|
|
33
|
+
// instead of pushing, we just set the entries
|
|
34
|
+
for (let e = 0, count = a.length; e < count; e++) {
|
|
35
|
+
output[++i] = a[e];
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return output;
|
|
39
|
+
}
|
package/array/index.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Utility methods that operates on arrays
|
|
3
|
+
*/
|
|
4
|
+
export { arrayChunk } from './chunk.js';
|
|
5
|
+
export { arrayFilter } from './filter.js';
|
|
6
|
+
export { arrayFlatten } from './flatten.js';
|
|
7
|
+
export { arrayRange } from './range.js';
|
|
8
|
+
export { arrayShuffle } from './shuffle.js';
|
|
9
|
+
export { arrayUnzip } from './unzip.js';
|
|
10
|
+
export { arrayZip } from './zip.js';
|
package/array/index.js
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Utility methods that operates on arrays
|
|
3
|
+
*/
|
|
4
|
+
export { arrayChunk } from './chunk.js';
|
|
5
|
+
export { arrayFilter } from './filter.js';
|
|
6
|
+
export { arrayFlatten } from './flatten.js';
|
|
7
|
+
export { arrayRange } from './range.js';
|
|
8
|
+
export { arrayShuffle } from './shuffle.js';
|
|
9
|
+
export { arrayUnzip } from './unzip.js';
|
|
10
|
+
export { arrayZip } from './zip.js';
|
package/array/range.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name arrayRange
|
|
3
|
+
* @summary Returns a range of numbers ith the size and the specified offset
|
|
4
|
+
* @description
|
|
5
|
+
* Returns a new array of numbers with the specific size. Optionally, when `startAt`, is provided, it generates the range to start at a specific value.
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { arrayRange } from '@pezkuwi/util';
|
|
11
|
+
*
|
|
12
|
+
* arrayRange(5); // [0, 1, 2, 3, 4]
|
|
13
|
+
* arrayRange(3, 5); // [5, 6, 7]
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export declare function arrayRange(size: number, startAt?: number): number[];
|
package/array/range.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name arrayRange
|
|
3
|
+
* @summary Returns a range of numbers ith the size and the specified offset
|
|
4
|
+
* @description
|
|
5
|
+
* Returns a new array of numbers with the specific size. Optionally, when `startAt`, is provided, it generates the range to start at a specific value.
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { arrayRange } from '@pezkuwi/util';
|
|
11
|
+
*
|
|
12
|
+
* arrayRange(5); // [0, 1, 2, 3, 4]
|
|
13
|
+
* arrayRange(3, 5); // [5, 6, 7]
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export function arrayRange(size, startAt = 0) {
|
|
17
|
+
if (size <= 0) {
|
|
18
|
+
throw new Error('Expected non-zero, positive number as a range size');
|
|
19
|
+
}
|
|
20
|
+
const result = new Array(size);
|
|
21
|
+
for (let i = 0; i < size; i++) {
|
|
22
|
+
result[i] = i + startAt;
|
|
23
|
+
}
|
|
24
|
+
return result;
|
|
25
|
+
}
|
package/array/shuffle.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name arrayShuffle
|
|
3
|
+
* @description Shuffles the input array (unlike sort, this is not done in-place)
|
|
4
|
+
*/
|
|
5
|
+
export function arrayShuffle(input) {
|
|
6
|
+
const result = input.slice();
|
|
7
|
+
let curr = result.length;
|
|
8
|
+
// noop for the single entry
|
|
9
|
+
if (curr === 1) {
|
|
10
|
+
return result;
|
|
11
|
+
}
|
|
12
|
+
while (curr !== 0) {
|
|
13
|
+
// ~~ is more performant than Math.floor
|
|
14
|
+
const rand = ~~(Math.random() * curr);
|
|
15
|
+
curr--;
|
|
16
|
+
[result[curr], result[rand]] = [result[rand], result[curr]];
|
|
17
|
+
}
|
|
18
|
+
return result;
|
|
19
|
+
}
|
package/array/unzip.d.ts
ADDED
package/array/unzip.js
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name arrayUnzip
|
|
3
|
+
* @description Splits a single [K, V][] into [K[], V[]]
|
|
4
|
+
*/
|
|
5
|
+
export function arrayUnzip(entries) {
|
|
6
|
+
const count = entries.length;
|
|
7
|
+
const keys = new Array(count);
|
|
8
|
+
const values = new Array(count);
|
|
9
|
+
for (let i = 0; i < count; i++) {
|
|
10
|
+
[keys[i], values[i]] = entries[i];
|
|
11
|
+
}
|
|
12
|
+
return [keys, values];
|
|
13
|
+
}
|
package/array/zip.d.ts
ADDED
package/array/zip.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name arrayZip
|
|
3
|
+
* @description Combines 2 distinct key/value arrays into a single [K, V] array
|
|
4
|
+
*/
|
|
5
|
+
export function arrayZip(keys, values) {
|
|
6
|
+
const count = keys.length;
|
|
7
|
+
const result = new Array(count);
|
|
8
|
+
for (let i = 0; i < count; i++) {
|
|
9
|
+
result[i] = [keys[i], values[i]];
|
|
10
|
+
}
|
|
11
|
+
return result;
|
|
12
|
+
}
|
package/assert.d.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
type MessageFn = () => string;
|
|
2
|
+
/**
|
|
3
|
+
* @name assert
|
|
4
|
+
* @summary Checks for a valid test, if not Error is thrown.
|
|
5
|
+
* @description
|
|
6
|
+
* Checks that `test` is a truthy value. If value is falsy (`null`, `undefined`, `false`, ...), it throws an Error with the supplied `message`. When `test` passes, `true` is returned.
|
|
7
|
+
* @example
|
|
8
|
+
* <BR>
|
|
9
|
+
*
|
|
10
|
+
* ```javascript
|
|
11
|
+
* const { assert } from '@pezkuwi/util';
|
|
12
|
+
*
|
|
13
|
+
* assert(true, 'True should be true'); // passes
|
|
14
|
+
* assert(false, 'False should not be true'); // Error thrown
|
|
15
|
+
* assert(false, () => 'message'); // Error with 'message'
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare function assert(condition: unknown, message: string | MessageFn): asserts condition;
|
|
19
|
+
/**
|
|
20
|
+
* @name assertReturn
|
|
21
|
+
* @description Returns when the value is not undefined/null, otherwise throws assertion error
|
|
22
|
+
*/
|
|
23
|
+
export declare function assertReturn<T>(value: T | undefined | null, message: string | MessageFn): T;
|
|
24
|
+
/**
|
|
25
|
+
* @name assertUnreachable
|
|
26
|
+
* @description An assertion helper that ensures all codepaths are followed
|
|
27
|
+
*/
|
|
28
|
+
export declare function assertUnreachable(x: never): never;
|
|
29
|
+
export {};
|
package/assert.js
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { isFunction } from './is/function.js';
|
|
2
|
+
/**
|
|
3
|
+
* @name assert
|
|
4
|
+
* @summary Checks for a valid test, if not Error is thrown.
|
|
5
|
+
* @description
|
|
6
|
+
* Checks that `test` is a truthy value. If value is falsy (`null`, `undefined`, `false`, ...), it throws an Error with the supplied `message`. When `test` passes, `true` is returned.
|
|
7
|
+
* @example
|
|
8
|
+
* <BR>
|
|
9
|
+
*
|
|
10
|
+
* ```javascript
|
|
11
|
+
* const { assert } from '@pezkuwi/util';
|
|
12
|
+
*
|
|
13
|
+
* assert(true, 'True should be true'); // passes
|
|
14
|
+
* assert(false, 'False should not be true'); // Error thrown
|
|
15
|
+
* assert(false, () => 'message'); // Error with 'message'
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export function assert(condition, message) {
|
|
19
|
+
if (!condition) {
|
|
20
|
+
throw new Error(isFunction(message)
|
|
21
|
+
? message()
|
|
22
|
+
: message);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* @name assertReturn
|
|
27
|
+
* @description Returns when the value is not undefined/null, otherwise throws assertion error
|
|
28
|
+
*/
|
|
29
|
+
export function assertReturn(value, message) {
|
|
30
|
+
assert(value !== undefined && value !== null, message);
|
|
31
|
+
return value;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* @name assertUnreachable
|
|
35
|
+
* @description An assertion helper that ensures all codepaths are followed
|
|
36
|
+
*/
|
|
37
|
+
export function assertUnreachable(x) {
|
|
38
|
+
throw new Error(`This codepath should be unreachable. Unhandled input: ${x}`);
|
|
39
|
+
}
|
package/bi/consts.d.ts
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name _0n
|
|
3
|
+
* @summary BigInt constant for 0.
|
|
4
|
+
*/
|
|
5
|
+
export declare const _0n: bigint;
|
|
6
|
+
/**
|
|
7
|
+
* @name _1n
|
|
8
|
+
* @summary BigInt constant for 1.
|
|
9
|
+
*/
|
|
10
|
+
export declare const _1n: bigint;
|
|
11
|
+
/**
|
|
12
|
+
* @name _2n
|
|
13
|
+
* @summary BigInt constant for 2.
|
|
14
|
+
*/
|
|
15
|
+
export declare const _2n: bigint;
|
|
16
|
+
/**
|
|
17
|
+
* @name _3n
|
|
18
|
+
* @summary BigInt constant for 3.
|
|
19
|
+
*/
|
|
20
|
+
export declare const _3n: bigint;
|
|
21
|
+
/**
|
|
22
|
+
* @name _4n
|
|
23
|
+
* @summary BigInt constant for 4.
|
|
24
|
+
*/
|
|
25
|
+
export declare const _4n: bigint;
|
|
26
|
+
/**
|
|
27
|
+
* @name _5n
|
|
28
|
+
* @summary BigInt constant for 5.
|
|
29
|
+
*/
|
|
30
|
+
export declare const _5n: bigint;
|
|
31
|
+
/**
|
|
32
|
+
* @name _6n
|
|
33
|
+
* @summary BigInt constant for 6.
|
|
34
|
+
*/
|
|
35
|
+
export declare const _6n: bigint;
|
|
36
|
+
/**
|
|
37
|
+
* @name _7n
|
|
38
|
+
* @summary BigInt constant for 7.
|
|
39
|
+
*/
|
|
40
|
+
export declare const _7n: bigint;
|
|
41
|
+
/**
|
|
42
|
+
* @name _8n
|
|
43
|
+
* @summary BigInt constant for 8.
|
|
44
|
+
*/
|
|
45
|
+
export declare const _8n: bigint;
|
|
46
|
+
/**
|
|
47
|
+
* @name _9n
|
|
48
|
+
* @summary BigInt constant for 9.
|
|
49
|
+
*/
|
|
50
|
+
export declare const _9n: bigint;
|
|
51
|
+
/**
|
|
52
|
+
* @name _10n
|
|
53
|
+
* @summary BigInt constant for 10.
|
|
54
|
+
*/
|
|
55
|
+
export declare const _10n: bigint;
|
|
56
|
+
/**
|
|
57
|
+
* @name _100n
|
|
58
|
+
* @summary BigInt constant for 100.
|
|
59
|
+
*/
|
|
60
|
+
export declare const _100n: bigint;
|
|
61
|
+
/**
|
|
62
|
+
* @name _1000n
|
|
63
|
+
* @summary BigInt constant for 1000.
|
|
64
|
+
*/
|
|
65
|
+
export declare const _1000n: bigint;
|
|
66
|
+
/**
|
|
67
|
+
* @name _1Mn
|
|
68
|
+
* @summary BigInt constant for 1,000,000 (million).
|
|
69
|
+
*/
|
|
70
|
+
export declare const _1Mn: bigint;
|
|
71
|
+
/**
|
|
72
|
+
* @name _1Bn
|
|
73
|
+
* @summary BigInt constant for 1,000,000,000 (billion).
|
|
74
|
+
*/
|
|
75
|
+
export declare const _1Bn: bigint;
|
|
76
|
+
/**
|
|
77
|
+
* @name _1Qn
|
|
78
|
+
* @summary BigInt constant for 1,000,000,000,000,000,000 (quitillion).
|
|
79
|
+
*/
|
|
80
|
+
export declare const _1Qn: bigint;
|
|
81
|
+
/**
|
|
82
|
+
* @name _2pow53n
|
|
83
|
+
* @summary BigInt constant for MAX_SAFE_INTEGER
|
|
84
|
+
*/
|
|
85
|
+
export declare const _2pow53n: bigint;
|
|
86
|
+
/**
|
|
87
|
+
* @name _sqrt2pow53n
|
|
88
|
+
* @summary BigInt constant for Math.sqrt(MAX_SAFE_INTEGER)
|
|
89
|
+
*/
|
|
90
|
+
export declare const _sqrt2pow53n: bigint;
|
package/bi/consts.js
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { BigInt } from '@pezkuwi/x-bigint';
|
|
2
|
+
/**
|
|
3
|
+
* @name _0n
|
|
4
|
+
* @summary BigInt constant for 0.
|
|
5
|
+
*/
|
|
6
|
+
export const _0n = /*#__PURE__*/ BigInt(0);
|
|
7
|
+
/**
|
|
8
|
+
* @name _1n
|
|
9
|
+
* @summary BigInt constant for 1.
|
|
10
|
+
*/
|
|
11
|
+
export const _1n = /*#__PURE__*/ BigInt(1);
|
|
12
|
+
/**
|
|
13
|
+
* @name _2n
|
|
14
|
+
* @summary BigInt constant for 2.
|
|
15
|
+
*/
|
|
16
|
+
export const _2n = /*#__PURE__*/ BigInt(2);
|
|
17
|
+
/**
|
|
18
|
+
* @name _3n
|
|
19
|
+
* @summary BigInt constant for 3.
|
|
20
|
+
*/
|
|
21
|
+
export const _3n = /*#__PURE__*/ BigInt(3);
|
|
22
|
+
/**
|
|
23
|
+
* @name _4n
|
|
24
|
+
* @summary BigInt constant for 4.
|
|
25
|
+
*/
|
|
26
|
+
export const _4n = /*#__PURE__*/ BigInt(4);
|
|
27
|
+
/**
|
|
28
|
+
* @name _5n
|
|
29
|
+
* @summary BigInt constant for 5.
|
|
30
|
+
*/
|
|
31
|
+
export const _5n = /*#__PURE__*/ BigInt(5);
|
|
32
|
+
/**
|
|
33
|
+
* @name _6n
|
|
34
|
+
* @summary BigInt constant for 6.
|
|
35
|
+
*/
|
|
36
|
+
export const _6n = /*#__PURE__*/ BigInt(6);
|
|
37
|
+
/**
|
|
38
|
+
* @name _7n
|
|
39
|
+
* @summary BigInt constant for 7.
|
|
40
|
+
*/
|
|
41
|
+
export const _7n = /*#__PURE__*/ BigInt(7);
|
|
42
|
+
/**
|
|
43
|
+
* @name _8n
|
|
44
|
+
* @summary BigInt constant for 8.
|
|
45
|
+
*/
|
|
46
|
+
export const _8n = /*#__PURE__*/ BigInt(8);
|
|
47
|
+
/**
|
|
48
|
+
* @name _9n
|
|
49
|
+
* @summary BigInt constant for 9.
|
|
50
|
+
*/
|
|
51
|
+
export const _9n = /*#__PURE__*/ BigInt(9);
|
|
52
|
+
/**
|
|
53
|
+
* @name _10n
|
|
54
|
+
* @summary BigInt constant for 10.
|
|
55
|
+
*/
|
|
56
|
+
export const _10n = /*#__PURE__*/ BigInt(10);
|
|
57
|
+
/**
|
|
58
|
+
* @name _100n
|
|
59
|
+
* @summary BigInt constant for 100.
|
|
60
|
+
*/
|
|
61
|
+
export const _100n = /*#__PURE__*/ BigInt(100);
|
|
62
|
+
/**
|
|
63
|
+
* @name _1000n
|
|
64
|
+
* @summary BigInt constant for 1000.
|
|
65
|
+
*/
|
|
66
|
+
export const _1000n = /*#__PURE__*/ BigInt(1_000);
|
|
67
|
+
/**
|
|
68
|
+
* @name _1Mn
|
|
69
|
+
* @summary BigInt constant for 1,000,000 (million).
|
|
70
|
+
*/
|
|
71
|
+
export const _1Mn = /*#__PURE__*/ BigInt(1_000_000);
|
|
72
|
+
/**
|
|
73
|
+
* @name _1Bn
|
|
74
|
+
* @summary BigInt constant for 1,000,000,000 (billion).
|
|
75
|
+
*/
|
|
76
|
+
export const _1Bn = /*#__PURE__*/ BigInt(1_000_000_000);
|
|
77
|
+
/**
|
|
78
|
+
* @name _1Qn
|
|
79
|
+
* @summary BigInt constant for 1,000,000,000,000,000,000 (quitillion).
|
|
80
|
+
*/
|
|
81
|
+
export const _1Qn = _1Bn * _1Bn;
|
|
82
|
+
/**
|
|
83
|
+
* @name _2pow53n
|
|
84
|
+
* @summary BigInt constant for MAX_SAFE_INTEGER
|
|
85
|
+
*/
|
|
86
|
+
export const _2pow53n = /*#__PURE__*/ BigInt(Number.MAX_SAFE_INTEGER);
|
|
87
|
+
/**
|
|
88
|
+
* @name _sqrt2pow53n
|
|
89
|
+
* @summary BigInt constant for Math.sqrt(MAX_SAFE_INTEGER)
|
|
90
|
+
*/
|
|
91
|
+
export const _sqrt2pow53n = /*#__PURE__*/ BigInt(94906265);
|
package/bi/helpers.d.ts
ADDED
package/bi/helpers.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** @internal */
|
|
2
|
+
export function createCmp(cmp) {
|
|
3
|
+
return (...items) => {
|
|
4
|
+
const count = items.length;
|
|
5
|
+
if (count === 0) {
|
|
6
|
+
throw new Error('Must provide one or more arguments');
|
|
7
|
+
}
|
|
8
|
+
let result = items[0];
|
|
9
|
+
for (let i = 1; i < count; i++) {
|
|
10
|
+
if (cmp(items[i], result)) {
|
|
11
|
+
result = items[i];
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
return result;
|
|
15
|
+
};
|
|
16
|
+
}
|
package/bi/index.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Utility methods to convert to and from `bigint` objects
|
|
3
|
+
*/
|
|
4
|
+
export { nMax, nMin } from './min.js';
|
|
5
|
+
export { nSqrt } from './sqrt.js';
|
|
6
|
+
export { nToBigInt } from './toBigInt.js';
|
|
7
|
+
export { nToHex } from './toHex.js';
|
|
8
|
+
export { nToU8a } from './toU8a.js';
|
|
9
|
+
export * from './consts.js';
|
package/bi/index.js
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Utility methods to convert to and from `bigint` objects
|
|
3
|
+
*/
|
|
4
|
+
export { nMax, nMin } from './min.js';
|
|
5
|
+
export { nSqrt } from './sqrt.js';
|
|
6
|
+
export { nToBigInt } from './toBigInt.js';
|
|
7
|
+
export { nToHex } from './toHex.js';
|
|
8
|
+
export { nToU8a } from './toU8a.js';
|
|
9
|
+
export * from './consts.js';
|
package/bi/min.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name nMax
|
|
3
|
+
* @summary Finds and returns the highest value in an array of bigint.
|
|
4
|
+
*/
|
|
5
|
+
export declare const nMax: (...items: bigint[]) => bigint;
|
|
6
|
+
/**
|
|
7
|
+
* @name nMin
|
|
8
|
+
* @summary Finds and returns the lowest value in an array of bigint.
|
|
9
|
+
*/
|
|
10
|
+
export declare const nMin: (...items: bigint[]) => bigint;
|
package/bi/min.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { createCmp } from './helpers.js';
|
|
2
|
+
/**
|
|
3
|
+
* @name nMax
|
|
4
|
+
* @summary Finds and returns the highest value in an array of bigint.
|
|
5
|
+
*/
|
|
6
|
+
export const nMax = /*#__PURE__*/ createCmp((a, b) => a > b);
|
|
7
|
+
/**
|
|
8
|
+
* @name nMin
|
|
9
|
+
* @summary Finds and returns the lowest value in an array of bigint.
|
|
10
|
+
*/
|
|
11
|
+
export const nMin = /*#__PURE__*/ createCmp((a, b) => a < b);
|
package/bi/sqrt.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { BN } from '../bn/index.js';
|
|
2
|
+
import type { ToBigInt, ToBn } from '../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* @name nSqrt
|
|
5
|
+
* @summary Calculates the integer square root of a bigint
|
|
6
|
+
*/
|
|
7
|
+
export declare function nSqrt<ExtToBn extends ToBn | ToBigInt>(value: ExtToBn | BN | bigint | string | number | null): bigint;
|
package/bi/sqrt.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { BigInt } from '@pezkuwi/x-bigint';
|
|
2
|
+
import { _0n, _1n, _2pow53n, _sqrt2pow53n } from './consts.js';
|
|
3
|
+
import { nToBigInt } from './toBigInt.js';
|
|
4
|
+
/**
|
|
5
|
+
* @name nSqrt
|
|
6
|
+
* @summary Calculates the integer square root of a bigint
|
|
7
|
+
*/
|
|
8
|
+
export function nSqrt(value) {
|
|
9
|
+
const n = nToBigInt(value);
|
|
10
|
+
if (n < _0n) {
|
|
11
|
+
throw new Error('square root of negative numbers is not supported');
|
|
12
|
+
}
|
|
13
|
+
// https://stackoverflow.com/questions/53683995/javascript-big-integer-square-root/
|
|
14
|
+
// shortcut <= 2^53 - 1 to use the JS utils
|
|
15
|
+
if (n <= _2pow53n) {
|
|
16
|
+
// ~~ is more performant that Math.floor
|
|
17
|
+
return BigInt(~~Math.sqrt(Number(n)));
|
|
18
|
+
}
|
|
19
|
+
// Use sqrt(MAX_SAFE_INTEGER) as starting point. since we already know the
|
|
20
|
+
// output will be larger than this, we expect this to be a safe start
|
|
21
|
+
let x0 = _sqrt2pow53n;
|
|
22
|
+
while (true) {
|
|
23
|
+
const x1 = ((n / x0) + x0) >> _1n;
|
|
24
|
+
if (x0 === x1 || (x0 === (x1 - _1n))) {
|
|
25
|
+
return x0;
|
|
26
|
+
}
|
|
27
|
+
x0 = x1;
|
|
28
|
+
}
|
|
29
|
+
}
|
package/bi/toBigInt.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { BN } from '../bn/bn.js';
|
|
2
|
+
import type { ToBigInt, ToBn } from '../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* @name nToBigInt
|
|
5
|
+
* @summary Creates a bigInt value from a BN, bigint, string (base 10 or hex) or number input.
|
|
6
|
+
*/
|
|
7
|
+
export declare function nToBigInt<ExtToBn extends ToBigInt | ToBn>(value?: ExtToBn | BN | bigint | string | number | null): bigint;
|
package/bi/toBigInt.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { BigInt } from '@pezkuwi/x-bigint';
|
|
2
|
+
import { hexToBigInt } from '../hex/toBigInt.js';
|
|
3
|
+
import { isBn } from '../is/bn.js';
|
|
4
|
+
import { isHex } from '../is/hex.js';
|
|
5
|
+
import { isToBigInt } from '../is/toBigInt.js';
|
|
6
|
+
import { isToBn } from '../is/toBn.js';
|
|
7
|
+
/**
|
|
8
|
+
* @name nToBigInt
|
|
9
|
+
* @summary Creates a bigInt value from a BN, bigint, string (base 10 or hex) or number input.
|
|
10
|
+
*/
|
|
11
|
+
export function nToBigInt(value) {
|
|
12
|
+
return typeof value === 'bigint'
|
|
13
|
+
? value
|
|
14
|
+
: !value
|
|
15
|
+
? BigInt(0)
|
|
16
|
+
: isHex(value)
|
|
17
|
+
? hexToBigInt(value.toString())
|
|
18
|
+
: isBn(value)
|
|
19
|
+
? BigInt(value.toString())
|
|
20
|
+
: isToBigInt(value)
|
|
21
|
+
? value.toBigInt()
|
|
22
|
+
: isToBn(value)
|
|
23
|
+
? BigInt(value.toBn().toString())
|
|
24
|
+
: BigInt(value);
|
|
25
|
+
}
|
package/bi/toHex.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { BN } from '../bn/bn.js';
|
|
2
|
+
import type { HexString, NumberOptions, ToBigInt, ToBn } from '../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* @name nToHex
|
|
5
|
+
* @summary Creates a hex value from a bigint object.
|
|
6
|
+
*/
|
|
7
|
+
export declare function nToHex<ExtToBn extends ToBn | ToBigInt>(value?: ExtToBn | BN | bigint | number | null, { bitLength, isLe, isNegative }?: NumberOptions): HexString;
|