@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/toU8a.d.ts ADDED
@@ -0,0 +1,19 @@
1
+ import type { U8aLike } from '../types.js';
2
+ /**
3
+ * @name u8aToU8a
4
+ * @summary Creates a Uint8Array value from a Uint8Array, Buffer, string or hex input.
5
+ * @description
6
+ * `null` or `undefined` inputs returns a `[]` result, Uint8Array values returns the value, hex strings returns a Uint8Array representation.
7
+ * If `strict` is true, `null` or `undefined` will throw an error instead of returning an empty array.
8
+ * Supports input types: Uint8Array, Buffer, hex string, string, or number array.
9
+ * @example
10
+ * <BR>
11
+ *
12
+ * ```javascript
13
+ * import { u8aToU8a } from '@polkadot/util';
14
+ *
15
+ * u8aToU8a(new Uint8Array([0x12, 0x34]); // => Uint8Array([0x12, 0x34])
16
+ * u8aToU8a(0x1234); // => Uint8Array([0x12, 0x34])
17
+ * ```
18
+ */
19
+ export declare function u8aToU8a(value?: U8aLike | null, strict?: boolean): Uint8Array;
@@ -1,14 +1,8 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- import type { U8aLike } from '../types.js';
5
-
6
1
  import { hexToU8a } from '../hex/toU8a.js';
7
2
  import { isBuffer } from '../is/buffer.js';
8
3
  import { isHex } from '../is/hex.js';
9
4
  import { isU8a } from '../is/u8a.js';
10
5
  import { stringToU8a } from '../string/toU8a.js';
11
-
12
6
  /**
13
7
  * @name u8aToU8a
14
8
  * @summary Creates a Uint8Array value from a Uint8Array, Buffer, string or hex input.
@@ -26,21 +20,20 @@ import { stringToU8a } from '../string/toU8a.js';
26
20
  * u8aToU8a(0x1234); // => Uint8Array([0x12, 0x34])
27
21
  * ```
28
22
  */
