umt 2.12.2 → 2.13.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 +206 -133
  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 +2 -4
  55. package/module/Crypto/decodeBase32.js.map +1 -1
  56. package/module/Crypto/decodeBase58.js +2 -4
  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 +2 -1
  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 +62 -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 +221 -207
  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 +2 -4
  314. package/module/es5/Crypto/decodeBase58.js +2 -4
  315. package/module/es5/Crypto/encodeBase32.js +2 -1
  316. package/module/es5/Crypto/encodeBase58.js +2 -1
  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 +107 -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 +25 -20
  458. package/module/es5/index.js +135 -80
  459. package/module/es5/tsconfig.tsbuildinfo +1 -1
  460. package/module/index.d.ts +25 -20
  461. package/module/index.js +25 -20
  462. package/module/index.js.map +1 -1
  463. package/package.json +43 -17
@@ -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,6 +4,7 @@ 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; } } }; }
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 decodeBase32("JBSWY3DP"); // Uint8Array for "Hello"
15
16
  */
16
17
  var decodeBase32 = exports.decodeBase32 = function decodeBase32(input) {
17
- var alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";
18
+ var alphabet = _constants.BASE32_ALPHABET;
18
19
  var cleanedInput = input.replaceAll("=", "");
19
20
  var result = [];
20
21
  var buffer = 0;
@@ -25,9 +26,6 @@ var decodeBase32 = exports.decodeBase32 = function decodeBase32(input) {
25
26
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
26
27
  var _char = _step.value;
27
28
  var value = alphabet.indexOf(_char);
28
- if (value === -1) {
29
- throw new Error("Invalid base32 character: ".concat(_char));
30
- }
31
29
  buffer = buffer << 5 | value;
32
30
  bufferLength += 5;
33
31
  if (bufferLength >= 8) {
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.decodeBase58 = void 0;
7
+ var _constants = require("./constants");
7
8
  function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
8
9
  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."); }
9
10
  function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
@@ -18,7 +19,7 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
18
19
  * @example decodeBase58("9Ajdvzr"); // Uint8Array for "Hello"
19
20
  */
20
21
  var decodeBase58 = exports.decodeBase58 = function decodeBase58(input) {
21
- var alphabet = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
22
+ var alphabet = _constants.BASE58_ALPHABET;
22
23
  var bigNumber = 0n;
23
24
  var _iterator = _createForOfIteratorHelper(input),
24
25
  _step;
@@ -26,9 +27,6 @@ var decodeBase58 = exports.decodeBase58 = function decodeBase58(input) {
26
27
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
27
28
  var _char = _step.value;
28
29
  var value = alphabet.indexOf(_char);
29
- if (value === -1) {
30
- throw new Error("Invalid base58 character: ".concat(_char));
31
- }
32
30
  bigNumber = bigNumber * 58n + BigInt(value);
33
31
  }
34
32
  } catch (err) {
@@ -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,7 +15,7 @@ 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
20
  var encoded = "";
20
21
  var bigNumber = 0n;
@@ -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
  });
@@ -0,0 +1,139 @@
1
+ /**
2
+ * A Least Recently Used (LRU) cache implementation
3
+ * using a Map for O(1) get/set operations.
4
+ *
5
+ * When the cache exceeds its capacity, the least recently used
6
+ * entry is evicted.
7
+ *
8
+ * ## Features
9
+ * - **get(key)**: Retrieve a value (moves it to most recently used)
10
+ * - **set(key, value)**: Insert or update a value
11
+ * - **has(key)**: Check if a key exists
12
+ * - **delete(key)**: Remove a specific entry
13
+ * - **clear()**: Remove all entries
14
+ * - **size**: Get the number of entries
15
+ *
16
+ * ## Time Complexity
17
+ * - get: O(1)
18
+ * - set: O(1)
19
+ * - has: O(1)
20
+ * - delete: O(1)
21
+ *
22
+ * @example
23
+ * ```typescript
24
+ * const cache = new LRUCache<string, number>(3);
25
+ * cache.set("a", 1);
26
+ * cache.set("b", 2);
27
+ * cache.set("c", 3);
28
+ *
29
+ * cache.get("a"); // 1 (moves "a" to most recently used)
30
+ * cache.set("d", 4); // evicts "b" (least recently used)
31
+ *
32
+ * cache.has("b"); // false
33
+ * cache.get("a"); // 1
34
+ * ```
35
+ *
36
+ * @template K - The type of cache keys
37
+ * @template V - The type of cache values
38
+ */
39
+ export declare class LRUCache<K, V> {
40
+ private capacity;
41
+ private map;
42
+ /**
43
+ * Creates a new LRUCache instance.
44
+ * @param capacity - The maximum number of entries the cache can hold
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * const cache = new LRUCache<string, number>(100);
49
+ * ```
50
+ */
51
+ constructor(capacity: number);
52
+ /**
53
+ * Returns the number of entries in the cache.
54
+ * @returns The current number of cached entries
55
+ *
56
+ * @example
57
+ * ```typescript
58
+ * const cache = new LRUCache<string, number>(10);
59
+ * cache.set("a", 1);
60
+ * console.log(cache.size); // 1
61
+ * ```
62
+ */
63
+ get size(): number;
64
+ /**
65
+ * Retrieves a value by key and marks it as most recently used.
66
+ * @param key - The key to look up
67
+ * @returns The value if found, or undefined if not in cache
68
+ *
69
+ * @example
70
+ * ```typescript
71
+ * const cache = new LRUCache<string, number>(10);
72
+ * cache.set("a", 1);
73
+ * cache.get("a"); // 1
74
+ * cache.get("b"); // undefined
75
+ * ```
76
+ */
77
+ get(key: K): V | undefined;
78
+ /**
79
+ * Inserts or updates a key-value pair.
80
+ * If the cache is at capacity, the least recently used entry is evicted.
81
+ * @param key - The key to set
82
+ * @param value - The value to associate with the key
83
+ *
84
+ * @example
85
+ * ```typescript
86
+ * const cache = new LRUCache<string, number>(2);
87
+ * cache.set("a", 1);
88
+ * cache.set("b", 2);
89
+ * cache.set("c", 3); // evicts "a"
90
+ * ```
91
+ */
92
+ set(key: K, value: V): void;
93
+ /**
94
+ * Checks whether a key exists in the cache.
95
+ * Does not affect the recently-used order.
96
+ * @param key - The key to check
97
+ * @returns True if the key exists in the cache
98
+ *
99
+ * @example
100
+ * ```typescript
101
+ * const cache = new LRUCache<string, number>(10);
102
+ * cache.set("a", 1);
103
+ * cache.has("a"); // true
104
+ * cache.has("b"); // false
105
+ * ```
106
+ */
107
+ has(key: K): boolean;
108
+ /**
109
+ * Removes an entry from the cache by key.
110
+ * @param key - The key to remove
111
+ * @returns True if the entry was found and removed
112
+ *
113
+ * @example
114
+ * ```typescript
115
+ * const cache = new LRUCache<string, number>(10);
116
+ * cache.set("a", 1);
117
+ * cache.delete("a"); // true
118
+ * cache.delete("b"); // false
119
+ * ```
120
+ */
121
+ delete(key: K): boolean;
122
+ /**
123
+ * Removes all entries from the cache.
124
+ *
125
+ * @example
126
+ * ```typescript
127
+ * const cache = new LRUCache<string, number>(10);
128
+ * cache.set("a", 1);
129
+ * cache.set("b", 2);
130
+ * cache.clear();
131
+ * console.log(cache.size); // 0
132
+ * ```
133
+ */
134
+ clear(): void;
135
+ /**
136
+ * Evicts the least recently used entry (first inserted).
137
+ */
138
+ private evict;
139
+ }