@pezkuwi/util 14.0.10 → 14.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (570) 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/build/bundle-pezkuwi-util.js +148 -127
  58. package/build/cjs/packageInfo.js +1 -1
  59. package/build/cjs/u8a/wrap.d.ts +3 -3
  60. package/build/package.json +8 -8
  61. package/build/packageInfo.js +1 -1
  62. package/build/u8a/wrap.d.ts +3 -3
  63. package/build-deno/packageInfo.ts +1 -1
  64. package/build-tsc/u8a/wrap.d.ts +3 -3
  65. package/build-tsc-cjs/packageInfo.js +1 -1
  66. package/build-tsc-esm/packageInfo.js +1 -1
  67. package/bundle-pezkuwi-util.js +4830 -0
  68. package/bundle.d.ts +28 -0
  69. package/bundle.js +28 -0
  70. package/cjs/array/chunk.d.ts +15 -0
  71. package/cjs/array/chunk.js +30 -0
  72. package/cjs/array/filter.d.ts +16 -0
  73. package/cjs/array/filter.js +22 -0
  74. package/cjs/array/flatten.d.ts +15 -0
  75. package/cjs/array/flatten.js +42 -0
  76. package/cjs/array/index.d.ts +10 -0
  77. package/cjs/array/index.js +20 -0
  78. package/cjs/array/range.d.ts +16 -0
  79. package/cjs/array/range.js +28 -0
  80. package/cjs/array/shuffle.d.ts +5 -0
  81. package/cjs/array/shuffle.js +22 -0
  82. package/cjs/array/unzip.d.ts +5 -0
  83. package/cjs/array/unzip.js +16 -0
  84. package/cjs/array/zip.d.ts +5 -0
  85. package/cjs/array/zip.js +15 -0
  86. package/cjs/assert.d.ts +29 -0
  87. package/cjs/assert.js +44 -0
  88. package/cjs/bi/consts.d.ts +90 -0
  89. package/cjs/bi/consts.js +94 -0
  90. package/cjs/bi/helpers.d.ts +2 -0
  91. package/cjs/bi/helpers.js +19 -0
  92. package/cjs/bi/index.d.ts +9 -0
  93. package/cjs/bi/index.js +19 -0
  94. package/cjs/bi/min.d.ts +10 -0
  95. package/cjs/bi/min.js +14 -0
  96. package/cjs/bi/sqrt.d.ts +7 -0
  97. package/cjs/bi/sqrt.js +32 -0
  98. package/cjs/bi/toBigInt.d.ts +7 -0
  99. package/cjs/bi/toBigInt.js +28 -0
  100. package/cjs/bi/toHex.d.ts +7 -0
  101. package/cjs/bi/toHex.js +12 -0
  102. package/cjs/bi/toU8a.d.ts +7 -0
  103. package/cjs/bi/toU8a.js +52 -0
  104. package/cjs/bn/bn.d.ts +2 -0
  105. package/cjs/bn/bn.js +6 -0
  106. package/cjs/bn/consts.d.ts +91 -0
  107. package/cjs/bn/consts.js +94 -0
  108. package/cjs/bn/fromHex.d.ts +1 -0
  109. package/cjs/bn/fromHex.js +5 -0
  110. package/cjs/bn/index.d.ts +11 -0
  111. package/cjs/bn/index.js +23 -0
  112. package/cjs/bn/min.d.ts +29 -0
  113. package/cjs/bn/min.js +32 -0
  114. package/cjs/bn/sqrt.d.ts +16 -0
  115. package/cjs/bn/sqrt.js +41 -0
  116. package/cjs/bn/toBn.d.ts +19 -0
  117. package/cjs/bn/toBn.js +40 -0
  118. package/cjs/bn/toHex.d.ts +18 -0
  119. package/cjs/bn/toHex.js +23 -0
  120. package/cjs/bn/toU8a.d.ts +17 -0
  121. package/cjs/bn/toU8a.js +36 -0
  122. package/cjs/buffer/index.d.ts +4 -0
  123. package/cjs/buffer/index.js +8 -0
  124. package/cjs/buffer/toU8a.d.ts +15 -0
  125. package/cjs/buffer/toU8a.js +20 -0
  126. package/cjs/bundle.d.ts +28 -0
  127. package/cjs/bundle.js +33 -0
  128. package/cjs/compact/addLength.d.ts +13 -0
  129. package/cjs/compact/addLength.js +23 -0
  130. package/cjs/compact/defaults.d.ts +3 -0
  131. package/cjs/compact/defaults.js +5 -0
  132. package/cjs/compact/fromU8a.d.ts +22 -0
  133. package/cjs/compact/fromU8a.js +92 -0
  134. package/cjs/compact/index.d.ts +24 -0
  135. package/cjs/compact/index.js +32 -0
  136. package/cjs/compact/stripLength.d.ts +13 -0
  137. package/cjs/compact/stripLength.js +24 -0
  138. package/cjs/compact/toU8a.d.ts +14 -0
  139. package/cjs/compact/toU8a.js +48 -0
  140. package/cjs/compact/types.d.ts +1 -0
  141. package/cjs/compact/types.js +2 -0
  142. package/cjs/detectPackage.d.ts +17 -0
  143. package/cjs/detectPackage.js +100 -0
  144. package/cjs/extractTime.d.ts +14 -0
  145. package/cjs/extractTime.js +56 -0
  146. package/cjs/float/index.d.ts +1 -0
  147. package/cjs/float/index.js +5 -0
  148. package/cjs/float/toU8a.d.ts +11 -0
  149. package/cjs/float/toU8a.js +22 -0
  150. package/cjs/format/formatBalance.d.ts +54 -0
  151. package/cjs/format/formatBalance.js +88 -0
  152. package/cjs/format/formatDate.d.ts +5 -0
  153. package/cjs/format/formatDate.js +20 -0
  154. package/cjs/format/formatDecimal.d.ts +5 -0
  155. package/cjs/format/formatDecimal.js +19 -0
  156. package/cjs/format/formatElapsed.d.ts +7 -0
  157. package/cjs/format/formatElapsed.js +30 -0
  158. package/cjs/format/formatNumber.d.ts +14 -0
  159. package/cjs/format/formatNumber.js +14 -0
  160. package/cjs/format/getSeparator.d.ts +9 -0
  161. package/cjs/format/getSeparator.js +14 -0
  162. package/cjs/format/index.d.ts +6 -0
  163. package/cjs/format/index.js +16 -0
  164. package/cjs/format/si.d.ts +9 -0
  165. package/cjs/format/si.js +45 -0
  166. package/cjs/has.d.ts +14 -0
  167. package/cjs/has.js +19 -0
  168. package/cjs/hex/addPrefix.d.ts +16 -0
  169. package/cjs/hex/addPrefix.js +23 -0
  170. package/cjs/hex/fixLength.d.ts +18 -0
  171. package/cjs/hex/fixLength.js +30 -0
  172. package/cjs/hex/hasPrefix.d.ts +16 -0
  173. package/cjs/hex/hasPrefix.js +21 -0
  174. package/cjs/hex/index.d.ts +12 -0
  175. package/cjs/hex/index.js +24 -0
  176. package/cjs/hex/stripPrefix.d.ts +15 -0
  177. package/cjs/hex/stripPrefix.js +30 -0
  178. package/cjs/hex/toBigInt.d.ts +6 -0
  179. package/cjs/hex/toBigInt.js +15 -0
  180. package/cjs/hex/toBn.d.ts +21 -0
  181. package/cjs/hex/toBn.js +35 -0
  182. package/cjs/hex/toNumber.d.ts +15 -0
  183. package/cjs/hex/toNumber.js +23 -0
  184. package/cjs/hex/toString.d.ts +15 -0
  185. package/cjs/hex/toString.js +22 -0
  186. package/cjs/hex/toU8a.d.ts +16 -0
  187. package/cjs/hex/toU8a.js +57 -0
  188. package/cjs/hex/toU8aBuffer.d.ts +16 -0
  189. package/cjs/hex/toU8aBuffer.js +43 -0
  190. package/cjs/index.d.ts +2 -0
  191. package/cjs/index.js +5 -0
  192. package/cjs/is/array.d.ts +5 -0
  193. package/cjs/is/array.js +10 -0
  194. package/cjs/is/ascii.d.ts +8 -0
  195. package/cjs/is/ascii.js +43 -0
  196. package/cjs/is/bigInt.d.ts +15 -0
  197. package/cjs/is/bigInt.js +20 -0
  198. package/cjs/is/bn.d.ts +17 -0
  199. package/cjs/is/bn.js +22 -0
  200. package/cjs/is/boolean.d.ts +15 -0
  201. package/cjs/is/boolean.js +20 -0
  202. package/cjs/is/buffer.d.ts +16 -0
  203. package/cjs/is/buffer.js +24 -0
  204. package/cjs/is/childClass.d.ts +17 -0
  205. package/cjs/is/childClass.js +26 -0
  206. package/cjs/is/class.d.ts +6 -0
  207. package/cjs/is/class.js +9 -0
  208. package/cjs/is/codec.d.ts +12 -0
  209. package/cjs/is/codec.js +9 -0
  210. package/cjs/is/compact.d.ts +13 -0
  211. package/cjs/is/compact.js +9 -0
  212. package/cjs/is/error.d.ts +15 -0
  213. package/cjs/is/error.js +21 -0
  214. package/cjs/is/function.d.ts +17 -0
  215. package/cjs/is/function.js +20 -0
  216. package/cjs/is/helpers.d.ts +3 -0
  217. package/cjs/is/helpers.js +19 -0
  218. package/cjs/is/hex.d.ts +19 -0
  219. package/cjs/is/hex.js +27 -0
  220. package/cjs/is/index.d.ts +33 -0
  221. package/cjs/is/index.js +66 -0
  222. package/cjs/is/instanceOf.d.ts +15 -0
  223. package/cjs/is/instanceOf.js +21 -0
  224. package/cjs/is/ip.d.ts +18 -0
  225. package/cjs/is/ip.js +44 -0
  226. package/cjs/is/jsonObject.d.ts +27 -0
  227. package/cjs/is/jsonObject.js +40 -0
  228. package/cjs/is/null.d.ts +15 -0
  229. package/cjs/is/null.js +20 -0
  230. package/cjs/is/number.d.ts +15 -0
  231. package/cjs/is/number.js +20 -0
  232. package/cjs/is/object.d.ts +18 -0
  233. package/cjs/is/object.js +21 -0
  234. package/cjs/is/observable.d.ts +16 -0
  235. package/cjs/is/observable.js +19 -0
  236. package/cjs/is/promise.d.ts +1 -0
  237. package/cjs/is/promise.js +5 -0
  238. package/cjs/is/riscv.d.ts +7 -0
  239. package/cjs/is/riscv.js +20 -0
  240. package/cjs/is/string.d.ts +16 -0
  241. package/cjs/is/string.js +20 -0
  242. package/cjs/is/testChain.d.ts +1 -0
  243. package/cjs/is/testChain.js +10 -0
  244. package/cjs/is/toBigInt.d.ts +2 -0
  245. package/cjs/is/toBigInt.js +5 -0
  246. package/cjs/is/toBn.d.ts +2 -0
  247. package/cjs/is/toBn.js +5 -0
  248. package/cjs/is/u8a.d.ts +15 -0
  249. package/cjs/is/u8a.js +23 -0
  250. package/cjs/is/undefined.d.ts +15 -0
  251. package/cjs/is/undefined.js +20 -0
  252. package/cjs/is/utf8.d.ts +7 -0
  253. package/cjs/is/utf8.js +200 -0
  254. package/cjs/is/wasm.d.ts +7 -0
  255. package/cjs/is/wasm.js +15 -0
  256. package/cjs/lazy.d.ts +14 -0
  257. package/cjs/lazy.js +55 -0
  258. package/cjs/logger.d.ts +17 -0
  259. package/cjs/logger.js +122 -0
  260. package/cjs/memoize.d.ts +10 -0
  261. package/cjs/memoize.js +33 -0
  262. package/cjs/nextTick.d.ts +5 -0
  263. package/cjs/nextTick.js +27 -0
  264. package/cjs/noop.d.ts +8 -0
  265. package/cjs/noop.js +16 -0
  266. package/cjs/number/index.d.ts +5 -0
  267. package/cjs/number/index.js +10 -0
  268. package/cjs/number/toHex.d.ts +17 -0
  269. package/cjs/number/toHex.js +23 -0
  270. package/cjs/number/toU8a.d.ts +15 -0
  271. package/cjs/number/toU8a.js +22 -0
  272. package/cjs/object/clear.d.ts +5 -0
  273. package/cjs/object/clear.js +14 -0
  274. package/cjs/object/copy.d.ts +5 -0
  275. package/cjs/object/copy.js +11 -0
  276. package/cjs/object/entries.d.ts +9 -0
  277. package/cjs/object/entries.js +10 -0
  278. package/cjs/object/index.d.ts +7 -0
  279. package/cjs/object/index.js +18 -0
  280. package/cjs/object/keys.d.ts +5 -0
  281. package/cjs/object/keys.js +10 -0
  282. package/cjs/object/property.d.ts +10 -0
  283. package/cjs/object/property.js +38 -0
  284. package/cjs/object/spread.d.ts +6 -0
  285. package/cjs/object/spread.js +34 -0
  286. package/cjs/object/values.d.ts +5 -0
  287. package/cjs/object/values.js +10 -0
  288. package/cjs/package.json +3 -0
  289. package/cjs/packageDetect.d.ts +1 -0
  290. package/cjs/packageDetect.js +7 -0
  291. package/cjs/packageInfo.d.ts +6 -0
  292. package/cjs/packageInfo.js +4 -0
  293. package/cjs/promisify.d.ts +16 -0
  294. package/cjs/promisify.js +30 -0
  295. package/cjs/string/camelCase.d.ts +13 -0
  296. package/cjs/string/camelCase.js +62 -0
  297. package/cjs/string/index.d.ts +8 -0
  298. package/cjs/string/index.js +18 -0
  299. package/cjs/string/lowerFirst.d.ts +31 -0
  300. package/cjs/string/lowerFirst.js +40 -0
  301. package/cjs/string/shorten.d.ts +16 -0
  302. package/cjs/string/shorten.js +22 -0
  303. package/cjs/string/toHex.d.ts +16 -0
  304. package/cjs/string/toHex.js +22 -0
  305. package/cjs/string/toU8a.d.ts +16 -0
  306. package/cjs/string/toU8a.js +24 -0
  307. package/cjs/stringify.d.ts +6 -0
  308. package/cjs/stringify.js +18 -0
  309. package/cjs/types.d.ts +62 -0
  310. package/cjs/types.js +2 -0
  311. package/cjs/u8a/cmp.d.ts +17 -0
  312. package/cjs/u8a/cmp.js +49 -0
  313. package/cjs/u8a/concat.d.ts +24 -0
  314. package/cjs/u8a/concat.js +51 -0
  315. package/cjs/u8a/concatBuffer.d.ts +19 -0
  316. package/cjs/u8a/concatBuffer.js +29 -0
  317. package/cjs/u8a/empty.d.ts +7 -0
  318. package/cjs/u8a/empty.js +20 -0
  319. package/cjs/u8a/eq.d.ts +15 -0
  320. package/cjs/u8a/eq.js +40 -0
  321. package/cjs/u8a/fixLength.d.ts +17 -0
  322. package/cjs/u8a/fixLength.js +31 -0
  323. package/cjs/u8a/index.d.ts +18 -0
  324. package/cjs/u8a/index.js +42 -0
  325. package/cjs/u8a/sorted.d.ts +15 -0
  326. package/cjs/u8a/sorted.js +21 -0
  327. package/cjs/u8a/toBigInt.d.ts +6 -0
  328. package/cjs/u8a/toBigInt.js +73 -0
  329. package/cjs/u8a/toBn.d.ts +21 -0
  330. package/cjs/u8a/toBn.js +81 -0
  331. package/cjs/u8a/toBuffer.d.ts +16 -0
  332. package/cjs/u8a/toBuffer.js +24 -0
  333. package/cjs/u8a/toFloat.d.ts +11 -0
  334. package/cjs/u8a/toFloat.js +20 -0
  335. package/cjs/u8a/toHex.d.ts +16 -0
  336. package/cjs/u8a/toHex.js +56 -0
  337. package/cjs/u8a/toHexBuffer.d.ts +16 -0
  338. package/cjs/u8a/toHexBuffer.js +25 -0
  339. package/cjs/u8a/toNumber.d.ts +6 -0
  340. package/cjs/u8a/toNumber.js +61 -0
  341. package/cjs/u8a/toString.d.ts +15 -0
  342. package/cjs/u8a/toString.js +24 -0
  343. package/cjs/u8a/toU8a.d.ts +19 -0
  344. package/cjs/u8a/toU8a.js +42 -0
  345. package/cjs/u8a/wrap.d.ts +22 -0
  346. package/cjs/u8a/wrap.js +49 -0
  347. package/compact/addLength.d.ts +13 -0
  348. package/compact/addLength.js +20 -0
  349. package/compact/defaults.d.ts +3 -0
  350. package/compact/defaults.js +2 -0
  351. package/compact/fromU8a.d.ts +22 -0
  352. package/compact/fromU8a.js +88 -0
  353. package/compact/index.d.ts +24 -0
  354. package/compact/index.js +24 -0
  355. package/compact/stripLength.d.ts +13 -0
  356. package/compact/stripLength.js +21 -0
  357. package/compact/toU8a.d.ts +14 -0
  358. package/compact/toU8a.js +45 -0
  359. package/compact/types.d.ts +1 -0
  360. package/compact/types.js +1 -0
  361. package/detectPackage.d.ts +17 -0
  362. package/detectPackage.js +96 -0
  363. package/extractTime.d.ts +14 -0
  364. package/extractTime.js +53 -0
  365. package/float/index.d.ts +1 -0
  366. package/float/index.js +1 -0
  367. package/float/toU8a.d.ts +11 -0
  368. package/float/toU8a.js +19 -0
  369. package/format/formatBalance.d.ts +54 -0
  370. package/format/formatBalance.js +85 -0
  371. package/format/formatDate.d.ts +5 -0
  372. package/format/formatDate.js +17 -0
  373. package/format/formatDecimal.d.ts +5 -0
  374. package/format/formatDecimal.js +16 -0
  375. package/format/formatElapsed.d.ts +7 -0
  376. package/format/formatElapsed.js +27 -0
  377. package/format/formatNumber.d.ts +14 -0
  378. package/format/formatNumber.js +11 -0
  379. package/format/getSeparator.d.ts +9 -0
  380. package/format/getSeparator.js +11 -0
  381. package/format/index.d.ts +6 -0
  382. package/format/index.js +6 -0
  383. package/format/si.d.ts +9 -0
  384. package/format/si.js +40 -0
  385. package/has.d.ts +14 -0
  386. package/has.js +16 -0
  387. package/hex/addPrefix.d.ts +16 -0
  388. package/hex/addPrefix.js +20 -0
  389. package/hex/fixLength.d.ts +18 -0
  390. package/hex/fixLength.js +27 -0
  391. package/hex/hasPrefix.d.ts +16 -0
  392. package/hex/hasPrefix.js +18 -0
  393. package/hex/index.d.ts +12 -0
  394. package/hex/index.js +12 -0
  395. package/hex/stripPrefix.d.ts +15 -0
  396. package/hex/stripPrefix.js +27 -0
  397. package/hex/toBigInt.d.ts +6 -0
  398. package/hex/toBigInt.js +12 -0
  399. package/hex/toBn.d.ts +21 -0
  400. package/hex/toBn.js +32 -0
  401. package/hex/toNumber.d.ts +15 -0
  402. package/hex/toNumber.js +20 -0
  403. package/hex/toString.d.ts +15 -0
  404. package/hex/toString.js +19 -0
  405. package/hex/toU8a.d.ts +16 -0
  406. package/hex/toU8a.js +54 -0
  407. package/hex/toU8aBuffer.d.ts +16 -0
  408. package/hex/toU8aBuffer.js +40 -0
  409. package/index.d.ts +2 -0
  410. package/index.js +2 -0
  411. package/is/array.d.ts +5 -0
  412. package/is/array.js +7 -0
  413. package/is/ascii.d.ts +8 -0
  414. package/is/ascii.js +40 -0
  415. package/is/bigInt.d.ts +15 -0
  416. package/is/bigInt.js +17 -0
  417. package/is/bn.d.ts +17 -0
  418. package/is/bn.js +19 -0
  419. package/is/boolean.d.ts +15 -0
  420. package/is/boolean.js +17 -0
  421. package/is/buffer.d.ts +16 -0
  422. package/is/buffer.js +21 -0
  423. package/is/childClass.d.ts +17 -0
  424. package/is/childClass.js +23 -0
  425. package/is/class.d.ts +6 -0
  426. package/is/class.js +6 -0
  427. package/is/codec.d.ts +12 -0
  428. package/is/codec.js +6 -0
  429. package/is/compact.d.ts +13 -0
  430. package/is/compact.js +6 -0
  431. package/is/error.d.ts +15 -0
  432. package/is/error.js +18 -0
  433. package/is/function.d.ts +17 -0
  434. package/is/function.js +17 -0
  435. package/is/helpers.d.ts +3 -0
  436. package/is/helpers.js +14 -0
  437. package/is/hex.d.ts +19 -0
  438. package/is/hex.js +23 -0
  439. package/is/index.d.ts +33 -0
  440. package/is/index.js +33 -0
  441. package/is/instanceOf.d.ts +15 -0
  442. package/is/instanceOf.js +18 -0
  443. package/is/ip.d.ts +18 -0
  444. package/is/ip.js +41 -0
  445. package/is/jsonObject.d.ts +27 -0
  446. package/is/jsonObject.js +37 -0
  447. package/is/null.d.ts +15 -0
  448. package/is/null.js +17 -0
  449. package/is/number.d.ts +15 -0
  450. package/is/number.js +17 -0
  451. package/is/object.d.ts +18 -0
  452. package/is/object.js +18 -0
  453. package/is/observable.d.ts +16 -0
  454. package/is/observable.js +16 -0
  455. package/is/promise.d.ts +1 -0
  456. package/is/promise.js +2 -0
  457. package/is/riscv.d.ts +7 -0
  458. package/is/riscv.js +17 -0
  459. package/is/string.d.ts +16 -0
  460. package/is/string.js +17 -0
  461. package/is/testChain.d.ts +1 -0
  462. package/is/testChain.js +7 -0
  463. package/is/toBigInt.d.ts +2 -0
  464. package/is/toBigInt.js +2 -0
  465. package/is/toBn.d.ts +2 -0
  466. package/is/toBn.js +2 -0
  467. package/is/u8a.d.ts +15 -0
  468. package/is/u8a.js +20 -0
  469. package/is/undefined.d.ts +15 -0
  470. package/is/undefined.js +17 -0
  471. package/is/utf8.d.ts +7 -0
  472. package/is/utf8.js +197 -0
  473. package/is/wasm.d.ts +7 -0
  474. package/is/wasm.js +12 -0
  475. package/lazy.d.ts +14 -0
  476. package/lazy.js +51 -0
  477. package/logger.d.ts +17 -0
  478. package/logger.js +118 -0
  479. package/memoize.d.ts +10 -0
  480. package/memoize.js +30 -0
  481. package/nextTick.d.ts +5 -0
  482. package/nextTick.js +24 -0
  483. package/noop.d.ts +8 -0
  484. package/noop.js +12 -0
  485. package/number/index.d.ts +5 -0
  486. package/number/index.js +5 -0
  487. package/number/toHex.d.ts +17 -0
  488. package/number/toHex.js +20 -0
  489. package/number/toU8a.d.ts +15 -0
  490. package/number/toU8a.js +19 -0
  491. package/object/clear.d.ts +5 -0
  492. package/object/clear.js +11 -0
  493. package/object/copy.d.ts +5 -0
  494. package/object/copy.js +8 -0
  495. package/object/entries.d.ts +9 -0
  496. package/object/entries.js +7 -0
  497. package/object/index.d.ts +7 -0
  498. package/object/index.js +7 -0
  499. package/object/keys.d.ts +5 -0
  500. package/object/keys.js +7 -0
  501. package/object/property.d.ts +10 -0
  502. package/object/property.js +34 -0
  503. package/object/spread.d.ts +6 -0
  504. package/object/spread.js +31 -0
  505. package/object/values.d.ts +5 -0
  506. package/object/values.js +7 -0
  507. package/package.json +1958 -11
  508. package/packageDetect.d.ts +1 -0
  509. package/packageDetect.js +5 -0
  510. package/packageInfo.d.ts +6 -0
  511. package/packageInfo.js +1 -0
  512. package/promisify.d.ts +16 -0
  513. package/promisify.js +27 -0
  514. package/src/packageInfo.ts +1 -1
  515. package/src/u8a/toHex.spec.ts +1 -1
  516. package/src/u8a/toHexBuffer.spec.ts +1 -1
  517. package/string/camelCase.d.ts +13 -0
  518. package/string/camelCase.js +59 -0
  519. package/string/index.d.ts +8 -0
  520. package/string/index.js +8 -0
  521. package/string/lowerFirst.d.ts +31 -0
  522. package/string/lowerFirst.js +37 -0
  523. package/string/shorten.d.ts +16 -0
  524. package/string/shorten.js +19 -0
  525. package/string/toHex.d.ts +16 -0
  526. package/string/toHex.js +19 -0
  527. package/string/toU8a.d.ts +16 -0
  528. package/string/toU8a.js +21 -0
  529. package/stringify.d.ts +6 -0
  530. package/stringify.js +15 -0
  531. package/tsconfig.build.tsbuildinfo +1 -1
  532. package/tsconfig.spec.tsbuildinfo +1 -1
  533. package/types.d.ts +62 -0
  534. package/types.js +1 -0
  535. package/u8a/cmp.d.ts +17 -0
  536. package/u8a/cmp.js +46 -0
  537. package/u8a/concat.d.ts +24 -0
  538. package/u8a/concat.js +47 -0
  539. package/u8a/concatBuffer.d.ts +19 -0
  540. package/u8a/concatBuffer.js +26 -0
  541. package/u8a/empty.d.ts +7 -0
  542. package/u8a/empty.js +17 -0
  543. package/u8a/eq.d.ts +15 -0
  544. package/u8a/eq.js +37 -0
  545. package/u8a/fixLength.d.ts +17 -0
  546. package/u8a/fixLength.js +28 -0
  547. package/u8a/index.d.ts +18 -0
  548. package/u8a/index.js +18 -0
  549. package/u8a/sorted.d.ts +15 -0
  550. package/u8a/sorted.js +18 -0
  551. package/u8a/toBigInt.d.ts +6 -0
  552. package/u8a/toBigInt.js +70 -0
  553. package/u8a/toBn.d.ts +21 -0
  554. package/u8a/toBn.js +78 -0
  555. package/u8a/toBuffer.d.ts +16 -0
  556. package/u8a/toBuffer.js +21 -0
  557. package/u8a/toFloat.d.ts +11 -0
  558. package/u8a/toFloat.js +17 -0
  559. package/u8a/toHex.d.ts +16 -0
  560. package/u8a/toHex.js +53 -0
  561. package/u8a/toHexBuffer.d.ts +16 -0
  562. package/u8a/toHexBuffer.js +22 -0
  563. package/u8a/toNumber.d.ts +6 -0
  564. package/u8a/toNumber.js +58 -0
  565. package/u8a/toString.d.ts +15 -0
  566. package/u8a/toString.js +21 -0
  567. package/u8a/toU8a.d.ts +19 -0
  568. package/u8a/toU8a.js +39 -0
  569. package/u8a/wrap.d.ts +22 -0
  570. package/u8a/wrap.js +43 -0