29
- export function u8aToU8a (value?: U8aLike | null, strict = false): Uint8Array {
30
- if (strict && (value === null || value === undefined)) {
31
- throw new Error('u8aToU8a: Expected non-null, non-undefined value');
32
- }
33
-
34
- return isU8a(value)
35
- // NOTE isBuffer needs to go here since it actually extends
36
- // Uint8Array on Node.js environments, so all Buffer are Uint8Array,
37
- // but Uint8Array is not Buffer
38
- ? isBuffer(value)
39
- ? new Uint8Array(value)
40
- : value
41
- : isHex(value)
42
- ? hexToU8a(value)
43
- : Array.isArray(value)
44
- ? new Uint8Array(value)
45
- : stringToU8a(value);
23
+ export function u8aToU8a(value, strict = false) {
24
+ if (strict && (value === null || value === undefined)) {
25
+ throw new Error('u8aToU8a: Expected non-null, non-undefined value');
26
+ }
27
+ return isU8a(value)
28
+ // NOTE isBuffer needs to go here since it actually extends
29
+ // Uint8Array on Node.js environments, so all Buffer are Uint8Array,
30
+ // but Uint8Array is not Buffer
31
+ ? isBuffer(value)
32
+ ? new Uint8Array(value)
33
+ : value
34
+ : isHex(value)
35
+ ? hexToU8a(value)
36
+ : Array.isArray(value)
37
+ ? new Uint8Array(value)
38
+ : stringToU8a(value);
46
39
  }
package/u8a/wrap.d.ts ADDED
@@ -0,0 +1,22 @@
1
+ import type { U8aLike } from '../types.js';
2
+ /** @internal */
3
+ export declare const U8A_WRAP_ETHEREUM: Uint8Array;
4
+ /** @internal */
5
+ export declare const U8A_WRAP_PREFIX: Uint8Array;
6
+ /** @internal */
7
+ export declare const U8A_WRAP_POSTFIX: Uint8Array;
8
+ /** @internal */
9
+ export declare function u8aIsWrapped(u8a: Uint8Array, withEthereum: boolean): boolean;
10
+ /**
11
+ * @name u8aUnwrapBytes
12
+ * @description Removes all <Bytes>...</Bytes> wrappers from the supplied value
13
+ */
14
+ export declare function u8aUnwrapBytes(bytes: U8aLike): Uint8Array;
15
+ /**
16
+ * @name u8aWrapBytes
17
+ * @description
18
+ * Adds a <Bytes>...</Bytes> wrapper to the supplied value, if
19
+ * - We don't already have a Bytes wrapper
20
+ * - The message is not an Ethereum-style message
21
+ */
22
+ export declare function u8aWrapBytes(bytes: U8aLike): Uint8Array;
package/u8a/wrap.js ADDED
@@ -0,0 +1,43 @@
1
+ import { u8aConcatStrict } from './concat.js';
2
+ import { u8aEq } from './eq.js';
3
+ import { u8aToU8a } from './toU8a.js';
4
+ /** @internal */
5
+ export const U8A_WRAP_ETHEREUM = /*#__PURE__*/ u8aToU8a('\x19Ethereum Signed Message:\n');
6
+ /** @internal */
7
+ export const U8A_WRAP_PREFIX = /*#__PURE__*/ u8aToU8a('<Bytes>');
8
+ /** @internal */
9
+ export const U8A_WRAP_POSTFIX = /*#__PURE__*/ u8aToU8a('</Bytes>');
10
+ const WRAP_LEN = U8A_WRAP_PREFIX.length + U8A_WRAP_POSTFIX.length;
11
+ /** @internal */
12
+ export function u8aIsWrapped(u8a, withEthereum) {
13
+ return ((u8a.length >= WRAP_LEN &&
14
+ u8aEq(u8a.subarray(0, U8A_WRAP_PREFIX.length), U8A_WRAP_PREFIX) &&
15
+ u8aEq(u8a.slice(-U8A_WRAP_POSTFIX.length), U8A_WRAP_POSTFIX)) ||
16
+ (withEthereum &&
17
+ u8a.length >= U8A_WRAP_ETHEREUM.length &&
18
+ u8aEq(u8a.subarray(0, U8A_WRAP_ETHEREUM.length), U8A_WRAP_ETHEREUM)));
19
+ }
20
+ /**
21
+ * @name u8aUnwrapBytes
22
+ * @description Removes all <Bytes>...</Bytes> wrappers from the supplied value
23
+ */
24
+ export function u8aUnwrapBytes(bytes) {
25
+ const u8a = u8aToU8a(bytes);
26
+ // we don't want to unwrap Ethereum-style wraps
27
+ return u8aIsWrapped(u8a, false)
28
+ ? u8a.subarray(U8A_WRAP_PREFIX.length, u8a.length - U8A_WRAP_POSTFIX.length)
29
+ : u8a;
30
+ }
31
+ /**
32
+ * @name u8aWrapBytes
33
+ * @description
34
+ * Adds a <Bytes>...</Bytes> wrapper to the supplied value, if
35
+ * - We don't already have a Bytes wrapper
36
+ * - The message is not an Ethereum-style message
37
+ */
38
+ export function u8aWrapBytes(bytes) {
39
+ const u8a = u8aToU8a(bytes);
40
+ return u8aIsWrapped(u8a, true)
41
+ ? u8a
42
+ : u8aConcatStrict([U8A_WRAP_PREFIX, u8a, U8A_WRAP_POSTFIX]);
43
+ }
@@ -1,29 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /// <reference types="@polkadot/dev-test/globals.d.ts" />
5
-
6
- import { arrayChunk, arrayRange } from '../index.js';
7
- import { perf } from '../test/index.js';
8
-
9
- describe('arrayChunk', (): void => {
10
- it('chunks with exact', (): void => {
11
- expect(
12
- arrayChunk([1, 2, 3, 4, 5, 6, 7, 8], 8)
13
- ).toEqual([[1, 2, 3, 4, 5, 6, 7, 8]]);
14
- });
15
-
16
- it('chunks with unequal', (): void => {
17
- expect(
18
- arrayChunk([1, 2, 3, 4, 5, 6, 7], 3)
19
- ).toEqual([[1, 2, 3], [4, 5, 6], [7]]);
20
- });
21
-
22
- it('chunks with non-empty results', (): void => {
23
- expect(
24
- arrayChunk([[1, 2], [3, 4], [5, 6], [7, 8]], 2)
25
- ).toEqual([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]);
26
- });
27
-
28
- perf('arrayChunk', 200_000, [[arrayRange(500), 50]], arrayChunk);
29
- });
@@ -1,35 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /**
5
- * @name arrayChunk
6
- * @summary Split T[] into T[][] based on the defind size
7
- * @description
8
- * Returns a set ao arrays based on the chunksize
9
- * @example
10
- * <BR>
11
- *
12
- * ```javascript
13
- * import { arrayChunk } from '@pezkuwi/util';
14
- *
15
- * arrayChunk([1, 2, 3, 4, 5]); // [[1, 2], [3, 4], [5]]
16
- * ```
17
- */
18
- export function arrayChunk <T> (array: T[], chunkSize: number): T[][] {
19
- const outputSize = Math.ceil(array.length / chunkSize);
20
-
21
- // shortcut for the single-split case
22
- if (outputSize === 1) {
23
- return [array];
24
- }
25
-
26
- const output = Array<T[]>(outputSize);
27
-
28
- for (let i = 0; i < outputSize; i++) {
29
- const offset = i * chunkSize;
30
-
31
- output[i] = array.slice(offset, offset + chunkSize);
32
- }
33
-
34
- return output;
35
- }
@@ -1,20 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /// <reference types="@polkadot/dev-test/globals.d.ts" />
5
-
6
- import { arrayFilter } from './index.js';
7
-
8
- describe('filterArray', (): void => {
9
- it('filters arrays, removing undefined', (): void => {
10
- expect(
11
- arrayFilter([0, '', null, false, undefined, NaN])
12
- ).toEqual([0, '', null, false, NaN]);
13
- });
14
-
15
- it('filters arrays, removing undefined & null (allowNull = false)', (): void => {
16
- expect(
17
- arrayFilter([0, '', null, false, undefined, NaN], false)
18
- ).toEqual([0, '', false, NaN]);
19
- });
20
- });
@@ -1,33 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /// <reference types="@polkadot/dev-test/globals.d.ts" />
5
-
6
- import { perf } from '../test/index.js';
7
- import { arrayFlatten } from './index.js';
8
-
9
- const PERF_ONE = [[1, 2, 3, 4, 5]];
10
- const PERF_MUL = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
11
-
12
- describe('arrayFlatten', (): void => {
13
- it('flattens arrays', (): void => {
14
- expect(
15
- arrayFlatten([[0], [1, 2, 3], [4, 5], [6], [], [7, 8]])
16
- ).toEqual([0, 1, 2, 3, 4, 5, 6, 7, 8]);
17
- });
18
-
19
- it('flattens a single entry', (): void => {
20
- expect(
21
- arrayFlatten([[1, 2, 3, 4, 5]])
22
- ).toEqual([1, 2, 3, 4, 5]);
23
- });
24
-
25
- it('flattens an empty', (): void => {
26
- expect(
27
- arrayFlatten([])
28
- ).toEqual([]);
29
- });
30
-
31
- perf('arrayFlatten (single)', 10_000_000, [[PERF_ONE]], arrayFlatten);
32
- perf('arrayFlatten (multi)', 700_000, [[PERF_MUL]], arrayFlatten);
33
- });
@@ -1,51 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- // This is supposed to be a faster concat...
5
- // https://dev.to/uilicious/javascript-array-push-is-945x-faster-than-array-concat-1oki
6
-
7
- /**
8
- * @name arrayFlatten
9
- * @summary Merge T[][] into T[]
10
- * @description
11
- * Returns a new array with all arrays merged into one
12
- * @example
13
- * <BR>
14
- *
15
- * ```javascript
16
- * import { arrayFlatten } from '@pezkuwi/util';
17
- *
18
- * arrayFlatten([[1, 2], [3, 4], [5]]); // [1, 2, 3, 4, 5]
19
- * ```
20
- */
21
- export function arrayFlatten <T> (arrays: readonly T[][]): T[] {
22
- const num = arrays.length;
23
-
24
- // shortcuts for the empty & single-entry case
25
- if (num === 0) {
26
- return [];
27
- } else if (num === 1) {
28
- return arrays[0];
29
- }
30
-
31
- // pre-allocate based on the combined size
32
- let size = 0;
33
-
34
- for (let i = 0; i < num; i++) {
35
- size += arrays[i].length;
36
- }
37
-
38
- const output = new Array<T>(size);
39
- let i = -1;
40
-
41
- for (let j = 0; j < num; j++) {
42
- const a = arrays[j];
43
-
44
- // instead of pushing, we just set the entries
45
- for (let e = 0, count = a.length; e < count; e++) {
46
- output[++i] = a[e];
47
- }
48
- }
49
-
50
- return output;
51
- }
@@ -1,29 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /// <reference types="@polkadot/dev-test/globals.d.ts" />
5
-
6
- import { perf } from '../test/index.js';
7
- import { arrayRange } from './index.js';
8
-
9
- describe('arrayRange', (): void => {
10
- it('does not allow 0 values', (): void => {
11
- expect(
12
- () => arrayRange(0)
13
- ).toThrow(/Expected non-zero, positive number as a range size/);
14
- });
15
-
16
- it('creates a range of the specified length', (): void => {
17
- expect(
18
- arrayRange(10)
19
- ).toEqual([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]);
20
- });
21
-
22
- it('creates a range of the specified length, with offset', (): void => {
23
- expect(
24
- arrayRange(7, 3)
25
- ).toEqual([3, 4, 5, 6, 7, 8, 9]);
26
- });
27
-
28
- perf('arrayRange (100 entries)', 1_000_000, [[100]], arrayRange);
29
- });
@@ -1,39 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /// <reference types="@polkadot/dev-test/globals.d.ts" />
5
-
6
- import { stringify } from '../stringify.js';
7
- import { perf } from '../test/index.js';
8
- import { arrayRange, arrayShuffle } from './index.js';
9
-
10
- const ptest = arrayRange(16284);
11
-
12
- describe('arrayShuffle', (): void => {
13
- it('returns an empty array as-is', (): void => {
14
- expect(
15
- arrayShuffle([])
16
- ).toEqual([]);
17
- });
18
-
19
- it('returns a single array as-is', (): void => {
20
- expect(
21
- arrayShuffle([100])
22
- ).toEqual([100]);
23
- });
24
-
25
- it('shuffles an array', (): void => {
26
- const inp = arrayRange(100);
27
- const out = arrayShuffle(inp);
28
-
29
- expect(inp).toHaveLength(out.length);
30
- expect(
31
- inp.filter((v) => !out.includes(v))
32
- ).toEqual([]);
33
- expect(
34
- stringify(inp)
35
- ).not.toEqual(stringify(out));
36
- });
37
-
38
- perf('arrayShuffle', 1000, [[ptest]], arrayShuffle);
39
- });
@@ -1,27 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /**
5
- * @name arrayShuffle
6
- * @description Shuffles the input array (unlike sort, this is not done in-place)
7
- */
8
- export function arrayShuffle <T> (input: readonly T[]): T[] {
9
- const result = input.slice();
10
- let curr = result.length;
11
-
12
- // noop for the single entry
13
- if (curr === 1) {
14
- return result;
15
- }
16
-
17
- while (curr !== 0) {
18
- // ~~ is more performant than Math.floor
19
- const rand = ~~(Math.random() * curr);
20
-
21
- curr--;
22
-
23
- [result[curr], result[rand]] = [result[rand], result[curr]];
24
- }
25
-
26
- return result;
27
- }
@@ -1,14 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /// <reference types="@polkadot/dev-test/globals.d.ts" />
5
-
6
- import { arrayUnzip } from './index.js';
7
-
8
- describe('arrayUnzip', (): void => {
9
- it('unzips entries', (): void => {
10
- expect(
11
- arrayUnzip([['a', 1], ['b', 2], ['c', 3]])
12
- ).toEqual([['a', 'b', 'c'], [1, 2, 3]]);
13
- });
14
- });
@@ -1,18 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /**
5
- * @name arrayUnzip
6
- * @description Splits a single [K, V][] into [K[], V[]]
7
- */
8
- export function arrayUnzip <K, V> (entries: readonly [K, V][]): [K[], V[]] {
9
- const count = entries.length;
10
- const keys = new Array<K>(count);
11
- const values = new Array<V>(count);
12
-
13
- for (let i = 0; i < count; i++) {
14
- [keys[i], values[i]] = entries[i];
15
- }
16
-
17
- return [keys, values];
18
- }
@@ -1,26 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /// <reference types="@polkadot/dev-test/globals.d.ts" />
5
-
6
- import { arrayZip } from './index.js';
7
-
8
- describe('arrayZip', (): void => {
9
- it('zips a simple one', (): void => {
10
- expect(
11
- arrayZip(['a', 'b', 'c'], [1, 2, 3])
12
- ).toEqual([['a', 1], ['b', 2], ['c', 3]]);
13
- });
14
-
15
- it('zips where values > keys', (): void => {
16
- expect(
17
- arrayZip(['a', 'b', 'c'], [1, 2, 3, 4])
18
- ).toEqual([['a', 1], ['b', 2], ['c', 3]]);
19
- });
20
-
21
- it('zips where values < keys', (): void => {
22
- expect(
23
- arrayZip(['a', 'b', 'c'], [1, 2])
24
- ).toEqual([['a', 1], ['b', 2], ['c', undefined]]);
25
- });
26
- });
package/src/array/zip.ts DELETED
@@ -1,17 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /**
5
- * @name arrayZip
6
- * @description Combines 2 distinct key/value arrays into a single [K, V] array
7
- */
8
- export function arrayZip <K, V> (keys: readonly K[], values: readonly V[]): [K, V][] {
9
- const count = keys.length;
10
- const result = new Array<[K, V]>(count);
11
-
12
- for (let i = 0; i < count; i++) {
13
- result[i] = [keys[i], values[i]];
14
- }
15
-
16
- return result;
17
- }
@@ -1,40 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /// <reference types="@polkadot/dev-test/globals.d.ts" />
5
-
6
- import { assert, assertReturn } from './index.js';
7
-
8
- describe('assert', (): void => {
9
- it('should not throw an error when test is true', (): void => {
10
- assert(true, 'nothing should be thrown');
11
- });
12
-
13
- it('should throw an error when test is not true', (): void => {
14
- expect(
15
- () => assert(false, 'error thrown')
16
- ).toThrow(/error thrown/);
17
- });
18
-
19
- it('should throw an error when message: () => string', (): void => {
20
- expect(
21
- () => assert(false, (): string => 'message from function')
22
- ).toThrow(/message from function/);
23
- });
24
- });
25
-
26
- describe('assertReturn', (): void => {
27
- it('should not throw an error when result is true', (): void => {
28
- expect(assertReturn(true, 'nothing should be thrown')).toEqual(true);
29
- });
30
-
31
- it('should not throw an error when result is false', (): void => {
32
- expect(assertReturn(false, 'nothing should be thrown')).toEqual(false);
33
- });
34
-
35
- it('should throw an error when result is undefined', (): void => {
36
- expect(
37
- () => assertReturn(undefined, 'something thrown')
38
- ).toThrow(/something thrown/);
39
- });
40
- });
package/src/bi/helpers.ts DELETED
@@ -1,23 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /** @internal */
5
- export function createCmp <T> (cmp: (a: T, b: T) => boolean): (...items: T[]) => T {
6
- return (...items: T[]): T => {
7
- const count = items.length;
8
-
9
- if (count === 0) {
10
- throw new Error('Must provide one or more arguments');
11
- }
12
-
13
- let result = items[0];
14
-
15
- for (let i = 1; i < count; i++) {
16
- if (cmp(items[i], result)) {
17
- result = items[i];
18
- }
19
- }
20
-
21
- return result;
22
- };
23
- }
@@ -1,32 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /// <reference types="@polkadot/dev-test/globals.d.ts" />
5
-
6
- import { nMax } from './index.js';
7
-
8
- describe('nMax', (): void => {
9
- it('finds maximum (sorted)', (): void => {
10
- expect(
11
- nMax(1n, 2n, 3n)
12
- ).toEqual(3n);
13
- });
14
-
15
- it('finds maximum (unsorted)', (): void => {
16
- expect(
17
- nMax(2n, 3n, 1n)
18
- ).toEqual(3n);
19
- });
20
-
21
- it('returns a single item', (): void => {
22
- expect(
23
- nMax(1n)
24
- ).toEqual(1n);
25
- });
26
-
27
- it('fails when no items are available', (): void => {
28
- expect(
29
- () => nMax()
30
- ).toThrow(/Must provide one or more arguments/);
31
- });
32
- });
@@ -1,26 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- /// <reference types="@polkadot/dev-test/globals.d.ts" />
5
-
6
- import { nMin } from './index.js';
7
-
8
- describe('nMin', (): void => {
9
- it('finds BN minimum', (): void => {
10
- expect(
11
- nMin(2n, 1n, 3n)
12
- ).toEqual(1n);
13
- });
14
-
15
- it('returns a single item', (): void => {
16
- expect(
17
- nMin(1n)
18
- ).toEqual(1n);
19
- });
20
-
21
- it('fails when no items are available', (): void => {
22
- expect(
23
- () => nMin()
24
- ).toThrow(/Must provide one or more arguments/);
25
- });
26
- });
package/src/bi/min.ts DELETED
@@ -1,16 +0,0 @@
1
- // Copyright 2017-2025 @polkadot/util authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- import { createCmp } from './helpers.js';
5
-
6
- /**
7
- * @name nMax
8
- * @summary Finds and returns the highest value in an array of bigint.
9
- */
10
- export const nMax = /*#__PURE__*/ createCmp<bigint>((a, b) => a > b);
11
-
12
- /**
13
- * @name nMin
14
- * @summary Finds and returns the lowest value in an array of bigint.
15
- */
16
- export const nMin = /*#__PURE__*/ createCmp<bigint>((a, b) => a < b);