@pezkuwi/util 14.0.10 → 14.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (555) hide show
  1. package/array/chunk.d.ts +15 -0
  2. package/array/chunk.js +27 -0
  3. package/array/filter.d.ts +16 -0
  4. package/array/filter.js +19 -0
  5. package/array/flatten.d.ts +15 -0
  6. package/array/flatten.js +39 -0
  7. package/array/index.d.ts +10 -0
  8. package/array/index.js +10 -0
  9. package/array/range.d.ts +16 -0
  10. package/array/range.js +25 -0
  11. package/array/shuffle.d.ts +5 -0
  12. package/array/shuffle.js +19 -0
  13. package/array/unzip.d.ts +5 -0
  14. package/array/unzip.js +13 -0
  15. package/array/zip.d.ts +5 -0
  16. package/array/zip.js +12 -0
  17. package/assert.d.ts +29 -0
  18. package/assert.js +39 -0
  19. package/bi/consts.d.ts +90 -0
  20. package/bi/consts.js +91 -0
  21. package/bi/helpers.d.ts +2 -0
  22. package/bi/helpers.js +16 -0
  23. package/bi/index.d.ts +9 -0
  24. package/bi/index.js +9 -0
  25. package/bi/min.d.ts +10 -0
  26. package/bi/min.js +11 -0
  27. package/bi/sqrt.d.ts +7 -0
  28. package/bi/sqrt.js +29 -0
  29. package/bi/toBigInt.d.ts +7 -0
  30. package/bi/toBigInt.js +25 -0
  31. package/bi/toHex.d.ts +7 -0
  32. package/bi/toHex.js +9 -0
  33. package/bi/toU8a.d.ts +7 -0
  34. package/bi/toU8a.js +49 -0
  35. package/bn/bn.d.ts +2 -0
  36. package/bn/bn.js +2 -0
  37. package/bn/consts.d.ts +91 -0
  38. package/bn/consts.js +91 -0
  39. package/bn/fromHex.d.ts +1 -0
  40. package/bn/fromHex.js +1 -0
  41. package/bn/index.d.ts +11 -0
  42. package/bn/index.js +11 -0
  43. package/bn/min.d.ts +29 -0
  44. package/bn/min.js +29 -0
  45. package/bn/sqrt.d.ts +16 -0
  46. package/bn/sqrt.js +38 -0
  47. package/bn/toBn.d.ts +19 -0
  48. package/bn/toBn.js +37 -0
  49. package/bn/toHex.d.ts +18 -0
  50. package/bn/toHex.js +20 -0
  51. package/bn/toU8a.d.ts +17 -0
  52. package/bn/toU8a.js +33 -0
  53. package/buffer/index.d.ts +4 -0
  54. package/buffer/index.js +4 -0
  55. package/buffer/toU8a.d.ts +15 -0
  56. package/buffer/toU8a.js +17 -0
  57. package/bundle-pezkuwi-util.js +4830 -0
  58. package/bundle.d.ts +28 -0
  59. package/bundle.js +28 -0
  60. package/cjs/array/chunk.d.ts +15 -0
  61. package/cjs/array/chunk.js +30 -0
  62. package/cjs/array/filter.d.ts +16 -0
  63. package/cjs/array/filter.js +22 -0
  64. package/cjs/array/flatten.d.ts +15 -0
  65. package/cjs/array/flatten.js +42 -0
  66. package/cjs/array/index.d.ts +10 -0
  67. package/cjs/array/index.js +20 -0
  68. package/cjs/array/range.d.ts +16 -0
  69. package/cjs/array/range.js +28 -0
  70. package/cjs/array/shuffle.d.ts +5 -0
  71. package/cjs/array/shuffle.js +22 -0
  72. package/cjs/array/unzip.d.ts +5 -0
  73. package/cjs/array/unzip.js +16 -0
  74. package/cjs/array/zip.d.ts +5 -0
  75. package/cjs/array/zip.js +15 -0
  76. package/cjs/assert.d.ts +29 -0
  77. package/cjs/assert.js +44 -0
  78. package/cjs/bi/consts.d.ts +90 -0
  79. package/cjs/bi/consts.js +94 -0
  80. package/cjs/bi/helpers.d.ts +2 -0
  81. package/cjs/bi/helpers.js +19 -0
  82. package/cjs/bi/index.d.ts +9 -0
  83. package/cjs/bi/index.js +19 -0
  84. package/cjs/bi/min.d.ts +10 -0
  85. package/cjs/bi/min.js +14 -0
  86. package/cjs/bi/sqrt.d.ts +7 -0
  87. package/cjs/bi/sqrt.js +32 -0
  88. package/cjs/bi/toBigInt.d.ts +7 -0
  89. package/cjs/bi/toBigInt.js +28 -0
  90. package/cjs/bi/toHex.d.ts +7 -0
  91. package/cjs/bi/toHex.js +12 -0
  92. package/cjs/bi/toU8a.d.ts +7 -0
  93. package/cjs/bi/toU8a.js +52 -0
  94. package/cjs/bn/bn.d.ts +2 -0
  95. package/cjs/bn/bn.js +6 -0
  96. package/cjs/bn/consts.d.ts +91 -0
  97. package/cjs/bn/consts.js +94 -0
  98. package/cjs/bn/fromHex.d.ts +1 -0
  99. package/cjs/bn/fromHex.js +5 -0
  100. package/cjs/bn/index.d.ts +11 -0
  101. package/cjs/bn/index.js +23 -0
  102. package/cjs/bn/min.d.ts +29 -0
  103. package/cjs/bn/min.js +32 -0
  104. package/cjs/bn/sqrt.d.ts +16 -0
  105. package/cjs/bn/sqrt.js +41 -0
  106. package/cjs/bn/toBn.d.ts +19 -0
  107. package/cjs/bn/toBn.js +40 -0
  108. package/cjs/bn/toHex.d.ts +18 -0
  109. package/cjs/bn/toHex.js +23 -0
  110. package/cjs/bn/toU8a.d.ts +17 -0
  111. package/cjs/bn/toU8a.js +36 -0
  112. package/cjs/buffer/index.d.ts +4 -0
  113. package/cjs/buffer/index.js +8 -0
  114. package/cjs/buffer/toU8a.d.ts +15 -0
  115. package/cjs/buffer/toU8a.js +20 -0
  116. package/cjs/bundle.d.ts +28 -0
  117. package/cjs/bundle.js +33 -0
  118. package/cjs/compact/addLength.d.ts +13 -0
  119. package/cjs/compact/addLength.js +23 -0
  120. package/cjs/compact/defaults.d.ts +3 -0
  121. package/cjs/compact/defaults.js +5 -0
  122. package/cjs/compact/fromU8a.d.ts +22 -0
  123. package/cjs/compact/fromU8a.js +92 -0
  124. package/cjs/compact/index.d.ts +24 -0
  125. package/cjs/compact/index.js +32 -0
  126. package/cjs/compact/stripLength.d.ts +13 -0
  127. package/cjs/compact/stripLength.js +24 -0
  128. package/cjs/compact/toU8a.d.ts +14 -0
  129. package/cjs/compact/toU8a.js +48 -0
  130. package/cjs/compact/types.d.ts +1 -0
  131. package/cjs/compact/types.js +2 -0
  132. package/cjs/detectPackage.d.ts +17 -0
  133. package/cjs/detectPackage.js +100 -0
  134. package/cjs/extractTime.d.ts +14 -0
  135. package/cjs/extractTime.js +56 -0
  136. package/cjs/float/index.d.ts +1 -0
  137. package/cjs/float/index.js +5 -0
  138. package/cjs/float/toU8a.d.ts +11 -0
  139. package/cjs/float/toU8a.js +22 -0
  140. package/cjs/format/formatBalance.d.ts +54 -0
  141. package/cjs/format/formatBalance.js +88 -0
  142. package/cjs/format/formatDate.d.ts +5 -0
  143. package/cjs/format/formatDate.js +20 -0
  144. package/cjs/format/formatDecimal.d.ts +5 -0
  145. package/cjs/format/formatDecimal.js +19 -0
  146. package/cjs/format/formatElapsed.d.ts +7 -0
  147. package/cjs/format/formatElapsed.js +30 -0
  148. package/cjs/format/formatNumber.d.ts +14 -0
  149. package/cjs/format/formatNumber.js +14 -0
  150. package/cjs/format/getSeparator.d.ts +9 -0
  151. package/cjs/format/getSeparator.js +14 -0
  152. package/cjs/format/index.d.ts +6 -0
  153. package/cjs/format/index.js +16 -0
  154. package/cjs/format/si.d.ts +9 -0
  155. package/cjs/format/si.js +45 -0
  156. package/cjs/has.d.ts +14 -0
  157. package/cjs/has.js +19 -0
  158. package/cjs/hex/addPrefix.d.ts +16 -0
  159. package/cjs/hex/addPrefix.js +23 -0
  160. package/cjs/hex/fixLength.d.ts +18 -0
  161. package/cjs/hex/fixLength.js +30 -0
  162. package/cjs/hex/hasPrefix.d.ts +16 -0
  163. package/cjs/hex/hasPrefix.js +21 -0
  164. package/cjs/hex/index.d.ts +12 -0
  165. package/cjs/hex/index.js +24 -0
  166. package/cjs/hex/stripPrefix.d.ts +15 -0
  167. package/cjs/hex/stripPrefix.js +30 -0
  168. package/cjs/hex/toBigInt.d.ts +6 -0
  169. package/cjs/hex/toBigInt.js +15 -0
  170. package/cjs/hex/toBn.d.ts +21 -0
  171. package/cjs/hex/toBn.js +35 -0
  172. package/cjs/hex/toNumber.d.ts +15 -0
  173. package/cjs/hex/toNumber.js +23 -0
  174. package/cjs/hex/toString.d.ts +15 -0
  175. package/cjs/hex/toString.js +22 -0
  176. package/cjs/hex/toU8a.d.ts +16 -0
  177. package/cjs/hex/toU8a.js +57 -0
  178. package/cjs/hex/toU8aBuffer.d.ts +16 -0
  179. package/cjs/hex/toU8aBuffer.js +43 -0
  180. package/cjs/index.d.ts +2 -0
  181. package/cjs/index.js +5 -0
  182. package/cjs/is/array.d.ts +5 -0
  183. package/cjs/is/array.js +10 -0
  184. package/cjs/is/ascii.d.ts +8 -0
  185. package/cjs/is/ascii.js +43 -0
  186. package/cjs/is/bigInt.d.ts +15 -0
  187. package/cjs/is/bigInt.js +20 -0
  188. package/cjs/is/bn.d.ts +17 -0
  189. package/cjs/is/bn.js +22 -0
  190. package/cjs/is/boolean.d.ts +15 -0
  191. package/cjs/is/boolean.js +20 -0
  192. package/cjs/is/buffer.d.ts +16 -0
  193. package/cjs/is/buffer.js +24 -0
  194. package/cjs/is/childClass.d.ts +17 -0
  195. package/cjs/is/childClass.js +26 -0
  196. package/cjs/is/class.d.ts +6 -0
  197. package/cjs/is/class.js +9 -0
  198. package/cjs/is/codec.d.ts +12 -0
  199. package/cjs/is/codec.js +9 -0
  200. package/cjs/is/compact.d.ts +13 -0
  201. package/cjs/is/compact.js +9 -0
  202. package/cjs/is/error.d.ts +15 -0
  203. package/cjs/is/error.js +21 -0
  204. package/cjs/is/function.d.ts +17 -0
  205. package/cjs/is/function.js +20 -0
  206. package/cjs/is/helpers.d.ts +3 -0
  207. package/cjs/is/helpers.js +19 -0
  208. package/cjs/is/hex.d.ts +19 -0
  209. package/cjs/is/hex.js +27 -0
  210. package/cjs/is/index.d.ts +33 -0
  211. package/cjs/is/index.js +66 -0
  212. package/cjs/is/instanceOf.d.ts +15 -0
  213. package/cjs/is/instanceOf.js +21 -0
  214. package/cjs/is/ip.d.ts +18 -0
  215. package/cjs/is/ip.js +44 -0
  216. package/cjs/is/jsonObject.d.ts +27 -0
  217. package/cjs/is/jsonObject.js +40 -0
  218. package/cjs/is/null.d.ts +15 -0
  219. package/cjs/is/null.js +20 -0
  220. package/cjs/is/number.d.ts +15 -0
  221. package/cjs/is/number.js +20 -0
  222. package/cjs/is/object.d.ts +18 -0
  223. package/cjs/is/object.js +21 -0
  224. package/cjs/is/observable.d.ts +16 -0
  225. package/cjs/is/observable.js +19 -0
  226. package/cjs/is/promise.d.ts +1 -0
  227. package/cjs/is/promise.js +5 -0
  228. package/cjs/is/riscv.d.ts +7 -0
  229. package/cjs/is/riscv.js +20 -0
  230. package/cjs/is/string.d.ts +16 -0
  231. package/cjs/is/string.js +20 -0
  232. package/cjs/is/testChain.d.ts +1 -0
  233. package/cjs/is/testChain.js +10 -0
  234. package/cjs/is/toBigInt.d.ts +2 -0
  235. package/cjs/is/toBigInt.js +5 -0
  236. package/cjs/is/toBn.d.ts +2 -0
  237. package/cjs/is/toBn.js +5 -0
  238. package/cjs/is/u8a.d.ts +15 -0
  239. package/cjs/is/u8a.js +23 -0
  240. package/cjs/is/undefined.d.ts +15 -0
  241. package/cjs/is/undefined.js +20 -0
  242. package/cjs/is/utf8.d.ts +7 -0
  243. package/cjs/is/utf8.js +200 -0
  244. package/cjs/is/wasm.d.ts +7 -0
  245. package/cjs/is/wasm.js +15 -0
  246. package/cjs/lazy.d.ts +14 -0
  247. package/cjs/lazy.js +55 -0
  248. package/cjs/logger.d.ts +17 -0
  249. package/cjs/logger.js +122 -0
  250. package/cjs/memoize.d.ts +10 -0
  251. package/cjs/memoize.js +33 -0
  252. package/cjs/nextTick.d.ts +5 -0
  253. package/cjs/nextTick.js +27 -0
  254. package/cjs/noop.d.ts +8 -0
  255. package/cjs/noop.js +16 -0
  256. package/cjs/number/index.d.ts +5 -0
  257. package/cjs/number/index.js +10 -0
  258. package/cjs/number/toHex.d.ts +17 -0
  259. package/cjs/number/toHex.js +23 -0
  260. package/cjs/number/toU8a.d.ts +15 -0
  261. package/cjs/number/toU8a.js +22 -0
  262. package/cjs/object/clear.d.ts +5 -0
  263. package/cjs/object/clear.js +14 -0
  264. package/cjs/object/copy.d.ts +5 -0
  265. package/cjs/object/copy.js +11 -0
  266. package/cjs/object/entries.d.ts +9 -0
  267. package/cjs/object/entries.js +10 -0
  268. package/cjs/object/index.d.ts +7 -0
  269. package/cjs/object/index.js +18 -0
  270. package/cjs/object/keys.d.ts +5 -0
  271. package/cjs/object/keys.js +10 -0
  272. package/cjs/object/property.d.ts +10 -0
  273. package/cjs/object/property.js +38 -0
  274. package/cjs/object/spread.d.ts +6 -0
  275. package/cjs/object/spread.js +34 -0
  276. package/cjs/object/values.d.ts +5 -0
  277. package/cjs/object/values.js +10 -0
  278. package/cjs/package.json +3 -0
  279. package/cjs/packageDetect.d.ts +1 -0
  280. package/cjs/packageDetect.js +7 -0
  281. package/cjs/packageInfo.d.ts +6 -0
  282. package/cjs/packageInfo.js +4 -0
  283. package/cjs/promisify.d.ts +16 -0
  284. package/cjs/promisify.js +30 -0
  285. package/cjs/string/camelCase.d.ts +13 -0
  286. package/cjs/string/camelCase.js +62 -0
  287. package/cjs/string/index.d.ts +8 -0
  288. package/cjs/string/index.js +18 -0
  289. package/cjs/string/lowerFirst.d.ts +31 -0
  290. package/cjs/string/lowerFirst.js +40 -0
  291. package/cjs/string/shorten.d.ts +16 -0
  292. package/cjs/string/shorten.js +22 -0
  293. package/cjs/string/toHex.d.ts +16 -0
  294. package/cjs/string/toHex.js +22 -0
  295. package/cjs/string/toU8a.d.ts +16 -0
  296. package/cjs/string/toU8a.js +24 -0
  297. package/cjs/stringify.d.ts +6 -0
  298. package/cjs/stringify.js +18 -0
  299. package/cjs/types.d.ts +62 -0
  300. package/cjs/types.js +2 -0
  301. package/cjs/u8a/cmp.d.ts +17 -0
  302. package/cjs/u8a/cmp.js +49 -0
  303. package/cjs/u8a/concat.d.ts +24 -0
  304. package/cjs/u8a/concat.js +51 -0
  305. package/cjs/u8a/concatBuffer.d.ts +19 -0
  306. package/cjs/u8a/concatBuffer.js +29 -0
  307. package/cjs/u8a/empty.d.ts +7 -0
  308. package/cjs/u8a/empty.js +20 -0
  309. package/cjs/u8a/eq.d.ts +15 -0
  310. package/cjs/u8a/eq.js +40 -0
  311. package/cjs/u8a/fixLength.d.ts +17 -0
  312. package/cjs/u8a/fixLength.js +31 -0
  313. package/cjs/u8a/index.d.ts +18 -0
  314. package/cjs/u8a/index.js +42 -0
  315. package/cjs/u8a/sorted.d.ts +15 -0
  316. package/cjs/u8a/sorted.js +21 -0
  317. package/cjs/u8a/toBigInt.d.ts +6 -0
  318. package/cjs/u8a/toBigInt.js +73 -0
  319. package/cjs/u8a/toBn.d.ts +21 -0
  320. package/cjs/u8a/toBn.js +81 -0
  321. package/cjs/u8a/toBuffer.d.ts +16 -0
  322. package/cjs/u8a/toBuffer.js +24 -0
  323. package/cjs/u8a/toFloat.d.ts +11 -0
  324. package/cjs/u8a/toFloat.js +20 -0
  325. package/cjs/u8a/toHex.d.ts +16 -0
  326. package/cjs/u8a/toHex.js +56 -0
  327. package/cjs/u8a/toHexBuffer.d.ts +16 -0
  328. package/cjs/u8a/toHexBuffer.js +25 -0
  329. package/cjs/u8a/toNumber.d.ts +6 -0
  330. package/cjs/u8a/toNumber.js +61 -0
  331. package/cjs/u8a/toString.d.ts +15 -0
  332. package/cjs/u8a/toString.js +24 -0
  333. package/cjs/u8a/toU8a.d.ts +19 -0
  334. package/cjs/u8a/toU8a.js +42 -0
  335. package/cjs/u8a/wrap.d.ts +22 -0
  336. package/cjs/u8a/wrap.js +49 -0
  337. package/compact/addLength.d.ts +13 -0
  338. package/compact/addLength.js +20 -0
  339. package/compact/defaults.d.ts +3 -0
  340. package/compact/defaults.js +2 -0
  341. package/compact/fromU8a.d.ts +22 -0
  342. package/compact/fromU8a.js +88 -0
  343. package/compact/index.d.ts +24 -0
  344. package/compact/index.js +24 -0
  345. package/compact/stripLength.d.ts +13 -0
  346. package/compact/stripLength.js +21 -0
  347. package/compact/toU8a.d.ts +14 -0
  348. package/compact/toU8a.js +45 -0
  349. package/compact/types.d.ts +1 -0
  350. package/compact/types.js +1 -0
  351. package/detectPackage.d.ts +17 -0
  352. package/detectPackage.js +96 -0
  353. package/extractTime.d.ts +14 -0
  354. package/extractTime.js +53 -0
  355. package/float/index.d.ts +1 -0
  356. package/float/index.js +1 -0
  357. package/float/toU8a.d.ts +11 -0
  358. package/float/toU8a.js +19 -0
  359. package/format/formatBalance.d.ts +54 -0
  360. package/format/formatBalance.js +85 -0
  361. package/format/formatDate.d.ts +5 -0
  362. package/format/formatDate.js +17 -0
  363. package/format/formatDecimal.d.ts +5 -0
  364. package/format/formatDecimal.js +16 -0
  365. package/format/formatElapsed.d.ts +7 -0
  366. package/format/formatElapsed.js +27 -0
  367. package/format/formatNumber.d.ts +14 -0
  368. package/format/formatNumber.js +11 -0
  369. package/format/getSeparator.d.ts +9 -0
  370. package/format/getSeparator.js +11 -0
  371. package/format/index.d.ts +6 -0
  372. package/format/index.js +6 -0
  373. package/format/si.d.ts +9 -0
  374. package/format/si.js +40 -0
  375. package/has.d.ts +14 -0
  376. package/has.js +16 -0
  377. package/hex/addPrefix.d.ts +16 -0
  378. package/hex/addPrefix.js +20 -0
  379. package/hex/fixLength.d.ts +18 -0
  380. package/hex/fixLength.js +27 -0
  381. package/hex/hasPrefix.d.ts +16 -0
  382. package/hex/hasPrefix.js +18 -0
  383. package/hex/index.d.ts +12 -0
  384. package/hex/index.js +12 -0
  385. package/hex/stripPrefix.d.ts +15 -0
  386. package/hex/stripPrefix.js +27 -0
  387. package/hex/toBigInt.d.ts +6 -0
  388. package/hex/toBigInt.js +12 -0
  389. package/hex/toBn.d.ts +21 -0
  390. package/hex/toBn.js +32 -0
  391. package/hex/toNumber.d.ts +15 -0
  392. package/hex/toNumber.js +20 -0
  393. package/hex/toString.d.ts +15 -0
  394. package/hex/toString.js +19 -0
  395. package/hex/toU8a.d.ts +16 -0
  396. package/hex/toU8a.js +54 -0
  397. package/hex/toU8aBuffer.d.ts +16 -0
  398. package/hex/toU8aBuffer.js +40 -0
  399. package/index.d.ts +2 -0
  400. package/index.js +2 -0
  401. package/is/array.d.ts +5 -0
  402. package/is/array.js +7 -0
  403. package/is/ascii.d.ts +8 -0
  404. package/is/ascii.js +40 -0
  405. package/is/bigInt.d.ts +15 -0
  406. package/is/bigInt.js +17 -0
  407. package/is/bn.d.ts +17 -0
  408. package/is/bn.js +19 -0
  409. package/is/boolean.d.ts +15 -0
  410. package/is/boolean.js +17 -0
  411. package/is/buffer.d.ts +16 -0
  412. package/is/buffer.js +21 -0
  413. package/is/childClass.d.ts +17 -0
  414. package/is/childClass.js +23 -0
  415. package/is/class.d.ts +6 -0
  416. package/is/class.js +6 -0
  417. package/is/codec.d.ts +12 -0
  418. package/is/codec.js +6 -0
  419. package/is/compact.d.ts +13 -0
  420. package/is/compact.js +6 -0
  421. package/is/error.d.ts +15 -0
  422. package/is/error.js +18 -0
  423. package/is/function.d.ts +17 -0
  424. package/is/function.js +17 -0
  425. package/is/helpers.d.ts +3 -0
  426. package/is/helpers.js +14 -0
  427. package/is/hex.d.ts +19 -0
  428. package/is/hex.js +23 -0
  429. package/is/index.d.ts +33 -0
  430. package/is/index.js +33 -0
  431. package/is/instanceOf.d.ts +15 -0
  432. package/is/instanceOf.js +18 -0
  433. package/is/ip.d.ts +18 -0
  434. package/is/ip.js +41 -0
  435. package/is/jsonObject.d.ts +27 -0
  436. package/is/jsonObject.js +37 -0
  437. package/is/null.d.ts +15 -0
  438. package/is/null.js +17 -0
  439. package/is/number.d.ts +15 -0
  440. package/is/number.js +17 -0
  441. package/is/object.d.ts +18 -0
  442. package/is/object.js +18 -0
  443. package/is/observable.d.ts +16 -0
  444. package/is/observable.js +16 -0
  445. package/is/promise.d.ts +1 -0
  446. package/is/promise.js +2 -0
  447. package/is/riscv.d.ts +7 -0
  448. package/is/riscv.js +17 -0
  449. package/is/string.d.ts +16 -0
  450. package/is/string.js +17 -0
  451. package/is/testChain.d.ts +1 -0
  452. package/is/testChain.js +7 -0
  453. package/is/toBigInt.d.ts +2 -0
  454. package/is/toBigInt.js +2 -0
  455. package/is/toBn.d.ts +2 -0
  456. package/is/toBn.js +2 -0
  457. package/is/u8a.d.ts +15 -0
  458. package/is/u8a.js +20 -0
  459. package/is/undefined.d.ts +15 -0
  460. package/is/undefined.js +17 -0
  461. package/is/utf8.d.ts +7 -0
  462. package/is/utf8.js +197 -0
  463. package/is/wasm.d.ts +7 -0
  464. package/is/wasm.js +12 -0
  465. package/lazy.d.ts +14 -0
  466. package/lazy.js +51 -0
  467. package/logger.d.ts +17 -0
  468. package/logger.js +118 -0
  469. package/memoize.d.ts +10 -0
  470. package/memoize.js +30 -0
  471. package/nextTick.d.ts +5 -0
  472. package/nextTick.js +24 -0
  473. package/noop.d.ts +8 -0
  474. package/noop.js +12 -0
  475. package/number/index.d.ts +5 -0
  476. package/number/index.js +5 -0
  477. package/number/toHex.d.ts +17 -0
  478. package/number/toHex.js +20 -0
  479. package/number/toU8a.d.ts +15 -0
  480. package/number/toU8a.js +19 -0
  481. package/object/clear.d.ts +5 -0
  482. package/object/clear.js +11 -0
  483. package/object/copy.d.ts +5 -0
  484. package/object/copy.js +8 -0
  485. package/object/entries.d.ts +9 -0
  486. package/object/entries.js +7 -0
  487. package/object/index.d.ts +7 -0
  488. package/object/index.js +7 -0
  489. package/object/keys.d.ts +5 -0
  490. package/object/keys.js +7 -0
  491. package/object/property.d.ts +10 -0
  492. package/object/property.js +34 -0
  493. package/object/spread.d.ts +6 -0
  494. package/object/spread.js +31 -0
  495. package/object/values.d.ts +5 -0
  496. package/object/values.js +7 -0
  497. package/package.json +1956 -12
  498. package/packageDetect.d.ts +1 -0
  499. package/packageDetect.js +5 -0
  500. package/packageInfo.d.ts +6 -0
  501. package/packageInfo.js +1 -0
  502. package/promisify.d.ts +16 -0
  503. package/promisify.js +27 -0
  504. package/string/camelCase.d.ts +13 -0
  505. package/string/camelCase.js +59 -0
  506. package/string/index.d.ts +8 -0
  507. package/string/index.js +8 -0
  508. package/string/lowerFirst.d.ts +31 -0
  509. package/string/lowerFirst.js +37 -0
  510. package/string/shorten.d.ts +16 -0
  511. package/string/shorten.js +19 -0
  512. package/string/toHex.d.ts +16 -0
  513. package/string/toHex.js +19 -0
  514. package/string/toU8a.d.ts +16 -0
  515. package/string/toU8a.js +21 -0
  516. package/stringify.d.ts +6 -0
  517. package/stringify.js +15 -0
  518. package/types.d.ts +62 -0
  519. package/types.js +1 -0
  520. package/u8a/cmp.d.ts +17 -0
  521. package/u8a/cmp.js +46 -0
  522. package/u8a/concat.d.ts +24 -0
  523. package/u8a/concat.js +47 -0
  524. package/u8a/concatBuffer.d.ts +19 -0
  525. package/u8a/concatBuffer.js +26 -0
  526. package/u8a/empty.d.ts +7 -0
  527. package/u8a/empty.js +17 -0
  528. package/u8a/eq.d.ts +15 -0
  529. package/u8a/eq.js +37 -0
  530. package/u8a/fixLength.d.ts +17 -0
  531. package/u8a/fixLength.js +28 -0
  532. package/u8a/index.d.ts +18 -0
  533. package/u8a/index.js +18 -0
  534. package/u8a/sorted.d.ts +15 -0
  535. package/u8a/sorted.js +18 -0
  536. package/u8a/toBigInt.d.ts +6 -0
  537. package/u8a/toBigInt.js +70 -0
  538. package/u8a/toBn.d.ts +21 -0
  539. package/u8a/toBn.js +78 -0
  540. package/u8a/toBuffer.d.ts +16 -0
  541. package/u8a/toBuffer.js +21 -0
  542. package/u8a/toFloat.d.ts +11 -0
  543. package/u8a/toFloat.js +17 -0
  544. package/u8a/toHex.d.ts +16 -0
  545. package/u8a/toHex.js +53 -0
  546. package/u8a/toHexBuffer.d.ts +16 -0
  547. package/u8a/toHexBuffer.js +22 -0
  548. package/u8a/toNumber.d.ts +6 -0
  549. package/u8a/toNumber.js +58 -0
  550. package/u8a/toString.d.ts +15 -0
  551. package/u8a/toString.js +21 -0
  552. package/u8a/toU8a.d.ts +19 -0
  553. package/u8a/toU8a.js +39 -0
  554. package/u8a/wrap.d.ts +22 -0
  555. package/u8a/wrap.js +43 -0