package/hex/toBn.js ADDED
@@ -0,0 +1,32 @@
1
+ import { BN } from '../bn/bn.js';
2
+ import { hexStripPrefix } from './stripPrefix.js';
3
+ /**
4
+ * @name hexToBn
5
+ * @summary Creates a BN.js object from a hex string.
6
+ * @description
7
+ * `null` inputs returns a `BN(0)` result. Hex input values return the actual value converted to a BN. Anything that is not a hex string (including the `0x` prefix) throws an error.
8
+ * @param _value The value to convert
9
+ * @param _options Options to pass while converting
10
+ * @param _options.isLe Convert using Little Endian
11
+ * @param _options.isNegative Convert using two's complement
12
+ * @example
13
+ * <BR>
14
+ *
15
+ * ```javascript
16
+ * import { hexToBn } from '@pezkuwi/util';
17
+ *
18
+ * hexToBn('0x123480001f'); // => BN(0x123480001f)
19
+ * ```
20
+ */
21
+ export function hexToBn(value, { isLe = false, isNegative = false } = {}) {
22
+ if (!value || value === '0x') {
23
+ return new BN(0);
24
+ }
25
+ const stripped = hexStripPrefix(value);
26
+ const bn = new BN(stripped, 16, isLe ? 'le' : 'be');
27
+ // fromTwos takes as parameter the number of bits, which is the hex length
28
+ // multiplied by 4 (2 bytes being 8 bits)
29
+ return isNegative
30
+ ? bn.fromTwos(stripped.length * 4)
31
+ : bn;
32
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name hexToNumber
3
+ * @summary Creates a Number value from a Buffer object.
4
+ * @description
5
+ * `null` inputs returns an NaN result, `hex` values return the actual value as a `Number`.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { hexToNumber } from '@pezkuwi/util';
11
+ *
12
+ * hexToNumber('0x1234'); // => 0x1234
13
+ * ```
14
+ */
15
+ export declare function hexToNumber(value?: string | null): number;
@@ -0,0 +1,20 @@
1
+ import { hexToBn } from './toBn.js';
2
+ /**
3
+ * @name hexToNumber
4
+ * @summary Creates a Number value from a Buffer object.
5
+ * @description
6
+ * `null` inputs returns an NaN result, `hex` values return the actual value as a `Number`.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { hexToNumber } from '@pezkuwi/util';
12
+ *
13
+ * hexToNumber('0x1234'); // => 0x1234
14
+ * ```
15
+ */
16
+ export function hexToNumber(value) {
17
+ return value
18
+ ? hexToBn(value).toNumber()
19
+ : NaN;
20
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name hexToU8a
3
+ * @summary Creates a Uint8Array object from a hex string.
4
+ * @description
5
+ * Hex input values return the actual bytes value converted to a string. Anything that is not a hex string (including the `0x` prefix) throws an error.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { hexToString } from '@pezkuwi/util';
11
+ *
12
+ * hexToU8a('0x68656c6c6f'); // hello
13
+ * ```
14
+ */
15
+ export declare function hexToString(_value?: string | null): string;
@@ -0,0 +1,19 @@
1
+ import { u8aToString } from '../u8a/toString.js';
2
+ import { hexToU8a } from './toU8a.js';
3
+ /**
4
+ * @name hexToU8a
5
+ * @summary Creates a Uint8Array object from a hex string.
6
+ * @description
7
+ * Hex input values return the actual bytes value converted to a string. Anything that is not a hex string (including the `0x` prefix) throws an error.
8
+ * @example
9
+ * <BR>
10
+ *
11
+ * ```javascript
12
+ * import { hexToString } from '@pezkuwi/util';
13
+ *
14
+ * hexToU8a('0x68656c6c6f'); // hello
15
+ * ```
16
+ */
17
+ export function hexToString(_value) {
18
+ return u8aToString(hexToU8a(_value));
19
+ }
package/hex/toU8a.d.ts ADDED
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @name hexToU8a
3
+ * @summary Creates a Uint8Array object from a hex string.
4
+ * @description
5
+ * `null` inputs returns an empty `Uint8Array` result. Hex input values return the actual bytes value converted to a Uint8Array. Anything that is not a hex string (including the `0x` prefix) throws an error.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { hexToU8a } from '@pezkuwi/util';
11
+ *
12
+ * hexToU8a('0x80001f'); // Uint8Array([0x80, 0x00, 0x1f])
13
+ * hexToU8a('0x80001f', 32); // Uint8Array([0x00, 0x80, 0x00, 0x1f])
14
+ * ```
15
+ */
16
+ export declare function hexToU8a(value?: string | null, bitLength?: number): Uint8Array;
package/hex/toU8a.js ADDED
@@ -0,0 +1,54 @@
1
+ const CHR = '0123456789abcdef';
2
+ const U8 = new Uint8Array(256);
3
+ const U16 = new Uint8Array(256 * 256);
4
+ for (let i = 0, count = CHR.length; i < count; i++) {
5
+ U8[CHR[i].charCodeAt(0) | 0] = i | 0;
6
+ if (i > 9) {
7
+ U8[CHR[i].toUpperCase().charCodeAt(0) | 0] = i | 0;
8
+ }
9
+ }
10
+ for (let i = 0; i < 256; i++) {
11
+ const s = i << 8;
12
+ for (let j = 0; j < 256; j++) {
13
+ U16[s | j] = (U8[i] << 4) | U8[j];
14
+ }
15
+ }
16
+ /**
17
+ * @name hexToU8a
18
+ * @summary Creates a Uint8Array object from a hex string.
19
+ * @description
20
+ * `null` inputs returns an empty `Uint8Array` result. Hex input values return the actual bytes value converted to a Uint8Array. Anything that is not a hex string (including the `0x` prefix) throws an error.
21
+ * @example
22
+ * <BR>
23
+ *
24
+ * ```javascript
25
+ * import { hexToU8a } from '@pezkuwi/util';
26
+ *
27
+ * hexToU8a('0x80001f'); // Uint8Array([0x80, 0x00, 0x1f])
28
+ * hexToU8a('0x80001f', 32); // Uint8Array([0x00, 0x80, 0x00, 0x1f])
29
+ * ```
30
+ */
31
+ export function hexToU8a(value, bitLength = -1) {
32
+ if (!value) {
33
+ return new Uint8Array();
34
+ }
35
+ let s = value.startsWith('0x')
36
+ ? 2
37
+ : 0;
38
+ const decLength = Math.ceil((value.length - s) / 2);
39
+ const endLength = Math.ceil(bitLength === -1
40
+ ? decLength
41
+ : bitLength / 8);
42
+ const result = new Uint8Array(endLength);
43
+ const offset = endLength > decLength
44
+ ? endLength - decLength
45
+ : 0;
46
+ for (let i = offset; i < endLength; i++, s += 2) {
47
+ // The big factor here is actually the string lookups. If we do
48
+ // HEX_TO_U16[value.substring()] we get an 10x slowdown. In the
49
+ // same vein using charCodeAt (as opposed to value[s] or value.charAt(s)) is
50
+ // also the faster operation by at least 2x with the character map above
51
+ result[i] = U16[(value.charCodeAt(s) << 8) | value.charCodeAt(s + 1)];
52
+ }
53
+ return result;
54
+ }
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @name hexToU8a
3
+ * @summary Creates a Uint8Array object from a hex string.
4
+ * @description
5
+ * `null` inputs returns an empty `Uint8Array` result. Hex input values return the actual bytes value converted to a Uint8Array. Anything that is not a hex string (including the `0x` prefix) throws an error.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { hexToU8a } from '@pezkuwi/util';
11
+ *
12
+ * hexToU8a('0x80001f'); // Uint8Array([0x80, 0x00, 0x1f])
13
+ * hexToU8a('0x80001f', 32); // Uint8Array([0x00, 0x80, 0x00, 0x1f])
14
+ * ```
15
+ */
16
+ export declare function hexToU8a(_value?: string | null, bitLength?: number): Uint8Array;
@@ -0,0 +1,40 @@
1
+ /**
2
+ * @name hexToU8a
3
+ * @summary Creates a Uint8Array object from a hex string.
4
+ * @description
5
+ * `null` inputs returns an empty `Uint8Array` result. Hex input values return the actual bytes value converted to a Uint8Array. Anything that is not a hex string (including the `0x` prefix) throws an error.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { hexToU8a } from '@pezkuwi/util';
11
+ *
12
+ * hexToU8a('0x80001f'); // Uint8Array([0x80, 0x00, 0x1f])
13
+ * hexToU8a('0x80001f', 32); // Uint8Array([0x00, 0x80, 0x00, 0x1f])
14
+ * ```
15
+ */
16
+ export function hexToU8a(_value, bitLength = -1) {
17
+ if (!_value) {
18
+ return new Uint8Array();
19
+ }
20
+ const value = _value.startsWith('0x')
21
+ ? _value.substring(2)
22
+ : _value;
23
+ const buf = Buffer.from(value, 'hex');
24
+ const valLength = value.length / 2;
25
+ const resultLength = Math.ceil(bitLength === -1
26
+ ? valLength
27
+ : bitLength / 8);
28
+ if (resultLength === valLength) {
29
+ return Uint8Array.from(buf);
30
+ }
31
+ const offset = resultLength > valLength
32
+ ? resultLength - valLength
33
+ : 0;
34
+ if (offset) {
35
+ const u8a = new Uint8Array(resultLength);
36
+ u8a.set(buf, offset);
37
+ return u8a;
38
+ }
39
+ return Uint8Array.from(buf.subarray(0, resultLength));
40
+ }
package/index.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ import './packageDetect.js';
2
+ export * from './bundle.js';
package/index.js ADDED
@@ -0,0 +1,2 @@
1
+ import './packageDetect.js';
2
+ export * from './bundle.js';
package/is/array.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @name isArray
3
+ * @summary Tests for a Array instance.
4
+ */
5
+ export declare function isArray<T>(value?: unknown): value is T[];
package/is/array.js ADDED
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @name isArray
3
+ * @summary Tests for a Array instance.
4
+ */
5
+ export function isArray(value) {
6
+ return Array.isArray(value);
7
+ }
package/is/ascii.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ import type { U8aLike } from '../types.js';
2
+ /**
3
+ * @name isAscii
4
+ * @summary Tests if the input is printable ASCII
5
+ * @description
6
+ * Checks to see if the input string or Uint8Array is printable ASCII, 32-127 + formatters
7
+ */
8
+ export declare function isAscii(value?: U8aLike | null): boolean;
package/is/ascii.js ADDED
@@ -0,0 +1,40 @@
1
+ import { u8aToU8a } from '../u8a/toU8a.js';
2
+ import { isHex } from './hex.js';
3
+ import { isString } from './string.js';
4
+ /** @internal */
5
+ function isAsciiStr(str) {
6
+ for (let i = 0, count = str.length; i < count; i++) {
7
+ const b = str.charCodeAt(i);
8
+ // check is inlined here, it is faster than making a call
9
+ if (b < 32 || b > 126) {
10
+ return false;
11
+ }
12
+ }
13
+ return true;
14
+ }
15
+ /** @internal */
16
+ function isAsciiBytes(u8a) {
17
+ for (let i = 0, count = u8a.length; i < count; i++) {
18
+ const b = u8a[i] | 0;
19
+ // check is inlined here, it is faster than making a call
20
+ if (b < 32 || b > 126) {
21
+ return false;
22
+ }
23
+ }
24
+ return true;
25
+ }
26
+ /**
27
+ * @name isAscii
28
+ * @summary Tests if the input is printable ASCII
29
+ * @description
30
+ * Checks to see if the input string or Uint8Array is printable ASCII, 32-127 + formatters
31
+ */
32
+ export function isAscii(value) {
33
+ return isString(value)
34
+ ? isHex(value)
35
+ ? isAsciiBytes(u8aToU8a(value))
36
+ : isAsciiStr(value)
37
+ : value
38
+ ? isAsciiBytes(value)
39
+ : false;
40
+ }
package/is/bigInt.d.ts ADDED
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name isBigInt
3
+ * @summary Tests for a `BigInt` object instance.
4
+ * @description
5
+ * Checks to see if the input object is an instance of `BigInt`
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { isBigInt } from '@pezkuwi/util';
11
+ *
12
+ * console.log('isBigInt', isBigInt(123_456n)); // => true
13
+ * ```
14
+ */
15
+ export declare function isBigInt(value: unknown): value is bigint;
package/is/bigInt.js ADDED
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @name isBigInt
3
+ * @summary Tests for a `BigInt` object instance.
4
+ * @description
5
+ * Checks to see if the input object is an instance of `BigInt`
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { isBigInt } from '@pezkuwi/util';
11
+ *
12
+ * console.log('isBigInt', isBigInt(123_456n)); // => true
13
+ * ```
14
+ */
15
+ export function isBigInt(value) {
16
+ return typeof value === 'bigint';
17
+ }
package/is/bn.d.ts ADDED
@@ -0,0 +1,17 @@
1
+ import { BN } from '../bn/bn.js';
2
+ /**
3
+ * @name isBn
4
+ * @summary Tests for a `BN` object instance.
5
+ * @description
6
+ * Checks to see if the input object is an instance of `BN` (bn.js).
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import BN from 'bn.js';
12
+ * import { isBn } from '@pezkuwi/util';
13
+ *
14
+ * console.log('isBn', isBn(new BN(1))); // => true
15
+ * ```
16
+ */
17
+ export declare function isBn(value: unknown): value is BN;
package/is/bn.js ADDED
@@ -0,0 +1,19 @@
1
+ import { BN } from '../bn/bn.js';
2
+ /**
3
+ * @name isBn
4
+ * @summary Tests for a `BN` object instance.
5
+ * @description
6
+ * Checks to see if the input object is an instance of `BN` (bn.js).
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import BN from 'bn.js';
12
+ * import { isBn } from '@pezkuwi/util';
13
+ *
14
+ * console.log('isBn', isBn(new BN(1))); // => true
15
+ * ```
16
+ */
17
+ export function isBn(value) {
18
+ return BN.isBN(value);
19
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name isBoolean
3
+ * @summary Tests for a boolean value.
4
+ * @description
5
+ * Checks to see if the input value is a JavaScript boolean.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { isBoolean } from '@pezkuwi/util';
11
+ *
12
+ * isBoolean(false); // => true
13
+ * ```
14
+ */
15
+ export declare function isBoolean(value: unknown): value is boolean;
package/is/boolean.js ADDED
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @name isBoolean
3
+ * @summary Tests for a boolean value.
4
+ * @description
5
+ * Checks to see if the input value is a JavaScript boolean.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { isBoolean } from '@pezkuwi/util';
11
+ *
12
+ * isBoolean(false); // => true
13
+ * ```
14
+ */
15
+ export function isBoolean(value) {
16
+ return typeof value === 'boolean';
17
+ }
package/is/buffer.d.ts ADDED
@@ -0,0 +1,16 @@
1
+ import type { BufferObject } from '../types.js';
2
+ /**
3
+ * @name isBuffer
4
+ * @summary Tests for a `Buffer` object instance.
5
+ * @description
6
+ * Checks to see if the input object is an instance of `Buffer`.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { isBuffer } from '@pezkuwi/util';
12
+ *
13
+ * console.log('isBuffer', isBuffer(Buffer.from([]))); // => true
14
+ * ```
15
+ */
16
+ export declare function isBuffer<T = BufferObject>(value: unknown): value is T;
package/is/buffer.js ADDED
@@ -0,0 +1,21 @@
1
+ import { xglobal } from '@pezkuwi/x-global';
2
+ import { hasBuffer } from '../has.js';
3
+ import { isFunction } from './function.js';
4
+ /**
5
+ * @name isBuffer
6
+ * @summary Tests for a `Buffer` object instance.
7
+ * @description
8
+ * Checks to see if the input object is an instance of `Buffer`.
9
+ * @example
10
+ * <BR>
11
+ *
12
+ * ```javascript
13
+ * import { isBuffer } from '@pezkuwi/util';
14
+ *
15
+ * console.log('isBuffer', isBuffer(Buffer.from([]))); // => true
16
+ * ```
17
+ */
18
+ export function isBuffer(value) {
19
+ // we do check a function first, since it is slightly faster than isBuffer itself
20
+ return hasBuffer && !!value && isFunction(value.readDoubleLE) && xglobal.Buffer.isBuffer(value);
21
+ }
@@ -0,0 +1,17 @@
1
+ import type { Class } from '../types.js';
2
+ /**
3
+ * @name isChildClass
4
+ * @summary Tests if the child extends the parent Class
5
+ * @description
6
+ * Checks to see if the child Class extends the parent Class
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { isChildClass } from '@pezkuwi/util';
12
+ *
13
+ * console.log('isChildClass', isChildClass(BN, BN); // => true
14
+ * console.log('isChildClass', isChildClass(BN, Uint8Array); // => false
15
+ * ```
16
+ */
17
+ export declare function isChildClass<P extends Class>(Parent: P, Child?: unknown): Child is P;
@@ -0,0 +1,23 @@
1
+ import { isClass } from './class.js';
2
+ /**
3
+ * @name isChildClass
4
+ * @summary Tests if the child extends the parent Class
5
+ * @description
6
+ * Checks to see if the child Class extends the parent Class
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { isChildClass } from '@pezkuwi/util';
12
+ *
13
+ * console.log('isChildClass', isChildClass(BN, BN); // => true
14
+ * console.log('isChildClass', isChildClass(BN, Uint8Array); // => false
15
+ * ```
16
+ */
17
+ export function isChildClass(Parent, Child) {
18
+ // https://stackoverflow.com/questions/30993434/check-if-a-constructor-inherits-another-in-es6/30993664
19
+ return isClass(Child) && isClass(Parent)
20
+ // eslint-disable-next-line no-prototype-builtins
21
+ ? Parent === Child || Parent.isPrototypeOf(Child)
22
+ : false;
23
+ }
package/is/class.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ import type { Class } from '../types.js';
2
+ /**
3
+ * @name isClass
4
+ * Tests if the supplied argument is a Class
5
+ */
6
+ export declare const isClass: <T extends Class>(value?: unknown) => value is T;
package/is/class.js ADDED
@@ -0,0 +1,6 @@
1
+ import { isOnFunction } from './helpers.js';
2
+ /**
3
+ * @name isClass
4
+ * Tests if the supplied argument is a Class
5
+ */
6
+ export const isClass = /*#__PURE__*/ isOnFunction('isPrototypeOf', 'hasOwnProperty');
package/is/codec.d.ts ADDED
@@ -0,0 +1,12 @@
1
+ import type { HexString } from '../types.js';
2
+ interface Registry {
3
+ get: (...params: never[]) => any;
4
+ }
5
+ interface Codec {
6
+ readonly registry: Registry;
7
+ toHex(...params: never[]): HexString;
8
+ toHuman(...params: never[]): unknown;
9
+ toU8a: (...params: never[]) => Uint8Array;
10
+ }
11
+ export declare function isCodec<T extends Codec = Codec>(value?: unknown): value is T;
12
+ export {};
package/is/codec.js ADDED
@@ -0,0 +1,6 @@
1
+ import { isOnObject } from './helpers.js';
2
+ const checkCodec = /*#__PURE__*/ isOnObject('toHex', 'toHuman', 'toU8a');
3
+ const checkRegistry = /*#__PURE__*/ isOnObject('get');
4
+ export function isCodec(value) {
5
+ return checkCodec(value) && checkRegistry(value.registry);
6
+ }
@@ -0,0 +1,13 @@
1
+ import type { BN } from '../bn/bn.js';
2
+ interface Compact<T> {
3
+ toBigInt(): bigint;
4
+ toBn(): BN;
5
+ toNumber(): number;
6
+ unwrap(): T;
7
+ }
8
+ /**
9
+ * @name isCompact
10
+ * @summary Tests for SCALE-Compact-like object instance.
11
+ */
12
+ export declare const isCompact: <T>(value?: unknown) => value is Compact<T>;
13
+ export {};
package/is/compact.js ADDED
@@ -0,0 +1,6 @@
1
+ import { isOnObject } from './helpers.js';
2
+ /**
3
+ * @name isCompact
4
+ * @summary Tests for SCALE-Compact-like object instance.
5
+ */
6
+ export const isCompact = /*#__PURE__*/ isOnObject('toBigInt', 'toBn', 'toNumber', 'unwrap');
package/is/error.d.ts ADDED
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name isError
3
+ * @summary Tests for a `Error` object instance.
4
+ * @description
5
+ * Checks to see if the input object is an instance of `Error`.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { isError } from '@pezkuwi/util';
11
+ *
12
+ * console.log('isError', isError(new Error('message'))); // => true
13
+ * ```
14
+ */
15
+ export declare function isError(value: unknown): value is Error;
package/is/error.js ADDED
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @name isError
3
+ * @summary Tests for a `Error` object instance.
4
+ * @description
5
+ * Checks to see if the input object is an instance of `Error`.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { isError } from '@pezkuwi/util';
11
+ *
12
+ * console.log('isError', isError(new Error('message'))); // => true
13
+ * ```
14
+ */
15
+ export function isError(value) {
16
+ return (((value && value.constructor) === Error) ||
17
+ value instanceof Error);
18
+ }
@@ -0,0 +1,17 @@
1
+ type FnType = Function;
2
+ /**
3
+ * @name isFunction
4
+ * @summary Tests for a `function`.
5
+ * @description
6
+ * Checks to see if the input value is a JavaScript function.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { isFunction } from '@pezkuwi/util';
12
+ *
13
+ * isFunction(() => false); // => true
14
+ * ```
15
+ */
16
+ export declare function isFunction(value: unknown): value is FnType;
17
+ export {};
package/is/function.js ADDED
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @name isFunction
3
+ * @summary Tests for a `function`.
4
+ * @description
5
+ * Checks to see if the input value is a JavaScript function.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { isFunction } from '@pezkuwi/util';
11
+ *
12
+ * isFunction(() => false); // => true
13
+ * ```
14
+ */
15
+ export function isFunction(value) {
16
+ return typeof value === 'function';
17
+ }
@@ -0,0 +1,3 @@
1
+ export declare function isOn<T>(...fns: (keyof T)[]): (value?: unknown) => value is T;
2
+ export declare function isOnFunction<T>(...fns: (keyof T)[]): (value?: unknown) => value is T;
3
+ export declare function isOnObject<T>(...fns: (keyof T)[]): (value?: unknown) => value is T;
package/is/helpers.js ADDED
@@ -0,0 +1,14 @@
1
+ import { isFunction } from './function.js';
2
+ import { isObject } from './object.js';
3
+ export function isOn(...fns) {
4
+ return (value) => (isObject(value) || isFunction(value)) &&
5
+ fns.every((f) => isFunction(value[f]));
6
+ }
7
+ export function isOnFunction(...fns) {
8
+ return (value) => isFunction(value) &&
9
+ fns.every((f) => isFunction(value[f]));
10
+ }
11
+ export function isOnObject(...fns) {
12
+ return (value) => isObject(value) &&
13
+ fns.every((f) => isFunction(value[f]));
14
+ }