@pezkuwi/util 14.0.1 → 14.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (758) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +4 -4
  3. package/array/chunk.d.ts +15 -0
  4. package/array/chunk.js +27 -0
  5. package/array/filter.d.ts +16 -0
  6. package/{src/array/filter.ts → array/filter.js} +3 -8
  7. package/array/flatten.d.ts +15 -0
  8. package/array/flatten.js +39 -0
  9. package/{src/array/index.ts → array/index.d.ts} +0 -4
  10. package/array/index.js +10 -0
  11. package/array/range.d.ts +16 -0
  12. package/{src/array/range.ts → array/range.js} +9 -15
  13. package/array/shuffle.d.ts +5 -0
  14. package/array/shuffle.js +19 -0
  15. package/array/unzip.d.ts +5 -0
  16. package/array/unzip.js +13 -0
  17. package/array/zip.d.ts +5 -0
  18. package/array/zip.js +12 -0
  19. package/assert.d.ts +29 -0
  20. package/{src/assert.ts → assert.js} +11 -22
  21. package/bi/consts.d.ts +90 -0
  22. package/{src/bi/consts.ts → bi/consts.js} +0 -21
  23. package/bi/helpers.d.ts +2 -0
  24. package/bi/helpers.js +16 -0
  25. package/{src/bi/index.ts → bi/index.d.ts} +0 -7
  26. package/bi/index.js +9 -0
  27. package/bi/min.d.ts +10 -0
  28. package/bi/min.js +11 -0
  29. package/bi/sqrt.d.ts +7 -0
  30. package/bi/sqrt.js +29 -0
  31. package/bi/toBigInt.d.ts +7 -0
  32. package/bi/toBigInt.js +25 -0
  33. package/bi/toHex.d.ts +7 -0
  34. package/bi/toHex.js +9 -0
  35. package/bi/toU8a.d.ts +7 -0
  36. package/bi/toU8a.js +49 -0
  37. package/bn/bn.d.ts +2 -0
  38. package/bn/bn.js +2 -0
  39. package/bn/consts.d.ts +91 -0
  40. package/{src/bn/consts.ts → bn/consts.js} +18 -39
  41. package/bn/fromHex.d.ts +1 -0
  42. package/bn/fromHex.js +1 -0
  43. package/{src/bn/index.ts → bn/index.d.ts} +0 -7
  44. package/bn/index.js +11 -0
  45. package/bn/min.d.ts +29 -0
  46. package/{src/bn/min.ts → bn/min.js} +2 -9
  47. package/bn/sqrt.d.ts +16 -0
  48. package/bn/sqrt.js +38 -0
  49. package/bn/toBn.d.ts +19 -0
  50. package/{src/bn/toBn.ts → bn/toBn.js} +14 -20
  51. package/bn/toHex.d.ts +18 -0
  52. package/{src/bn/toHex.ts → bn/toHex.js} +2 -9
  53. package/bn/toU8a.d.ts +17 -0
  54. package/bn/toU8a.js +33 -0
  55. package/{src/buffer/index.ts → buffer/index.d.ts} +0 -4
  56. package/buffer/index.js +4 -0
  57. package/buffer/toU8a.d.ts +15 -0
  58. package/{src/buffer/toU8a.ts → buffer/toU8a.js} +2 -5
  59. package/bundle-polkadot-util.js +4829 -0
  60. package/{src/bundle.ts → bundle.d.ts} +0 -7
  61. package/bundle.js +28 -0
  62. package/cjs/array/chunk.d.ts +15 -0
  63. package/cjs/array/chunk.js +30 -0
  64. package/cjs/array/filter.d.ts +16 -0
  65. package/cjs/array/filter.js +22 -0
  66. package/cjs/array/flatten.d.ts +15 -0
  67. package/cjs/array/flatten.js +42 -0
  68. package/cjs/array/index.d.ts +10 -0
  69. package/cjs/array/index.js +20 -0
  70. package/cjs/array/range.d.ts +16 -0
  71. package/cjs/array/range.js +28 -0
  72. package/cjs/array/shuffle.d.ts +5 -0
  73. package/cjs/array/shuffle.js +22 -0
  74. package/cjs/array/unzip.d.ts +5 -0
  75. package/cjs/array/unzip.js +16 -0
  76. package/cjs/array/zip.d.ts +5 -0
  77. package/cjs/array/zip.js +15 -0
  78. package/cjs/assert.d.ts +29 -0
  79. package/cjs/assert.js +44 -0
  80. package/cjs/bi/consts.d.ts +90 -0
  81. package/cjs/bi/consts.js +94 -0
  82. package/cjs/bi/helpers.d.ts +2 -0
  83. package/cjs/bi/helpers.js +19 -0
  84. package/cjs/bi/index.d.ts +9 -0
  85. package/cjs/bi/index.js +19 -0
  86. package/cjs/bi/min.d.ts +10 -0
  87. package/cjs/bi/min.js +14 -0
  88. package/cjs/bi/sqrt.d.ts +7 -0
  89. package/cjs/bi/sqrt.js +32 -0
  90. package/cjs/bi/toBigInt.d.ts +7 -0
  91. package/cjs/bi/toBigInt.js +28 -0
  92. package/cjs/bi/toHex.d.ts +7 -0
  93. package/cjs/bi/toHex.js +12 -0
  94. package/cjs/bi/toU8a.d.ts +7 -0
  95. package/cjs/bi/toU8a.js +52 -0
  96. package/cjs/bn/bn.d.ts +2 -0
  97. package/cjs/bn/bn.js +6 -0
  98. package/cjs/bn/consts.d.ts +91 -0
  99. package/cjs/bn/consts.js +94 -0
  100. package/cjs/bn/fromHex.d.ts +1 -0
  101. package/cjs/bn/fromHex.js +5 -0
  102. package/cjs/bn/index.d.ts +11 -0
  103. package/cjs/bn/index.js +23 -0
  104. package/cjs/bn/min.d.ts +29 -0
  105. package/cjs/bn/min.js +32 -0
  106. package/cjs/bn/sqrt.d.ts +16 -0
  107. package/cjs/bn/sqrt.js +41 -0
  108. package/cjs/bn/toBn.d.ts +19 -0
  109. package/cjs/bn/toBn.js +40 -0
  110. package/cjs/bn/toHex.d.ts +18 -0
  111. package/cjs/bn/toHex.js +23 -0
  112. package/cjs/bn/toU8a.d.ts +17 -0
  113. package/cjs/bn/toU8a.js +36 -0
  114. package/cjs/buffer/index.d.ts +4 -0
  115. package/cjs/buffer/index.js +8 -0
  116. package/cjs/buffer/toU8a.d.ts +15 -0
  117. package/cjs/buffer/toU8a.js +20 -0
  118. package/cjs/bundle.d.ts +28 -0
  119. package/cjs/bundle.js +33 -0
  120. package/cjs/compact/addLength.d.ts +13 -0
  121. package/cjs/compact/addLength.js +23 -0
  122. package/cjs/compact/defaults.d.ts +3 -0
  123. package/cjs/compact/defaults.js +5 -0
  124. package/cjs/compact/fromU8a.d.ts +22 -0
  125. package/cjs/compact/fromU8a.js +92 -0
  126. package/{src/compact/index.ts → cjs/compact/index.d.ts} +0 -4
  127. package/cjs/compact/index.js +32 -0
  128. package/cjs/compact/stripLength.d.ts +13 -0
  129. package/cjs/compact/stripLength.js +24 -0
  130. package/cjs/compact/toU8a.d.ts +14 -0
  131. package/cjs/compact/toU8a.js +48 -0
  132. package/cjs/compact/types.d.ts +1 -0
  133. package/cjs/compact/types.js +2 -0
  134. package/cjs/detectPackage.d.ts +17 -0
  135. package/cjs/detectPackage.js +100 -0
  136. package/cjs/extractTime.d.ts +14 -0
  137. package/cjs/extractTime.js +56 -0
  138. package/cjs/float/index.d.ts +1 -0
  139. package/cjs/float/index.js +5 -0
  140. package/cjs/float/toU8a.d.ts +11 -0
  141. package/cjs/float/toU8a.js +22 -0
  142. package/cjs/format/formatBalance.d.ts +54 -0
  143. package/cjs/format/formatBalance.js +88 -0
  144. package/cjs/format/formatDate.d.ts +5 -0
  145. package/cjs/format/formatDate.js +20 -0
  146. package/cjs/format/formatDecimal.d.ts +5 -0
  147. package/cjs/format/formatDecimal.js +19 -0
  148. package/cjs/format/formatElapsed.d.ts +7 -0
  149. package/cjs/format/formatElapsed.js +30 -0
  150. package/cjs/format/formatNumber.d.ts +14 -0
  151. package/cjs/format/formatNumber.js +14 -0
  152. package/cjs/format/getSeparator.d.ts +9 -0
  153. package/cjs/format/getSeparator.js +14 -0
  154. package/{src/format/index.ts → cjs/format/index.d.ts} +0 -3
  155. package/cjs/format/index.js +16 -0
  156. package/cjs/format/si.d.ts +9 -0
  157. package/cjs/format/si.js +45 -0
  158. package/cjs/has.d.ts +14 -0
  159. package/cjs/has.js +19 -0
  160. package/cjs/hex/addPrefix.d.ts +16 -0
  161. package/cjs/hex/addPrefix.js +23 -0
  162. package/cjs/hex/fixLength.d.ts +18 -0
  163. package/cjs/hex/fixLength.js +30 -0
  164. package/cjs/hex/hasPrefix.d.ts +16 -0
  165. package/cjs/hex/hasPrefix.js +21 -0
  166. package/{src/hex/index.ts → cjs/hex/index.d.ts} +0 -4
  167. package/cjs/hex/index.js +24 -0
  168. package/cjs/hex/stripPrefix.d.ts +15 -0
  169. package/cjs/hex/stripPrefix.js +30 -0
  170. package/cjs/hex/toBigInt.d.ts +6 -0
  171. package/cjs/hex/toBigInt.js +15 -0
  172. package/cjs/hex/toBn.d.ts +21 -0
  173. package/cjs/hex/toBn.js +35 -0
  174. package/cjs/hex/toNumber.d.ts +15 -0
  175. package/cjs/hex/toNumber.js +23 -0
  176. package/cjs/hex/toString.d.ts +15 -0
  177. package/cjs/hex/toString.js +22 -0
  178. package/cjs/hex/toU8a.d.ts +16 -0
  179. package/cjs/hex/toU8a.js +57 -0
  180. package/cjs/hex/toU8aBuffer.d.ts +16 -0
  181. package/cjs/hex/toU8aBuffer.js +43 -0
  182. package/cjs/index.d.ts +2 -0
  183. package/cjs/index.js +5 -0
  184. package/cjs/is/array.d.ts +5 -0
  185. package/cjs/is/array.js +10 -0
  186. package/cjs/is/ascii.d.ts +8 -0
  187. package/cjs/is/ascii.js +43 -0
  188. package/cjs/is/bigInt.d.ts +15 -0
  189. package/{src/is/bigInt.ts → cjs/is/bigInt.js} +5 -5
  190. package/cjs/is/bn.d.ts +17 -0
  191. package/cjs/is/bn.js +22 -0
  192. package/cjs/is/boolean.d.ts +15 -0
  193. package/{src/is/boolean.ts → cjs/is/boolean.js} +5 -5
  194. package/cjs/is/buffer.d.ts +16 -0
  195. package/cjs/is/buffer.js +24 -0
  196. package/cjs/is/childClass.d.ts +17 -0
  197. package/cjs/is/childClass.js +26 -0
  198. package/cjs/is/class.d.ts +6 -0
  199. package/cjs/is/class.js +9 -0
  200. package/cjs/is/codec.d.ts +12 -0
  201. package/cjs/is/codec.js +9 -0
  202. package/cjs/is/compact.d.ts +13 -0
  203. package/cjs/is/compact.js +9 -0
  204. package/cjs/is/error.d.ts +15 -0
  205. package/{src/is/error.ts → cjs/is/error.js} +6 -8
  206. package/cjs/is/function.d.ts +17 -0
  207. package/cjs/is/function.js +20 -0
  208. package/cjs/is/helpers.d.ts +3 -0
  209. package/cjs/is/helpers.js +19 -0
  210. package/cjs/is/hex.d.ts +19 -0
  211. package/cjs/is/hex.js +27 -0
  212. package/{src/is/index.ts → cjs/is/index.d.ts} +0 -3
  213. package/cjs/is/index.js +66 -0
  214. package/cjs/is/instanceOf.d.ts +15 -0
  215. package/cjs/is/instanceOf.js +21 -0
  216. package/cjs/is/ip.d.ts +18 -0
  217. package/{src/is/ip.ts → cjs/is/ip.js} +9 -21
  218. package/cjs/is/jsonObject.d.ts +27 -0
  219. package/cjs/is/jsonObject.js +40 -0
  220. package/cjs/is/null.d.ts +15 -0
  221. package/{src/is/null.ts → cjs/is/null.js} +5 -5
  222. package/cjs/is/number.d.ts +15 -0
  223. package/{src/is/number.ts → cjs/is/number.js} +5 -5
  224. package/cjs/is/object.d.ts +18 -0
  225. package/cjs/is/object.js +21 -0
  226. package/cjs/is/observable.d.ts +16 -0
  227. package/cjs/is/observable.js +19 -0
  228. package/cjs/is/promise.d.ts +1 -0
  229. package/cjs/is/promise.js +5 -0
  230. package/cjs/is/riscv.d.ts +7 -0
  231. package/cjs/is/riscv.js +20 -0
  232. package/cjs/is/string.d.ts +16 -0
  233. package/{src/is/string.ts → cjs/is/string.js} +5 -7
  234. package/cjs/is/testChain.d.ts +1 -0
  235. package/cjs/is/testChain.js +10 -0
  236. package/cjs/is/toBigInt.d.ts +2 -0
  237. package/cjs/is/toBigInt.js +5 -0
  238. package/cjs/is/toBn.d.ts +2 -0
  239. package/cjs/is/toBn.js +5 -0
  240. package/cjs/is/u8a.d.ts +15 -0
  241. package/cjs/is/u8a.js +23 -0
  242. package/cjs/is/undefined.d.ts +15 -0
  243. package/{src/is/undefined.ts → cjs/is/undefined.js} +5 -6
  244. package/cjs/is/utf8.d.ts +7 -0
  245. package/cjs/is/utf8.js +200 -0
  246. package/cjs/is/wasm.d.ts +7 -0
  247. package/cjs/is/wasm.js +15 -0
  248. package/cjs/lazy.d.ts +14 -0
  249. package/cjs/lazy.js +55 -0
  250. package/cjs/logger.d.ts +17 -0
  251. package/cjs/logger.js +122 -0
  252. package/cjs/memoize.d.ts +10 -0
  253. package/cjs/memoize.js +33 -0
  254. package/cjs/nextTick.d.ts +5 -0
  255. package/cjs/nextTick.js +27 -0
  256. package/cjs/noop.d.ts +8 -0
  257. package/cjs/noop.js +16 -0
  258. package/{src/number/index.ts → cjs/number/index.d.ts} +0 -4
  259. package/cjs/number/index.js +10 -0
  260. package/cjs/number/toHex.d.ts +17 -0
  261. package/cjs/number/toHex.js +23 -0
  262. package/cjs/number/toU8a.d.ts +15 -0
  263. package/cjs/number/toU8a.js +22 -0
  264. package/cjs/object/clear.d.ts +5 -0
  265. package/cjs/object/clear.js +14 -0
  266. package/cjs/object/copy.d.ts +5 -0
  267. package/cjs/object/copy.js +11 -0
  268. package/cjs/object/entries.d.ts +9 -0
  269. package/cjs/object/entries.js +10 -0
  270. package/{src/object/index.ts → cjs/object/index.d.ts} +0 -3
  271. package/cjs/object/index.js +18 -0
  272. package/cjs/object/keys.d.ts +5 -0
  273. package/cjs/object/keys.js +10 -0
  274. package/cjs/object/property.d.ts +10 -0
  275. package/cjs/object/property.js +38 -0
  276. package/cjs/object/spread.d.ts +6 -0
  277. package/cjs/object/spread.js +34 -0
  278. package/cjs/object/values.d.ts +5 -0
  279. package/cjs/object/values.js +10 -0
  280. package/cjs/package.json +3 -0
  281. package/cjs/packageDetect.d.ts +1 -0
  282. package/cjs/packageDetect.js +7 -0
  283. package/cjs/packageInfo.d.ts +6 -0
  284. package/cjs/packageInfo.js +4 -0
  285. package/cjs/promisify.d.ts +16 -0
  286. package/{src/promisify.ts → cjs/promisify.js} +14 -14
  287. package/cjs/string/camelCase.d.ts +13 -0
  288. package/cjs/string/camelCase.js +62 -0
  289. package/{src/string/index.ts → cjs/string/index.d.ts} +0 -4
  290. package/cjs/string/index.js +18 -0
  291. package/cjs/string/lowerFirst.d.ts +31 -0
  292. package/cjs/string/lowerFirst.js +40 -0
  293. package/cjs/string/shorten.d.ts +16 -0
  294. package/{src/string/shorten.ts → cjs/string/shorten.js} +7 -9
  295. package/cjs/string/toHex.d.ts +16 -0
  296. package/cjs/string/toHex.js +22 -0
  297. package/cjs/string/toU8a.d.ts +16 -0
  298. package/cjs/string/toU8a.js +24 -0
  299. package/cjs/stringify.d.ts +6 -0
  300. package/cjs/stringify.js +18 -0
  301. package/cjs/types.d.ts +62 -0
  302. package/cjs/types.js +2 -0
  303. package/cjs/u8a/cmp.d.ts +17 -0
  304. package/cjs/u8a/cmp.js +49 -0
  305. package/cjs/u8a/concat.d.ts +24 -0
  306. package/cjs/u8a/concat.js +51 -0
  307. package/cjs/u8a/concatBuffer.d.ts +19 -0
  308. package/cjs/u8a/concatBuffer.js +29 -0
  309. package/cjs/u8a/empty.d.ts +7 -0
  310. package/cjs/u8a/empty.js +20 -0
  311. package/cjs/u8a/eq.d.ts +15 -0
  312. package/cjs/u8a/eq.js +40 -0
  313. package/cjs/u8a/fixLength.d.ts +17 -0
  314. package/cjs/u8a/fixLength.js +31 -0
  315. package/{src/u8a/index.ts → cjs/u8a/index.d.ts} +0 -4
  316. package/cjs/u8a/index.js +42 -0
  317. package/cjs/u8a/sorted.d.ts +15 -0
  318. package/cjs/u8a/sorted.js +21 -0
  319. package/cjs/u8a/toBigInt.d.ts +6 -0
  320. package/cjs/u8a/toBigInt.js +73 -0
  321. package/cjs/u8a/toBn.d.ts +21 -0
  322. package/cjs/u8a/toBn.js +81 -0
  323. package/cjs/u8a/toBuffer.d.ts +16 -0
  324. package/cjs/u8a/toBuffer.js +24 -0
  325. package/cjs/u8a/toFloat.d.ts +11 -0
  326. package/cjs/u8a/toFloat.js +20 -0
  327. package/cjs/u8a/toHex.d.ts +16 -0
  328. package/cjs/u8a/toHex.js +56 -0
  329. package/cjs/u8a/toHexBuffer.d.ts +16 -0
  330. package/cjs/u8a/toHexBuffer.js +25 -0
  331. package/cjs/u8a/toNumber.d.ts +6 -0
  332. package/cjs/u8a/toNumber.js +61 -0
  333. package/cjs/u8a/toString.d.ts +15 -0
  334. package/cjs/u8a/toString.js +24 -0
  335. package/cjs/u8a/toU8a.d.ts +19 -0
  336. package/cjs/u8a/toU8a.js +42 -0
  337. package/cjs/u8a/wrap.d.ts +22 -0
  338. package/cjs/u8a/wrap.js +49 -0
  339. package/compact/addLength.d.ts +13 -0
  340. package/{src/compact/addLength.ts → compact/addLength.js} +5 -9
  341. package/compact/defaults.d.ts +3 -0
  342. package/compact/defaults.js +2 -0
  343. package/compact/fromU8a.d.ts +22 -0
  344. package/compact/fromU8a.js +88 -0
  345. package/compact/index.d.ts +24 -0
  346. package/compact/index.js +24 -0
  347. package/compact/stripLength.d.ts +13 -0
  348. package/{src/compact/stripLength.ts → compact/stripLength.js} +7 -12
  349. package/compact/toU8a.d.ts +14 -0
  350. package/compact/toU8a.js +45 -0
  351. package/compact/types.d.ts +1 -0
  352. package/compact/types.js +1 -0
  353. package/detectPackage.d.ts +17 -0
  354. package/detectPackage.js +96 -0
  355. package/extractTime.d.ts +14 -0
  356. package/extractTime.js +53 -0
  357. package/float/index.d.ts +1 -0
  358. package/float/index.js +1 -0
  359. package/float/toU8a.d.ts +11 -0
  360. package/float/toU8a.js +19 -0
  361. package/format/formatBalance.d.ts +54 -0
  362. package/format/formatBalance.js +85 -0
  363. package/format/formatDate.d.ts +5 -0
  364. package/format/formatDate.js +17 -0
  365. package/format/formatDecimal.d.ts +5 -0
  366. package/format/formatDecimal.js +16 -0
  367. package/format/formatElapsed.d.ts +7 -0
  368. package/format/formatElapsed.js +27 -0
  369. package/format/formatNumber.d.ts +14 -0
  370. package/format/formatNumber.js +11 -0
  371. package/format/getSeparator.d.ts +9 -0
  372. package/format/getSeparator.js +11 -0
  373. package/format/index.d.ts +6 -0
  374. package/format/index.js +6 -0
  375. package/format/si.d.ts +9 -0
  376. package/format/si.js +40 -0
  377. package/has.d.ts +14 -0
  378. package/{src/has.ts → has.js} +1 -23
  379. package/hex/addPrefix.d.ts +16 -0
  380. package/{src/hex/addPrefix.ts → hex/addPrefix.js} +4 -10
  381. package/hex/fixLength.d.ts +18 -0
  382. package/{src/hex/fixLength.ts → hex/fixLength.js} +8 -17
  383. package/hex/hasPrefix.d.ts +16 -0
  384. package/{src/hex/hasPrefix.ts → hex/hasPrefix.js} +2 -8
  385. package/hex/index.d.ts +12 -0
  386. package/hex/index.js +12 -0
  387. package/hex/stripPrefix.d.ts +15 -0
  388. package/{src/hex/stripPrefix.ts → hex/stripPrefix.js} +11 -14
  389. package/hex/toBigInt.d.ts +6 -0
  390. package/hex/toBigInt.js +12 -0
  391. package/hex/toBn.d.ts +21 -0
  392. package/{src/hex/toBn.ts → hex/toBn.js} +11 -19
  393. package/hex/toNumber.d.ts +15 -0
  394. package/{src/hex/toNumber.ts → hex/toNumber.js} +4 -8
  395. package/hex/toString.d.ts +15 -0
  396. package/{src/hex/toString.ts → hex/toString.js} +2 -8
  397. package/hex/toU8a.d.ts +16 -0
  398. package/hex/toU8a.js +54 -0
  399. package/hex/toU8aBuffer.d.ts +16 -0
  400. package/hex/toU8aBuffer.js +40 -0
  401. package/index.d.ts +2 -0
  402. package/index.js +2 -0
  403. package/is/array.d.ts +5 -0
  404. package/is/array.js +7 -0
  405. package/is/ascii.d.ts +8 -0
  406. package/is/ascii.js +40 -0
  407. package/is/bigInt.d.ts +15 -0
  408. package/is/bigInt.js +17 -0
  409. package/is/bn.d.ts +17 -0
  410. package/{src/is/bn.ts → is/bn.js} +2 -6
  411. package/is/boolean.d.ts +15 -0
  412. package/is/boolean.js +17 -0
  413. package/is/buffer.d.ts +16 -0
  414. package/is/buffer.js +21 -0
  415. package/is/childClass.d.ts +17 -0
  416. package/is/childClass.js +23 -0
  417. package/is/class.d.ts +6 -0
  418. package/is/class.js +6 -0
  419. package/is/codec.d.ts +12 -0
  420. package/is/codec.js +6 -0
  421. package/is/compact.d.ts +13 -0
  422. package/is/compact.js +6 -0
  423. package/is/error.d.ts +15 -0
  424. package/is/error.js +18 -0
  425. package/is/function.d.ts +17 -0
  426. package/is/function.js +17 -0
  427. package/is/helpers.d.ts +3 -0
  428. package/is/helpers.js +14 -0
  429. package/is/hex.d.ts +19 -0
  430. package/is/hex.js +23 -0
  431. package/is/index.d.ts +33 -0
  432. package/is/index.js +33 -0
  433. package/is/instanceOf.d.ts +15 -0
  434. package/is/instanceOf.js +18 -0
  435. package/is/ip.d.ts +18 -0
  436. package/is/ip.js +41 -0
  437. package/is/jsonObject.d.ts +27 -0
  438. package/{src/is/jsonObject.ts → is/jsonObject.js} +11 -19
  439. package/is/null.d.ts +15 -0
  440. package/is/null.js +17 -0
  441. package/is/number.d.ts +15 -0
  442. package/is/number.js +17 -0
  443. package/is/object.d.ts +18 -0
  444. package/is/object.js +18 -0
  445. package/is/observable.d.ts +16 -0
  446. package/{src/is/observable.ts → is/observable.js} +1 -7
  447. package/is/promise.d.ts +1 -0
  448. package/is/promise.js +2 -0
  449. package/is/riscv.d.ts +7 -0
  450. package/{src/is/riscv.ts → is/riscv.js} +6 -16
  451. package/is/string.d.ts +16 -0
  452. package/is/string.js +17 -0
  453. package/is/testChain.d.ts +1 -0
  454. package/is/testChain.js +7 -0
  455. package/is/toBigInt.d.ts +2 -0
  456. package/is/toBigInt.js +2 -0
  457. package/is/toBn.d.ts +2 -0
  458. package/is/toBn.js +2 -0
  459. package/is/u8a.d.ts +15 -0
  460. package/is/u8a.js +20 -0
  461. package/is/undefined.d.ts +15 -0
  462. package/is/undefined.js +17 -0
  463. package/is/utf8.d.ts +7 -0
  464. package/is/utf8.js +197 -0
  465. package/is/wasm.d.ts +7 -0
  466. package/{src/is/wasm.ts → is/wasm.js} +2 -7
  467. package/lazy.d.ts +14 -0
  468. package/lazy.js +51 -0
  469. package/logger.d.ts +17 -0
  470. package/logger.js +118 -0
  471. package/memoize.d.ts +10 -0
  472. package/memoize.js +30 -0
  473. package/nextTick.d.ts +5 -0
  474. package/nextTick.js +24 -0
  475. package/noop.d.ts +8 -0
  476. package/noop.js +12 -0
  477. package/number/index.d.ts +5 -0
  478. package/number/index.js +5 -0
  479. package/number/toHex.d.ts +17 -0
  480. package/{src/number/toHex.ts → number/toHex.js} +3 -10
  481. package/number/toU8a.d.ts +15 -0
  482. package/{src/number/toU8a.ts → number/toU8a.js} +2 -8
  483. package/object/clear.d.ts +5 -0
  484. package/object/clear.js +11 -0
  485. package/object/copy.d.ts +5 -0
  486. package/object/copy.js +8 -0
  487. package/object/entries.d.ts +9 -0
  488. package/object/entries.js +7 -0
  489. package/object/index.d.ts +7 -0
  490. package/object/index.js +7 -0
  491. package/object/keys.d.ts +5 -0
  492. package/object/keys.js +7 -0
  493. package/object/property.d.ts +10 -0
  494. package/object/property.js +34 -0
  495. package/object/spread.d.ts +6 -0
  496. package/object/spread.js +31 -0
  497. package/object/values.d.ts +5 -0
  498. package/object/values.js +7 -0
  499. package/package.json +1957 -10
  500. package/packageDetect.d.ts +1 -0
  501. package/{src/packageDetect.ts → packageDetect.js} +0 -8
  502. package/packageInfo.d.ts +6 -0
  503. package/packageInfo.js +1 -0
  504. package/promisify.d.ts +16 -0
  505. package/promisify.js +27 -0
  506. package/string/camelCase.d.ts +13 -0
  507. package/string/camelCase.js +59 -0
  508. package/string/index.d.ts +8 -0
  509. package/string/index.js +8 -0
  510. package/string/lowerFirst.d.ts +31 -0
  511. package/{src/string/lowerFirst.ts → string/lowerFirst.js} +4 -13
  512. package/string/shorten.d.ts +16 -0
  513. package/string/shorten.js +19 -0
  514. package/string/toHex.d.ts +16 -0
  515. package/{src/string/toHex.ts → string/toHex.js} +2 -10
  516. package/string/toU8a.d.ts +16 -0
  517. package/{src/string/toU8a.ts → string/toU8a.js} +4 -11
  518. package/stringify.d.ts +6 -0
  519. package/stringify.js +15 -0
  520. package/types.d.ts +62 -0
  521. package/types.js +1 -0
  522. package/u8a/cmp.d.ts +17 -0
  523. package/u8a/cmp.js +46 -0
  524. package/u8a/concat.d.ts +24 -0
  525. package/u8a/concat.js +47 -0
  526. package/u8a/concatBuffer.d.ts +19 -0
  527. package/u8a/concatBuffer.js +26 -0
  528. package/u8a/empty.d.ts +7 -0
  529. package/u8a/empty.js +17 -0
  530. package/u8a/eq.d.ts +15 -0
  531. package/u8a/eq.js +37 -0
  532. package/u8a/fixLength.d.ts +17 -0
  533. package/u8a/fixLength.js +28 -0
  534. package/u8a/index.d.ts +18 -0
  535. package/u8a/index.js +18 -0
  536. package/u8a/sorted.d.ts +15 -0
  537. package/{src/u8a/sorted.ts → u8a/sorted.js} +2 -6
  538. package/u8a/toBigInt.d.ts +6 -0
  539. package/u8a/toBigInt.js +70 -0
  540. package/u8a/toBn.d.ts +21 -0
  541. package/u8a/toBn.js +78 -0
  542. package/u8a/toBuffer.d.ts +16 -0
  543. package/{src/u8a/toBuffer.ts → u8a/toBuffer.js} +4 -11
  544. package/u8a/toFloat.d.ts +11 -0
  545. package/u8a/toFloat.js +17 -0
  546. package/u8a/toHex.d.ts +16 -0
  547. package/u8a/toHex.js +53 -0
  548. package/u8a/toHexBuffer.d.ts +16 -0
  549. package/u8a/toHexBuffer.js +22 -0
  550. package/u8a/toNumber.d.ts +6 -0
  551. package/u8a/toNumber.js +58 -0
  552. package/u8a/toString.d.ts +15 -0
  553. package/{src/u8a/toString.ts → u8a/toString.js} +4 -9
  554. package/u8a/toU8a.d.ts +19 -0
  555. package/{src/u8a/toU8a.ts → u8a/toU8a.js} +16 -23
  556. package/u8a/wrap.d.ts +22 -0
  557. package/u8a/wrap.js +43 -0
  558. package/src/array/chunk.spec.ts +0 -29
  559. package/src/array/chunk.ts +0 -35
  560. package/src/array/filter.spec.ts +0 -20
  561. package/src/array/flatten.spec.ts +0 -33
  562. package/src/array/flatten.ts +0 -51
  563. package/src/array/range.spec.ts +0 -29
  564. package/src/array/shuffle.spec.ts +0 -39
  565. package/src/array/shuffle.ts +0 -27
  566. package/src/array/unzip.spec.ts +0 -14
  567. package/src/array/unzip.ts +0 -18
  568. package/src/array/zip.spec.ts +0 -26
  569. package/src/array/zip.ts +0 -17
  570. package/src/assert.spec.ts +0 -40
  571. package/src/bi/helpers.ts +0 -23
  572. package/src/bi/max.spec.ts +0 -32
  573. package/src/bi/min.spec.ts +0 -26
  574. package/src/bi/min.ts +0 -16
  575. package/src/bi/sqrt.spec.ts +0 -59
  576. package/src/bi/sqrt.ts +0 -43
  577. package/src/bi/toBigInt.spec.ts +0 -69
  578. package/src/bi/toBigInt.ts +0 -33
  579. package/src/bi/toHex.spec.ts +0 -56
  580. package/src/bi/toHex.ts +0 -16
  581. package/src/bi/toU8a.spec.ts +0 -99
  582. package/src/bi/toU8a.ts +0 -72
  583. package/src/bn/bn.ts +0 -6
  584. package/src/bn/consts.spec.ts +0 -38
  585. package/src/bn/fromHex.spec.ts +0 -15
  586. package/src/bn/fromHex.ts +0 -4
  587. package/src/bn/max.spec.ts +0 -32
  588. package/src/bn/min.spec.ts +0 -26
  589. package/src/bn/sqrt.spec.ts +0 -37
  590. package/src/bn/sqrt.ts +0 -50
  591. package/src/bn/toBn.spec.ts +0 -53
  592. package/src/bn/toHex.spec.ts +0 -50
  593. package/src/bn/toU8a.spec.ts +0 -60
  594. package/src/bn/toU8a.ts +0 -45
  595. package/src/buffer/toU8a.spec.ts +0 -20
  596. package/src/compact/addLength.spec.ts +0 -14
  597. package/src/compact/defaults.ts +0 -7
  598. package/src/compact/fromU8a.spec.ts +0 -84
  599. package/src/compact/fromU8a.ts +0 -109
  600. package/src/compact/stripLength.spec.ts +0 -17
  601. package/src/compact/toU8a.spec.ts +0 -59
  602. package/src/compact/toU8a.ts +0 -53
  603. package/src/compact/types.ts +0 -4
  604. package/src/detectPackage.spec.ts +0 -110
  605. package/src/detectPackage.ts +0 -138
  606. package/src/extractTime.spec.ts +0 -21
  607. package/src/extractTime.ts +0 -71
  608. package/src/float/index.ts +0 -4
  609. package/src/float/toU8a.spec.ts +0 -52
  610. package/src/float/toU8a.ts +0 -30
  611. package/src/format/formatBalance.spec.ts +0 -296
  612. package/src/format/formatBalance.ts +0 -177
  613. package/src/format/formatDate.spec.ts +0 -17
  614. package/src/format/formatDate.ts +0 -22
  615. package/src/format/formatDecimal.spec.ts +0 -28
  616. package/src/format/formatDecimal.ts +0 -22
  617. package/src/format/formatElapsed.spec.ts +0 -44
  618. package/src/format/formatElapsed.ts +0 -35
  619. package/src/format/formatNumber.spec.ts +0 -60
  620. package/src/format/formatNumber.ts +0 -29
  621. package/src/format/getSeparator.spec.ts +0 -53
  622. package/src/format/getSeparator.ts +0 -15
  623. package/src/format/si.ts +0 -52
  624. package/src/has.spec.ts +0 -12
  625. package/src/hex/addPrefix.spec.ts +0 -32
  626. package/src/hex/fixLength.spec.ts +0 -38
  627. package/src/hex/hasPrefix.spec.ts +0 -32
  628. package/src/hex/stripPrefix.spec.ts +0 -44
  629. package/src/hex/toBigInt.spec.ts +0 -74
  630. package/src/hex/toBigInt.ts +0 -19
  631. package/src/hex/toBn.spec.ts +0 -74
  632. package/src/hex/toNumber.spec.ts +0 -20
  633. package/src/hex/toString.spec.ts +0 -20
  634. package/src/hex/toU8a.spec.ts +0 -76
  635. package/src/hex/toU8a.ts +0 -68
  636. package/src/hex/toU8aBuffer.spec.ts +0 -38
  637. package/src/hex/toU8aBuffer.ts +0 -52
  638. package/src/index.spec.ts +0 -12
  639. package/src/index.ts +0 -6
  640. package/src/is/array.spec.ts +0 -20
  641. package/src/is/array.ts +0 -10
  642. package/src/is/ascii.spec.ts +0 -49
  643. package/src/is/ascii.ts +0 -52
  644. package/src/is/bigInt.spec.ts +0 -26
  645. package/src/is/bn.spec.ts +0 -21
  646. package/src/is/boolean.spec.ts +0 -26
  647. package/src/is/buffer.spec.ts +0 -26
  648. package/src/is/buffer.ts +0 -28
  649. package/src/is/childClass.spec.ts +0 -36
  650. package/src/is/childClass.ts +0 -29
  651. package/src/is/class.spec.ts +0 -37
  652. package/src/is/class.ts +0 -12
  653. package/src/is/codec.spec.ts +0 -52
  654. package/src/is/codec.ts +0 -26
  655. package/src/is/compact.spec.ts +0 -27
  656. package/src/is/compact.ts +0 -19
  657. package/src/is/error.spec.ts +0 -20
  658. package/src/is/function.spec.ts +0 -20
  659. package/src/is/function.ts +0 -23
  660. package/src/is/helpers.ts +0 -23
  661. package/src/is/hex.spec.ts +0 -77
  662. package/src/is/hex.ts +0 -36
  663. package/src/is/instanceOf.spec.ts +0 -48
  664. package/src/is/instanceOf.ts +0 -24
  665. package/src/is/ip.spec.ts +0 -50
  666. package/src/is/jsonObject.spec.ts +0 -51
  667. package/src/is/null.spec.ts +0 -20
  668. package/src/is/number.spec.ts +0 -20
  669. package/src/is/object.spec.ts +0 -32
  670. package/src/is/object.ts +0 -24
  671. package/src/is/observable.spec.ts +0 -26
  672. package/src/is/promise.spec.ts +0 -32
  673. package/src/is/promise.ts +0 -6
  674. package/src/is/riscv.spec.ts +0 -36
  675. package/src/is/string.spec.ts +0 -32
  676. package/src/is/testChain.spec.ts +0 -25
  677. package/src/is/testChain.ts +0 -12
  678. package/src/is/toBigInt.spec.ts +0 -22
  679. package/src/is/toBigInt.ts +0 -8
  680. package/src/is/toBn.spec.ts +0 -25
  681. package/src/is/toBn.ts +0 -8
  682. package/src/is/u8a.spec.ts +0 -42
  683. package/src/is/u8a.ts +0 -25
  684. package/src/is/undefined.spec.ts +0 -23
  685. package/src/is/utf8.spec.ts +0 -42
  686. package/src/is/utf8.ts +0 -207
  687. package/src/is/wasm.spec.ts +0 -20
  688. package/src/lazy.spec.ts +0 -71
  689. package/src/lazy.ts +0 -63
  690. package/src/logger.spec.ts +0 -188
  691. package/src/logger.ts +0 -160
  692. package/src/memoize.spec.ts +0 -79
  693. package/src/memoize.ts +0 -49
  694. package/src/mod.ts +0 -4
  695. package/src/nextTick.ts +0 -26
  696. package/src/noop.ts +0 -16
  697. package/src/number/toHex.spec.ts +0 -44
  698. package/src/number/toU8a.spec.ts +0 -50
  699. package/src/object/clear.spec.ts +0 -14
  700. package/src/object/clear.ts +0 -16
  701. package/src/object/copy.spec.ts +0 -17
  702. package/src/object/copy.ts +0 -12
  703. package/src/object/entries.spec.ts +0 -20
  704. package/src/object/entries.ts +0 -12
  705. package/src/object/keys.spec.ts +0 -19
  706. package/src/object/keys.ts +0 -10
  707. package/src/object/property.spec.ts +0 -149
  708. package/src/object/property.ts +0 -39
  709. package/src/object/spread.spec.ts +0 -36
  710. package/src/object/spread.ts +0 -38
  711. package/src/object/values.spec.ts +0 -19
  712. package/src/object/values.ts +0 -10
  713. package/src/packageInfo.ts +0 -6
  714. package/src/promisify.spec.ts +0 -50
  715. package/src/string/camelCase.spec.ts +0 -119
  716. package/src/string/camelCase.ts +0 -79
  717. package/src/string/lowerFirst.spec.ts +0 -41
  718. package/src/string/pascalCase.spec.ts +0 -26
  719. package/src/string/shorten.spec.ts +0 -38
  720. package/src/string/toHex.spec.ts +0 -26
  721. package/src/string/toU8a.spec.ts +0 -31
  722. package/src/string/upperFirst.spec.ts +0 -41
  723. package/src/stringify.spec.ts +0 -33
  724. package/src/stringify.ts +0 -20
  725. package/src/test/index.ts +0 -4
  726. package/src/test/performance.ts +0 -92
  727. package/src/types.ts +0 -100
  728. package/src/u8a/cmp.spec.ts +0 -62
  729. package/src/u8a/cmp.ts +0 -50
  730. package/src/u8a/concat.spec.ts +0 -42
  731. package/src/u8a/concat.ts +0 -60
  732. package/src/u8a/concatBuffer.ts +0 -34
  733. package/src/u8a/empty.spec.ts +0 -46
  734. package/src/u8a/empty.ts +0 -22
  735. package/src/u8a/eq.spec.ts +0 -113
  736. package/src/u8a/eq.ts +0 -46
  737. package/src/u8a/fixLength.spec.ts +0 -34
  738. package/src/u8a/fixLength.ts +0 -34
  739. package/src/u8a/sorted.spec.ts +0 -20
  740. package/src/u8a/toBigInt.spec.ts +0 -106
  741. package/src/u8a/toBigInt.ts +0 -100
  742. package/src/u8a/toBn.spec.ts +0 -106
  743. package/src/u8a/toBn.ts +0 -101
  744. package/src/u8a/toBuffer.spec.ts +0 -20
  745. package/src/u8a/toFloat.spec.ts +0 -86
  746. package/src/u8a/toFloat.ts +0 -26
  747. package/src/u8a/toHex.spec.ts +0 -94
  748. package/src/u8a/toHex.ts +0 -68
  749. package/src/u8a/toHexBuffer.spec.ts +0 -63
  750. package/src/u8a/toHexBuffer.ts +0 -30
  751. package/src/u8a/toNumber.spec.ts +0 -47
  752. package/src/u8a/toNumber.ts +0 -80
  753. package/src/u8a/toString.spec.ts +0 -36
  754. package/src/u8a/toU8a.spec.ts +0 -63
  755. package/src/u8a/wrap.spec.ts +0 -139
  756. package/src/u8a/wrap.ts +0 -65
  757. package/tsconfig.build.json +0 -19
  758. package/tsconfig.spec.json +0 -17
