umt 2.12.3 → 2.14.0

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 (463) hide show
  1. package/README.md +60 -0
  2. package/module/Array/arraysJoin.js +1 -1
  3. package/module/Array/arraysJoin.js.map +1 -1
  4. package/module/Array/chunk.js +1 -2
  5. package/module/Array/chunk.js.map +1 -1
  6. package/module/Array/generateNumberArray.js +13 -3
  7. package/module/Array/generateNumberArray.js.map +1 -1
  8. package/module/Array/getArraysDiff.js +5 -1
  9. package/module/Array/getArraysDiff.js.map +1 -1
  10. package/module/Array/mergeSort.js +45 -18
  11. package/module/Array/mergeSort.js.map +1 -1
  12. package/module/Array/pop.js +2 -1
  13. package/module/Array/pop.js.map +1 -1
  14. package/module/Array/randomSelect.js +8 -0
  15. package/module/Array/randomSelect.js.map +1 -1
  16. package/module/Array/sortingHelpers/rangeValidator.js +3 -2
  17. package/module/Array/sortingHelpers/rangeValidator.js.map +1 -1
  18. package/module/Array/timSort.js +25 -23
  19. package/module/Array/timSort.js.map +1 -1
  20. package/module/Array/ultraNumberSort.js +214 -136
  21. package/module/Array/ultraNumberSort.js.map +1 -1
  22. package/module/Async/defer.d.ts +18 -0
  23. package/module/Async/defer.js +19 -0
  24. package/module/Async/defer.js.map +1 -0
  25. package/module/Async/index.d.ts +4 -0
  26. package/module/Async/index.js +5 -0
  27. package/module/Async/index.js.map +1 -0
  28. package/module/Async/parallel.d.ts +10 -0
  29. package/module/Async/parallel.js +44 -0
  30. package/module/Async/parallel.js.map +1 -0
  31. package/module/Async/sleep.d.ts +8 -0
  32. package/module/Async/sleep.js +11 -0
  33. package/module/Async/sleep.js.map +1 -0
  34. package/module/Async/timeout.d.ts +10 -0
  35. package/module/Async/timeout.js +22 -0
  36. package/module/Async/timeout.js.map +1 -0
  37. package/module/Color/cmykToRgba.js +6 -7
  38. package/module/Color/cmykToRgba.js.map +1 -1
  39. package/module/Color/hexaToRgba.js +1 -8
  40. package/module/Color/hexaToRgba.js.map +1 -1
  41. package/module/Color/hslaToRgba.d.ts +0 -1
  42. package/module/Color/hslaToRgba.js +7 -22
  43. package/module/Color/hslaToRgba.js.map +1 -1
  44. package/module/Color/rgbaToCmyk.js +0 -11
  45. package/module/Color/rgbaToCmyk.js.map +1 -1
  46. package/module/Color/rgbaToHexA.js +2 -15
  47. package/module/Color/rgbaToHexA.js.map +1 -1
  48. package/module/Color/rgbaToHsla.d.ts +0 -1
  49. package/module/Color/rgbaToHsla.js +0 -12
  50. package/module/Color/rgbaToHsla.js.map +1 -1
  51. package/module/Crypto/constants.d.ts +2 -0
  52. package/module/Crypto/constants.js +3 -0
  53. package/module/Crypto/constants.js.map +1 -0
  54. package/module/Crypto/decodeBase32.js +4 -5
  55. package/module/Crypto/decodeBase32.js.map +1 -1
  56. package/module/Crypto/decodeBase58.js +7 -6
  57. package/module/Crypto/decodeBase58.js.map +1 -1
  58. package/module/Crypto/encodeBase32.js +2 -1
  59. package/module/Crypto/encodeBase32.js.map +1 -1
  60. package/module/Crypto/encodeBase58.js +7 -3
  61. package/module/Crypto/encodeBase58.js.map +1 -1
  62. package/module/DataStructure/index.d.ts +2 -0
  63. package/module/DataStructure/index.js +2 -0
  64. package/module/DataStructure/index.js.map +1 -1
  65. package/module/DataStructure/lruCache.d.ts +139 -0
  66. package/module/DataStructure/lruCache.js +172 -0
  67. package/module/DataStructure/lruCache.js.map +1 -0
  68. package/module/DataStructure/ttlCache.d.ts +139 -0
  69. package/module/DataStructure/ttlCache.js +172 -0
  70. package/module/DataStructure/ttlCache.js.map +1 -0
  71. package/module/Error/flatMapResult.d.ts +23 -0
  72. package/module/Error/flatMapResult.js +28 -0
  73. package/module/Error/flatMapResult.js.map +1 -0
  74. package/module/Error/index.d.ts +3 -0
  75. package/module/Error/index.js +3 -0
  76. package/module/Error/index.js.map +1 -1
  77. package/module/Error/mapResult.d.ts +21 -0
  78. package/module/Error/mapResult.js +27 -0
  79. package/module/Error/mapResult.js.map +1 -0
  80. package/module/Error/matchResult.d.ts +25 -0
  81. package/module/Error/matchResult.js +27 -0
  82. package/module/Error/matchResult.js.map +1 -0
  83. package/module/Error/safeExecute.d.ts +16 -3
  84. package/module/Error/safeExecute.js +5 -2
  85. package/module/Error/safeExecute.js.map +1 -1
  86. package/module/Function/debounce.d.ts +38 -0
  87. package/module/Function/debounce.js +67 -0
  88. package/module/Function/debounce.js.map +1 -0
  89. package/module/Function/index.d.ts +4 -0
  90. package/module/Function/index.js +4 -0
  91. package/module/Function/index.js.map +1 -1
  92. package/module/Function/memoize.d.ts +36 -0
  93. package/module/Function/memoize.js +54 -0
  94. package/module/Function/memoize.js.map +1 -0
  95. package/module/Function/once.d.ts +18 -0
  96. package/module/Function/once.js +29 -0
  97. package/module/Function/once.js.map +1 -0
  98. package/module/Function/throttle.d.ts +25 -0
  99. package/module/Function/throttle.js +55 -0
  100. package/module/Function/throttle.js.map +1 -0
  101. package/module/IP/cidrToLong.d.ts +0 -1
  102. package/module/IP/cidrToLong.js +0 -4
  103. package/module/IP/cidrToLong.js.map +1 -1
  104. package/module/IP/cidrToSubnetMask.d.ts +0 -1
  105. package/module/IP/cidrToSubnetMask.js +0 -1
  106. package/module/IP/cidrToSubnetMask.js.map +1 -1
  107. package/module/IP/getNetworkAddress.d.ts +0 -1
  108. package/module/IP/getNetworkAddress.js +2 -32
  109. package/module/IP/getNetworkAddress.js.map +1 -1
  110. package/module/IP/ipToBinaryString.d.ts +0 -1
  111. package/module/IP/ipToBinaryString.js +2 -25
  112. package/module/IP/ipToBinaryString.js.map +1 -1
  113. package/module/IP/ipToLong.d.ts +0 -1
  114. package/module/IP/ipToLong.js +0 -1
  115. package/module/IP/ipToLong.js.map +1 -1
  116. package/module/IP/isInRange.d.ts +0 -1
  117. package/module/IP/isInRange.js +5 -28
  118. package/module/IP/isInRange.js.map +1 -1
  119. package/module/IP/isPrivateIp.d.ts +0 -1
  120. package/module/IP/isPrivateIp.js +1 -10
  121. package/module/IP/isPrivateIp.js.map +1 -1
  122. package/module/IP/longToIp.d.ts +0 -1
  123. package/module/IP/longToIp.js +0 -8
  124. package/module/IP/longToIp.js.map +1 -1
  125. package/module/IP/subnetMaskToCidr.d.ts +0 -1
  126. package/module/IP/subnetMaskToCidr.js +2 -23
  127. package/module/IP/subnetMaskToCidr.js.map +1 -1
  128. package/module/Iterator/index.d.ts +3 -0
  129. package/module/Iterator/index.js +4 -0
  130. package/module/Iterator/index.js.map +1 -0
  131. package/module/Iterator/lazyFilter.d.ts +10 -0
  132. package/module/Iterator/lazyFilter.js +19 -0
  133. package/module/Iterator/lazyFilter.js.map +1 -0
  134. package/module/Iterator/lazyMap.d.ts +10 -0
  135. package/module/Iterator/lazyMap.js +17 -0
  136. package/module/Iterator/lazyMap.js.map +1 -0
  137. package/module/Iterator/lazyTake.d.ts +10 -0
  138. package/module/Iterator/lazyTake.js +20 -0
  139. package/module/Iterator/lazyTake.js.map +1 -0
  140. package/module/Math/addition.js +20 -4
  141. package/module/Math/addition.js.map +1 -1
  142. package/module/Math/average.js +3 -3
  143. package/module/Math/average.js.map +1 -1
  144. package/module/Math/bitwise.js +1 -1
  145. package/module/Math/bitwise.js.map +1 -1
  146. package/module/Math/calculator/core.js +2 -1
  147. package/module/Math/calculator/core.js.map +1 -1
  148. package/module/Math/calculator/literalExpression.js +1 -1
  149. package/module/Math/clamp.d.ts +16 -0
  150. package/module/Math/clamp.js +19 -0
  151. package/module/Math/clamp.js.map +1 -0
  152. package/module/Math/correlationCoefficient.js +0 -3
  153. package/module/Math/correlationCoefficient.js.map +1 -1
  154. package/module/Math/inRange.d.ts +19 -0
  155. package/module/Math/inRange.js +24 -0
  156. package/module/Math/inRange.js.map +1 -0
  157. package/module/Math/index.d.ts +3 -0
  158. package/module/Math/index.js +3 -0
  159. package/module/Math/index.js.map +1 -1
  160. package/module/Math/median.js +2 -2
  161. package/module/Math/median.js.map +1 -1
  162. package/module/Math/nCr.js +2 -4
  163. package/module/Math/nCr.js.map +1 -1
  164. package/module/Math/percentile.js +2 -5
  165. package/module/Math/percentile.js.map +1 -1
  166. package/module/Math/primeFactorization.js +1 -1
  167. package/module/Math/primeFactorization.js.map +1 -1
  168. package/module/Math/sumPrecise.d.ts +14 -0
  169. package/module/Math/sumPrecise.js +27 -0
  170. package/module/Math/sumPrecise.js.map +1 -0
  171. package/module/Math/uuidv7.js +56 -22
  172. package/module/Math/uuidv7.js.map +1 -1
  173. package/module/Number/formatNumber.d.ts +42 -0
  174. package/module/Number/formatNumber.js +44 -0
  175. package/module/Number/formatNumber.js.map +1 -0
  176. package/module/Number/index.d.ts +3 -0
  177. package/module/Number/index.js +4 -0
  178. package/module/Number/index.js.map +1 -0
  179. package/module/Number/toOrdinal.d.ts +20 -0
  180. package/module/Number/toOrdinal.js +37 -0
  181. package/module/Number/toOrdinal.js.map +1 -0
  182. package/module/Number/toPercentage.d.ts +20 -0
  183. package/module/Number/toPercentage.js +27 -0
  184. package/module/Number/toPercentage.js.map +1 -0
  185. package/module/Object/deepClone.d.ts +15 -0
  186. package/module/Object/deepClone.js +65 -0
  187. package/module/Object/deepClone.js.map +1 -0
  188. package/module/Object/getObjectsCommon.d.ts +23 -0
  189. package/module/Object/getObjectsCommon.js +60 -0
  190. package/module/Object/getObjectsCommon.js.map +1 -0
  191. package/module/Object/getObjectsDiff.d.ts +25 -0
  192. package/module/Object/getObjectsDiff.js +79 -0
  193. package/module/Object/getObjectsDiff.js.map +1 -0
  194. package/module/Object/index.d.ts +6 -0
  195. package/module/Object/index.js +6 -0
  196. package/module/Object/index.js.map +1 -1
  197. package/module/Object/isPlainObject.d.ts +16 -0
  198. package/module/Object/isPlainObject.js +32 -0
  199. package/module/Object/isPlainObject.js.map +1 -0
  200. package/module/Object/mapKeys.d.ts +15 -0
  201. package/module/Object/mapKeys.js +28 -0
  202. package/module/Object/mapKeys.js.map +1 -0
  203. package/module/Object/mapValues.d.ts +15 -0
  204. package/module/Object/mapValues.js +27 -0
  205. package/module/Object/mapValues.js.map +1 -0
  206. package/module/Object/mergeDeep.js +4 -9
  207. package/module/Object/mergeDeep.js.map +1 -1
  208. package/module/Object/omit.d.ts +1 -1
  209. package/module/Object/omit.js.map +1 -1
  210. package/module/Object/pickDeep.js +6 -1
  211. package/module/Object/pickDeep.js.map +1 -1
  212. package/module/Predicate/every.d.ts +14 -0
  213. package/module/Predicate/every.js +22 -0
  214. package/module/Predicate/every.js.map +1 -0
  215. package/module/Predicate/index.d.ts +6 -0
  216. package/module/Predicate/index.js +7 -0
  217. package/module/Predicate/index.js.map +1 -0
  218. package/module/Predicate/isNotNullish.d.ts +11 -0
  219. package/module/Predicate/isNotNullish.js +12 -0
  220. package/module/Predicate/isNotNullish.js.map +1 -0
  221. package/module/Predicate/isNullish.d.ts +11 -0
  222. package/module/Predicate/isNullish.js +12 -0
  223. package/module/Predicate/isNullish.js.map +1 -0
  224. package/module/Predicate/matches.d.ts +11 -0
  225. package/module/Predicate/matches.js +20 -0
  226. package/module/Predicate/matches.js.map +1 -0
  227. package/module/Predicate/not.d.ts +10 -0
  228. package/module/Predicate/not.js +11 -0
  229. package/module/Predicate/not.js.map +1 -0
  230. package/module/Predicate/some.d.ts +15 -0
  231. package/module/Predicate/some.js +23 -0
  232. package/module/Predicate/some.js.map +1 -0
  233. package/module/String/camelCase.js +2 -2
  234. package/module/String/camelCase.js.map +1 -1
  235. package/module/String/escapeHtml.js +1 -1
  236. package/module/String/formatString/getValue.js +1 -1
  237. package/module/String/formatString/getValue.js.map +1 -1
  238. package/module/String/fromBase64.d.ts +0 -1
  239. package/module/String/fromBase64.js +1 -9
  240. package/module/String/fromBase64.js.map +1 -1
  241. package/module/String/fuzzySearch.js +74 -6
  242. package/module/String/fuzzySearch.js.map +1 -1
  243. package/module/String/kebabCase.js +1 -1
  244. package/module/String/kebabCase.js.map +1 -1
  245. package/module/String/levenshteinDistance.js +1 -2
  246. package/module/String/levenshteinDistance.js.map +1 -1
  247. package/module/String/randomString.js +23 -2
  248. package/module/String/randomString.js.map +1 -1
  249. package/module/String/reverseString.js +1 -1
  250. package/module/String/reverseString.js.map +1 -1
  251. package/module/String/slugify.js +1 -1
  252. package/module/String/toHalfWidth.js +2 -2
  253. package/module/String/toHalfWidth.js.map +1 -1
  254. package/module/String/truncate.js +0 -3
  255. package/module/String/truncate.js.map +1 -1
  256. package/module/String/unescapeHtml.js +1 -1
  257. package/module/String/unescapeHtml.js.map +1 -1
  258. package/module/Time/convertTime.js +4 -3
  259. package/module/Time/convertTime.js.map +1 -1
  260. package/module/Tool/escapeRegExp.d.ts +8 -0
  261. package/module/Tool/escapeRegExp.js +11 -0
  262. package/module/Tool/escapeRegExp.js.map +1 -0
  263. package/module/Tool/index.d.ts +1 -0
  264. package/module/Tool/index.js +1 -0
  265. package/module/Tool/index.js.map +1 -1
  266. package/module/URL/buildUrl.d.ts +17 -0
  267. package/module/URL/buildUrl.js +24 -0
  268. package/module/URL/buildUrl.js.map +1 -0
  269. package/module/URL/index.d.ts +4 -0
  270. package/module/URL/index.js +5 -0
  271. package/module/URL/index.js.map +1 -0
  272. package/module/URL/isAbsoluteUrl.d.ts +20 -0
  273. package/module/URL/isAbsoluteUrl.js +23 -0
  274. package/module/URL/isAbsoluteUrl.js.map +1 -0
  275. package/module/URL/joinPath.d.ts +24 -0
  276. package/module/URL/joinPath.js +43 -0
  277. package/module/URL/joinPath.js.map +1 -0
  278. package/module/URL/parseQueryString.d.ts +22 -0
  279. package/module/URL/parseQueryString.js +34 -0
  280. package/module/URL/parseQueryString.js.map +1 -0
  281. package/module/Validate/parseEmail.js +5 -5
  282. package/module/Validate/parseEmail.js.map +1 -1
  283. package/module/es5/Array/arraysJoin.js +1 -1
  284. package/module/es5/Array/chunk.js +3 -2
  285. package/module/es5/Array/generateNumberArray.js +21 -3
  286. package/module/es5/Array/getArraysDiff.js +5 -3
  287. package/module/es5/Array/mergeSort.js +51 -19
  288. package/module/es5/Array/pop.js +2 -7
  289. package/module/es5/Array/randomSelect.js +8 -0
  290. package/module/es5/Array/sortingHelpers/rangeValidator.js +3 -2
  291. package/module/es5/Array/timSort.js +25 -23
  292. package/module/es5/Array/ultraNumberSort.js +243 -243
  293. package/module/es5/Async/defer.d.ts +18 -0
  294. package/module/es5/Async/defer.js +32 -0
  295. package/module/es5/Async/index.d.ts +4 -0
  296. package/module/es5/Async/index.js +49 -0
  297. package/module/es5/Async/parallel.d.ts +10 -0
  298. package/module/es5/Async/parallel.js +48 -0
  299. package/module/es5/Async/sleep.d.ts +8 -0
  300. package/module/es5/Async/sleep.js +18 -0
  301. package/module/es5/Async/timeout.d.ts +10 -0
  302. package/module/es5/Async/timeout.js +29 -0
  303. package/module/es5/Color/cmykToRgba.js +6 -7
  304. package/module/es5/Color/hexaToRgba.js +7 -5
  305. package/module/es5/Color/hslaToRgba.d.ts +0 -1
  306. package/module/es5/Color/hslaToRgba.js +7 -22
  307. package/module/es5/Color/rgbaToCmyk.js +0 -4
  308. package/module/es5/Color/rgbaToHexA.js +2 -6
  309. package/module/es5/Color/rgbaToHsla.d.ts +0 -1
  310. package/module/es5/Color/rgbaToHsla.js +0 -5
  311. package/module/es5/Crypto/constants.d.ts +2 -0
  312. package/module/es5/Crypto/constants.js +8 -0
  313. package/module/es5/Crypto/decodeBase32.js +12 -5
  314. package/module/es5/Crypto/decodeBase58.js +14 -8
  315. package/module/es5/Crypto/encodeBase32.js +2 -1
  316. package/module/es5/Crypto/encodeBase58.js +8 -3
  317. package/module/es5/DataStructure/index.d.ts +2 -0
  318. package/module/es5/DataStructure/index.js +22 -0
  319. package/module/es5/DataStructure/lruCache.d.ts +139 -0
  320. package/module/es5/DataStructure/lruCache.js +205 -0
  321. package/module/es5/DataStructure/ttlCache.d.ts +139 -0
  322. package/module/es5/DataStructure/ttlCache.js +211 -0
  323. package/module/es5/Error/flatMapResult.d.ts +23 -0
  324. package/module/es5/Error/flatMapResult.js +33 -0
  325. package/module/es5/Error/index.d.ts +3 -0
  326. package/module/es5/Error/index.js +33 -0
  327. package/module/es5/Error/mapResult.d.ts +21 -0
  328. package/module/es5/Error/mapResult.js +32 -0
  329. package/module/es5/Error/matchResult.d.ts +25 -0
  330. package/module/es5/Error/matchResult.js +32 -0
  331. package/module/es5/Error/safeExecute.d.ts +16 -3
  332. package/module/es5/Error/safeExecute.js +3 -3
  333. package/module/es5/Function/debounce.d.ts +38 -0
  334. package/module/es5/Function/debounce.js +88 -0
  335. package/module/es5/Function/index.d.ts +4 -0
  336. package/module/es5/Function/index.js +44 -0
  337. package/module/es5/Function/memoize.d.ts +36 -0
  338. package/module/es5/Function/memoize.js +73 -0
  339. package/module/es5/Function/once.d.ts +18 -0
  340. package/module/es5/Function/once.js +37 -0
  341. package/module/es5/Function/throttle.d.ts +25 -0
  342. package/module/es5/Function/throttle.js +69 -0
  343. package/module/es5/IP/cidrToLong.d.ts +0 -1
  344. package/module/es5/IP/cidrToLong.js +0 -4
  345. package/module/es5/IP/cidrToSubnetMask.d.ts +0 -1
  346. package/module/es5/IP/cidrToSubnetMask.js +0 -1
  347. package/module/es5/IP/getNetworkAddress.d.ts +0 -1
  348. package/module/es5/IP/getNetworkAddress.js +2 -31
  349. package/module/es5/IP/ipToBinaryString.d.ts +0 -1
  350. package/module/es5/IP/ipToBinaryString.js +1 -40
  351. package/module/es5/IP/ipToLong.d.ts +0 -1
  352. package/module/es5/IP/ipToLong.js +0 -1
  353. package/module/es5/IP/isInRange.d.ts +0 -1
  354. package/module/es5/IP/isInRange.js +5 -29
  355. package/module/es5/IP/isPrivateIp.d.ts +0 -1
  356. package/module/es5/IP/isPrivateIp.js +3 -12
  357. package/module/es5/IP/longToIp.d.ts +0 -1
  358. package/module/es5/IP/longToIp.js +0 -6
  359. package/module/es5/IP/subnetMaskToCidr.d.ts +0 -1
  360. package/module/es5/IP/subnetMaskToCidr.js +2 -26
  361. package/module/es5/Iterator/index.d.ts +3 -0
  362. package/module/es5/Iterator/index.js +38 -0
  363. package/module/es5/Iterator/lazyFilter.d.ts +10 -0
  364. package/module/es5/Iterator/lazyFilter.js +63 -0
  365. package/module/es5/Iterator/lazyMap.d.ts +10 -0
  366. package/module/es5/Iterator/lazyMap.js +59 -0
  367. package/module/es5/Iterator/lazyTake.d.ts +10 -0
  368. package/module/es5/Iterator/lazyTake.js +65 -0
  369. package/module/es5/Math/addition.js +24 -14
  370. package/module/es5/Math/average.js +3 -5
  371. package/module/es5/Math/bitwise.js +1 -1
  372. package/module/es5/Math/calculator/core.js +2 -1
  373. package/module/es5/Math/calculator/literalExpression.js +1 -1
  374. package/module/es5/Math/clamp.d.ts +16 -0
  375. package/module/es5/Math/clamp.js +24 -0
  376. package/module/es5/Math/correlationCoefficient.js +0 -3
  377. package/module/es5/Math/inRange.d.ts +19 -0
  378. package/module/es5/Math/inRange.js +29 -0
  379. package/module/es5/Math/index.d.ts +3 -0
  380. package/module/es5/Math/index.js +33 -0
  381. package/module/es5/Math/median.js +2 -2
  382. package/module/es5/Math/nCr.js +2 -4
  383. package/module/es5/Math/percentile.js +2 -11
  384. package/module/es5/Math/primeFactorization.js +1 -1
  385. package/module/es5/Math/sumPrecise.d.ts +14 -0
  386. package/module/es5/Math/sumPrecise.js +41 -0
  387. package/module/es5/Math/uuidv7.js +25 -40
  388. package/module/es5/Number/formatNumber.d.ts +42 -0
  389. package/module/es5/Number/formatNumber.js +58 -0
  390. package/module/es5/Number/index.d.ts +3 -0
  391. package/module/es5/Number/index.js +38 -0
  392. package/module/es5/Number/toOrdinal.d.ts +20 -0
  393. package/module/es5/Number/toOrdinal.js +42 -0
  394. package/module/es5/Number/toPercentage.d.ts +20 -0
  395. package/module/es5/Number/toPercentage.js +33 -0
  396. package/module/es5/Object/deepClone.d.ts +15 -0
  397. package/module/es5/Object/deepClone.js +110 -0
  398. package/module/es5/Object/getObjectsCommon.d.ts +23 -0
  399. package/module/es5/Object/getObjectsCommon.js +92 -0
  400. package/module/es5/Object/getObjectsDiff.d.ts +25 -0
  401. package/module/es5/Object/getObjectsDiff.js +146 -0
  402. package/module/es5/Object/index.d.ts +6 -0
  403. package/module/es5/Object/index.js +66 -0
  404. package/module/es5/Object/isPlainObject.d.ts +16 -0
  405. package/module/es5/Object/isPlainObject.js +39 -0
  406. package/module/es5/Object/mapKeys.d.ts +15 -0
  407. package/module/es5/Object/mapKeys.js +33 -0
  408. package/module/es5/Object/mapValues.d.ts +15 -0
  409. package/module/es5/Object/mapValues.js +32 -0
  410. package/module/es5/Object/mergeDeep.js +7 -10
  411. package/module/es5/Object/omit.d.ts +1 -1
  412. package/module/es5/Object/pickDeep.js +4 -6
  413. package/module/es5/Predicate/every.d.ts +14 -0
  414. package/module/es5/Predicate/every.js +33 -0
  415. package/module/es5/Predicate/index.d.ts +6 -0
  416. package/module/es5/Predicate/index.js +71 -0
  417. package/module/es5/Predicate/isNotNullish.d.ts +11 -0
  418. package/module/es5/Predicate/isNotNullish.js +19 -0
  419. package/module/es5/Predicate/isNullish.d.ts +11 -0
  420. package/module/es5/Predicate/isNullish.js +19 -0
  421. package/module/es5/Predicate/matches.d.ts +11 -0
  422. package/module/es5/Predicate/matches.js +28 -0
  423. package/module/es5/Predicate/not.d.ts +10 -0
  424. package/module/es5/Predicate/not.js +20 -0
  425. package/module/es5/Predicate/some.d.ts +15 -0
  426. package/module/es5/Predicate/some.js +34 -0
  427. package/module/es5/String/camelCase.js +2 -2
  428. package/module/es5/String/escapeHtml.js +1 -1
  429. package/module/es5/String/formatString/getValue.js +1 -1
  430. package/module/es5/String/fromBase64.d.ts +0 -1
  431. package/module/es5/String/fromBase64.js +9 -8
  432. package/module/es5/String/fuzzySearch.js +84 -9
  433. package/module/es5/String/kebabCase.js +1 -1
  434. package/module/es5/String/levenshteinDistance.js +3 -2
  435. package/module/es5/String/randomString.js +24 -2
  436. package/module/es5/String/reverseString.js +7 -1
  437. package/module/es5/String/slugify.js +1 -1
  438. package/module/es5/String/toHalfWidth.js +2 -2
  439. package/module/es5/String/truncate.js +0 -3
  440. package/module/es5/String/unescapeHtml.js +1 -1
  441. package/module/es5/Time/convertTime.js +4 -3
  442. package/module/es5/Tool/escapeRegExp.d.ts +8 -0
  443. package/module/es5/Tool/escapeRegExp.js +18 -0
  444. package/module/es5/Tool/index.d.ts +1 -0
  445. package/module/es5/Tool/index.js +11 -0
  446. package/module/es5/URL/buildUrl.d.ts +17 -0
  447. package/module/es5/URL/buildUrl.js +31 -0
  448. package/module/es5/URL/index.d.ts +4 -0
  449. package/module/es5/URL/index.js +49 -0
  450. package/module/es5/URL/isAbsoluteUrl.d.ts +20 -0
  451. package/module/es5/URL/isAbsoluteUrl.js +28 -0
  452. package/module/es5/URL/joinPath.d.ts +24 -0
  453. package/module/es5/URL/joinPath.js +48 -0
  454. package/module/es5/URL/parseQueryString.d.ts +22 -0
  455. package/module/es5/URL/parseQueryString.js +57 -0
  456. package/module/es5/Validate/parseEmail.js +5 -5
  457. package/module/es5/index.d.ts +5 -0
  458. package/module/es5/index.js +73 -18
  459. package/module/es5/tsconfig.tsbuildinfo +1 -1
  460. package/module/index.d.ts +5 -0
  461. package/module/index.js +5 -0
  462. package/module/index.js.map +1 -1
  463. package/package.json +58 -27
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _defer = require("./defer");
7
+ Object.keys(_defer).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _defer[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _defer[key];
14
+ }
15
+ });
16
+ });
17
+ var _parallel = require("./parallel");
18
+ Object.keys(_parallel).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _parallel[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function get() {
24
+ return _parallel[key];
25
+ }
26
+ });
27
+ });
28
+ var _sleep = require("./sleep");
29
+ Object.keys(_sleep).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _sleep[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function get() {
35
+ return _sleep[key];
36
+ }
37
+ });
38
+ });
39
+ var _timeout = require("./timeout");
40
+ Object.keys(_timeout).forEach(function (key) {
41
+ if (key === "default" || key === "__esModule") return;
42
+ if (key in exports && exports[key] === _timeout[key]) return;
43
+ Object.defineProperty(exports, key, {
44
+ enumerable: true,
45
+ get: function get() {
46
+ return _timeout[key];
47
+ }
48
+ });
49
+ });
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Executes async functions in parallel with a concurrency limit
3
+ * @param {number} limit - Maximum number of concurrent executions
4
+ * @param {T[]} items - The items to process
5
+ * @param {(item: T, index: number) => Promise<U>} function_ - The async function to apply to each item
6
+ * @returns {Promise<U[]>} Results in the same order as the input items
7
+ * @example
8
+ * const results = await parallel(2, [1, 2, 3], async (n) => n * 2);
9
+ */
10
+ export declare const parallel: <T, U>(limit: number, items: T[], function_: (item: T, index: number) => Promise<U>) => Promise<U[]>;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.parallel = void 0;
7
+ /**
8
+ * Executes async functions in parallel with a concurrency limit
9
+ * @param {number} limit - Maximum number of concurrent executions
10
+ * @param {T[]} items - The items to process
11
+ * @param {(item: T, index: number) => Promise<U>} function_ - The async function to apply to each item
12
+ * @returns {Promise<U[]>} Results in the same order as the input items
13
+ * @example
14
+ * const results = await parallel(2, [1, 2, 3], async (n) => n * 2);
15
+ */
16
+ var parallel = exports.parallel = function parallel(limit, items, function_) {
17
+ var results = Array.from({
18
+ length: items.length
19
+ });
20
+ var nextIndex = 0;
21
+ var resolvedCount = 0;
22
+ return new Promise(function (resolve, reject) {
23
+ if (items.length === 0) {
24
+ resolve(results);
25
+ return;
26
+ }
27
+ var _runNext = function runNext() {
28
+ if (nextIndex >= items.length) {
29
+ return;
30
+ }
31
+ var currentIndex = nextIndex;
32
+ nextIndex += 1;
33
+ function_(items[currentIndex], currentIndex).then(function (result) {
34
+ results[currentIndex] = result;
35
+ resolvedCount += 1;
36
+ if (resolvedCount === items.length) {
37
+ resolve(results);
38
+ } else {
39
+ _runNext();
40
+ }
41
+ })["catch"](reject);
42
+ };
43
+ var initialBatch = Math.min(limit, items.length);
44
+ for (var index = 0; index < initialBatch; index += 1) {
45
+ _runNext();
46
+ }
47
+ });
48
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Returns a promise that resolves after the specified milliseconds
3
+ * @param {number} ms - The number of milliseconds to sleep
4
+ * @returns {Promise<void>} A promise that resolves after the delay
5
+ * @example
6
+ * await sleep(1000);
7
+ */
8
+ export declare const sleep: (ms: number) => Promise<void>;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.sleep = void 0;
7
+ /**
8
+ * Returns a promise that resolves after the specified milliseconds
9
+ * @param {number} ms - The number of milliseconds to sleep
10
+ * @returns {Promise<void>} A promise that resolves after the delay
11
+ * @example
12
+ * await sleep(1000);
13
+ */
14
+ var sleep = exports.sleep = function sleep(ms) {
15
+ return new Promise(function (resolve) {
16
+ setTimeout(resolve, ms);
17
+ });
18
+ };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Wraps a promise with a timeout, rejecting if it does not
3
+ * resolve within the specified milliseconds
4
+ * @param {Promise<T>} promise - The promise to wrap
5
+ * @param {number} ms - The timeout in milliseconds
6
+ * @returns {Promise<T>} The result of the promise or a timeout error
7
+ * @example
8
+ * const result = await timeout(fetch("/api"), 5000);
9
+ */
10
+ export declare const timeout: <T>(promise: Promise<T>, ms: number) => Promise<T>;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.timeout = void 0;
7
+ /**
8
+ * Wraps a promise with a timeout, rejecting if it does not
9
+ * resolve within the specified milliseconds
10
+ * @param {Promise<T>} promise - The promise to wrap
11
+ * @param {number} ms - The timeout in milliseconds
12
+ * @returns {Promise<T>} The result of the promise or a timeout error
13
+ * @example
14
+ * const result = await timeout(fetch("/api"), 5000);
15
+ */
16
+ var timeout = exports.timeout = function timeout(promise, ms) {
17
+ return new Promise(function (resolve, reject) {
18
+ var timer = setTimeout(function () {
19
+ reject(new Error("Timed out after ".concat(ms, "ms")));
20
+ }, ms);
21
+ promise.then(function (value) {
22
+ clearTimeout(timer);
23
+ resolve(value);
24
+ }, function (error) {
25
+ clearTimeout(timer);
26
+ reject(error);
27
+ });
28
+ });
29
+ };
@@ -4,9 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.cmykToRgba = void 0;
7
+ var _clamp = require("../Math/clamp");
7
8
  var _division = require("../Math/division");
8
- var _max = require("../Math/max");
9
- var _min = require("../Math/min");
10
9
  var _multiplication = require("../Math/multiplication");
11
10
  var _roundOf = require("../Math/roundOf");
12
11
  var _subtract = require("../Math/subtract");
@@ -23,10 +22,10 @@ var _subtract = require("../Math/subtract");
23
22
  var cmykToRgba = exports.cmykToRgba = function cmykToRgba(c, m, y, k) {
24
23
  var a = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 1;
25
24
  // Clamp CMYK values to 0-100 range
26
- var clampedC = (0, _max.max)(0, (0, _min.min)(100, c));
27
- var clampedM = (0, _max.max)(0, (0, _min.min)(100, m));
28
- var clampedY = (0, _max.max)(0, (0, _min.min)(100, y));
29
- var clampedK = (0, _max.max)(0, (0, _min.min)(100, k));
25
+ var clampedC = (0, _clamp.clamp)(c, 0, 100);
26
+ var clampedM = (0, _clamp.clamp)(m, 0, 100);
27
+ var clampedY = (0, _clamp.clamp)(y, 0, 100);
28
+ var clampedK = (0, _clamp.clamp)(k, 0, 100);
30
29
 
31
30
  // Convert CMYK values to 0-1 range
32
31
  var cPercentage = (0, _division.division)(clampedC, 100);
@@ -45,7 +44,7 @@ var cmykToRgba = exports.cmykToRgba = function cmykToRgba(c, m, y, k) {
45
44
  var roundedB = (0, _roundOf.roundOf)(b);
46
45
 
47
46
  // Clamp alpha value to 0-1 range
48
- var clampedA = (0, _max.max)(0, (0, _min.min)(1, a));
47
+ var clampedA = (0, _clamp.clamp)(a, 0, 1);
49
48
  return {
50
49
  r: roundedR,
51
50
  g: roundedG,
@@ -6,6 +6,12 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.hexaToRgba = void 0;
7
7
  var _division = require("../Math/division");
8
8
  var _roundOf = require("../Math/roundOf");
9
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
10
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
12
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
13
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
14
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
9
15
  /**
10
16
  * Convert hexadecimal color code to RGBA color values
11
17
  * @param hex Hexadecimal color code (3, 6, or 8 digits with #)
@@ -14,15 +20,11 @@ var _roundOf = require("../Math/roundOf");
14
20
  * @throws {Error} If the hex code format is invalid
15
21
  */
16
22
  var hexaToRgba = exports.hexaToRgba = function hexaToRgba(hex) {
17
- // Validate hex code format
18
- if (/^#([\da-f]{3}|[\da-f]{6}|[\da-f]{8})$/i.test(hex) === false) {
19
- throw new Error("Invalid hex code");
20
- }
21
23
  var hexCode = hex.replace("#", "");
22
24
 
23
25
  // Convert 3-digit hex to 6-digit format
24
26
  if (hexCode.length === 3) {
25
- hexCode = hexCode.split("").map(function (_char) {
27
+ hexCode = _toConsumableArray(hexCode).map(function (_char) {
26
28
  return _char + _char;
27
29
  }).join("");
28
30
  }
@@ -6,7 +6,6 @@
6
6
  * @param a Alpha value (0-1)
7
7
  * @returns {Object} RGBA values (r, g, b as 0-255, a as 0-1)
8
8
  * @example hslaToRgba(120, 50, 50, 1) // { r: 64, g: 191, b: 64, a: 1 }
9
- * @throws {Error} If any input values are out of their valid ranges
10
9
  */
11
10
  export declare const hslaToRgba: (h: number, s: number, l: number, a?: number) => {
12
11
  r: number;
@@ -5,9 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.hslaToRgba = void 0;
7
7
  var _addition = require("../Math/addition");
8
+ var _clamp = require("../Math/clamp");
8
9
  var _division = require("../Math/division");
9
- var _max = require("../Math/max");
10
- var _min = require("../Math/min");
11
10
  var _multiplication = require("../Math/multiplication");
12
11
  var _roundOf = require("../Math/roundOf");
13
12
  var _subtract = require("../Math/subtract");
@@ -19,29 +18,15 @@ var _subtract = require("../Math/subtract");
19
18
  * @param a Alpha value (0-1)
20
19
  * @returns {Object} RGBA values (r, g, b as 0-255, a as 0-1)
21
20
  * @example hslaToRgba(120, 50, 50, 1) // { r: 64, g: 191, b: 64, a: 1 }
22
- * @throws {Error} If any input values are out of their valid ranges
23
21
  */
24
22
  var hslaToRgba = exports.hslaToRgba = function hslaToRgba(h, s, l) {
25
23
  var a = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;
26
- // Validate input ranges
27
- if (h < 0 || h > 360) {
28
- throw new Error("Hue must be between 0 and 360 degrees");
29
- }
30
- if (s < 0 || s > 100) {
31
- throw new Error("Saturation must be between 0 and 100 percent");
32
- }
33
- if (l < 0 || l > 100) {
34
- throw new Error("Lightness must be between 0 and 100 percent");
35
- }
36
- if (a < 0 || a > 1) {
37
- throw new Error("Alpha must be between 0 and 1");
38
- }
39
24
  var hue = (0, _division.division)((0, _division.division)(h, 360, false)[1], 360);
40
- var saturation = (0, _division.division)((0, _max.max)(0, (0, _min.min)(s, 100)), 100);
41
- var lightness = (0, _division.division)((0, _max.max)(0, (0, _min.min)(l, 100)), 100);
42
- var r = 0;
43
- var g = 0;
44
- var b = 0;
25
+ var saturation = (0, _division.division)((0, _clamp.clamp)(s, 0, 100), 100);
26
+ var lightness = (0, _division.division)((0, _clamp.clamp)(l, 0, 100), 100);
27
+ var r;
28
+ var g;
29
+ var b;
45
30
  if (saturation === 0) {
46
31
  r = g = b = lightness;
47
32
  } else {
@@ -73,7 +58,7 @@ var hslaToRgba = exports.hslaToRgba = function hslaToRgba(h, s, l) {
73
58
  var roundedR = (0, _roundOf.roundOf)((0, _multiplication.multiplication)(r, 255), 2);
74
59
  var roundedG = (0, _roundOf.roundOf)((0, _multiplication.multiplication)(g, 255), 2);
75
60
  var roundedB = (0, _roundOf.roundOf)((0, _multiplication.multiplication)(b, 255), 2);
76
- var clampedA = (0, _max.max)(0, (0, _min.min)(1, a));
61
+ var clampedA = (0, _clamp.clamp)(a, 0, 1);
77
62
  return {
78
63
  r: roundedR,
79
64
  g: roundedG,
@@ -19,10 +19,6 @@ var rgbaToCmyk = exports.rgbaToCmyk = function rgbaToCmyk(_ref) {
19
19
  b = _ref.b,
20
20
  _ref$a = _ref.a,
21
21
  a = _ref$a === void 0 ? 1 : _ref$a;
22
- // Validate RGBA values
23
- if (r < 0 || r > 255 || g < 0 || g > 255 || b < 0 || b > 255 || a < 0 || a > 1) {
24
- throw new Error("Invalid rgba value");
25
- }
26
22
  var rPrime = (0, _division.division)(r, 255);
27
23
  var gPrime = (0, _division.division)(g, 255);
28
24
  var bPrime = (0, _division.division)(b, 255);
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.rgbaToHexA = void 0;
7
+ var _padStart = require("../String/padStart");
7
8
  var hex = function hex(x) {
8
- var hexCode = x.toString(16);
9
- return hexCode.length === 1 ? "0".concat(hexCode) : hexCode;
9
+ return (0, _padStart.padStart)(x.toString(16), 2, "0");
10
10
  };
11
11
  /**
12
12
  * Convert RGBA color to hexadecimal color code
@@ -20,9 +20,5 @@ var rgbaToHexA = exports.rgbaToHexA = function rgbaToHexA(_ref) {
20
20
  b = _ref.b,
21
21
  _ref$a = _ref.a,
22
22
  a = _ref$a === void 0 ? 1 : _ref$a;
23
- // Validate RGBA values
24
- if (r < 0 || r > 255 || g < 0 || g > 255 || b < 0 || b > 255 || a < 0 || a > 1) {
25
- throw new Error("Invalid rgba value");
26
- }
27
23
  return "#".concat(hex(r)).concat(hex(g)).concat(hex(b)).concat(hex(Math.round(a * 255)));
28
24
  };
@@ -3,7 +3,6 @@
3
3
  * @param rgba Object containing r, g, b values (0-255) and optional a (0-1)
4
4
  * @returns {Object} HSLA values (h as 0-360, s and l as 0-100, a as 0-1)
5
5
  * @example rgbaToHsla({ r: 100, g: 100, b: 100, a: 1 }); // { h: 0, s: 0, l: 39.22, a: 1 }
6
- * @throws {Error} If any input values are out of their valid ranges
7
6
  */
8
7
  export declare const rgbaToHsla: ({ r, g, b, a, }: {
9
8
  r: number;
@@ -14,7 +14,6 @@ var _subtract = require("../Math/subtract");
14
14
  * @param rgba Object containing r, g, b values (0-255) and optional a (0-1)
15
15
  * @returns {Object} HSLA values (h as 0-360, s and l as 0-100, a as 0-1)
16
16
  * @example rgbaToHsla({ r: 100, g: 100, b: 100, a: 1 }); // { h: 0, s: 0, l: 39.22, a: 1 }
17
- * @throws {Error} If any input values are out of their valid ranges
18
17
  */
19
18
  var rgbaToHsla = exports.rgbaToHsla = function rgbaToHsla(_ref) {
20
19
  var r = _ref.r,
@@ -22,10 +21,6 @@ var rgbaToHsla = exports.rgbaToHsla = function rgbaToHsla(_ref) {
22
21
  b = _ref.b,
23
22
  _ref$a = _ref.a,
24
23
  a = _ref$a === void 0 ? 1 : _ref$a;
25
- // Validate RGBA values
26
- if (r < 0 || r > 255 || g < 0 || g > 255 || b < 0 || b > 255 || a < 0 || a > 1) {
27
- throw new Error("Invalid rgba value");
28
- }
29
24
  var rPrime = (0, _division.division)(r, 255);
30
25
  var gPrime = (0, _division.division)(g, 255);
31
26
  var bPrime = (0, _division.division)(b, 255);
@@ -0,0 +1,2 @@
1
+ export declare const BASE32_ALPHABET = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";
2
+ export declare const BASE58_ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BASE58_ALPHABET = exports.BASE32_ALPHABET = void 0;
7
+ var BASE32_ALPHABET = exports.BASE32_ALPHABET = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";
8
+ var BASE58_ALPHABET = exports.BASE58_ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
@@ -4,9 +4,19 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.decodeBase32 = void 0;
7
+ var _constants = require("./constants");
7
8
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
9
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
10
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
8
11
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
12
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
13
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
9
14
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
15
+ // O(1) lookup table for Base32 character-to-index mapping
16
+ var base32CharToIndex = new Map(_toConsumableArray(_constants.BASE32_ALPHABET).map(function (c, index) {
17
+ return [c, index];
18
+ }));
19
+
10
20
  /**
11
21
  * Decodes a Base32 string to Uint8Array
12
22
  * @param {string} input - Base32 encoded string
@@ -14,7 +24,6 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
14
24
  * @example decodeBase32("JBSWY3DP"); // Uint8Array for "Hello"
15
25
  */
16
26
  var decodeBase32 = exports.decodeBase32 = function decodeBase32(input) {
17
- var alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";
18
27
  var cleanedInput = input.replaceAll("=", "");
19
28
  var result = [];
20
29
  var buffer = 0;
@@ -23,11 +32,9 @@ var decodeBase32 = exports.decodeBase32 = function decodeBase32(input) {
23
32
  _step;
24
33
  try {
25
34
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
35
+ var _base32CharToIndex$ge;
26
36
  var _char = _step.value;
27
- var value = alphabet.indexOf(_char);
28
- if (value === -1) {
29
- throw new Error("Invalid base32 character: ".concat(_char));
30
- }
37
+ var value = (_base32CharToIndex$ge = base32CharToIndex.get(_char)) !== null && _base32CharToIndex$ge !== void 0 ? _base32CharToIndex$ge : 0;
31
38
  buffer = buffer << 5 | value;
32
39
  bufferLength += 5;
33
40
  if (bufferLength >= 8) {
@@ -4,13 +4,19 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.decodeBase58 = void 0;
7
+ var _constants = require("./constants");
8
+ function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
7
9
  function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
8
10
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
9
12
  function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
10
13
  function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
11
- function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
12
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
13
14
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
15
+ // O(1) lookup table for Base58 character-to-index mapping
16
+ var base58CharToIndex = new Map(_toConsumableArray(_constants.BASE58_ALPHABET).map(function (c, index) {
17
+ return [c, index];
18
+ }));
19
+
14
20
  /**
15
21
  * Decodes a Base58 string to Uint8Array
16
22
  * @param {string} input - Base58 encoded string
@@ -18,19 +24,18 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
18
24
  * @example decodeBase58("9Ajdvzr"); // Uint8Array for "Hello"
19
25
  */
20
26
  var decodeBase58 = exports.decodeBase58 = function decodeBase58(input) {
21
- var alphabet = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
22
27
  var bigNumber = 0n;
23
28
  var _iterator = _createForOfIteratorHelper(input),
24
29
  _step;
25
30
  try {
26
31
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
32
+ var _base58CharToIndex$ge;
27
33
  var _char = _step.value;
28
- var value = alphabet.indexOf(_char);
29
- if (value === -1) {
30
- throw new Error("Invalid base58 character: ".concat(_char));
31
- }
34
+ var value = (_base58CharToIndex$ge = base58CharToIndex.get(_char)) !== null && _base58CharToIndex$ge !== void 0 ? _base58CharToIndex$ge : 0;
32
35
  bigNumber = bigNumber * 58n + BigInt(value);
33
36
  }
37
+
38
+ // Use push + reverse instead of unshift to avoid O(n²) array shifting
34
39
  } catch (err) {
35
40
  _iterator.e(err);
36
41
  } finally {
@@ -38,9 +43,10 @@ var decodeBase58 = exports.decodeBase58 = function decodeBase58(input) {
38
43
  }
39
44
  var bytes = [];
40
45
  while (bigNumber > 0) {
41
- bytes.unshift(Number(bigNumber % 256n));
46
+ bytes.push(Number(bigNumber % 256n));
42
47
  bigNumber /= 256n;
43
48
  }
49
+ bytes.reverse();
44
50
  var leadingOnes = 0;
45
51
  var _iterator2 = _createForOfIteratorHelper(input),
46
52
  _step2;
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.encodeBase32 = void 0;
7
+ var _constants = require("./constants");
7
8
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
8
9
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
9
10
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
@@ -14,7 +15,7 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
14
15
  * @example encodeBase32("Hello"); // "JBSWY3DP"
15
16
  */
16
17
  var encodeBase32 = exports.encodeBase32 = function encodeBase32(input) {
17
- var alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";
18
+ var alphabet = _constants.BASE32_ALPHABET;
18
19
  var bytes = typeof input === "string" ? new TextEncoder().encode(input) : input;
19
20
  var result = "";
20
21
  var buffer = 0;
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.encodeBase58 = void 0;
7
+ var _constants = require("./constants");
7
8
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
8
9
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
9
10
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
@@ -14,9 +15,11 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
14
15
  * @example encodeBase58("Hello"); // "9Ajdvzr"
15
16
  */
16
17
  var encodeBase58 = exports.encodeBase58 = function encodeBase58(input) {
17
- var alphabet = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
18
+ var alphabet = _constants.BASE58_ALPHABET;
18
19
  var bytes = typeof input === "string" ? new TextEncoder().encode(input) : input;
19
- var encoded = "";
20
+
21
+ // Use array + reverse + join instead of string prepend to avoid O(n²) string concatenation
22
+ var chars = [];
20
23
  var bigNumber = 0n;
21
24
  var _iterator = _createForOfIteratorHelper(bytes),
22
25
  _step;
@@ -32,9 +35,11 @@ var encodeBase58 = exports.encodeBase58 = function encodeBase58(input) {
32
35
  }
33
36
  while (bigNumber > 0) {
34
37
  var remainder = Number(bigNumber % 58n);
35
- encoded = alphabet[remainder] + encoded;
38
+ chars.push(alphabet[remainder]);
36
39
  bigNumber /= 58n;
37
40
  }
41
+ chars.reverse();
42
+ var encoded = chars.join("");
38
43
  var leadingZeros = 0;
39
44
  var _iterator2 = _createForOfIteratorHelper(bytes),
40
45
  _step2;
@@ -1 +1,3 @@
1
+ export * from "./lruCache";
1
2
  export * from "./priorityQueue";
3
+ export * from "./ttlCache";
@@ -3,6 +3,17 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ var _lruCache = require("./lruCache");
7
+ Object.keys(_lruCache).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _lruCache[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _lruCache[key];
14
+ }
15
+ });
16
+ });
6
17
  var _priorityQueue = require("./priorityQueue");
7
18
  Object.keys(_priorityQueue).forEach(function (key) {
8
19
  if (key === "default" || key === "__esModule") return;
@@ -13,4 +24,15 @@ Object.keys(_priorityQueue).forEach(function (key) {
13
24
  return _priorityQueue[key];
14
25
  }
15
26
  });
27
+ });
28
+ var _ttlCache = require("./ttlCache");
29
+ Object.keys(_ttlCache).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _ttlCache[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function get() {
35
+ return _ttlCache[key];
36
+ }
37
+ });
16
38
  });