@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
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stringPascalCase = exports.stringCamelCase = exports.CC_TO_LO = exports.CC_TO_UP = void 0;
4
+ exports.CC_TO_UP = new Array(256);
5
+ exports.CC_TO_LO = new Array(256);
6
+ for (let i = 0, count = exports.CC_TO_UP.length; i < count; i++) {
7
+ exports.CC_TO_LO[i] = String.fromCharCode(i).toLowerCase();
8
+ exports.CC_TO_UP[i] = String.fromCharCode(i).toUpperCase();
9
+ }
10
+ /** @internal */
11
+ function formatAllCaps(w) {
12
+ return w.slice(0, w.length - 1).toLowerCase() + exports.CC_TO_UP[w.charCodeAt(w.length - 1)];
13
+ }
14
+ /**
15
+ * @internal
16
+ *
17
+ * Inspired by https://stackoverflow.com/a/2970667
18
+ *
19
+ * This is not as optimal as the original SO answer (we split into per-word),
20
+ * however it does pass the tests (which the SO version doesn't) and is still
21
+ * a major improvement over the original camelcase npm package -
22
+ *
23
+ * camelcase: 20.88 μs/op
24
+ * this: 1.00 μs/op
25
+ *
26
+ * Caveat of this: only Ascii, but acceptable for the intended usecase
27
+ */
28
+ function converter(format) {
29
+ return (value) => {
30
+ const parts = value
31
+ // replace all separators (including consequtive) with spaces
32
+ .replace(/[-_., ]+/g, ' ')
33
+ // we don't want leading or trailing spaces
34
+ .trim()
35
+ // split into words
36
+ .split(' ');
37
+ let result = '';
38
+ for (let i = 0, count = parts.length; i < count; i++) {
39
+ const w = parts[i];
40
+ // apply the formatting
41
+ result += format(/^[\dA-Z]+$/.test(w)
42
+ // all full uppercase + letters are changed to lowercase
43
+ ? w.toLowerCase()
44
+ // all consecutive capitals + letters are changed to lowercase
45
+ // e.g. UUID64 -> uuid64, while preserving splits, eg. NFTOrder -> nftOrder
46
+ : w.replace(/^[\dA-Z]{2,}[^a-z]/, formatAllCaps), i);
47
+ }
48
+ return result;
49
+ };
50
+ }
51
+ /**
52
+ * @name stringCamelCase
53
+ * @summary Convert a dash/dot/underscore/space separated Ascii string/String to camelCase
54
+ */
55
+ exports.stringCamelCase = converter((w, i) =>
56
+ (i ? exports.CC_TO_UP[w.charCodeAt(0)] : exports.CC_TO_LO[w.charCodeAt(0)]) + w.slice(1));
57
+ /**
58
+ * @name stringPascalCase
59
+ * @summary Convert a dash/dot/underscore/space separated Ascii string/String to PascalCase
60
+ */
61
+ exports.stringPascalCase = converter((w) =>
62
+ exports.CC_TO_UP[w.charCodeAt(0)] + w.slice(1));
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @summary Utility methods to convert to work with `string` values
3
+ */
4
+ export { stringCamelCase, stringPascalCase } from './camelCase.js';
5
+ export { stringLowerFirst, stringUpperFirst } from './lowerFirst.js';
6
+ export { stringShorten } from './shorten.js';
7
+ export { stringToHex } from './toHex.js';
8
+ export { stringToU8a } from './toU8a.js';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stringToU8a = exports.stringToHex = exports.stringShorten = exports.stringUpperFirst = exports.stringLowerFirst = exports.stringPascalCase = exports.stringCamelCase = void 0;
4
+ /**
5
+ * @summary Utility methods to convert to work with `string` values
6
+ */
7
+ var camelCase_js_1 = require("./camelCase.js");
8
+ Object.defineProperty(exports, "stringCamelCase", { enumerable: true, get: function () { return camelCase_js_1.stringCamelCase; } });
9
+ Object.defineProperty(exports, "stringPascalCase", { enumerable: true, get: function () { return camelCase_js_1.stringPascalCase; } });
10
+ var lowerFirst_js_1 = require("./lowerFirst.js");
11
+ Object.defineProperty(exports, "stringLowerFirst", { enumerable: true, get: function () { return lowerFirst_js_1.stringLowerFirst; } });
12
+ Object.defineProperty(exports, "stringUpperFirst", { enumerable: true, get: function () { return lowerFirst_js_1.stringUpperFirst; } });
13
+ var shorten_js_1 = require("./shorten.js");
14
+ Object.defineProperty(exports, "stringShorten", { enumerable: true, get: function () { return shorten_js_1.stringShorten; } });
15
+ var toHex_js_1 = require("./toHex.js");
16
+ Object.defineProperty(exports, "stringToHex", { enumerable: true, get: function () { return toHex_js_1.stringToHex; } });
17
+ var toU8a_js_1 = require("./toU8a.js");
18
+ Object.defineProperty(exports, "stringToU8a", { enumerable: true, get: function () { return toU8a_js_1.stringToU8a; } });
@@ -0,0 +1,31 @@
1
+ import type { AnyString } from '../types.js';
2
+ /**
3
+ * @name stringLowerFirst
4
+ * @summary Lowercase the first letter of a string
5
+ * @description
6
+ * Lowercase the first letter of a string
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { stringLowerFirst } from '@pezkuwi/util';
12
+ *
13
+ * stringLowerFirst('ABC'); // => 'aBC'
14
+ * ```
15
+ */
16
+ export declare const stringLowerFirst: (value?: AnyString | null) => string;
17
+ /**
18
+ * @name stringUpperFirst
19
+ * @summary Uppercase the first letter of a string
20
+ * @description
21
+ * Lowercase the first letter of a string
22
+ * @example
23
+ * <BR>
24
+ *
25
+ * ```javascript
26
+ * import { stringUpperFirst } from '@pezkuwi/util';
27
+ *
28
+ * stringUpperFirst('abc'); // => 'Abc'
29
+ * ```
30
+ */
31
+ export declare const stringUpperFirst: (value?: AnyString | null) => string;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stringUpperFirst = exports.stringLowerFirst = void 0;
4
+ const camelCase_js_1 = require("./camelCase.js");
5
+ /** @internal */
6
+ function converter(map) {
7
+ return (value) => value
8
+ ? map[value.charCodeAt(0)] + value.slice(1)
9
+ : '';
10
+ }
11
+ /**
12
+ * @name stringLowerFirst
13
+ * @summary Lowercase the first letter of a string
14
+ * @description
15
+ * Lowercase the first letter of a string
16
+ * @example
17
+ * <BR>
18
+ *
19
+ * ```javascript
20
+ * import { stringLowerFirst } from '@pezkuwi/util';
21
+ *
22
+ * stringLowerFirst('ABC'); // => 'aBC'
23
+ * ```
24
+ */
25
+ exports.stringLowerFirst = converter(camelCase_js_1.CC_TO_LO);
26
+ /**
27
+ * @name stringUpperFirst
28
+ * @summary Uppercase the first letter of a string
29
+ * @description
30
+ * Lowercase the first letter of a string
31
+ * @example
32
+ * <BR>
33
+ *
34
+ * ```javascript
35
+ * import { stringUpperFirst } from '@pezkuwi/util';
36
+ *
37
+ * stringUpperFirst('abc'); // => 'Abc'
38
+ * ```
39
+ */
40
+ exports.stringUpperFirst = converter(camelCase_js_1.CC_TO_UP);
@@ -0,0 +1,16 @@
1
+ import type { AnyString } from '../types.js';
2
+ /**
3
+ * @name stringShorten
4
+ * @summary Returns a string with maximum length
5
+ * @description
6
+ * Checks the string against the `prefixLength`, if longer than double this, shortens it by placing `..` in the middle of it
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { stringShorten } from '@pezkuwi/util';
12
+ *
13
+ * stringShorten('1234567890', 2); // => 12..90
14
+ * ```
15
+ */
16
+ export declare function stringShorten(value: AnyString, prefixLength?: number): string;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stringShorten = stringShorten;
4
+ /**
5
+ * @name stringShorten
6
+ * @summary Returns a string with maximum length
7
+ * @description
8
+ * Checks the string against the `prefixLength`, if longer than double this, shortens it by placing `..` in the middle of it
9
+ * @example
10
+ * <BR>
11
+ *
12
+ * ```javascript
13
+ * import { stringShorten } from '@pezkuwi/util';
14
+ *
15
+ * stringShorten('1234567890', 2); // => 12..90
16
+ * ```
17
+ */
18
+ function stringShorten(value, prefixLength = 6) {
19
+ return value.length <= 2 + 2 * prefixLength
20
+ ? value.toString()
21
+ : `${value.substring(0, prefixLength)}…${value.slice(-prefixLength)}`;
22
+ }
@@ -0,0 +1,16 @@
1
+ import type { AnyString, HexString } from '../types.js';
2
+ /**
3
+ * @name stringToHex
4
+ * @summary Creates a hex string from a utf-8 string
5
+ * @description
6
+ * String input values return the actual encoded hex value.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { stringToHex } from '@pezkuwi/util';
12
+ *
13
+ * stringToU8a('hello'); // 0x68656c6c6f
14
+ * ```
15
+ */
16
+ export declare function stringToHex(value?: AnyString): HexString;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stringToHex = stringToHex;
4
+ const toHex_js_1 = require("../u8a/toHex.js");
5
+ const toU8a_js_1 = require("./toU8a.js");
6
+ /**
7
+ * @name stringToHex
8
+ * @summary Creates a hex string from a utf-8 string
9
+ * @description
10
+ * String input values return the actual encoded hex value.
11
+ * @example
12
+ * <BR>
13
+ *
14
+ * ```javascript
15
+ * import { stringToHex } from '@pezkuwi/util';
16
+ *
17
+ * stringToU8a('hello'); // 0x68656c6c6f
18
+ * ```
19
+ */
20
+ function stringToHex(value) {
21
+ return (0, toHex_js_1.u8aToHex)((0, toU8a_js_1.stringToU8a)(value));
22
+ }
@@ -0,0 +1,16 @@
1
+ import type { AnyString } from '../types.js';
2
+ /**
3
+ * @name stringToU8a
4
+ * @summary Creates a Uint8Array object from a utf-8 string.
5
+ * @description
6
+ * String input values return the actual encoded `UInt8Array`. `null` or `undefined` values returns an empty encoded array.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { stringToU8a } from '@pezkuwi/util';
12
+ *
13
+ * stringToU8a('hello'); // [0x68, 0x65, 0x6c, 0x6c, 0x6f]
14
+ * ```
15
+ */
16
+ export declare function stringToU8a(value?: AnyString | null): Uint8Array;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stringToU8a = stringToU8a;
4
+ const x_textencoder_1 = require("@pezkuwi/x-textencoder");
5
+ const encoder = new x_textencoder_1.TextEncoder();
6
+ /**
7
+ * @name stringToU8a
8
+ * @summary Creates a Uint8Array object from a utf-8 string.
9
+ * @description
10
+ * String input values return the actual encoded `UInt8Array`. `null` or `undefined` values returns an empty encoded array.
11
+ * @example
12
+ * <BR>
13
+ *
14
+ * ```javascript
15
+ * import { stringToU8a } from '@pezkuwi/util';
16
+ *
17
+ * stringToU8a('hello'); // [0x68, 0x65, 0x6c, 0x6c, 0x6f]
18
+ * ```
19
+ */
20
+ function stringToU8a(value) {
21
+ return value
22
+ ? encoder.encode(value.toString())
23
+ : new Uint8Array();
24
+ }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @name stringify
3
+ * @summary Performs a JSON.stringify, with BigInt handling
4
+ * @description A wrapper for JSON.stringify that handles BigInt values transparently, converting them to string. No differences from the native JSON.stringify function otherwise.
5
+ */
6
+ export declare function stringify(value: unknown, space?: string | number): string;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stringify = stringify;
4
+ const bigInt_js_1 = require("./is/bigInt.js");
5
+ /** @internal */
6
+ function replacer(_, v) {
7
+ return (0, bigInt_js_1.isBigInt)(v)
8
+ ? v.toString()
9
+ : v;
10
+ }
11
+ /**
12
+ * @name stringify
13
+ * @summary Performs a JSON.stringify, with BigInt handling
14
+ * @description A wrapper for JSON.stringify that handles BigInt values transparently, converting them to string. No differences from the native JSON.stringify function otherwise.
15
+ */
16
+ function stringify(value, space) {
17
+ return JSON.stringify(value, replacer, space);
18
+ }
package/cjs/types.d.ts ADDED
@@ -0,0 +1,62 @@
1
+ import type { BN } from './bn/bn.js';
2
+ /** An interface that defines an actual JS class */
3
+ export interface Class<T = any, A extends unknown[] = any[]> {
4
+ prototype: T;
5
+ new (...args: A): T;
6
+ hasOwnProperty(prop: string): boolean;
7
+ isPrototypeOf(other: unknown): boolean;
8
+ }
9
+ export type Constructor<T = any, A extends unknown[] = any[]> = Class<T, A>;
10
+ export interface ToBigInt {
11
+ toBigInt: () => bigint;
12
+ }
13
+ export interface ToBn {
14
+ toBn: () => BN;
15
+ }
16
+ export interface SiDef {
17
+ power: number;
18
+ text: string;
19
+ value: string;
20
+ }
21
+ export interface Logger {
22
+ debug: (...values: unknown[]) => void;
23
+ error: (...values: unknown[]) => void;
24
+ log: (...values: unknown[]) => void;
25
+ noop: (...values: unknown[]) => void;
26
+ warn: (...values: unknown[]) => void;
27
+ }
28
+ export interface ToBnOptions {
29
+ /** Convert in LE format */
30
+ isLe?: boolean;
31
+ /** Number is signed, apply two's complement */
32
+ isNegative?: boolean;
33
+ }
34
+ export interface NumberOptions extends ToBnOptions {
35
+ /** Limit to the specified bitLength, despite input length */
36
+ bitLength?: number;
37
+ }
38
+ export interface Time {
39
+ days: number;
40
+ hours: number;
41
+ minutes: number;
42
+ seconds: number;
43
+ milliseconds: number;
44
+ }
45
+ export type Memoized<F> = F & {
46
+ unmemoize: (...args: unknown[]) => void;
47
+ };
48
+ export type AnyString = string | String;
49
+ export type HexDigit = '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | 'a' | 'b' | 'c' | 'd' | 'e' | 'f';
50
+ export type HexString = `0x${string}`;
51
+ export interface BufferObject extends Uint8Array {
52
+ equals: (otherBuffer: Uint8Array) => boolean;
53
+ readDoubleLE: (offset?: number) => number;
54
+ }
55
+ export interface BufferClass extends Class<BufferObject> {
56
+ from: <T = BufferObject>(value: unknown) => T;
57
+ isBuffer: (value: unknown) => boolean;
58
+ }
59
+ export type U8aLike = number[] | Uint8Array | AnyString;
60
+ export interface Observable {
61
+ next: (...params: unknown[]) => unknown;
62
+ }
package/cjs/types.js ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @name u8aCmp
3
+ * @summary Compares two Uint8Arrays for sorting.
4
+ * @description
5
+ * For `UInt8Array` (or hex string) input values returning -1, 0 or +1
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { u8aCmp } from '@pezkuwi/util';
11
+ *
12
+ * u8aCmp(new Uint8Array([0x67, 0x65]), new Uint8Array([0x68, 0x65])); // -1
13
+ * u8aCmp(new Uint8Array([0x68, 0x65]), new Uint8Array([0x68, 0x65])); // 0
14
+ * u8aCmp(new Uint8Array([0x69, 0x65]), new Uint8Array([0x68, 0x65])); // +1
15
+ * ```
16
+ */
17
+ export declare function u8aCmp(a: string | Uint8Array, b: string | Uint8Array): number;
package/cjs/u8a/cmp.js ADDED
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.u8aCmp = u8aCmp;
4
+ const toU8a_js_1 = require("./toU8a.js");
5
+ /**
6
+ * @name u8aCmp
7
+ * @summary Compares two Uint8Arrays for sorting.
8
+ * @description
9
+ * For `UInt8Array` (or hex string) input values returning -1, 0 or +1
10
+ * @example
11
+ * <BR>
12
+ *
13
+ * ```javascript
14
+ * import { u8aCmp } from '@pezkuwi/util';
15
+ *
16
+ * u8aCmp(new Uint8Array([0x67, 0x65]), new Uint8Array([0x68, 0x65])); // -1
17
+ * u8aCmp(new Uint8Array([0x68, 0x65]), new Uint8Array([0x68, 0x65])); // 0
18
+ * u8aCmp(new Uint8Array([0x69, 0x65]), new Uint8Array([0x68, 0x65])); // +1
19
+ * ```
20
+ */
21
+ function u8aCmp(a, b) {
22
+ const u8aa = (0, toU8a_js_1.u8aToU8a)(a);
23
+ const u8ab = (0, toU8a_js_1.u8aToU8a)(b);
24
+ let i = 0;
25
+ while (true) {
26
+ const overA = i >= u8aa.length;
27
+ const overB = i >= u8ab.length;
28
+ if (overA && overB) {
29
+ // both ends reached
30
+ return 0;
31
+ }
32
+ else if (overA) {
33
+ // a has no more data, b has data
34
+ return -1;
35
+ }
36
+ else if (overB) {
37
+ // b has no more data, a has data
38
+ return 1;
39
+ }
40
+ else if (u8aa[i] !== u8ab[i]) {
41
+ // the number in this index doesn't match
42
+ // (we don't use u8aa[i] - u8ab[i] since that doesn't match with localeCompare)
43
+ return u8aa[i] > u8ab[i]
44
+ ? 1
45
+ : -1;
46
+ }
47
+ i++;
48
+ }
49
+ }
@@ -0,0 +1,24 @@
1
+ import type { U8aLike } from '../types.js';
2
+ /**
3
+ * @name u8aConcat
4
+ * @summary Creates a concatenated Uint8Array from the inputs.
5
+ * @description
6
+ * Concatenates the input arrays into a single `UInt8Array`.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { { u8aConcat } from '@pezkuwi/util';
12
+ *
13
+ * u8aConcat(
14
+ * new Uint8Array([1, 2, 3]),
15
+ * new Uint8Array([4, 5, 6])
16
+ * ); // [1, 2, 3, 4, 5, 6]
17
+ * ```
18
+ */
19
+ export declare function u8aConcat(...list: readonly U8aLike[]): Uint8Array;
20
+ /**
21
+ * @name u8aConcatStrict
22
+ * @description A strict version of [[u8aConcat]], accepting only Uint8Array inputs
23
+ */
24
+ export declare function u8aConcatStrict(u8as: readonly Uint8Array[], length?: number): Uint8Array;
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.u8aConcat = u8aConcat;
4
+ exports.u8aConcatStrict = u8aConcatStrict;
5
+ const toU8a_js_1 = require("./toU8a.js");
6
+ /**
7
+ * @name u8aConcat
8
+ * @summary Creates a concatenated Uint8Array from the inputs.
9
+ * @description
10
+ * Concatenates the input arrays into a single `UInt8Array`.
11
+ * @example
12
+ * <BR>
13
+ *
14
+ * ```javascript
15
+ * import { { u8aConcat } from '@pezkuwi/util';
16
+ *
17
+ * u8aConcat(
18
+ * new Uint8Array([1, 2, 3]),
19
+ * new Uint8Array([4, 5, 6])
20
+ * ); // [1, 2, 3, 4, 5, 6]
21
+ * ```
22
+ */
23
+ function u8aConcat(...list) {
24
+ const count = list.length;
25
+ const u8as = new Array(count);
26
+ let length = 0;
27
+ for (let i = 0; i < count; i++) {
28
+ u8as[i] = (0, toU8a_js_1.u8aToU8a)(list[i]);
29
+ length += u8as[i].length;
30
+ }
31
+ return u8aConcatStrict(u8as, length);
32
+ }
33
+ /**
34
+ * @name u8aConcatStrict
35
+ * @description A strict version of [[u8aConcat]], accepting only Uint8Array inputs
36
+ */
37
+ function u8aConcatStrict(u8as, length = 0) {
38
+ const count = u8as.length;
39
+ let offset = 0;
40
+ if (!length) {
41
+ for (let i = 0; i < count; i++) {
42
+ length += u8as[i].length;
43
+ }
44
+ }
45
+ const result = new Uint8Array(length);
46
+ for (let i = 0; i < count; i++) {
47
+ result.set(u8as[i], offset);
48
+ offset += u8as[i].length;
49
+ }
50
+ return result;
51
+ }
@@ -0,0 +1,19 @@
1
+ import type { U8aLike } from '../types.js';
2
+ /**
3
+ * @name u8aConcat
4
+ * @summary Creates a concatenated Uint8Array from the inputs.
5
+ * @description
6
+ * Concatenates the input arrays into a single `UInt8Array`.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { { u8aConcat } from '@pezkuwi/util';
12
+ *
13
+ * u8aConcat(
14
+ * new Uint8Array([1, 2, 3]),
15
+ * new Uint8Array([4, 5, 6])
16
+ * ); // [1, 2, 3, 4, 5, 6]
17
+ * ```
18
+ */
19
+ export declare function u8aConcat(...list: readonly U8aLike[]): Uint8Array;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.u8aConcat = u8aConcat;
4
+ const toU8a_js_1 = require("./toU8a.js");
5
+ /**
6
+ * @name u8aConcat
7
+ * @summary Creates a concatenated Uint8Array from the inputs.
8
+ * @description
9
+ * Concatenates the input arrays into a single `UInt8Array`.
10
+ * @example
11
+ * <BR>
12
+ *
13
+ * ```javascript
14
+ * import { { u8aConcat } from '@pezkuwi/util';
15
+ *
16
+ * u8aConcat(
17
+ * new Uint8Array([1, 2, 3]),
18
+ * new Uint8Array([4, 5, 6])
19
+ * ); // [1, 2, 3, 4, 5, 6]
20
+ * ```
21
+ */
22
+ function u8aConcat(...list) {
23
+ const count = list.length;
24
+ const u8as = new Array(count);
25
+ for (let i = 0; i < count; i++) {
26
+ u8as[i] = (0, toU8a_js_1.u8aToU8a)(list[i]);
27
+ }
28
+ return Uint8Array.from(Buffer.concat(u8as));
29
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @name u8aEmpty
3
+ * @summary Tests for a `Uint8Array` for emptyness
4
+ * @description
5
+ * Checks to see if the input `Uint8Array` has zero length or contains all 0 values.
6
+ */
7
+ export declare function u8aEmpty(value: Uint8Array): boolean;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.u8aEmpty = u8aEmpty;
4
+ /**
5
+ * @name u8aEmpty
6
+ * @summary Tests for a `Uint8Array` for emptyness
7
+ * @description
8
+ * Checks to see if the input `Uint8Array` has zero length or contains all 0 values.
9
+ */
10
+ function u8aEmpty(value) {
11
+ const len = value.length | 0;
12
+ // on smaller sizes, the byte-by-byte compare is faster than allocating
13
+ // another object for DataView (on very large arrays the DataView is faster)
14
+ for (let i = 0; i < len; i++) {
15
+ if (value[i] | 0) {
16
+ return false;
17
+ }
18
+ }
19
+ return true;
20
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name u8aEq
3
+ * @summary Compares two Uint8Arrays for equality.
4
+ * @description
5
+ * For `UInt8Array` (or hex string) input values true if there is a match.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { u8aEq } from '@pezkuwi/util';
11
+ *
12
+ * u8aEq(new Uint8Array([0x68, 0x65]), new Uint8Array([0x68, 0x65])); // true
13
+ * ```
14
+ */
15
+ export declare function u8aEq(a: string | Uint8Array, b: string | Uint8Array): boolean;
package/cjs/u8a/eq.js ADDED
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.u8aEq = u8aEq;
4
+ const toU8a_js_1 = require("./toU8a.js");
5
+ /**
6
+ * @name u8aEq
7
+ * @summary Compares two Uint8Arrays for equality.
8
+ * @description
9
+ * For `UInt8Array` (or hex string) input values true if there is a match.
10
+ * @example
11
+ * <BR>
12
+ *
13
+ * ```javascript
14
+ * import { u8aEq } from '@pezkuwi/util';
15
+ *
16
+ * u8aEq(new Uint8Array([0x68, 0x65]), new Uint8Array([0x68, 0x65])); // true
17
+ * ```
18
+ */
19
+ function u8aEq(a, b) {
20
+ const u8aa = (0, toU8a_js_1.u8aToU8a)(a);
21
+ const u8ab = (0, toU8a_js_1.u8aToU8a)(b);
22
+ if (u8aa.length === u8ab.length) {
23
+ const dvA = new DataView(u8aa.buffer, u8aa.byteOffset);
24
+ const dvB = new DataView(u8ab.buffer, u8ab.byteOffset);
25
+ const mod = (u8aa.length % 4) | 0;
26
+ const length = (u8aa.length - mod) | 0;
27
+ for (let i = 0; i < length; i += 4) {
28
+ if (dvA.getUint32(i) !== dvB.getUint32(i)) {
29
+ return false;
30
+ }
31
+ }
32
+ for (let i = length, count = u8aa.length; i < count; i++) {
33
+ if (u8aa[i] !== u8ab[i]) {
34
+ return false;
35
+ }
36
+ }
37
+ return true;
38
+ }
39
+ return false;
40
+ }