package/bi/toHex.js ADDED
@@ -0,0 +1,9 @@
1
+ import { u8aToHex } from '../u8a/index.js';
2
+ import { nToU8a } from './toU8a.js';
3
+ /**
4
+ * @name nToHex
5
+ * @summary Creates a hex value from a bigint object.
6
+ */
7
+ export function nToHex(value, { bitLength = -1, isLe = false, isNegative = false } = {}) {
8
+ return u8aToHex(nToU8a(value || 0, { bitLength, isLe, isNegative }));
9
+ }
package/bi/toU8a.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ import type { BN } from '../bn/bn.js';
2
+ import type { NumberOptions, ToBigInt, ToBn } from '../types.js';
3
+ /**
4
+ * @name nToU8a
5
+ * @summary Creates a Uint8Array object from a bigint.
6
+ */
7
+ export declare function nToU8a<ExtToBn extends ToBn | ToBigInt>(value?: ExtToBn | BN | bigint | number | null, { bitLength, isLe, isNegative }?: NumberOptions): Uint8Array;
package/bi/toU8a.js ADDED
@@ -0,0 +1,49 @@
1
+ import { BigInt } from '@pezkuwi/x-bigint';
2
+ import { _0n, _1n } from './consts.js';
3
+ import { nToBigInt } from './toBigInt.js';
4
+ const DIV = BigInt(256);
5
+ const NEG_MASK = BigInt(0xff);
6
+ function toU8a(value, isLe, isNegative) {
7
+ const arr = [];
8
+ const withSigned = isNegative && (value < _0n);
9
+ if (withSigned) {
10
+ value = (value + _1n) * -_1n;
11
+ }
12
+ while (value !== _0n) {
13
+ const mod = value % DIV;
14
+ const val = Number(withSigned
15
+ ? mod ^ NEG_MASK
16
+ : mod);
17
+ if (isLe) {
18
+ arr.push(val);
19
+ }
20
+ else {
21
+ arr.unshift(val);
22
+ }
23
+ value = (value - mod) / DIV;
24
+ }
25
+ return Uint8Array.from(arr);
26
+ }
27
+ /**
28
+ * @name nToU8a
29
+ * @summary Creates a Uint8Array object from a bigint.
30
+ */
31
+ export function nToU8a(value, { bitLength = -1, isLe = true, isNegative = false } = {}) {
32
+ const valueBi = nToBigInt(value);
33
+ if (valueBi === _0n) {
34
+ return bitLength === -1
35
+ ? new Uint8Array(1)
36
+ : new Uint8Array(Math.ceil((bitLength || 0) / 8));
37
+ }
38
+ const u8a = toU8a(valueBi, isLe, isNegative);
39
+ if (bitLength === -1) {
40
+ return u8a;
41
+ }
42
+ const byteLength = Math.ceil((bitLength || 0) / 8);
43
+ const output = new Uint8Array(byteLength);
44
+ if (isNegative) {
45
+ output.fill(0xff);
46
+ }
47
+ output.set(u8a, isLe ? 0 : byteLength - u8a.length);
48
+ return output;
49
+ }
package/bn/bn.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ import BN from 'bn.js';
2
+ export { BN };
package/bn/bn.js ADDED
@@ -0,0 +1,2 @@
1
+ import BN from 'bn.js';
2
+ export { BN };
package/bn/consts.d.ts ADDED
@@ -0,0 +1,91 @@
1
+ import { BN } from './bn.js';
2
+ /**
3
+ * @name BN_ZERO
4
+ * @summary BN constant for 0.
5
+ */
6
+ export declare const BN_ZERO: BN;
7
+ /**
8
+ * @name BN_ONE
9
+ * @summary BN constant for 1.
10
+ */
11
+ export declare const BN_ONE: BN;
12
+ /**
13
+ * @name BN_TWO
14
+ * @summary BN constant for 2.
15
+ */
16
+ export declare const BN_TWO: BN;
17
+ /**
18
+ * @name BN_THREE
19
+ * @summary BN constant for 3.
20
+ */
21
+ export declare const BN_THREE: BN;
22
+ /**
23
+ * @name BN_FOUR
24
+ * @summary BN constant for 4.
25
+ */
26
+ export declare const BN_FOUR: BN;
27
+ /**
28
+ * @name BN_FIVE
29
+ * @summary BN constant for 5.
30
+ */
31
+ export declare const BN_FIVE: BN;
32
+ /**
33
+ * @name BN_SIX
34
+ * @summary BN constant for 6.
35
+ */
36
+ export declare const BN_SIX: BN;
37
+ /**
38
+ * @name BN_SEVEN
39
+ * @summary BN constant for 7.
40
+ */
41
+ export declare const BN_SEVEN: BN;
42
+ /**
43
+ * @name BN_EIGHT
44
+ * @summary BN constant for 8.
45
+ */
46
+ export declare const BN_EIGHT: BN;
47
+ /**
48
+ * @name BN_NINE
49
+ * @summary BN constant for 9.
50
+ */
51
+ export declare const BN_NINE: BN;
52
+ /**
53
+ * @name BN_TEN
54
+ * @summary BN constant for 10.
55
+ */
56
+ export declare const BN_TEN: BN;
57
+ /**
58
+ * @name BN_HUNDRED
59
+ * @summary BN constant for 100.
60
+ */
61
+ export declare const BN_HUNDRED: BN;
62
+ /**
63
+ * @name BN_THOUSAND
64
+ * @summary BN constant for 1,000.
65
+ */
66
+ export declare const BN_THOUSAND: BN;
67
+ /**
68
+ * @name BN_MILLION
69
+ * @summary BN constant for 1,000,000.
70
+ */
71
+ export declare const BN_MILLION: BN;
72
+ /**
73
+ * @name BN_BILLION
74
+ * @summary BN constant for 1,000,000,000.
75
+ */
76
+ export declare const BN_BILLION: BN;
77
+ /**
78
+ * @name BN_QUINTILL
79
+ * @summary BN constant for 1,000,000,000,000,000,000.
80
+ */
81
+ export declare const BN_QUINTILL: BN;
82
+ /**
83
+ * @name BN_MAX_INTEGER
84
+ * @summary BN constant for MAX_SAFE_INTEGER
85
+ */
86
+ export declare const BN_MAX_INTEGER: BN;
87
+ /**
88
+ * @name BN_SQRT_MAX_INTEGER
89
+ * @summary BN constant for Math.sqrt(MAX_SAFE_INTEGER)
90
+ */
91
+ export declare const BN_SQRT_MAX_INTEGER: BN;
package/bn/consts.js ADDED
@@ -0,0 +1,91 @@
1
+ import { BN } from './bn.js';
2
+ /**
3
+ * @name BN_ZERO
4
+ * @summary BN constant for 0.
5
+ */
6
+ export const BN_ZERO = /*#__PURE__*/ new BN(0);
7
+ /**
8
+ * @name BN_ONE
9
+ * @summary BN constant for 1.
10
+ */
11
+ export const BN_ONE = /*#__PURE__*/ new BN(1);
12
+ /**
13
+ * @name BN_TWO
14
+ * @summary BN constant for 2.
15
+ */
16
+ export const BN_TWO = /*#__PURE__*/ new BN(2);
17
+ /**
18
+ * @name BN_THREE
19
+ * @summary BN constant for 3.
20
+ */
21
+ export const BN_THREE = /*#__PURE__*/ new BN(3);
22
+ /**
23
+ * @name BN_FOUR
24
+ * @summary BN constant for 4.
25
+ */
26
+ export const BN_FOUR = /*#__PURE__*/ new BN(4);
27
+ /**
28
+ * @name BN_FIVE
29
+ * @summary BN constant for 5.
30
+ */
31
+ export const BN_FIVE = /*#__PURE__*/ new BN(5);
32
+ /**
33
+ * @name BN_SIX
34
+ * @summary BN constant for 6.
35
+ */
36
+ export const BN_SIX = /*#__PURE__*/ new BN(6);
37
+ /**
38
+ * @name BN_SEVEN
39
+ * @summary BN constant for 7.
40
+ */
41
+ export const BN_SEVEN = /*#__PURE__*/ new BN(7);
42
+ /**
43
+ * @name BN_EIGHT
44
+ * @summary BN constant for 8.
45
+ */
46
+ export const BN_EIGHT = /*#__PURE__*/ new BN(8);
47
+ /**
48
+ * @name BN_NINE
49
+ * @summary BN constant for 9.
50
+ */
51
+ export const BN_NINE = /*#__PURE__*/ new BN(9);
52
+ /**
53
+ * @name BN_TEN
54
+ * @summary BN constant for 10.
55
+ */
56
+ export const BN_TEN = /*#__PURE__*/ new BN(10);
57
+ /**
58
+ * @name BN_HUNDRED
59
+ * @summary BN constant for 100.
60
+ */
61
+ export const BN_HUNDRED = /*#__PURE__*/ new BN(100);
62
+ /**
63
+ * @name BN_THOUSAND
64
+ * @summary BN constant for 1,000.
65
+ */
66
+ export const BN_THOUSAND = /*#__PURE__*/ new BN(1_000);
67
+ /**
68
+ * @name BN_MILLION
69
+ * @summary BN constant for 1,000,000.
70
+ */
71
+ export const BN_MILLION = /*#__PURE__*/ new BN(1_000_000);
72
+ /**
73
+ * @name BN_BILLION
74
+ * @summary BN constant for 1,000,000,000.
75
+ */
76
+ export const BN_BILLION = /*#__PURE__*/ new BN(1_000_000_000);
77
+ /**
78
+ * @name BN_QUINTILL
79
+ * @summary BN constant for 1,000,000,000,000,000,000.
80
+ */
81
+ export const BN_QUINTILL = BN_BILLION.mul(BN_BILLION);
82
+ /**
83
+ * @name BN_MAX_INTEGER
84
+ * @summary BN constant for MAX_SAFE_INTEGER
85
+ */
86
+ export const BN_MAX_INTEGER = /*#__PURE__*/ new BN(Number.MAX_SAFE_INTEGER);
87
+ /**
88
+ * @name BN_SQRT_MAX_INTEGER
89
+ * @summary BN constant for Math.sqrt(MAX_SAFE_INTEGER)
90
+ */
91
+ export const BN_SQRT_MAX_INTEGER = /*#__PURE__*/ new BN(94906265);
@@ -0,0 +1 @@
1
+ export { hexToBn as bnFromHex } from '../hex/toBn.js';
package/bn/fromHex.js ADDED
@@ -0,0 +1 @@
1
+ export { hexToBn as bnFromHex } from '../hex/toBn.js';
package/bn/index.d.ts ADDED
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @summary Utility methods to convert to and from `BN` objects
3
+ */
4
+ export { BN } from './bn.js';
5
+ export { bnFromHex } from './fromHex.js';
6
+ export { bnMax, bnMin } from './min.js';
7
+ export { bnSqrt } from './sqrt.js';
8
+ export { bnToBn } from './toBn.js';
9
+ export { bnToHex } from './toHex.js';
10
+ export { bnToU8a } from './toU8a.js';
11
+ export * from './consts.js';
package/bn/index.js ADDED
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @summary Utility methods to convert to and from `BN` objects
3
+ */
4
+ export { BN } from './bn.js';
5
+ export { bnFromHex } from './fromHex.js';
6
+ export { bnMax, bnMin } from './min.js';
7
+ export { bnSqrt } from './sqrt.js';
8
+ export { bnToBn } from './toBn.js';
9
+ export { bnToHex } from './toHex.js';
10
+ export { bnToU8a } from './toU8a.js';
11
+ export * from './consts.js';
package/bn/min.d.ts ADDED
@@ -0,0 +1,29 @@
1
+ import type { BN } from './bn.js';
2
+ /**
3
+ * @name bnMax
4
+ * @summary Finds and returns the highest value in an array of BNs.
5
+ * @example
6
+ * <BR>
7
+ *
8
+ * ```javascript
9
+ * import BN from 'bn.js';
10
+ * import { bnMax } from '@pezkuwi/util';
11
+ *
12
+ * bnMax([new BN(1), new BN(3), new BN(2)]).toString(); // => '3'
13
+ * ```
14
+ */
15
+ export declare const bnMax: (...items: BN[]) => BN;
16
+ /**
17
+ * @name bnMin
18
+ * @summary Finds and returns the smallest value in an array of BNs.
19
+ * @example
20
+ * <BR>
21
+ *
22
+ * ```javascript
23
+ * import BN from 'bn.js';
24
+ * import { bnMin } from '@pezkuwi/util';
25
+ *
26
+ * bnMin([new BN(1), new BN(3), new BN(2)]).toString(); // => '1'
27
+ * ```
28
+ */
29
+ export declare const bnMin: (...items: BN[]) => BN;
package/bn/min.js ADDED
@@ -0,0 +1,29 @@
1
+ import { createCmp } from '../bi/helpers.js';
2
+ /**
3
+ * @name bnMax
4
+ * @summary Finds and returns the highest value in an array of BNs.
5
+ * @example
6
+ * <BR>
7
+ *
8
+ * ```javascript
9
+ * import BN from 'bn.js';
10
+ * import { bnMax } from '@pezkuwi/util';
11
+ *
12
+ * bnMax([new BN(1), new BN(3), new BN(2)]).toString(); // => '3'
13
+ * ```
14
+ */
15
+ export const bnMax = /*#__PURE__*/ createCmp((a, b) => a.gt(b));
16
+ /**
17
+ * @name bnMin
18
+ * @summary Finds and returns the smallest value in an array of BNs.
19
+ * @example
20
+ * <BR>
21
+ *
22
+ * ```javascript
23
+ * import BN from 'bn.js';
24
+ * import { bnMin } from '@pezkuwi/util';
25
+ *
26
+ * bnMin([new BN(1), new BN(3), new BN(2)]).toString(); // => '1'
27
+ * ```
28
+ */
29
+ export const bnMin = /*#__PURE__*/ createCmp((a, b) => a.lt(b));
package/bn/sqrt.d.ts ADDED
@@ -0,0 +1,16 @@
1
+ import type { ToBn } from '../types.js';
2
+ import { BN } from './bn.js';
3
+ /**
4
+ * @name bnSqrt
5
+ * @summary Calculates the integer square root of a BN
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import BN from 'bn.js';
11
+ * import { bnSqrt } from '@pezkuwi/util';
12
+ *
13
+ * bnSqrt(new BN(16)).toString(); // => '4'
14
+ * ```
15
+ */
16
+ export declare function bnSqrt<ExtToBn extends ToBn>(value: ExtToBn | BN | bigint | string | number | null): BN;
package/bn/sqrt.js ADDED
@@ -0,0 +1,38 @@
1
+ import { BN } from './bn.js';
2
+ import { BN_MAX_INTEGER, BN_ONE, BN_SQRT_MAX_INTEGER } from './consts.js';
3
+ import { bnToBn } from './toBn.js';
4
+ /**
5
+ * @name bnSqrt
6
+ * @summary Calculates the integer square root of a BN
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import BN from 'bn.js';
12
+ * import { bnSqrt } from '@pezkuwi/util';
13
+ *
14
+ * bnSqrt(new BN(16)).toString(); // => '4'
15
+ * ```
16
+ */
17
+ export function bnSqrt(value) {
18
+ const n = bnToBn(value);
19
+ if (n.isNeg()) {
20
+ throw new Error('square root of negative numbers is not supported');
21
+ }
22
+ // https://stackoverflow.com/questions/53683995/javascript-big-integer-square-root/
23
+ // shortcut <= 2^53 - 1 to use the JS utils
24
+ if (n.lte(BN_MAX_INTEGER)) {
25
+ // ~~ More performant version of Math.floor
26
+ return new BN(~~Math.sqrt(n.toNumber()));
27
+ }
28
+ // Use sqrt(MAX_SAFE_INTEGER) as starting point. since we already know the
29
+ // output will be larger than this, we expect this to be a safe start
30
+ let x0 = BN_SQRT_MAX_INTEGER.clone();
31
+ while (true) {
32
+ const x1 = n.div(x0).iadd(x0).ishrn(1);
33
+ if (x0.eq(x1) || x0.eq(x1.sub(BN_ONE))) {
34
+ return x0;
35
+ }
36
+ x0 = x1;
37
+ }
38
+ }
package/bn/toBn.d.ts ADDED
@@ -0,0 +1,19 @@
1
+ import type { ToBigInt, ToBn } from '../types.js';
2
+ import { BN } from './bn.js';
3
+ /**
4
+ * @name bnToBn
5
+ * @summary Creates a BN value from a BN, bigint, string (base 10 or hex) or number input.
6
+ * @description
7
+ * `null` inputs returns a `0x0` result, BN values returns the value, numbers returns a BN representation.
8
+ * @example
9
+ * <BR>
10
+ *
11
+ * ```javascript
12
+ * import BN from 'bn.js';
13
+ * import { bnToBn } from '@pezkuwi/util';
14
+ *
15
+ * bnToBn(0x1234); // => BN(0x1234)
16
+ * bnToBn(new BN(0x1234)); // => BN(0x1234)
17
+ * ```
18
+ */
19
+ export declare function bnToBn<ExtToBn extends ToBigInt | ToBn>(value?: ExtToBn | BN | bigint | string | number | null): BN;
package/bn/toBn.js ADDED
@@ -0,0 +1,37 @@
1
+ import { hexToBn } from '../hex/toBn.js';
2
+ import { isBigInt } from '../is/bigInt.js';
3
+ import { isHex } from '../is/hex.js';
4
+ import { isToBigInt } from '../is/toBigInt.js';
5
+ import { isToBn } from '../is/toBn.js';
6
+ import { BN } from './bn.js';
7
+ /**
8
+ * @name bnToBn
9
+ * @summary Creates a BN value from a BN, bigint, string (base 10 or hex) or number input.
10
+ * @description
11
+ * `null` inputs returns a `0x0` result, BN values returns the value, numbers returns a BN representation.
12
+ * @example
13
+ * <BR>
14
+ *
15
+ * ```javascript
16
+ * import BN from 'bn.js';
17
+ * import { bnToBn } from '@pezkuwi/util';
18
+ *
19
+ * bnToBn(0x1234); // => BN(0x1234)
20
+ * bnToBn(new BN(0x1234)); // => BN(0x1234)
21
+ * ```
22
+ */
23
+ export function bnToBn(value) {
24
+ return value
25
+ ? BN.isBN(value)
26
+ ? value
27
+ : isHex(value)
28
+ ? hexToBn(value.toString())
29
+ : isBigInt(value)
30
+ ? new BN(value.toString())
31
+ : isToBn(value)
32
+ ? value.toBn()
33
+ : isToBigInt(value)
34
+ ? new BN(value.toBigInt().toString())
35
+ : new BN(value)
36
+ : new BN(0);
37
+ }
package/bn/toHex.d.ts ADDED
@@ -0,0 +1,18 @@
1
+ import type { HexString, NumberOptions, ToBn } from '../types.js';
2
+ import type { BN } from './bn.js';
3
+ /**
4
+ * @name bnToHex
5
+ * @summary Creates a hex value from a BN.js bignumber object.
6
+ * @description
7
+ * `null` inputs returns a `0x` result, BN values return the actual value as a `0x` prefixed hex value. Anything that is not a BN object throws an error. With `bitLength` set, it fixes the number to the specified length.
8
+ * @example
9
+ * <BR>
10
+ *
11
+ * ```javascript
12
+ * import BN from 'bn.js';
13
+ * import { bnToHex } from '@pezkuwi/util';
14
+ *
15
+ * bnToHex(new BN(0x123456)); // => '0x123456'
16
+ * ```
17
+ */
18
+ export declare function bnToHex<ExtToBn extends ToBn>(value?: ExtToBn | BN | bigint | number | null, { bitLength, isLe, isNegative }?: NumberOptions): HexString;
package/bn/toHex.js ADDED
@@ -0,0 +1,20 @@
1
+ import { u8aToHex } from '../u8a/index.js';
2
+ import { bnToU8a } from './toU8a.js';
3
+ /**
4
+ * @name bnToHex
5
+ * @summary Creates a hex value from a BN.js bignumber object.
6
+ * @description
7
+ * `null` inputs returns a `0x` result, BN values return the actual value as a `0x` prefixed hex value. Anything that is not a BN object throws an error. With `bitLength` set, it fixes the number to the specified length.
8
+ * @example
9
+ * <BR>
10
+ *
11
+ * ```javascript
12
+ * import BN from 'bn.js';
13
+ * import { bnToHex } from '@pezkuwi/util';
14
+ *
15
+ * bnToHex(new BN(0x123456)); // => '0x123456'
16
+ * ```
17
+ */
18
+ export function bnToHex(value, { bitLength = -1, isLe = false, isNegative = false } = {}) {
19
+ return u8aToHex(bnToU8a(value, { bitLength, isLe, isNegative }));
20
+ }
package/bn/toU8a.d.ts ADDED
@@ -0,0 +1,17 @@
1
+ import type { NumberOptions, ToBn } from '../types.js';
2
+ import type { BN } from './bn.js';
3
+ /**
4
+ * @name bnToU8a
5
+ * @summary Creates a Uint8Array object from a BN.
6
+ * @description
7
+ * `null`/`undefined`/`NaN` inputs returns an empty `Uint8Array` result. `BN` input values return the actual bytes value converted to a `Uint8Array`. Optionally convert using little-endian format if `isLE` is set.
8
+ * @example
9
+ * <BR>
10
+ *
11
+ * ```javascript
12
+ * import { bnToU8a } from '@pezkuwi/util';
13
+ *
14
+ * bnToU8a(new BN(0x1234)); // => [0x12, 0x34]
15
+ * ```
16
+ */
17
+ export declare function bnToU8a<ExtToBn extends ToBn>(value?: ExtToBn | BN | bigint | number | null, { bitLength, isLe, isNegative }?: NumberOptions): Uint8Array;
package/bn/toU8a.js ADDED
@@ -0,0 +1,33 @@
1
+ import { bnToBn } from './toBn.js';
2
+ const DEFAULT_OPTS = { bitLength: -1, isLe: true, isNegative: false };
3
+ /**
4
+ * @name bnToU8a
5
+ * @summary Creates a Uint8Array object from a BN.
6
+ * @description
7
+ * `null`/`undefined`/`NaN` inputs returns an empty `Uint8Array` result. `BN` input values return the actual bytes value converted to a `Uint8Array`. Optionally convert using little-endian format if `isLE` is set.
8
+ * @example
9
+ * <BR>
10
+ *
11
+ * ```javascript
12
+ * import { bnToU8a } from '@pezkuwi/util';
13
+ *
14
+ * bnToU8a(new BN(0x1234)); // => [0x12, 0x34]
15
+ * ```
16
+ */
17
+ export function bnToU8a(value, { bitLength = -1, isLe = true, isNegative = false } = DEFAULT_OPTS) {
18
+ const valueBn = bnToBn(value);
19
+ const byteLength = bitLength === -1
20
+ ? Math.ceil(valueBn.bitLength() / 8)
21
+ : Math.ceil((bitLength || 0) / 8);
22
+ if (!value) {
23
+ return bitLength === -1
24
+ ? new Uint8Array(1)
25
+ : new Uint8Array(byteLength);
26
+ }
27
+ const output = new Uint8Array(byteLength);
28
+ const bn = isNegative
29
+ ? valueBn.toTwos(byteLength * 8)
30
+ : valueBn;
31
+ output.set(bn.toArray(isLe ? 'le' : 'be', byteLength), 0);
32
+ return output;
33
+ }
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @summary Utility methods to convert to and from `Buffer` objects
3
+ */
4
+ export { bufferToU8a } from './toU8a.js';
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @summary Utility methods to convert to and from `Buffer` objects
3
+ */
4
+ export { bufferToU8a } from './toU8a.js';
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name bufferToU8a
3
+ * @summary Creates a Uint8Array value from a Buffer object.
4
+ * @description
5
+ * `null` inputs returns an empty result, `Buffer` values return the actual value as a `Uint8Array`. Anything that is not a `Buffer` object throws an error.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { bufferToU8a } from '@pezkuwi/util';
11
+ *
12
+ * bufferToU8a(Buffer.from([1, 2, 3]));
13
+ * ```
14
+ */
15
+ export declare function bufferToU8a(buffer?: Uint8Array | number[] | null): Uint8Array;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @name bufferToU8a
3
+ * @summary Creates a Uint8Array value from a Buffer object.
4
+ * @description
5
+ * `null` inputs returns an empty result, `Buffer` values return the actual value as a `Uint8Array`. Anything that is not a `Buffer` object throws an error.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { bufferToU8a } from '@pezkuwi/util';
11
+ *
12
+ * bufferToU8a(Buffer.from([1, 2, 3]));
13
+ * ```
14
+ */
15
+ export function bufferToU8a(buffer) {
16
+ return new Uint8Array(buffer || []);
17
+ }