package/u8a/eq.d.ts ADDED
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name u8aEq
3
+ * @summary Compares two Uint8Arrays for equality.
4
+ * @description
5
+ * For `UInt8Array` (or hex string) input values true if there is a match.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { u8aEq } from '@polkadot/util';
11
+ *
12
+ * u8aEq(new Uint8Array([0x68, 0x65]), new Uint8Array([0x68, 0x65])); // true
13
+ * ```
14
+ */
15
+ export declare function u8aEq(a: string | Uint8Array, b: string | Uint8Array): boolean;
package/u8a/eq.js ADDED
@@ -0,0 +1,37 @@
1
+ import { u8aToU8a } from './toU8a.js';
2
+ /**
3
+ * @name u8aEq
4
+ * @summary Compares two Uint8Arrays for equality.
5
+ * @description
6
+ * For `UInt8Array` (or hex string) input values true if there is a match.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { u8aEq } from '@pezkuwi/util';
12
+ *
13
+ * u8aEq(new Uint8Array([0x68, 0x65]), new Uint8Array([0x68, 0x65])); // true
14
+ * ```
15
+ */
16
+ export function u8aEq(a, b) {
17
+ const u8aa = u8aToU8a(a);
18
+ const u8ab = u8aToU8a(b);
19
+ if (u8aa.length === u8ab.length) {
20
+ const dvA = new DataView(u8aa.buffer, u8aa.byteOffset);
21
+ const dvB = new DataView(u8ab.buffer, u8ab.byteOffset);
22
+ const mod = (u8aa.length % 4) | 0;
23
+ const length = (u8aa.length - mod) | 0;
24
+ for (let i = 0; i < length; i += 4) {
25
+ if (dvA.getUint32(i) !== dvB.getUint32(i)) {
26
+ return false;
27
+ }
28
+ }
29
+ for (let i = length, count = u8aa.length; i < count; i++) {
30
+ if (u8aa[i] !== u8ab[i]) {
31
+ return false;
32
+ }
33
+ }
34
+ return true;
35
+ }
36
+ return false;
37
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @name u8aFixLength
3
+ * @summary Shifts a Uint8Array to a specific bitLength
4
+ * @description
5
+ * Returns a uint8Array with the specified number of bits contained in the return value. (If bitLength is -1, length checking is not done). Values with more bits are trimmed to the specified length.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { u8aFixLength } from '@polkadot/util';
11
+ *
12
+ * u8aFixLength('0x12') // => 0x12
13
+ * u8aFixLength('0x12', 16) // => 0x0012
14
+ * u8aFixLength('0x1234', 8) // => 0x12
15
+ * ```
16
+ */
17
+ export declare function u8aFixLength(value: Uint8Array, bitLength?: number, atStart?: boolean): Uint8Array;
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @name u8aFixLength
3
+ * @summary Shifts a Uint8Array to a specific bitLength
4
+ * @description
5
+ * Returns a uint8Array with the specified number of bits contained in the return value. (If bitLength is -1, length checking is not done). Values with more bits are trimmed to the specified length.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { u8aFixLength } from '@pezkuwi/util';
11
+ *
12
+ * u8aFixLength('0x12') // => 0x12
13
+ * u8aFixLength('0x12', 16) // => 0x0012
14
+ * u8aFixLength('0x1234', 8) // => 0x12
15
+ * ```
16
+ */
17
+ export function u8aFixLength(value, bitLength = -1, atStart = false) {
18
+ const byteLength = Math.ceil(bitLength / 8);
19
+ if (bitLength === -1 || value.length === byteLength) {
20
+ return value;
21
+ }
22
+ else if (value.length > byteLength) {
23
+ return value.subarray(0, byteLength);
24
+ }
25
+ const result = new Uint8Array(byteLength);
26
+ result.set(value, atStart ? 0 : (byteLength - value.length));
27
+ return result;
28
+ }
package/u8a/index.d.ts ADDED
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @summary Utility methods to convert to and from `Uint8Array` objects
3
+ */
4
+ export { u8aCmp } from './cmp.js';
5
+ export { u8aConcat, u8aConcatStrict } from './concat.js';
6
+ export { u8aEmpty } from './empty.js';
7
+ export { u8aEq } from './eq.js';
8
+ export { u8aFixLength } from './fixLength.js';
9
+ export { u8aSorted } from './sorted.js';
10
+ export { u8aToBigInt } from './toBigInt.js';
11
+ export { u8aToBn } from './toBn.js';
12
+ export { u8aToBuffer } from './toBuffer.js';
13
+ export { u8aToFloat } from './toFloat.js';
14
+ export { u8aToHex } from './toHex.js';
15
+ export { u8aToNumber } from './toNumber.js';
16
+ export { u8aToString } from './toString.js';
17
+ export { u8aToU8a } from './toU8a.js';
18
+ export { U8A_WRAP_ETHEREUM, U8A_WRAP_POSTFIX, U8A_WRAP_PREFIX, u8aIsWrapped, u8aUnwrapBytes, u8aWrapBytes } from './wrap.js';
package/u8a/index.js ADDED
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @summary Utility methods to convert to and from `Uint8Array` objects
3
+ */
4
+ export { u8aCmp } from './cmp.js';
5
+ export { u8aConcat, u8aConcatStrict } from './concat.js';
6
+ export { u8aEmpty } from './empty.js';
7
+ export { u8aEq } from './eq.js';
8
+ export { u8aFixLength } from './fixLength.js';
9
+ export { u8aSorted } from './sorted.js';
10
+ export { u8aToBigInt } from './toBigInt.js';
11
+ export { u8aToBn } from './toBn.js';
12
+ export { u8aToBuffer } from './toBuffer.js';
13
+ export { u8aToFloat } from './toFloat.js';
14
+ export { u8aToHex } from './toHex.js';
15
+ export { u8aToNumber } from './toNumber.js';
16
+ export { u8aToString } from './toString.js';
17
+ export { u8aToU8a } from './toU8a.js';
18
+ export { U8A_WRAP_ETHEREUM, U8A_WRAP_POSTFIX, U8A_WRAP_PREFIX, u8aIsWrapped, u8aUnwrapBytes, u8aWrapBytes } from './wrap.js';
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name u8aSorted
3
+ * @summary Sorts an array of Uint8Arrays
4
+ * @description
5
+ * For input `UInt8Array[]` return the sorted result
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { u8aSorted} from '@polkadot/util';
11
+ *
12
+ * u8aSorted([new Uint8Array([0x69]), new Uint8Array([0x68])]); // [0x68, 0x69]
13
+ * ```
14
+ */
15
+ export declare function u8aSorted(u8as: Uint8Array[]): Uint8Array[];
@@ -1,8 +1,4 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
1
  import { u8aCmp } from './cmp.js';
5
-
6
2
  /**
7
3
  * @name u8aSorted
8
4
  * @summary Sorts an array of Uint8Arrays
@@ -17,6 +13,6 @@ import { u8aCmp } from './cmp.js';
17
13
  * u8aSorted([new Uint8Array([0x69]), new Uint8Array([0x68])]); // [0x68, 0x69]
18
14
  * ```
19
15
  */
20
- export function u8aSorted (u8as: Uint8Array[]): Uint8Array[] {
21
- return u8as.sort(u8aCmp);
16
+ export function u8aSorted(u8as) {
17
+ return u8as.sort(u8aCmp);
22
18
  }
@@ -0,0 +1,6 @@
1
+ import type { ToBnOptions } from '../types.js';
2
+ /**
3
+ * @name u8aToBigInt
4
+ * @summary Creates a BigInt from a Uint8Array object.
5
+ */
6
+ export declare function u8aToBigInt(value: Uint8Array, { isLe, isNegative }?: ToBnOptions): bigint;
@@ -0,0 +1,70 @@
1
+ import { BigInt } from '@pezkuwi/x-bigint';
2
+ import { _1n } from '../bi/consts.js';
3
+ const U8_MAX = BigInt(256);
4
+ const U16_MAX = BigInt(256 * 256);
5
+ const U64_MAX = BigInt('0x10000000000000000');
6
+ /**
7
+ * @name u8aToBigInt
8
+ * @summary Creates a BigInt from a Uint8Array object.
9
+ */
10
+ export function u8aToBigInt(value, { isLe = true, isNegative = false } = {}) {
11
+ // slice + reverse is expensive, however SCALE is LE by default so this is the path
12
+ // we are most interested in (the BE is added for the sake of being comprehensive)
13
+ if (!isLe) {
14
+ value = value.slice().reverse();
15
+ }
16
+ const count = value.length;
17
+ if (isNegative && count && (value[count - 1] & 0x80)) {
18
+ switch (count) {
19
+ case 0:
20
+ return BigInt(0);
21
+ case 1:
22
+ return BigInt(((value[0] ^ 0x0000_00ff) * -1) - 1);
23
+ case 2:
24
+ return BigInt((((value[0] + (value[1] << 8)) ^ 0x0000_ffff) * -1) - 1);
25
+ case 4:
26
+ return BigInt((((value[0] + (value[1] << 8) + (value[2] << 16) + (value[3] * 0x1_00_00_00)) ^ 0xffff_ffff) * -1) - 1);
27
+ }
28
+ const dvI = new DataView(value.buffer, value.byteOffset);
29
+ if (count === 8) {
30
+ return dvI.getBigInt64(0, true);
31
+ }
32
+ let result = BigInt(0);
33
+ const mod = count % 2;
34
+ for (let i = count - 2; i >= mod; i -= 2) {
35
+ result = (result * U16_MAX) + BigInt(dvI.getUint16(i, true) ^ 0xffff);
36
+ }
37
+ if (mod) {
38
+ result = (result * U8_MAX) + BigInt(value[0] ^ 0xff);
39
+ }
40
+ return (result * -_1n) - _1n;
41
+ }
42
+ switch (count) {
43
+ case 0:
44
+ return BigInt(0);
45
+ case 1:
46
+ return BigInt(value[0]);
47
+ case 2:
48
+ return BigInt(value[0] + (value[1] << 8));
49
+ case 4:
50
+ return BigInt(value[0] + (value[1] << 8) + (value[2] << 16) + (value[3] * 0x1_00_00_00));
51
+ }
52
+ const dvI = new DataView(value.buffer, value.byteOffset);
53
+ switch (count) {
54
+ case 8:
55
+ return dvI.getBigUint64(0, true);
56
+ case 16:
57
+ return (dvI.getBigUint64(8, true) * U64_MAX) + dvI.getBigUint64(0, true);
58
+ default: {
59
+ let result = BigInt(0);
60
+ const mod = count % 2;
61
+ for (let i = count - 2; i >= mod; i -= 2) {
62
+ result = (result * U16_MAX) + BigInt(dvI.getUint16(i, true));
63
+ }
64
+ if (mod) {
65
+ result = (result * U8_MAX) + BigInt(value[0]);
66
+ }
67
+ return result;
68
+ }
69
+ }
70
+ }
package/u8a/toBn.d.ts ADDED
@@ -0,0 +1,21 @@
1
+ import type { ToBnOptions } from '../types.js';
2
+ import { BN } from '../bn/bn.js';
3
+ /**
4
+ * @name u8aToBn
5
+ * @summary Creates a BN from a Uint8Array object.
6
+ * @description
7
+ * `UInt8Array` input values return the actual BN. `null` or `undefined` values returns an `0x0` value.
8
+ * @param value The value to convert
9
+ * @param options Options to pass while converting
10
+ * @param options.isLe Convert using Little Endian (default)
11
+ * @param options.isNegative Convert using two's complement
12
+ * @example
13
+ * <BR>
14
+ *
15
+ * ```javascript
16
+ * import { u8aToBn } from '@polkadot/util';
17
+ *
18
+ * u8aToHex(new Uint8Array([0x68, 0x65, 0x6c, 0x6c, 0xf])); // 0x68656c0f
19
+ * ```
20
+ */
21
+ export declare function u8aToBn(value: Uint8Array, { isLe, isNegative }?: ToBnOptions): BN;
package/u8a/toBn.js ADDED
@@ -0,0 +1,78 @@
1
+ import { BN } from '../bn/bn.js';
2
+ /**
3
+ * @name u8aToBn
4
+ * @summary Creates a BN from a Uint8Array object.
5
+ * @description
6
+ * `UInt8Array` input values return the actual BN. `null` or `undefined` values returns an `0x0` value.
7
+ * @param value The value to convert
8
+ * @param options Options to pass while converting
9
+ * @param options.isLe Convert using Little Endian (default)
10
+ * @param options.isNegative Convert using two's complement
11
+ * @example
12
+ * <BR>
13
+ *
14
+ * ```javascript
15
+ * import { u8aToBn } from '@pezkuwi/util';
16
+ *
17
+ * u8aToHex(new Uint8Array([0x68, 0x65, 0x6c, 0x6c, 0xf])); // 0x68656c0f
18
+ * ```
19
+ */
20
+ export function u8aToBn(value, { isLe = true, isNegative = false } = {}) {
21
+ // slice + reverse is expensive, however SCALE is LE by default so this is the path
22
+ // we are most interested in (the BE is added for the sake of being comprehensive)
23
+ if (!isLe) {
24
+ value = value.slice().reverse();
25
+ }
26
+ const count = value.length;
27
+ // shortcut for <= u48 values - in this case the manual conversion
28
+ // here seems to be more efficient than passing the full array
29
+ if (isNegative && count && (value[count - 1] & 0x80)) {
30
+ // Most common case i{8, 16, 32} default LE SCALE-encoded
31
+ // For <= 32, we also optimize the xor to a single op
32
+ switch (count) {
33
+ case 0:
34
+ return new BN(0);
35
+ case 1:
36
+ return new BN(((value[0] ^ 0x0000_00ff) * -1) - 1);
37
+ case 2:
38
+ return new BN((((value[0] + (value[1] << 8)) ^ 0x0000_ffff) * -1) - 1);
39
+ case 3:
40
+ return new BN((((value[0] + (value[1] << 8) + (value[2] << 16)) ^ 0x00ff_ffff) * -1) - 1);
41
+ case 4:
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 new BN((((value[0] + (value[1] << 8) + (value[2] << 16) + (value[3] * 0x1_00_00_00)) ^ 0xffff_ffff) * -1) - 1);
45
+ case 5:
46
+ return new BN(((((value[0] + (value[1] << 8) + (value[2] << 16) + (value[3] * 0x1_00_00_00)) ^ 0xffff_ffff) + ((value[4] ^ 0xff) * 0x1_00_00_00_00)) * -1) - 1);
47
+ case 6:
48
+ return new BN(((((value[0] + (value[1] << 8) + (value[2] << 16) + (value[3] * 0x1_00_00_00)) ^ 0xffff_ffff) + (((value[4] + (value[5] << 8)) ^ 0x0000_ffff) * 0x1_00_00_00_00)) * -1) - 1);
49
+ default:
50
+ return new BN(value, 'le').fromTwos(count * 8);
51
+ }
52
+ }
53
+ // Most common case - u{8, 16, 32} default LE SCALE-encoded
54
+ //
55
+ // There are some slight benefits in unrolling this specific loop,
56
+ // however it comes with diminishing returns since here the actual
57
+ // `new BN` does seem to take up the bulk of the time
58
+ switch (count) {
59
+ case 0:
60
+ return new BN(0);
61
+ case 1:
62
+ return new BN(value[0]);
63
+ case 2:
64
+ return new BN(value[0] + (value[1] << 8));
65
+ case 3:
66
+ return new BN(value[0] + (value[1] << 8) + (value[2] << 16));
67
+ case 4:
68
+ // for the 3rd byte, we don't << 24 - since JS converts all bitwise operators to
69
+ // 32-bit, in the case where the top-most bit is set this yields a negative value
70
+ return new BN(value[0] + (value[1] << 8) + (value[2] << 16) + (value[3] * 0x1_00_00_00));
71
+ case 5:
72
+ return new BN(value[0] + (value[1] << 8) + (value[2] << 16) + ((value[3] + (value[4] << 8)) * 0x1_00_00_00));
73
+ case 6:
74
+ return new BN(value[0] + (value[1] << 8) + (value[2] << 16) + ((value[3] + (value[4] << 8) + (value[5] << 16)) * 0x1_00_00_00));
75
+ default:
76
+ return new BN(value, 'le');
77
+ }
78
+ }
@@ -0,0 +1,16 @@
1
+ import type { BufferObject } from '../types.js';
2
+ /**
3
+ * @name u8aToBuffer
4
+ * @summary Creates a Buffer object from a hex string.
5
+ * @description
6
+ * `null` inputs returns an empty `Buffer` result. `UInt8Array` input values return the actual bytes value converted to a `Buffer`. Anything that is not a `UInt8Array` throws an error.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { u8aToBuffer } from '@polkadot/util';
12
+ *
13
+ * console.log('Buffer', u8aToBuffer(new Uint8Array([1, 2, 3])));
14
+ * ```
15
+ */
16
+ export declare function u8aToBuffer<T = BufferObject>(value?: Uint8Array | null): T;
@@ -1,12 +1,5 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- import type { BufferClass, BufferObject } from '../types.js';
5
-
6
1
  import { xglobal } from '@pezkuwi/x-global';
7
-
8
2
  import { hasBuffer } from '../has.js';
9
-
10
3
  /**
11
4
  * @name u8aToBuffer
12
5
  * @summary Creates a Buffer object from a hex string.
@@ -21,8 +14,8 @@ import { hasBuffer } from '../has.js';
21
14
  * console.log('Buffer', u8aToBuffer(new Uint8Array([1, 2, 3])));
22
15
  * ```
23
16
  */
24
- export function u8aToBuffer <T = BufferObject> (value?: Uint8Array | null): T {
25
- return hasBuffer
26
- ? (xglobal.Buffer as unknown as BufferClass).from(value || [])
27
- : new Uint8Array(value || []) as T;
17
+ export function u8aToBuffer(value) {
18
+ return hasBuffer
19
+ ? xglobal.Buffer.from(value || [])
20
+ : new Uint8Array(value || []);
28
21
  }
@@ -0,0 +1,11 @@
1
+ interface Options {
2
+ bitLength?: 32 | 64;
3
+ isLe?: boolean;
4
+ }
5
+ /**
6
+ * @name u8aToFloat
7
+ * @description Converts a Uint8Array value into the float (either 32 or 64-bit)
8
+ * representation.
9
+ */
10
+ export declare function u8aToFloat(value: Uint8Array, { bitLength, isLe }?: Options): number;
11
+ export {};
package/u8a/toFloat.js ADDED
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @name u8aToFloat
3
+ * @description Converts a Uint8Array value into the float (either 32 or 64-bit)
4
+ * representation.
5
+ */
6
+ export function u8aToFloat(value, { bitLength = 32, isLe = true } = {}) {
7
+ if (bitLength !== 32 && bitLength !== 64) {
8
+ throw new Error('Invalid bitLength provided, expected 32 or 64');
9
+ }
10
+ else if (value.length < (bitLength / 8)) {
11
+ throw new Error(`Invalid input buffer provided, expected at least ${bitLength / 8} bytes, found ${value.length}`);
12
+ }
13
+ const dv = new DataView(value.buffer, value.byteOffset);
14
+ return bitLength === 32
15
+ ? dv.getFloat32(0, isLe)
16
+ : dv.getFloat64(0, isLe);
17
+ }
package/u8a/toHex.d.ts ADDED
@@ -0,0 +1,16 @@
1
+ import type { HexString } from '../types.js';
2
+ /**
3
+ * @name u8aToHex
4
+ * @summary Creates a hex string from a Uint8Array object.
5
+ * @description
6
+ * `UInt8Array` input values return the actual hex string. `null` or `undefined` values returns an `0x` string.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { u8aToHex } from '@polkadot/util';
12
+ *
13
+ * u8aToHex(new Uint8Array([0x68, 0x65, 0x6c, 0x6c, 0xf])); // 0x68656c0f
14
+ * ```
15
+ */
16
+ export declare function u8aToHex(value?: Uint8Array | null, bitLength?: number, isPrefixed?: boolean): HexString;
package/u8a/toHex.js ADDED
@@ -0,0 +1,53 @@
1
+ const U8 = new Array(256);
2
+ const U16 = new Array(256 * 256);
3
+ for (let n = 0; n < 256; n++) {
4
+ U8[n] = n.toString(16).padStart(2, '0');
5
+ }
6
+ for (let i = 0; i < 256; i++) {
7
+ const s = i << 8;
8
+ for (let j = 0; j < 256; j++) {
9
+ U16[s | j] = U8[i] + U8[j];
10
+ }
11
+ }
12
+ /** @internal */
13
+ function hex(value, result) {
14
+ const mod = (value.length % 2) | 0;
15
+ const length = (value.length - mod) | 0;
16
+ for (let i = 0; i < length; i += 2) {
17
+ result += U16[(value[i] << 8) | value[i + 1]];
18
+ }
19
+ if (mod) {
20
+ result += U8[value[length] | 0];
21
+ }
22
+ return result;
23
+ }
24
+ /**
25
+ * @name u8aToHex
26
+ * @summary Creates a hex string from a Uint8Array object.
27
+ * @description
28
+ * `UInt8Array` input values return the actual hex string. `null` or `undefined` values returns an `0x` string.
29
+ * @example
30
+ * <BR>
31
+ *
32
+ * ```javascript
33
+ * import { u8aToHex } from '@pezkuwi/util';
34
+ *
35
+ * u8aToHex(new Uint8Array([0x68, 0x65, 0x6c, 0x6c, 0xf])); // 0x68656c0f
36
+ * ```
37
+ */
38
+ export function u8aToHex(value, bitLength = -1, isPrefixed = true) {
39
+ // this is not 100% correct sinmce we support isPrefixed = false....
40
+ const empty = isPrefixed
41
+ ? '0x'
42
+ : '';
43
+ if (!value?.length) {
44
+ return empty;
45
+ }
46
+ else if (bitLength > 0) {
47
+ const length = Math.ceil(bitLength / 8);
48
+ if (value.length > length) {
49
+ return `${hex(value.subarray(0, length / 2), empty)}…${hex(value.subarray(value.length - length / 2), '')}`;
50
+ }
51
+ }
52
+ return hex(value, empty);
53
+ }
@@ -0,0 +1,16 @@
1
+ import type { HexString } from '../types.js';
2
+ /**
3
+ * @name u8aToHex
4
+ * @summary Creates a hex string from a Uint8Array object.
5
+ * @description
6
+ * `UInt8Array` input values return the actual hex string. `null` or `undefined` values returns an `0x` string.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { u8aToHex } from '@polkadot/util';
12
+ *
13
+ * u8aToHex(new Uint8Array([0x68, 0x65, 0x6c, 0x6c, 0xf])); // 0x68656c0f
14
+ * ```
15
+ */
16
+ export declare function u8aToHex(value?: Uint8Array | null, bitLength?: number, isPrefixed?: boolean): HexString;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @name u8aToHex
3
+ * @summary Creates a hex string from a Uint8Array object.
4
+ * @description
5
+ * `UInt8Array` input values return the actual hex string. `null` or `undefined` values returns an `0x` string.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { u8aToHex } from '@pezkuwi/util';
11
+ *
12
+ * u8aToHex(new Uint8Array([0x68, 0x65, 0x6c, 0x6c, 0xf])); // 0x68656c0f
13
+ * ```
14
+ */
15
+ export function u8aToHex(value, bitLength = -1, isPrefixed = true) {
16
+ const length = Math.ceil(bitLength / 8);
17
+ return `${isPrefixed ? '0x' : ''}${!value?.length
18
+ ? ''
19
+ : (bitLength > 0 && value.length > length)
20
+ ? `${Buffer.from(value.subarray(0, length / 2)).toString('hex')}…${Buffer.from(value.subarray(value.length - length / 2)).toString('hex')}`
21
+ : Buffer.from(value).toString('hex')}`;
22
+ }
@@ -0,0 +1,6 @@
1
+ import type { ToBnOptions } from '../types.js';
2
+ /**
3
+ * @name u8aToNumber
4
+ * @summary Creates a number from a Uint8Array object.
5
+ */
6
+ export declare function u8aToNumber(value: Uint8Array, { isLe, isNegative }?: ToBnOptions): number;
@@ -0,0 +1,58 @@
1
+ /**
2
+ * @name u8aToNumber
3
+ * @summary Creates a number from a Uint8Array object.
4
+ */
5
+ export function u8aToNumber(value, { isLe = true, isNegative = false } = {}) {
6
+ // slice + reverse is expensive, however SCALE is LE by default so this is the path
7
+ // we are most interested in (the BE is added for the sake of being comprehensive)
8
+ if (!isLe) {
9
+ value = value.slice().reverse();
10
+ }
11
+ const count = value.length;
12
+ // When the value is a i{8, 16, 24, 32, 40, 40} values and the top-most bit
13
+ // indicates a signed value, we use a two's complement conversion. If one of these
14
+ // flags are not set, we just do a normal unsigned conversion (the same shortcut
15
+ // applies in both the u8aTo{BigInt, Bn} conversions as well)
16
+ if (isNegative && count && (value[count - 1] & 0x80)) {
17
+ switch (count) {
18
+ case 0:
19
+ return 0;
20
+ case 1:
21
+ return (((value[0] ^ 0x0000_00ff) * -1) - 1);
22
+ case 2:
23
+ return ((((value[0] + (value[1] << 8)) ^ 0x0000_ffff) * -1) - 1);
24
+ case 3:
25
+ return ((((value[0] + (value[1] << 8) + (value[2] << 16)) ^ 0x00ff_ffff) * -1) - 1);
26
+ case 4:
27
+ // for the 3rd byte, we don't << 24 - since JS converts all bitwise operators to
28
+ // 32-bit, in the case where the top-most bit is set this yields a negative value
29
+ return ((((value[0] + (value[1] << 8) + (value[2] << 16) + (value[3] * 0x1_00_00_00)) ^ 0xffff_ffff) * -1) - 1);
30
+ case 5:
31
+ return (((((value[0] + (value[1] << 8) + (value[2] << 16) + (value[3] * 0x1_00_00_00)) ^ 0xffff_ffff) + ((value[4] ^ 0xff) * 0x1_00_00_00_00)) * -1) - 1);
32
+ case 6:
33
+ return (((((value[0] + (value[1] << 8) + (value[2] << 16) + (value[3] * 0x1_00_00_00)) ^ 0xffff_ffff) + (((value[4] + (value[5] << 8)) ^ 0x0000_ffff) * 0x1_00_00_00_00)) * -1) - 1);
34
+ default:
35
+ throw new Error('Value more than 48-bits cannot be reliably converted');
36
+ }
37
+ }
38
+ switch (count) {
39
+ case 0:
40
+ return 0;
41
+ case 1:
42
+ return value[0];
43
+ case 2:
44
+ return value[0] + (value[1] << 8);
45
+ case 3:
46
+ return value[0] + (value[1] << 8) + (value[2] << 16);
47
+ case 4:
48
+ // for the 3rd byte, we don't << 24 - since JS converts all bitwise operators to
49
+ // 32-bit, in the case where the top-most bit is set this yields a negative value
50
+ return value[0] + (value[1] << 8) + (value[2] << 16) + (value[3] * 0x1_00_00_00);
51
+ case 5:
52
+ return value[0] + (value[1] << 8) + (value[2] << 16) + ((value[3] + (value[4] << 8)) * 0x1_00_00_00);
53
+ case 6:
54
+ return value[0] + (value[1] << 8) + (value[2] << 16) + ((value[3] + (value[4] << 8) + (value[5] << 16)) * 0x1_00_00_00);
55
+ default:
56
+ throw new Error('Value more than 48-bits cannot be reliably converted');
57
+ }
58
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name u8aToString
3
+ * @summary Creates a utf-8 string from a Uint8Array object.
4
+ * @description
5
+ * `UInt8Array` input values return the actual decoded utf-8 string. `null` or `undefined` values returns an empty string.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { u8aToString } from '@polkadot/util';
11
+ *
12
+ * u8aToString(new Uint8Array([0x68, 0x65, 0x6c, 0x6c, 0x6f])); // hello
13
+ * ```
14
+ */
15
+ export declare function u8aToString(value?: Uint8Array | null): string;
@@ -1,10 +1,5 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
1
  import { TextDecoder } from '@pezkuwi/x-textdecoder';
5
-
6
2
  const decoder = new TextDecoder('utf-8');
7
-
8
3
  /**
9
4
  * @name u8aToString
10
5
  * @summary Creates a utf-8 string from a Uint8Array object.
@@ -19,8 +14,8 @@ const decoder = new TextDecoder('utf-8');
19
14
  * u8aToString(new Uint8Array([0x68, 0x65, 0x6c, 0x6c, 0x6f])); // hello
20
15
  * ```
21
16
  */
22
- export function u8aToString (value?: Uint8Array | null): string {
23
- return value
24
- ? decoder.decode(value)
25
- : '';
17
+ export function u8aToString(value) {
18
+ return value
19
+ ? decoder.decode(value)
20
+ : '';
26
21
  }