@vielzeug/arsenal 1.0.1

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 (772) hide show
  1. package/README.md +104 -0
  2. package/dist/_common/_abortable.d.ts +5 -0
  3. package/dist/_common/_abortable.d.ts.map +1 -0
  4. package/dist/_common/_lruMap.cjs +2 -0
  5. package/dist/_common/_lruMap.cjs.map +1 -0
  6. package/dist/_common/_lruMap.d.ts +20 -0
  7. package/dist/_common/_lruMap.d.ts.map +1 -0
  8. package/dist/_common/_lruMap.js +18 -0
  9. package/dist/_common/_lruMap.js.map +1 -0
  10. package/dist/_common/_secureRandomIndex.cjs +2 -0
  11. package/dist/_common/_secureRandomIndex.cjs.map +1 -0
  12. package/dist/_common/_secureRandomIndex.d.ts +2 -0
  13. package/dist/_common/_secureRandomIndex.d.ts.map +1 -0
  14. package/dist/_common/_secureRandomIndex.js +9 -0
  15. package/dist/_common/_secureRandomIndex.js.map +1 -0
  16. package/dist/_common/_selectorSet.cjs +2 -0
  17. package/dist/_common/_selectorSet.cjs.map +1 -0
  18. package/dist/_common/_selectorSet.d.ts +2 -0
  19. package/dist/_common/_selectorSet.d.ts.map +1 -0
  20. package/dist/_common/_selectorSet.js +16 -0
  21. package/dist/_common/_selectorSet.js.map +1 -0
  22. package/dist/_common/unsafePaths.cjs +2 -0
  23. package/dist/_common/unsafePaths.cjs.map +1 -0
  24. package/dist/_common/unsafePaths.d.ts +25 -0
  25. package/dist/_common/unsafePaths.d.ts.map +1 -0
  26. package/dist/_common/unsafePaths.js +13 -0
  27. package/dist/_common/unsafePaths.js.map +1 -0
  28. package/dist/_dev.cjs +2 -0
  29. package/dist/_dev.cjs.map +1 -0
  30. package/dist/_dev.d.ts +2 -0
  31. package/dist/_dev.d.ts.map +1 -0
  32. package/dist/_dev.js +9 -0
  33. package/dist/_dev.js.map +1 -0
  34. package/dist/array/chunk.cjs +2 -0
  35. package/dist/array/chunk.cjs.map +1 -0
  36. package/dist/array/chunk.d.ts +19 -0
  37. package/dist/array/chunk.d.ts.map +1 -0
  38. package/dist/array/chunk.js +12 -0
  39. package/dist/array/chunk.js.map +1 -0
  40. package/dist/array/compact.cjs +2 -0
  41. package/dist/array/compact.cjs.map +1 -0
  42. package/dist/array/compact.d.ts +7 -0
  43. package/dist/array/compact.d.ts.map +1 -0
  44. package/dist/array/compact.js +8 -0
  45. package/dist/array/compact.js.map +1 -0
  46. package/dist/array/compare.cjs +2 -0
  47. package/dist/array/compare.cjs.map +1 -0
  48. package/dist/array/compare.d.ts +31 -0
  49. package/dist/array/compare.d.ts.map +1 -0
  50. package/dist/array/compare.js +20 -0
  51. package/dist/array/compare.js.map +1 -0
  52. package/dist/array/compareBy.cjs +2 -0
  53. package/dist/array/compareBy.cjs.map +1 -0
  54. package/dist/array/compareBy.d.ts +24 -0
  55. package/dist/array/compareBy.d.ts.map +1 -0
  56. package/dist/array/compareBy.js +16 -0
  57. package/dist/array/compareBy.js.map +1 -0
  58. package/dist/array/contains.cjs +2 -0
  59. package/dist/array/contains.cjs.map +1 -0
  60. package/dist/array/contains.d.ts +17 -0
  61. package/dist/array/contains.d.ts.map +1 -0
  62. package/dist/array/contains.js +9 -0
  63. package/dist/array/contains.js.map +1 -0
  64. package/dist/array/countBy.cjs +2 -0
  65. package/dist/array/countBy.cjs.map +1 -0
  66. package/dist/array/countBy.d.ts +8 -0
  67. package/dist/array/countBy.d.ts.map +1 -0
  68. package/dist/array/countBy.js +14 -0
  69. package/dist/array/countBy.js.map +1 -0
  70. package/dist/array/difference.cjs +2 -0
  71. package/dist/array/difference.cjs.map +1 -0
  72. package/dist/array/difference.d.ts +6 -0
  73. package/dist/array/difference.d.ts.map +1 -0
  74. package/dist/array/difference.js +14 -0
  75. package/dist/array/difference.js.map +1 -0
  76. package/dist/array/drop.cjs +2 -0
  77. package/dist/array/drop.cjs.map +1 -0
  78. package/dist/array/drop.d.ts +5 -0
  79. package/dist/array/drop.d.ts.map +1 -0
  80. package/dist/array/drop.js +9 -0
  81. package/dist/array/drop.js.map +1 -0
  82. package/dist/array/dropLast.cjs +2 -0
  83. package/dist/array/dropLast.cjs.map +1 -0
  84. package/dist/array/dropLast.d.ts +5 -0
  85. package/dist/array/dropLast.d.ts.map +1 -0
  86. package/dist/array/dropLast.js +9 -0
  87. package/dist/array/dropLast.js.map +1 -0
  88. package/dist/array/filterMap.cjs +2 -0
  89. package/dist/array/filterMap.cjs.map +1 -0
  90. package/dist/array/filterMap.d.ts +5 -0
  91. package/dist/array/filterMap.d.ts.map +1 -0
  92. package/dist/array/filterMap.js +13 -0
  93. package/dist/array/filterMap.js.map +1 -0
  94. package/dist/array/first.cjs +2 -0
  95. package/dist/array/first.cjs.map +1 -0
  96. package/dist/array/first.d.ts +5 -0
  97. package/dist/array/first.d.ts.map +1 -0
  98. package/dist/array/first.js +8 -0
  99. package/dist/array/first.js.map +1 -0
  100. package/dist/array/flatten.cjs +2 -0
  101. package/dist/array/flatten.cjs.map +1 -0
  102. package/dist/array/flatten.d.ts +5 -0
  103. package/dist/array/flatten.d.ts.map +1 -0
  104. package/dist/array/flatten.js +11 -0
  105. package/dist/array/flatten.js.map +1 -0
  106. package/dist/array/groupBy.cjs +2 -0
  107. package/dist/array/groupBy.cjs.map +1 -0
  108. package/dist/array/groupBy.d.ts +7 -0
  109. package/dist/array/groupBy.d.ts.map +1 -0
  110. package/dist/array/groupBy.js +14 -0
  111. package/dist/array/groupBy.js.map +1 -0
  112. package/dist/array/index.d.ts +29 -0
  113. package/dist/array/index.d.ts.map +1 -0
  114. package/dist/array/indexBy.cjs +2 -0
  115. package/dist/array/indexBy.cjs.map +1 -0
  116. package/dist/array/indexBy.d.ts +7 -0
  117. package/dist/array/indexBy.d.ts.map +1 -0
  118. package/dist/array/indexBy.js +14 -0
  119. package/dist/array/indexBy.js.map +1 -0
  120. package/dist/array/intersection.cjs +2 -0
  121. package/dist/array/intersection.cjs.map +1 -0
  122. package/dist/array/intersection.d.ts +6 -0
  123. package/dist/array/intersection.d.ts.map +1 -0
  124. package/dist/array/intersection.js +14 -0
  125. package/dist/array/intersection.js.map +1 -0
  126. package/dist/array/last.cjs +2 -0
  127. package/dist/array/last.cjs.map +1 -0
  128. package/dist/array/last.d.ts +5 -0
  129. package/dist/array/last.d.ts.map +1 -0
  130. package/dist/array/last.js +8 -0
  131. package/dist/array/last.js.map +1 -0
  132. package/dist/array/partition.cjs +2 -0
  133. package/dist/array/partition.cjs.map +1 -0
  134. package/dist/array/partition.d.ts +5 -0
  135. package/dist/array/partition.d.ts.map +1 -0
  136. package/dist/array/partition.js +10 -0
  137. package/dist/array/partition.js.map +1 -0
  138. package/dist/array/replace.cjs +2 -0
  139. package/dist/array/replace.cjs.map +1 -0
  140. package/dist/array/replace.d.ts +18 -0
  141. package/dist/array/replace.d.ts.map +1 -0
  142. package/dist/array/replace.js +13 -0
  143. package/dist/array/replace.js.map +1 -0
  144. package/dist/array/rotate.cjs +2 -0
  145. package/dist/array/rotate.cjs.map +1 -0
  146. package/dist/array/rotate.d.ts +20 -0
  147. package/dist/array/rotate.d.ts.map +1 -0
  148. package/dist/array/rotate.js +10 -0
  149. package/dist/array/rotate.js.map +1 -0
  150. package/dist/array/search.cjs +2 -0
  151. package/dist/array/search.cjs.map +1 -0
  152. package/dist/array/search.d.ts +85 -0
  153. package/dist/array/search.d.ts.map +1 -0
  154. package/dist/array/search.js +47 -0
  155. package/dist/array/search.js.map +1 -0
  156. package/dist/array/sort.cjs +2 -0
  157. package/dist/array/sort.cjs.map +1 -0
  158. package/dist/array/sort.d.ts +26 -0
  159. package/dist/array/sort.d.ts.map +1 -0
  160. package/dist/array/sort.js +16 -0
  161. package/dist/array/sort.js.map +1 -0
  162. package/dist/array/take.cjs +2 -0
  163. package/dist/array/take.cjs.map +1 -0
  164. package/dist/array/take.d.ts +5 -0
  165. package/dist/array/take.d.ts.map +1 -0
  166. package/dist/array/take.js +9 -0
  167. package/dist/array/take.js.map +1 -0
  168. package/dist/array/takeLast.cjs +2 -0
  169. package/dist/array/takeLast.cjs.map +1 -0
  170. package/dist/array/takeLast.d.ts +5 -0
  171. package/dist/array/takeLast.d.ts.map +1 -0
  172. package/dist/array/takeLast.js +9 -0
  173. package/dist/array/takeLast.js.map +1 -0
  174. package/dist/array/toggle.cjs +2 -0
  175. package/dist/array/toggle.cjs.map +1 -0
  176. package/dist/array/toggle.d.ts +29 -0
  177. package/dist/array/toggle.d.ts.map +1 -0
  178. package/dist/array/toggle.js +9 -0
  179. package/dist/array/toggle.js.map +1 -0
  180. package/dist/array/union.cjs +2 -0
  181. package/dist/array/union.cjs.map +1 -0
  182. package/dist/array/union.d.ts +6 -0
  183. package/dist/array/union.d.ts.map +1 -0
  184. package/dist/array/union.js +9 -0
  185. package/dist/array/union.js.map +1 -0
  186. package/dist/array/uniq.cjs +2 -0
  187. package/dist/array/uniq.cjs.map +1 -0
  188. package/dist/array/uniq.d.ts +18 -0
  189. package/dist/array/uniq.d.ts.map +1 -0
  190. package/dist/array/uniq.js +9 -0
  191. package/dist/array/uniq.js.map +1 -0
  192. package/dist/array/unzip.cjs +2 -0
  193. package/dist/array/unzip.cjs.map +1 -0
  194. package/dist/array/unzip.d.ts +7 -0
  195. package/dist/array/unzip.d.ts.map +1 -0
  196. package/dist/array/unzip.js +11 -0
  197. package/dist/array/unzip.js.map +1 -0
  198. package/dist/array/zip.cjs +2 -0
  199. package/dist/array/zip.cjs.map +1 -0
  200. package/dist/array/zip.d.ts +7 -0
  201. package/dist/array/zip.d.ts.map +1 -0
  202. package/dist/array/zip.js +11 -0
  203. package/dist/array/zip.js.map +1 -0
  204. package/dist/arsenal.cjs +2 -0
  205. package/dist/arsenal.cjs.map +1 -0
  206. package/dist/arsenal.iife.js +2 -0
  207. package/dist/arsenal.iife.js.map +1 -0
  208. package/dist/arsenal.js +2 -0
  209. package/dist/arsenal.js.map +1 -0
  210. package/dist/async/abortError.cjs +2 -0
  211. package/dist/async/abortError.cjs.map +1 -0
  212. package/dist/async/abortError.d.ts +23 -0
  213. package/dist/async/abortError.d.ts.map +1 -0
  214. package/dist/async/abortError.js +8 -0
  215. package/dist/async/abortError.js.map +1 -0
  216. package/dist/async/attempt.cjs +2 -0
  217. package/dist/async/attempt.cjs.map +1 -0
  218. package/dist/async/attempt.d.ts +58 -0
  219. package/dist/async/attempt.d.ts.map +1 -0
  220. package/dist/async/attempt.js +31 -0
  221. package/dist/async/attempt.js.map +1 -0
  222. package/dist/async/backoff.cjs +2 -0
  223. package/dist/async/backoff.cjs.map +1 -0
  224. package/dist/async/backoff.d.ts +20 -0
  225. package/dist/async/backoff.d.ts.map +1 -0
  226. package/dist/async/backoff.js +9 -0
  227. package/dist/async/backoff.js.map +1 -0
  228. package/dist/async/index.d.ts +9 -0
  229. package/dist/async/index.d.ts.map +1 -0
  230. package/dist/async/parallel.cjs +2 -0
  231. package/dist/async/parallel.cjs.map +1 -0
  232. package/dist/async/parallel.d.ts +42 -0
  233. package/dist/async/parallel.d.ts.map +1 -0
  234. package/dist/async/parallel.js +26 -0
  235. package/dist/async/parallel.js.map +1 -0
  236. package/dist/async/queue.cjs +2 -0
  237. package/dist/async/queue.cjs.map +1 -0
  238. package/dist/async/queue.d.ts +42 -0
  239. package/dist/async/queue.d.ts.map +1 -0
  240. package/dist/async/queue.js +72 -0
  241. package/dist/async/queue.js.map +1 -0
  242. package/dist/async/retry.cjs +2 -0
  243. package/dist/async/retry.cjs.map +1 -0
  244. package/dist/async/retry.d.ts +46 -0
  245. package/dist/async/retry.d.ts.map +1 -0
  246. package/dist/async/retry.js +26 -0
  247. package/dist/async/retry.js.map +1 -0
  248. package/dist/async/sleep.cjs +2 -0
  249. package/dist/async/sleep.cjs.map +1 -0
  250. package/dist/async/sleep.d.ts +21 -0
  251. package/dist/async/sleep.d.ts.map +1 -0
  252. package/dist/async/sleep.js +16 -0
  253. package/dist/async/sleep.js.map +1 -0
  254. package/dist/async/waitFor.cjs +2 -0
  255. package/dist/async/waitFor.cjs.map +1 -0
  256. package/dist/async/waitFor.d.ts +34 -0
  257. package/dist/async/waitFor.d.ts.map +1 -0
  258. package/dist/async/waitFor.js +13 -0
  259. package/dist/async/waitFor.js.map +1 -0
  260. package/dist/cache/index.d.ts +3 -0
  261. package/dist/cache/index.d.ts.map +1 -0
  262. package/dist/cache/memo.cjs +2 -0
  263. package/dist/cache/memo.cjs.map +1 -0
  264. package/dist/cache/memo.d.ts +40 -0
  265. package/dist/cache/memo.d.ts.map +1 -0
  266. package/dist/cache/memo.js +37 -0
  267. package/dist/cache/memo.js.map +1 -0
  268. package/dist/cache/stash.cjs +2 -0
  269. package/dist/cache/stash.cjs.map +1 -0
  270. package/dist/cache/stash.d.ts +111 -0
  271. package/dist/cache/stash.d.ts.map +1 -0
  272. package/dist/cache/stash.js +92 -0
  273. package/dist/cache/stash.js.map +1 -0
  274. package/dist/errors.cjs +2 -0
  275. package/dist/errors.cjs.map +1 -0
  276. package/dist/errors.d.ts +20 -0
  277. package/dist/errors.d.ts.map +1 -0
  278. package/dist/errors.js +13 -0
  279. package/dist/errors.js.map +1 -0
  280. package/dist/function/assert.cjs +2 -0
  281. package/dist/function/assert.cjs.map +1 -0
  282. package/dist/function/assert.d.ts +19 -0
  283. package/dist/function/assert.d.ts.map +1 -0
  284. package/dist/function/assert.js +8 -0
  285. package/dist/function/assert.js.map +1 -0
  286. package/dist/function/constant.cjs +2 -0
  287. package/dist/function/constant.cjs.map +1 -0
  288. package/dist/function/constant.d.ts +5 -0
  289. package/dist/function/constant.d.ts.map +1 -0
  290. package/dist/function/constant.js +8 -0
  291. package/dist/function/constant.js.map +1 -0
  292. package/dist/function/debounce.cjs +2 -0
  293. package/dist/function/debounce.cjs.map +1 -0
  294. package/dist/function/debounce.d.ts +31 -0
  295. package/dist/function/debounce.d.ts.map +1 -0
  296. package/dist/function/debounce.js +29 -0
  297. package/dist/function/debounce.js.map +1 -0
  298. package/dist/function/identity.cjs +2 -0
  299. package/dist/function/identity.cjs.map +1 -0
  300. package/dist/function/identity.d.ts +5 -0
  301. package/dist/function/identity.d.ts.map +1 -0
  302. package/dist/function/identity.js +8 -0
  303. package/dist/function/identity.js.map +1 -0
  304. package/dist/function/index.d.ts +10 -0
  305. package/dist/function/index.d.ts.map +1 -0
  306. package/dist/function/once.cjs +2 -0
  307. package/dist/function/once.cjs.map +1 -0
  308. package/dist/function/once.d.ts +32 -0
  309. package/dist/function/once.d.ts.map +1 -0
  310. package/dist/function/once.js +11 -0
  311. package/dist/function/once.js.map +1 -0
  312. package/dist/function/pipe.cjs +2 -0
  313. package/dist/function/pipe.cjs.map +1 -0
  314. package/dist/function/pipe.d.ts +32 -0
  315. package/dist/function/pipe.d.ts.map +1 -0
  316. package/dist/function/pipe.js +10 -0
  317. package/dist/function/pipe.js.map +1 -0
  318. package/dist/function/runAll.cjs +2 -0
  319. package/dist/function/runAll.cjs.map +1 -0
  320. package/dist/function/runAll.d.ts +15 -0
  321. package/dist/function/runAll.d.ts.map +1 -0
  322. package/dist/function/runAll.js +19 -0
  323. package/dist/function/runAll.js.map +1 -0
  324. package/dist/function/tap.cjs +2 -0
  325. package/dist/function/tap.cjs.map +1 -0
  326. package/dist/function/tap.d.ts +5 -0
  327. package/dist/function/tap.d.ts.map +1 -0
  328. package/dist/function/tap.js +8 -0
  329. package/dist/function/tap.js.map +1 -0
  330. package/dist/function/throttle.cjs +2 -0
  331. package/dist/function/throttle.cjs.map +1 -0
  332. package/dist/function/throttle.d.ts +23 -0
  333. package/dist/function/throttle.d.ts.map +1 -0
  334. package/dist/function/throttle.js +36 -0
  335. package/dist/function/throttle.js.map +1 -0
  336. package/dist/guards/combinators.cjs +2 -0
  337. package/dist/guards/combinators.cjs.map +1 -0
  338. package/dist/guards/combinators.d.ts +49 -0
  339. package/dist/guards/combinators.d.ts.map +1 -0
  340. package/dist/guards/combinators.js +17 -0
  341. package/dist/guards/combinators.js.map +1 -0
  342. package/dist/guards/index.d.ts +20 -0
  343. package/dist/guards/index.d.ts.map +1 -0
  344. package/dist/guards/isAbortError.cjs +2 -0
  345. package/dist/guards/isAbortError.cjs.map +1 -0
  346. package/dist/guards/isAbortError.d.ts +19 -0
  347. package/dist/guards/isAbortError.d.ts.map +1 -0
  348. package/dist/guards/isAbortError.js +8 -0
  349. package/dist/guards/isAbortError.js.map +1 -0
  350. package/dist/guards/isArray.cjs +2 -0
  351. package/dist/guards/isArray.cjs.map +1 -0
  352. package/dist/guards/isArray.d.ts +16 -0
  353. package/dist/guards/isArray.d.ts.map +1 -0
  354. package/dist/guards/isArray.js +8 -0
  355. package/dist/guards/isArray.js.map +1 -0
  356. package/dist/guards/isBoolean.cjs +2 -0
  357. package/dist/guards/isBoolean.cjs.map +1 -0
  358. package/dist/guards/isBoolean.d.ts +23 -0
  359. package/dist/guards/isBoolean.d.ts.map +1 -0
  360. package/dist/guards/isBoolean.js +8 -0
  361. package/dist/guards/isBoolean.js.map +1 -0
  362. package/dist/guards/isDate.cjs +2 -0
  363. package/dist/guards/isDate.cjs.map +1 -0
  364. package/dist/guards/isDate.d.ts +15 -0
  365. package/dist/guards/isDate.d.ts.map +1 -0
  366. package/dist/guards/isDate.js +8 -0
  367. package/dist/guards/isDate.js.map +1 -0
  368. package/dist/guards/isDefined.cjs +2 -0
  369. package/dist/guards/isDefined.cjs.map +1 -0
  370. package/dist/guards/isDefined.d.ts +19 -0
  371. package/dist/guards/isDefined.d.ts.map +1 -0
  372. package/dist/guards/isDefined.js +8 -0
  373. package/dist/guards/isDefined.js.map +1 -0
  374. package/dist/guards/isEmpty.cjs +2 -0
  375. package/dist/guards/isEmpty.cjs.map +1 -0
  376. package/dist/guards/isEmpty.d.ts +23 -0
  377. package/dist/guards/isEmpty.d.ts.map +1 -0
  378. package/dist/guards/isEmpty.js +10 -0
  379. package/dist/guards/isEmpty.js.map +1 -0
  380. package/dist/guards/isEqual.cjs +2 -0
  381. package/dist/guards/isEqual.cjs.map +1 -0
  382. package/dist/guards/isEqual.d.ts +24 -0
  383. package/dist/guards/isEqual.d.ts.map +1 -0
  384. package/dist/guards/isEqual.js +34 -0
  385. package/dist/guards/isEqual.js.map +1 -0
  386. package/dist/guards/isError.cjs +2 -0
  387. package/dist/guards/isError.cjs.map +1 -0
  388. package/dist/guards/isError.d.ts +15 -0
  389. package/dist/guards/isError.d.ts.map +1 -0
  390. package/dist/guards/isError.js +8 -0
  391. package/dist/guards/isError.js.map +1 -0
  392. package/dist/guards/isFunction.cjs +2 -0
  393. package/dist/guards/isFunction.cjs.map +1 -0
  394. package/dist/guards/isFunction.d.ts +16 -0
  395. package/dist/guards/isFunction.d.ts.map +1 -0
  396. package/dist/guards/isFunction.js +8 -0
  397. package/dist/guards/isFunction.js.map +1 -0
  398. package/dist/guards/isMatch.cjs +2 -0
  399. package/dist/guards/isMatch.cjs.map +1 -0
  400. package/dist/guards/isMatch.d.ts +23 -0
  401. package/dist/guards/isMatch.d.ts.map +1 -0
  402. package/dist/guards/isMatch.js +23 -0
  403. package/dist/guards/isMatch.js.map +1 -0
  404. package/dist/guards/isNil.cjs +2 -0
  405. package/dist/guards/isNil.cjs.map +1 -0
  406. package/dist/guards/isNil.d.ts +17 -0
  407. package/dist/guards/isNil.d.ts.map +1 -0
  408. package/dist/guards/isNil.js +8 -0
  409. package/dist/guards/isNil.js.map +1 -0
  410. package/dist/guards/isNumber.cjs +2 -0
  411. package/dist/guards/isNumber.cjs.map +1 -0
  412. package/dist/guards/isNumber.d.ts +15 -0
  413. package/dist/guards/isNumber.d.ts.map +1 -0
  414. package/dist/guards/isNumber.js +8 -0
  415. package/dist/guards/isNumber.js.map +1 -0
  416. package/dist/guards/isPlainObject.cjs +2 -0
  417. package/dist/guards/isPlainObject.cjs.map +1 -0
  418. package/dist/guards/isPlainObject.d.ts +16 -0
  419. package/dist/guards/isPlainObject.d.ts.map +1 -0
  420. package/dist/guards/isPlainObject.js +10 -0
  421. package/dist/guards/isPlainObject.js.map +1 -0
  422. package/dist/guards/isPrimitive.cjs +2 -0
  423. package/dist/guards/isPrimitive.cjs.map +1 -0
  424. package/dist/guards/isPrimitive.d.ts +18 -0
  425. package/dist/guards/isPrimitive.d.ts.map +1 -0
  426. package/dist/guards/isPrimitive.js +9 -0
  427. package/dist/guards/isPrimitive.js.map +1 -0
  428. package/dist/guards/isPromise.cjs +2 -0
  429. package/dist/guards/isPromise.cjs.map +1 -0
  430. package/dist/guards/isPromise.d.ts +17 -0
  431. package/dist/guards/isPromise.d.ts.map +1 -0
  432. package/dist/guards/isPromise.js +8 -0
  433. package/dist/guards/isPromise.js.map +1 -0
  434. package/dist/guards/isRegex.cjs +2 -0
  435. package/dist/guards/isRegex.cjs.map +1 -0
  436. package/dist/guards/isRegex.d.ts +21 -0
  437. package/dist/guards/isRegex.d.ts.map +1 -0
  438. package/dist/guards/isRegex.js +8 -0
  439. package/dist/guards/isRegex.js.map +1 -0
  440. package/dist/guards/isString.cjs +2 -0
  441. package/dist/guards/isString.cjs.map +1 -0
  442. package/dist/guards/isString.d.ts +15 -0
  443. package/dist/guards/isString.d.ts.map +1 -0
  444. package/dist/guards/isString.js +8 -0
  445. package/dist/guards/isString.js.map +1 -0
  446. package/dist/guards/shallowEqual.cjs +2 -0
  447. package/dist/guards/shallowEqual.cjs.map +1 -0
  448. package/dist/guards/shallowEqual.d.ts +29 -0
  449. package/dist/guards/shallowEqual.d.ts.map +1 -0
  450. package/dist/guards/shallowEqual.js +20 -0
  451. package/dist/guards/shallowEqual.js.map +1 -0
  452. package/dist/index.cjs +1 -0
  453. package/dist/index.d.ts +119 -0
  454. package/dist/index.d.ts.map +1 -0
  455. package/dist/index.js +118 -0
  456. package/dist/math/abs.cjs +2 -0
  457. package/dist/math/abs.cjs.map +1 -0
  458. package/dist/math/abs.d.ts +17 -0
  459. package/dist/math/abs.d.ts.map +1 -0
  460. package/dist/math/abs.js +8 -0
  461. package/dist/math/abs.js.map +1 -0
  462. package/dist/math/allocate.cjs +2 -0
  463. package/dist/math/allocate.cjs.map +1 -0
  464. package/dist/math/allocate.d.ts +29 -0
  465. package/dist/math/allocate.d.ts.map +1 -0
  466. package/dist/math/allocate.js +20 -0
  467. package/dist/math/allocate.js.map +1 -0
  468. package/dist/math/average.cjs +2 -0
  469. package/dist/math/average.cjs.map +1 -0
  470. package/dist/math/average.d.ts +16 -0
  471. package/dist/math/average.d.ts.map +1 -0
  472. package/dist/math/average.js +14 -0
  473. package/dist/math/average.js.map +1 -0
  474. package/dist/math/clamp.cjs +2 -0
  475. package/dist/math/clamp.cjs.map +1 -0
  476. package/dist/math/clamp.d.ts +21 -0
  477. package/dist/math/clamp.d.ts.map +1 -0
  478. package/dist/math/clamp.js +8 -0
  479. package/dist/math/clamp.js.map +1 -0
  480. package/dist/math/gcd.cjs +2 -0
  481. package/dist/math/gcd.cjs.map +1 -0
  482. package/dist/math/gcd.d.ts +18 -0
  483. package/dist/math/gcd.d.ts.map +1 -0
  484. package/dist/math/gcd.js +13 -0
  485. package/dist/math/gcd.js.map +1 -0
  486. package/dist/math/index.d.ts +20 -0
  487. package/dist/math/index.d.ts.map +1 -0
  488. package/dist/math/lcm.cjs +2 -0
  489. package/dist/math/lcm.cjs.map +1 -0
  490. package/dist/math/lcm.d.ts +15 -0
  491. package/dist/math/lcm.d.ts.map +1 -0
  492. package/dist/math/lcm.js +9 -0
  493. package/dist/math/lcm.js.map +1 -0
  494. package/dist/math/lerp.cjs +2 -0
  495. package/dist/math/lerp.cjs.map +1 -0
  496. package/dist/math/lerp.d.ts +17 -0
  497. package/dist/math/lerp.d.ts.map +1 -0
  498. package/dist/math/lerp.js +8 -0
  499. package/dist/math/lerp.js.map +1 -0
  500. package/dist/math/linspace.cjs +2 -0
  501. package/dist/math/linspace.cjs.map +1 -0
  502. package/dist/math/linspace.d.ts +19 -0
  503. package/dist/math/linspace.d.ts.map +1 -0
  504. package/dist/math/linspace.js +11 -0
  505. package/dist/math/linspace.js.map +1 -0
  506. package/dist/math/max.cjs +2 -0
  507. package/dist/math/max.cjs.map +1 -0
  508. package/dist/math/max.d.ts +21 -0
  509. package/dist/math/max.d.ts.map +1 -0
  510. package/dist/math/max.js +12 -0
  511. package/dist/math/max.js.map +1 -0
  512. package/dist/math/median.cjs +2 -0
  513. package/dist/math/median.cjs.map +1 -0
  514. package/dist/math/median.d.ts +17 -0
  515. package/dist/math/median.d.ts.map +1 -0
  516. package/dist/math/median.js +12 -0
  517. package/dist/math/median.js.map +1 -0
  518. package/dist/math/min.cjs +2 -0
  519. package/dist/math/min.cjs.map +1 -0
  520. package/dist/math/min.d.ts +21 -0
  521. package/dist/math/min.d.ts.map +1 -0
  522. package/dist/math/min.js +12 -0
  523. package/dist/math/min.js.map +1 -0
  524. package/dist/math/mod.cjs +2 -0
  525. package/dist/math/mod.cjs.map +1 -0
  526. package/dist/math/mod.d.ts +18 -0
  527. package/dist/math/mod.d.ts.map +1 -0
  528. package/dist/math/mod.js +10 -0
  529. package/dist/math/mod.js.map +1 -0
  530. package/dist/math/normalize.cjs +2 -0
  531. package/dist/math/normalize.cjs.map +1 -0
  532. package/dist/math/normalize.d.ts +18 -0
  533. package/dist/math/normalize.d.ts.map +1 -0
  534. package/dist/math/normalize.js +9 -0
  535. package/dist/math/normalize.js.map +1 -0
  536. package/dist/math/percent.cjs +2 -0
  537. package/dist/math/percent.cjs.map +1 -0
  538. package/dist/math/percent.d.ts +19 -0
  539. package/dist/math/percent.d.ts.map +1 -0
  540. package/dist/math/percent.js +8 -0
  541. package/dist/math/percent.js.map +1 -0
  542. package/dist/math/range.cjs +2 -0
  543. package/dist/math/range.cjs.map +1 -0
  544. package/dist/math/range.d.ts +37 -0
  545. package/dist/math/range.d.ts.map +1 -0
  546. package/dist/math/range.js +27 -0
  547. package/dist/math/range.js.map +1 -0
  548. package/dist/math/round.cjs +2 -0
  549. package/dist/math/round.cjs.map +1 -0
  550. package/dist/math/round.d.ts +21 -0
  551. package/dist/math/round.d.ts.map +1 -0
  552. package/dist/math/round.js +10 -0
  553. package/dist/math/round.js.map +1 -0
  554. package/dist/math/standardDeviation.cjs +2 -0
  555. package/dist/math/standardDeviation.cjs.map +1 -0
  556. package/dist/math/standardDeviation.d.ts +16 -0
  557. package/dist/math/standardDeviation.d.ts.map +1 -0
  558. package/dist/math/standardDeviation.js +9 -0
  559. package/dist/math/standardDeviation.js.map +1 -0
  560. package/dist/math/sum.cjs +2 -0
  561. package/dist/math/sum.cjs.map +1 -0
  562. package/dist/math/sum.d.ts +19 -0
  563. package/dist/math/sum.d.ts.map +1 -0
  564. package/dist/math/sum.js +13 -0
  565. package/dist/math/sum.js.map +1 -0
  566. package/dist/math/variance.cjs +2 -0
  567. package/dist/math/variance.cjs.map +1 -0
  568. package/dist/math/variance.d.ts +17 -0
  569. package/dist/math/variance.d.ts.map +1 -0
  570. package/dist/math/variance.js +11 -0
  571. package/dist/math/variance.js.map +1 -0
  572. package/dist/object/defaults.cjs +2 -0
  573. package/dist/object/defaults.cjs.map +1 -0
  574. package/dist/object/defaults.d.ts +17 -0
  575. package/dist/object/defaults.d.ts.map +1 -0
  576. package/dist/object/defaults.js +12 -0
  577. package/dist/object/defaults.js.map +1 -0
  578. package/dist/object/diff.cjs +2 -0
  579. package/dist/object/diff.cjs.map +1 -0
  580. package/dist/object/diff.d.ts +63 -0
  581. package/dist/object/diff.d.ts.map +1 -0
  582. package/dist/object/diff.js +27 -0
  583. package/dist/object/diff.js.map +1 -0
  584. package/dist/object/filterValues.cjs +2 -0
  585. package/dist/object/filterValues.cjs.map +1 -0
  586. package/dist/object/filterValues.d.ts +16 -0
  587. package/dist/object/filterValues.d.ts.map +1 -0
  588. package/dist/object/filterValues.js +11 -0
  589. package/dist/object/filterValues.js.map +1 -0
  590. package/dist/object/flattenPaths.cjs +2 -0
  591. package/dist/object/flattenPaths.cjs.map +1 -0
  592. package/dist/object/flattenPaths.d.ts +13 -0
  593. package/dist/object/flattenPaths.d.ts.map +1 -0
  594. package/dist/object/flattenPaths.js +31 -0
  595. package/dist/object/flattenPaths.js.map +1 -0
  596. package/dist/object/getPath.cjs +2 -0
  597. package/dist/object/getPath.cjs.map +1 -0
  598. package/dist/object/getPath.d.ts +48 -0
  599. package/dist/object/getPath.d.ts.map +1 -0
  600. package/dist/object/getPath.js +27 -0
  601. package/dist/object/getPath.js.map +1 -0
  602. package/dist/object/hash.cjs +2 -0
  603. package/dist/object/hash.cjs.map +1 -0
  604. package/dist/object/hash.d.ts +12 -0
  605. package/dist/object/hash.d.ts.map +1 -0
  606. package/dist/object/hash.js +28 -0
  607. package/dist/object/hash.js.map +1 -0
  608. package/dist/object/index.d.ts +15 -0
  609. package/dist/object/index.d.ts.map +1 -0
  610. package/dist/object/invert.cjs +2 -0
  611. package/dist/object/invert.cjs.map +1 -0
  612. package/dist/object/invert.d.ts +15 -0
  613. package/dist/object/invert.d.ts.map +1 -0
  614. package/dist/object/invert.js +11 -0
  615. package/dist/object/invert.js.map +1 -0
  616. package/dist/object/mapKeys.cjs +2 -0
  617. package/dist/object/mapKeys.cjs.map +1 -0
  618. package/dist/object/mapKeys.d.ts +16 -0
  619. package/dist/object/mapKeys.d.ts.map +1 -0
  620. package/dist/object/mapKeys.js +15 -0
  621. package/dist/object/mapKeys.js.map +1 -0
  622. package/dist/object/mapValues.cjs +2 -0
  623. package/dist/object/mapValues.cjs.map +1 -0
  624. package/dist/object/mapValues.d.ts +18 -0
  625. package/dist/object/mapValues.d.ts.map +1 -0
  626. package/dist/object/mapValues.js +11 -0
  627. package/dist/object/mapValues.js.map +1 -0
  628. package/dist/object/merge.cjs +2 -0
  629. package/dist/object/merge.cjs.map +1 -0
  630. package/dist/object/merge.d.ts +41 -0
  631. package/dist/object/merge.d.ts.map +1 -0
  632. package/dist/object/merge.js +27 -0
  633. package/dist/object/merge.js.map +1 -0
  634. package/dist/object/omit.cjs +2 -0
  635. package/dist/object/omit.cjs.map +1 -0
  636. package/dist/object/omit.d.ts +16 -0
  637. package/dist/object/omit.d.ts.map +1 -0
  638. package/dist/object/omit.js +11 -0
  639. package/dist/object/omit.js.map +1 -0
  640. package/dist/object/parseJSON.cjs +2 -0
  641. package/dist/object/parseJSON.cjs.map +1 -0
  642. package/dist/object/parseJSON.d.ts +32 -0
  643. package/dist/object/parseJSON.d.ts.map +1 -0
  644. package/dist/object/parseJSON.js +16 -0
  645. package/dist/object/parseJSON.js.map +1 -0
  646. package/dist/object/pick.cjs +2 -0
  647. package/dist/object/pick.cjs.map +1 -0
  648. package/dist/object/pick.d.ts +17 -0
  649. package/dist/object/pick.d.ts.map +1 -0
  650. package/dist/object/pick.js +11 -0
  651. package/dist/object/pick.js.map +1 -0
  652. package/dist/object/prune.cjs +2 -0
  653. package/dist/object/prune.cjs.map +1 -0
  654. package/dist/object/prune.d.ts +26 -0
  655. package/dist/object/prune.d.ts.map +1 -0
  656. package/dist/object/prune.js +36 -0
  657. package/dist/object/prune.js.map +1 -0
  658. package/dist/random/draw.cjs +2 -0
  659. package/dist/random/draw.cjs.map +1 -0
  660. package/dist/random/draw.d.ts +24 -0
  661. package/dist/random/draw.d.ts.map +1 -0
  662. package/dist/random/draw.js +21 -0
  663. package/dist/random/draw.js.map +1 -0
  664. package/dist/random/index.d.ts +5 -0
  665. package/dist/random/index.d.ts.map +1 -0
  666. package/dist/random/random.cjs +2 -0
  667. package/dist/random/random.cjs.map +1 -0
  668. package/dist/random/random.d.ts +14 -0
  669. package/dist/random/random.d.ts.map +1 -0
  670. package/dist/random/random.js +11 -0
  671. package/dist/random/random.js.map +1 -0
  672. package/dist/random/shuffle.cjs +2 -0
  673. package/dist/random/shuffle.cjs.map +1 -0
  674. package/dist/random/shuffle.d.ts +12 -0
  675. package/dist/random/shuffle.d.ts.map +1 -0
  676. package/dist/random/shuffle.js +14 -0
  677. package/dist/random/shuffle.js.map +1 -0
  678. package/dist/random/uuid.cjs +2 -0
  679. package/dist/random/uuid.cjs.map +1 -0
  680. package/dist/random/uuid.d.ts +12 -0
  681. package/dist/random/uuid.d.ts.map +1 -0
  682. package/dist/random/uuid.js +8 -0
  683. package/dist/random/uuid.js.map +1 -0
  684. package/dist/string/_caseUtils.cjs +2 -0
  685. package/dist/string/_caseUtils.cjs.map +1 -0
  686. package/dist/string/_caseUtils.d.ts +9 -0
  687. package/dist/string/_caseUtils.d.ts.map +1 -0
  688. package/dist/string/_caseUtils.js +13 -0
  689. package/dist/string/_caseUtils.js.map +1 -0
  690. package/dist/string/camelCase.cjs +2 -0
  691. package/dist/string/camelCase.cjs.map +1 -0
  692. package/dist/string/camelCase.d.ts +14 -0
  693. package/dist/string/camelCase.d.ts.map +1 -0
  694. package/dist/string/camelCase.js +9 -0
  695. package/dist/string/camelCase.js.map +1 -0
  696. package/dist/string/endsWith.cjs +2 -0
  697. package/dist/string/endsWith.cjs.map +1 -0
  698. package/dist/string/endsWith.d.ts +5 -0
  699. package/dist/string/endsWith.d.ts.map +1 -0
  700. package/dist/string/endsWith.js +8 -0
  701. package/dist/string/endsWith.js.map +1 -0
  702. package/dist/string/escape.cjs +2 -0
  703. package/dist/string/escape.cjs.map +1 -0
  704. package/dist/string/escape.d.ts +5 -0
  705. package/dist/string/escape.d.ts.map +1 -0
  706. package/dist/string/escape.js +15 -0
  707. package/dist/string/escape.js.map +1 -0
  708. package/dist/string/index.d.ts +14 -0
  709. package/dist/string/index.d.ts.map +1 -0
  710. package/dist/string/kebabCase.cjs +2 -0
  711. package/dist/string/kebabCase.cjs.map +1 -0
  712. package/dist/string/kebabCase.d.ts +15 -0
  713. package/dist/string/kebabCase.d.ts.map +1 -0
  714. package/dist/string/kebabCase.js +9 -0
  715. package/dist/string/kebabCase.js.map +1 -0
  716. package/dist/string/pad.cjs +2 -0
  717. package/dist/string/pad.cjs.map +1 -0
  718. package/dist/string/pad.d.ts +5 -0
  719. package/dist/string/pad.d.ts.map +1 -0
  720. package/dist/string/pad.js +10 -0
  721. package/dist/string/pad.js.map +1 -0
  722. package/dist/string/pascalCase.cjs +2 -0
  723. package/dist/string/pascalCase.cjs.map +1 -0
  724. package/dist/string/pascalCase.d.ts +15 -0
  725. package/dist/string/pascalCase.d.ts.map +1 -0
  726. package/dist/string/pascalCase.js +9 -0
  727. package/dist/string/pascalCase.js.map +1 -0
  728. package/dist/string/similarity.cjs +2 -0
  729. package/dist/string/similarity.cjs.map +1 -0
  730. package/dist/string/similarity.d.ts +2 -0
  731. package/dist/string/similarity.d.ts.map +1 -0
  732. package/dist/string/similarity.js +24 -0
  733. package/dist/string/similarity.js.map +1 -0
  734. package/dist/string/snakeCase.cjs +2 -0
  735. package/dist/string/snakeCase.cjs.map +1 -0
  736. package/dist/string/snakeCase.d.ts +15 -0
  737. package/dist/string/snakeCase.d.ts.map +1 -0
  738. package/dist/string/snakeCase.js +9 -0
  739. package/dist/string/snakeCase.js.map +1 -0
  740. package/dist/string/startsWith.cjs +2 -0
  741. package/dist/string/startsWith.cjs.map +1 -0
  742. package/dist/string/startsWith.d.ts +5 -0
  743. package/dist/string/startsWith.d.ts.map +1 -0
  744. package/dist/string/startsWith.js +8 -0
  745. package/dist/string/startsWith.js.map +1 -0
  746. package/dist/string/titleCase.cjs +2 -0
  747. package/dist/string/titleCase.cjs.map +1 -0
  748. package/dist/string/titleCase.d.ts +5 -0
  749. package/dist/string/titleCase.d.ts.map +1 -0
  750. package/dist/string/titleCase.js +9 -0
  751. package/dist/string/titleCase.js.map +1 -0
  752. package/dist/string/truncate.cjs +2 -0
  753. package/dist/string/truncate.cjs.map +1 -0
  754. package/dist/string/truncate.d.ts +27 -0
  755. package/dist/string/truncate.d.ts.map +1 -0
  756. package/dist/string/truncate.js +17 -0
  757. package/dist/string/truncate.js.map +1 -0
  758. package/dist/string/unescape.cjs +2 -0
  759. package/dist/string/unescape.cjs.map +1 -0
  760. package/dist/string/unescape.d.ts +5 -0
  761. package/dist/string/unescape.d.ts.map +1 -0
  762. package/dist/string/unescape.js +15 -0
  763. package/dist/string/unescape.js.map +1 -0
  764. package/dist/string/words.cjs +2 -0
  765. package/dist/string/words.cjs.map +1 -0
  766. package/dist/string/words.d.ts +5 -0
  767. package/dist/string/words.d.ts.map +1 -0
  768. package/dist/string/words.js +10 -0
  769. package/dist/string/words.js.map +1 -0
  770. package/dist/types.d.ts +13 -0
  771. package/dist/types.d.ts.map +1 -0
  772. package/package.json +102 -0
@@ -0,0 +1,9 @@
1
+ import { isEqual as e } from "../guards/isEqual.js";
2
+ //#region src/array/contains.ts
3
+ function t(t, n) {
4
+ return typeof n != "object" || !n ? t.includes(n) : t.some((t) => e(t, n));
5
+ }
6
+ //#endregion
7
+ export { t as contains };
8
+
9
+ //# sourceMappingURL=contains.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contains.js","names":[],"sources":["../../src/array/contains.ts"],"sourcesContent":["import { isEqual } from '../guards/isEqual';\n\n/**\n * Checks if a value is present in an array.\n *\n * @example\n * ```ts\n * const arr = [1, 2, 3, { a: 1 }, 'hello'];\n * const value = { a: 1 };\n * contains(arr, value) // true;\n * ```\n *\n * @param array - The array to check.\n * @param value - The value to search for.\n *\n * @returns true if the value is present in the array, else false.\n */\n\nexport function contains<T>(array: T[], value: unknown): boolean {\n // Fast path: reference / primitive equality via Array.includes — avoids\n // deep-equal traversal for the common case of searching for a scalar.\n if (value === null || value === undefined || typeof value !== 'object') {\n return array.includes(value as T);\n }\n\n return array.some((val) => isEqual(val, value));\n}\n"],"mappings":";;AAkBA,SAAgB,EAAY,GAAY,GAAyB;CAO/D,OAJ6C,OAAO,KAAU,aAA1D,IACK,EAAM,SAAS,CAAU,IAG3B,EAAM,MAAM,MAAQ,EAAQ,GAAK,CAAK,CAAC;AAChD"}
@@ -0,0 +1,2 @@
1
+ const e=require("../_common/unsafePaths.cjs");function t(t,n){let r={};for(let i=0;i<t.length;i++){let a=n(t[i]),o=a==null?`_`:String(a);e.isUnsafeKey(o)||(r[o]=(r[o]??0)+1)}return r}exports.countBy=t;
2
+ //# sourceMappingURL=countBy.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"countBy.cjs","names":[],"sources":["../../src/array/countBy.ts"],"sourcesContent":["import type { Primitive } from '../types';\n\nimport { isUnsafeKey } from '../_common/unsafePaths';\n\n/**\n * Counts elements in an array by selector output. Selector results of `null`/`undefined` are\n * bucketed under the key `'_'`, matching `groupBy`'s convention. Dangerous keys (`__proto__`,\n * `constructor`, `prototype`) are skipped.\n */\nexport function countBy<T>(array: T[], selector: (item: T) => Primitive): Record<string, number> {\n const out: Record<string, number> = {};\n\n for (let index = 0; index < array.length; index++) {\n const rawKey = selector(array[index]);\n const key = rawKey === undefined || rawKey === null ? '_' : String(rawKey);\n\n if (isUnsafeKey(key)) continue;\n\n out[key] = (out[key] ?? 0) + 1;\n }\n\n return out;\n}\n"],"mappings":"8CASA,SAAgB,EAAW,EAAY,EAA0D,CAC/F,IAAM,EAA8B,CAAC,EAErC,IAAK,IAAI,EAAQ,EAAG,EAAQ,EAAM,OAAQ,IAAS,CACjD,IAAM,EAAS,EAAS,EAAM,EAAM,EAC9B,EAAM,GAAmC,KAAO,IAAM,OAAO,CAAM,EAErE,EAAA,YAAY,CAAG,IAEnB,EAAI,IAAQ,EAAI,IAAQ,GAAK,EAC/B,CAEA,OAAO,CACT"}
@@ -0,0 +1,8 @@
1
+ import type { Primitive } from '../types';
2
+ /**
3
+ * Counts elements in an array by selector output. Selector results of `null`/`undefined` are
4
+ * bucketed under the key `'_'`, matching `groupBy`'s convention. Dangerous keys (`__proto__`,
5
+ * `constructor`, `prototype`) are skipped.
6
+ */
7
+ export declare function countBy<T>(array: T[], selector: (item: T) => Primitive): Record<string, number>;
8
+ //# sourceMappingURL=countBy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"countBy.d.ts","sourceRoot":"","sources":["../../src/array/countBy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAI1C;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAa/F"}
@@ -0,0 +1,14 @@
1
+ import { isUnsafeKey as e } from "../_common/unsafePaths.js";
2
+ //#region src/array/countBy.ts
3
+ function t(t, n) {
4
+ let r = {};
5
+ for (let i = 0; i < t.length; i++) {
6
+ let a = n(t[i]), o = a == null ? "_" : String(a);
7
+ e(o) || (r[o] = (r[o] ?? 0) + 1);
8
+ }
9
+ return r;
10
+ }
11
+ //#endregion
12
+ export { t as countBy };
13
+
14
+ //# sourceMappingURL=countBy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"countBy.js","names":[],"sources":["../../src/array/countBy.ts"],"sourcesContent":["import type { Primitive } from '../types';\n\nimport { isUnsafeKey } from '../_common/unsafePaths';\n\n/**\n * Counts elements in an array by selector output. Selector results of `null`/`undefined` are\n * bucketed under the key `'_'`, matching `groupBy`'s convention. Dangerous keys (`__proto__`,\n * `constructor`, `prototype`) are skipped.\n */\nexport function countBy<T>(array: T[], selector: (item: T) => Primitive): Record<string, number> {\n const out: Record<string, number> = {};\n\n for (let index = 0; index < array.length; index++) {\n const rawKey = selector(array[index]);\n const key = rawKey === undefined || rawKey === null ? '_' : String(rawKey);\n\n if (isUnsafeKey(key)) continue;\n\n out[key] = (out[key] ?? 0) + 1;\n }\n\n return out;\n}\n"],"mappings":";;AASA,SAAgB,EAAW,GAAY,GAA0D;CAC/F,IAAM,IAA8B,CAAC;CAErC,KAAK,IAAI,IAAQ,GAAG,IAAQ,EAAM,QAAQ,KAAS;EACjD,IAAM,IAAS,EAAS,EAAM,EAAM,GAC9B,IAAM,KAAmC,OAAO,MAAM,OAAO,CAAM;EAErE,EAAY,CAAG,MAEnB,EAAI,MAAQ,EAAI,MAAQ,KAAK;CAC/B;CAEA,OAAO;AACT"}
@@ -0,0 +1,2 @@
1
+ const e=require("../_common/_selectorSet.cjs");function t(t,n,r){if(!r){let e=new Set(n);return t.filter(t=>!e.has(t))}let i=e.toSelectorSet(n,r);return t.filter(e=>!i.has(r(e)))}exports.difference=t;
2
+ //# sourceMappingURL=difference.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"difference.cjs","names":[],"sources":["../../src/array/difference.ts"],"sourcesContent":["import type { Primitive } from '../types';\n\nimport { toSelectorSet } from '../_common/_selectorSet';\n\n/**\n * Returns elements that are in source but not in other.\n */\nexport function difference<T>(source: T[], other: T[], selector?: (item: T) => Primitive): T[] {\n if (!selector) {\n const deny = new Set(other);\n\n return source.filter((item) => !deny.has(item));\n }\n\n const deny = toSelectorSet(other, selector);\n\n return source.filter((item) => !deny.has(selector(item)));\n}\n"],"mappings":"+CAOA,SAAgB,EAAc,EAAa,EAAY,EAAwC,CAC7F,GAAI,CAAC,EAAU,CACb,IAAM,EAAO,IAAI,IAAI,CAAK,EAE1B,OAAO,EAAO,OAAQ,GAAS,CAAC,EAAK,IAAI,CAAI,CAAC,CAChD,CAEA,IAAM,EAAO,EAAA,cAAc,EAAO,CAAQ,EAE1C,OAAO,EAAO,OAAQ,GAAS,CAAC,EAAK,IAAI,EAAS,CAAI,CAAC,CAAC,CAC1D"}
@@ -0,0 +1,6 @@
1
+ import type { Primitive } from '../types';
2
+ /**
3
+ * Returns elements that are in source but not in other.
4
+ */
5
+ export declare function difference<T>(source: T[], other: T[], selector?: (item: T) => Primitive): T[];
6
+ //# sourceMappingURL=difference.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"difference.d.ts","sourceRoot":"","sources":["../../src/array/difference.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAI1C;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,GAAG,CAAC,EAAE,CAU7F"}
@@ -0,0 +1,14 @@
1
+ import { toSelectorSet as e } from "../_common/_selectorSet.js";
2
+ //#region src/array/difference.ts
3
+ function t(t, n, r) {
4
+ if (!r) {
5
+ let e = new Set(n);
6
+ return t.filter((t) => !e.has(t));
7
+ }
8
+ let i = e(n, r);
9
+ return t.filter((e) => !i.has(r(e)));
10
+ }
11
+ //#endregion
12
+ export { t as difference };
13
+
14
+ //# sourceMappingURL=difference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"difference.js","names":[],"sources":["../../src/array/difference.ts"],"sourcesContent":["import type { Primitive } from '../types';\n\nimport { toSelectorSet } from '../_common/_selectorSet';\n\n/**\n * Returns elements that are in source but not in other.\n */\nexport function difference<T>(source: T[], other: T[], selector?: (item: T) => Primitive): T[] {\n if (!selector) {\n const deny = new Set(other);\n\n return source.filter((item) => !deny.has(item));\n }\n\n const deny = toSelectorSet(other, selector);\n\n return source.filter((item) => !deny.has(selector(item)));\n}\n"],"mappings":";;AAOA,SAAgB,EAAc,GAAa,GAAY,GAAwC;CAC7F,IAAI,CAAC,GAAU;EACb,IAAM,IAAO,IAAI,IAAI,CAAK;EAE1B,OAAO,EAAO,QAAQ,MAAS,CAAC,EAAK,IAAI,CAAI,CAAC;CAChD;CAEA,IAAM,IAAO,EAAc,GAAO,CAAQ;CAE1C,OAAO,EAAO,QAAQ,MAAS,CAAC,EAAK,IAAI,EAAS,CAAI,CAAC,CAAC;AAC1D"}
@@ -0,0 +1,2 @@
1
+ function e(e,t=1){let n=Math.max(0,Math.floor(t));return e.slice(n)}exports.drop=e;
2
+ //# sourceMappingURL=drop.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drop.cjs","names":[],"sources":["../../src/array/drop.ts"],"sourcesContent":["/**\n * Drops the first n elements from an array.\n */\nexport function drop<T>(array: T[], n = 1): T[] {\n const count = Math.max(0, Math.floor(n));\n\n return array.slice(count);\n}\n"],"mappings":"AAGA,SAAgB,EAAQ,EAAY,EAAI,EAAQ,CAC9C,IAAM,EAAQ,KAAK,IAAI,EAAG,KAAK,MAAM,CAAC,CAAC,EAEvC,OAAO,EAAM,MAAM,CAAK,CAC1B"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Drops the first n elements from an array.
3
+ */
4
+ export declare function drop<T>(array: T[], n?: number): T[];
5
+ //# sourceMappingURL=drop.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drop.d.ts","sourceRoot":"","sources":["../../src/array/drop.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,SAAI,GAAG,CAAC,EAAE,CAI9C"}
@@ -0,0 +1,9 @@
1
+ //#region src/array/drop.ts
2
+ function e(e, t = 1) {
3
+ let n = Math.max(0, Math.floor(t));
4
+ return e.slice(n);
5
+ }
6
+ //#endregion
7
+ export { e as drop };
8
+
9
+ //# sourceMappingURL=drop.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drop.js","names":[],"sources":["../../src/array/drop.ts"],"sourcesContent":["/**\n * Drops the first n elements from an array.\n */\nexport function drop<T>(array: T[], n = 1): T[] {\n const count = Math.max(0, Math.floor(n));\n\n return array.slice(count);\n}\n"],"mappings":";AAGA,SAAgB,EAAQ,GAAY,IAAI,GAAQ;CAC9C,IAAM,IAAQ,KAAK,IAAI,GAAG,KAAK,MAAM,CAAC,CAAC;CAEvC,OAAO,EAAM,MAAM,CAAK;AAC1B"}
@@ -0,0 +1,2 @@
1
+ function e(e,t=1){let n=Math.max(0,Math.floor(t));return n===0?[...e]:e.slice(0,Math.max(0,e.length-n))}exports.dropLast=e;
2
+ //# sourceMappingURL=dropLast.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropLast.cjs","names":[],"sources":["../../src/array/dropLast.ts"],"sourcesContent":["/**\n * Drops the last n elements from an array.\n */\nexport function dropLast<T>(array: T[], n = 1): T[] {\n const count = Math.max(0, Math.floor(n));\n\n if (count === 0) return [...array];\n\n return array.slice(0, Math.max(0, array.length - count));\n}\n"],"mappings":"AAGA,SAAgB,EAAY,EAAY,EAAI,EAAQ,CAClD,IAAM,EAAQ,KAAK,IAAI,EAAG,KAAK,MAAM,CAAC,CAAC,EAIvC,OAFI,IAAU,EAAU,CAAC,GAAG,CAAK,EAE1B,EAAM,MAAM,EAAG,KAAK,IAAI,EAAG,EAAM,OAAS,CAAK,CAAC,CACzD"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Drops the last n elements from an array.
3
+ */
4
+ export declare function dropLast<T>(array: T[], n?: number): T[];
5
+ //# sourceMappingURL=dropLast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropLast.d.ts","sourceRoot":"","sources":["../../src/array/dropLast.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,SAAI,GAAG,CAAC,EAAE,CAMlD"}
@@ -0,0 +1,9 @@
1
+ //#region src/array/dropLast.ts
2
+ function e(e, t = 1) {
3
+ let n = Math.max(0, Math.floor(t));
4
+ return n === 0 ? [...e] : e.slice(0, Math.max(0, e.length - n));
5
+ }
6
+ //#endregion
7
+ export { e as dropLast };
8
+
9
+ //# sourceMappingURL=dropLast.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropLast.js","names":[],"sources":["../../src/array/dropLast.ts"],"sourcesContent":["/**\n * Drops the last n elements from an array.\n */\nexport function dropLast<T>(array: T[], n = 1): T[] {\n const count = Math.max(0, Math.floor(n));\n\n if (count === 0) return [...array];\n\n return array.slice(0, Math.max(0, array.length - count));\n}\n"],"mappings":";AAGA,SAAgB,EAAY,GAAY,IAAI,GAAQ;CAClD,IAAM,IAAQ,KAAK,IAAI,GAAG,KAAK,MAAM,CAAC,CAAC;CAIvC,OAFI,MAAU,IAAU,CAAC,GAAG,CAAK,IAE1B,EAAM,MAAM,GAAG,KAAK,IAAI,GAAG,EAAM,SAAS,CAAK,CAAC;AACzD"}
@@ -0,0 +1,2 @@
1
+ function e(e,t){let n=[];for(let r=0;r<e.length;r++){let i=t(e[r],r,e);i!==void 0&&n.push(i)}return n}exports.filterMap=e;
2
+ //# sourceMappingURL=filterMap.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterMap.cjs","names":[],"sources":["../../src/array/filterMap.ts"],"sourcesContent":["/**\n * Maps and filters in one pass. Returning `undefined` drops an item.\n */\nexport function filterMap<T, R>(array: T[], callback: (item: T, index: number, array: T[]) => R | undefined): R[] {\n const result: R[] = [];\n\n for (let index = 0; index < array.length; index++) {\n const value = callback(array[index], index, array);\n\n if (value !== undefined) {\n result.push(value);\n }\n }\n\n return result;\n}\n"],"mappings":"AAGA,SAAgB,EAAgB,EAAY,EAAsE,CAChH,IAAM,EAAc,CAAC,EAErB,IAAK,IAAI,EAAQ,EAAG,EAAQ,EAAM,OAAQ,IAAS,CACjD,IAAM,EAAQ,EAAS,EAAM,GAAQ,EAAO,CAAK,EAE7C,IAAU,IAAA,IACZ,EAAO,KAAK,CAAK,CAErB,CAEA,OAAO,CACT"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Maps and filters in one pass. Returning `undefined` drops an item.
3
+ */
4
+ export declare function filterMap<T, R>(array: T[], callback: (item: T, index: number, array: T[]) => R | undefined): R[];
5
+ //# sourceMappingURL=filterMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterMap.d.ts","sourceRoot":"","sources":["../../src/array/filterMap.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,SAAS,GAAG,CAAC,EAAE,CAYhH"}
@@ -0,0 +1,13 @@
1
+ //#region src/array/filterMap.ts
2
+ function e(e, t) {
3
+ let n = [];
4
+ for (let r = 0; r < e.length; r++) {
5
+ let i = t(e[r], r, e);
6
+ i !== void 0 && n.push(i);
7
+ }
8
+ return n;
9
+ }
10
+ //#endregion
11
+ export { e as filterMap };
12
+
13
+ //# sourceMappingURL=filterMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterMap.js","names":[],"sources":["../../src/array/filterMap.ts"],"sourcesContent":["/**\n * Maps and filters in one pass. Returning `undefined` drops an item.\n */\nexport function filterMap<T, R>(array: T[], callback: (item: T, index: number, array: T[]) => R | undefined): R[] {\n const result: R[] = [];\n\n for (let index = 0; index < array.length; index++) {\n const value = callback(array[index], index, array);\n\n if (value !== undefined) {\n result.push(value);\n }\n }\n\n return result;\n}\n"],"mappings":";AAGA,SAAgB,EAAgB,GAAY,GAAsE;CAChH,IAAM,IAAc,CAAC;CAErB,KAAK,IAAI,IAAQ,GAAG,IAAQ,EAAM,QAAQ,KAAS;EACjD,IAAM,IAAQ,EAAS,EAAM,IAAQ,GAAO,CAAK;EAEjD,AAAI,MAAU,KAAA,KACZ,EAAO,KAAK,CAAK;CAErB;CAEA,OAAO;AACT"}
@@ -0,0 +1,2 @@
1
+ function e(e,t){return e.length>0?e[0]:t}exports.first=e;
2
+ //# sourceMappingURL=first.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"first.cjs","names":[],"sources":["../../src/array/first.ts"],"sourcesContent":["/**\n * Returns the first element or fallback when array is empty.\n */\nexport function first<T>(array: T[], fallback?: T): T | undefined {\n return array.length > 0 ? array[0] : fallback;\n}\n"],"mappings":"AAGA,SAAgB,EAAS,EAAY,EAA6B,CAChE,OAAO,EAAM,OAAS,EAAI,EAAM,GAAK,CACvC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Returns the first element or fallback when array is empty.
3
+ */
4
+ export declare function first<T>(array: T[], fallback?: T): T | undefined;
5
+ //# sourceMappingURL=first.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"first.d.ts","sourceRoot":"","sources":["../../src/array/first.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS,CAEhE"}
@@ -0,0 +1,8 @@
1
+ //#region src/array/first.ts
2
+ function e(e, t) {
3
+ return e.length > 0 ? e[0] : t;
4
+ }
5
+ //#endregion
6
+ export { e as first };
7
+
8
+ //# sourceMappingURL=first.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"first.js","names":[],"sources":["../../src/array/first.ts"],"sourcesContent":["/**\n * Returns the first element or fallback when array is empty.\n */\nexport function first<T>(array: T[], fallback?: T): T | undefined {\n return array.length > 0 ? array[0] : fallback;\n}\n"],"mappings":";AAGA,SAAgB,EAAS,GAAY,GAA6B;CAChE,OAAO,EAAM,SAAS,IAAI,EAAM,KAAK;AACvC"}
@@ -0,0 +1,2 @@
1
+ function e(t,n=1){if(n<1)return[...t];let r=[];for(let i of t)Array.isArray(i)?r.push(...e(i,n-1)):r.push(i);return r}exports.flatten=e;
2
+ //# sourceMappingURL=flatten.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flatten.cjs","names":[],"sources":["../../src/array/flatten.ts"],"sourcesContent":["/**\n * Flattens nested arrays up to the provided depth.\n */\nexport function flatten<T>(array: unknown[], depth = 1): T[] {\n if (depth < 1) return [...array] as T[];\n\n const out: unknown[] = [];\n\n for (const item of array) {\n if (Array.isArray(item)) {\n out.push(...flatten(item, depth - 1));\n } else {\n out.push(item);\n }\n }\n\n return out as T[];\n}\n"],"mappings":"AAGA,SAAgB,EAAW,EAAkB,EAAQ,EAAQ,CAC3D,GAAI,EAAQ,EAAG,MAAO,CAAC,GAAG,CAAK,EAE/B,IAAM,EAAiB,CAAC,EAExB,IAAK,IAAM,KAAQ,EACb,MAAM,QAAQ,CAAI,EACpB,EAAI,KAAK,GAAG,EAAQ,EAAM,EAAQ,CAAC,CAAC,EAEpC,EAAI,KAAK,CAAI,EAIjB,OAAO,CACT"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Flattens nested arrays up to the provided depth.
3
+ */
4
+ export declare function flatten<T>(array: unknown[], depth?: number): T[];
5
+ //# sourceMappingURL=flatten.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flatten.d.ts","sourceRoot":"","sources":["../../src/array/flatten.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,KAAK,SAAI,GAAG,CAAC,EAAE,CAc3D"}
@@ -0,0 +1,11 @@
1
+ //#region src/array/flatten.ts
2
+ function e(t, n = 1) {
3
+ if (n < 1) return [...t];
4
+ let r = [];
5
+ for (let i of t) Array.isArray(i) ? r.push(...e(i, n - 1)) : r.push(i);
6
+ return r;
7
+ }
8
+ //#endregion
9
+ export { e as flatten };
10
+
11
+ //# sourceMappingURL=flatten.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flatten.js","names":[],"sources":["../../src/array/flatten.ts"],"sourcesContent":["/**\n * Flattens nested arrays up to the provided depth.\n */\nexport function flatten<T>(array: unknown[], depth = 1): T[] {\n if (depth < 1) return [...array] as T[];\n\n const out: unknown[] = [];\n\n for (const item of array) {\n if (Array.isArray(item)) {\n out.push(...flatten(item, depth - 1));\n } else {\n out.push(item);\n }\n }\n\n return out as T[];\n}\n"],"mappings":";AAGA,SAAgB,EAAW,GAAkB,IAAQ,GAAQ;CAC3D,IAAI,IAAQ,GAAG,OAAO,CAAC,GAAG,CAAK;CAE/B,IAAM,IAAiB,CAAC;CAExB,KAAK,IAAM,KAAQ,GACjB,AAAI,MAAM,QAAQ,CAAI,IACpB,EAAI,KAAK,GAAG,EAAQ,GAAM,IAAQ,CAAC,CAAC,IAEpC,EAAI,KAAK,CAAI;CAIjB,OAAO;AACT"}
@@ -0,0 +1,2 @@
1
+ const e=require("../_common/unsafePaths.cjs");function t(t,n){let r={};for(let i of t){let t=n(i),a=t==null?`_`:String(t);e.isUnsafeKey(a)||(r[a]||(r[a]=[]),r[a].push(i))}return r}exports.groupBy=t;
2
+ //# sourceMappingURL=groupBy.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"groupBy.cjs","names":[],"sources":["../../src/array/groupBy.ts"],"sourcesContent":["import type { Primitive } from '../types';\n\nimport { isUnsafeKey } from '../_common/unsafePaths';\n\n/**\n * Groups elements by a selector function. Dangerous keys (`__proto__`, `constructor`,\n * `prototype`) are skipped.\n */\nexport function groupBy<T>(array: T[], selector: (item: T) => Primitive): Record<string, T[]> {\n const result: Record<string, T[]> = {};\n\n for (const item of array) {\n const rawKey = selector(item);\n const key = rawKey === undefined || rawKey === null ? '_' : String(rawKey);\n\n if (isUnsafeKey(key)) continue;\n\n if (!result[key]) {\n result[key] = [];\n }\n\n result[key].push(item);\n }\n\n return result;\n}\n"],"mappings":"8CAQA,SAAgB,EAAW,EAAY,EAAuD,CAC5F,IAAM,EAA8B,CAAC,EAErC,IAAK,IAAM,KAAQ,EAAO,CACxB,IAAM,EAAS,EAAS,CAAI,EACtB,EAAM,GAAmC,KAAO,IAAM,OAAO,CAAM,EAErE,EAAA,YAAY,CAAG,IAEd,EAAO,KACV,EAAO,GAAO,CAAC,GAGjB,EAAO,EAAI,CAAC,KAAK,CAAI,EACvB,CAEA,OAAO,CACT"}
@@ -0,0 +1,7 @@
1
+ import type { Primitive } from '../types';
2
+ /**
3
+ * Groups elements by a selector function. Dangerous keys (`__proto__`, `constructor`,
4
+ * `prototype`) are skipped.
5
+ */
6
+ export declare function groupBy<T>(array: T[], selector: (item: T) => Primitive): Record<string, T[]>;
7
+ //# sourceMappingURL=groupBy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"groupBy.d.ts","sourceRoot":"","sources":["../../src/array/groupBy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAI1C;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAiB5F"}
@@ -0,0 +1,14 @@
1
+ import { isUnsafeKey as e } from "../_common/unsafePaths.js";
2
+ //#region src/array/groupBy.ts
3
+ function t(t, n) {
4
+ let r = {};
5
+ for (let i of t) {
6
+ let t = n(i), a = t == null ? "_" : String(t);
7
+ e(a) || (r[a] || (r[a] = []), r[a].push(i));
8
+ }
9
+ return r;
10
+ }
11
+ //#endregion
12
+ export { t as groupBy };
13
+
14
+ //# sourceMappingURL=groupBy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"groupBy.js","names":[],"sources":["../../src/array/groupBy.ts"],"sourcesContent":["import type { Primitive } from '../types';\n\nimport { isUnsafeKey } from '../_common/unsafePaths';\n\n/**\n * Groups elements by a selector function. Dangerous keys (`__proto__`, `constructor`,\n * `prototype`) are skipped.\n */\nexport function groupBy<T>(array: T[], selector: (item: T) => Primitive): Record<string, T[]> {\n const result: Record<string, T[]> = {};\n\n for (const item of array) {\n const rawKey = selector(item);\n const key = rawKey === undefined || rawKey === null ? '_' : String(rawKey);\n\n if (isUnsafeKey(key)) continue;\n\n if (!result[key]) {\n result[key] = [];\n }\n\n result[key].push(item);\n }\n\n return result;\n}\n"],"mappings":";;AAQA,SAAgB,EAAW,GAAY,GAAuD;CAC5F,IAAM,IAA8B,CAAC;CAErC,KAAK,IAAM,KAAQ,GAAO;EACxB,IAAM,IAAS,EAAS,CAAI,GACtB,IAAM,KAAmC,OAAO,MAAM,OAAO,CAAM;EAErE,EAAY,CAAG,MAEd,EAAO,OACV,EAAO,KAAO,CAAC,IAGjB,EAAO,EAAI,CAAC,KAAK,CAAI;CACvB;CAEA,OAAO;AACT"}
@@ -0,0 +1,29 @@
1
+ export * from './chunk';
2
+ export * from './compact';
3
+ export * from './compare';
4
+ export * from './compareBy';
5
+ export * from './contains';
6
+ export * from './countBy';
7
+ export * from './difference';
8
+ export * from './drop';
9
+ export * from './dropLast';
10
+ export * from './filterMap';
11
+ export * from './first';
12
+ export * from './flatten';
13
+ export * from './groupBy';
14
+ export * from './indexBy';
15
+ export * from './intersection';
16
+ export * from './last';
17
+ export * from './partition';
18
+ export * from './replace';
19
+ export * from './rotate';
20
+ export * from './search';
21
+ export * from './sort';
22
+ export * from './take';
23
+ export * from './takeLast';
24
+ export * from './toggle';
25
+ export * from './union';
26
+ export * from './uniq';
27
+ export * from './unzip';
28
+ export * from './zip';
29
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/array/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC"}
@@ -0,0 +1,2 @@
1
+ const e=require("../_common/unsafePaths.cjs");function t(t,n){let r={};for(let i of t){let t=String(n(i));e.isUnsafeKey(t)||(r[t]=i)}return r}exports.indexBy=t;
2
+ //# sourceMappingURL=indexBy.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexBy.cjs","names":[],"sources":["../../src/array/indexBy.ts"],"sourcesContent":["import type { Primitive } from '../types';\n\nimport { isUnsafeKey } from '../_common/unsafePaths';\n\n/**\n * Creates an object keyed by selector result. Last item wins on collisions. Dangerous keys\n * (`__proto__`, `constructor`, `prototype`) are skipped.\n */\nexport function indexBy<T>(array: T[], selector: (item: T) => Primitive): Record<string, T> {\n const result: Record<string, T> = {};\n\n for (const item of array) {\n const key = String(selector(item));\n\n if (isUnsafeKey(key)) continue;\n\n result[key] = item;\n }\n\n return result;\n}\n"],"mappings":"8CAQA,SAAgB,EAAW,EAAY,EAAqD,CAC1F,IAAM,EAA4B,CAAC,EAEnC,IAAK,IAAM,KAAQ,EAAO,CACxB,IAAM,EAAM,OAAO,EAAS,CAAI,CAAC,EAE7B,EAAA,YAAY,CAAG,IAEnB,EAAO,GAAO,EAChB,CAEA,OAAO,CACT"}
@@ -0,0 +1,7 @@
1
+ import type { Primitive } from '../types';
2
+ /**
3
+ * Creates an object keyed by selector result. Last item wins on collisions. Dangerous keys
4
+ * (`__proto__`, `constructor`, `prototype`) are skipped.
5
+ */
6
+ export declare function indexBy<T>(array: T[], selector: (item: T) => Primitive): Record<string, T>;
7
+ //# sourceMappingURL=indexBy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexBy.d.ts","sourceRoot":"","sources":["../../src/array/indexBy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAI1C;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAY1F"}
@@ -0,0 +1,14 @@
1
+ import { isUnsafeKey as e } from "../_common/unsafePaths.js";
2
+ //#region src/array/indexBy.ts
3
+ function t(t, n) {
4
+ let r = {};
5
+ for (let i of t) {
6
+ let t = String(n(i));
7
+ e(t) || (r[t] = i);
8
+ }
9
+ return r;
10
+ }
11
+ //#endregion
12
+ export { t as indexBy };
13
+
14
+ //# sourceMappingURL=indexBy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexBy.js","names":[],"sources":["../../src/array/indexBy.ts"],"sourcesContent":["import type { Primitive } from '../types';\n\nimport { isUnsafeKey } from '../_common/unsafePaths';\n\n/**\n * Creates an object keyed by selector result. Last item wins on collisions. Dangerous keys\n * (`__proto__`, `constructor`, `prototype`) are skipped.\n */\nexport function indexBy<T>(array: T[], selector: (item: T) => Primitive): Record<string, T> {\n const result: Record<string, T> = {};\n\n for (const item of array) {\n const key = String(selector(item));\n\n if (isUnsafeKey(key)) continue;\n\n result[key] = item;\n }\n\n return result;\n}\n"],"mappings":";;AAQA,SAAgB,EAAW,GAAY,GAAqD;CAC1F,IAAM,IAA4B,CAAC;CAEnC,KAAK,IAAM,KAAQ,GAAO;EACxB,IAAM,IAAM,OAAO,EAAS,CAAI,CAAC;EAE7B,EAAY,CAAG,MAEnB,EAAO,KAAO;CAChB;CAEA,OAAO;AACT"}
@@ -0,0 +1,2 @@
1
+ const e=require("../_common/_selectorSet.cjs");function t(t,n,r){if(!r){let e=new Set(n);return t.filter(t=>e.has(t))}let i=e.toSelectorSet(n,r);return t.filter(e=>i.has(r(e)))}exports.intersection=t;
2
+ //# sourceMappingURL=intersection.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intersection.cjs","names":[],"sources":["../../src/array/intersection.ts"],"sourcesContent":["import type { Primitive } from '../types';\n\nimport { toSelectorSet } from '../_common/_selectorSet';\n\n/**\n * Returns elements that are present in both arrays.\n */\nexport function intersection<T>(source: T[], other: T[], selector?: (item: T) => Primitive): T[] {\n if (!selector) {\n const allow = new Set(other);\n\n return source.filter((item) => allow.has(item));\n }\n\n const allow = toSelectorSet(other, selector);\n\n return source.filter((item) => allow.has(selector(item)));\n}\n"],"mappings":"+CAOA,SAAgB,EAAgB,EAAa,EAAY,EAAwC,CAC/F,GAAI,CAAC,EAAU,CACb,IAAM,EAAQ,IAAI,IAAI,CAAK,EAE3B,OAAO,EAAO,OAAQ,GAAS,EAAM,IAAI,CAAI,CAAC,CAChD,CAEA,IAAM,EAAQ,EAAA,cAAc,EAAO,CAAQ,EAE3C,OAAO,EAAO,OAAQ,GAAS,EAAM,IAAI,EAAS,CAAI,CAAC,CAAC,CAC1D"}
@@ -0,0 +1,6 @@
1
+ import type { Primitive } from '../types';
2
+ /**
3
+ * Returns elements that are present in both arrays.
4
+ */
5
+ export declare function intersection<T>(source: T[], other: T[], selector?: (item: T) => Primitive): T[];
6
+ //# sourceMappingURL=intersection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intersection.d.ts","sourceRoot":"","sources":["../../src/array/intersection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAI1C;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,GAAG,CAAC,EAAE,CAU/F"}
@@ -0,0 +1,14 @@
1
+ import { toSelectorSet as e } from "../_common/_selectorSet.js";
2
+ //#region src/array/intersection.ts
3
+ function t(t, n, r) {
4
+ if (!r) {
5
+ let e = new Set(n);
6
+ return t.filter((t) => e.has(t));
7
+ }
8
+ let i = e(n, r);
9
+ return t.filter((e) => i.has(r(e)));
10
+ }
11
+ //#endregion
12
+ export { t as intersection };
13
+
14
+ //# sourceMappingURL=intersection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intersection.js","names":[],"sources":["../../src/array/intersection.ts"],"sourcesContent":["import type { Primitive } from '../types';\n\nimport { toSelectorSet } from '../_common/_selectorSet';\n\n/**\n * Returns elements that are present in both arrays.\n */\nexport function intersection<T>(source: T[], other: T[], selector?: (item: T) => Primitive): T[] {\n if (!selector) {\n const allow = new Set(other);\n\n return source.filter((item) => allow.has(item));\n }\n\n const allow = toSelectorSet(other, selector);\n\n return source.filter((item) => allow.has(selector(item)));\n}\n"],"mappings":";;AAOA,SAAgB,EAAgB,GAAa,GAAY,GAAwC;CAC/F,IAAI,CAAC,GAAU;EACb,IAAM,IAAQ,IAAI,IAAI,CAAK;EAE3B,OAAO,EAAO,QAAQ,MAAS,EAAM,IAAI,CAAI,CAAC;CAChD;CAEA,IAAM,IAAQ,EAAc,GAAO,CAAQ;CAE3C,OAAO,EAAO,QAAQ,MAAS,EAAM,IAAI,EAAS,CAAI,CAAC,CAAC;AAC1D"}
@@ -0,0 +1,2 @@
1
+ function e(e,t){return e.length>0?e[e.length-1]:t}exports.last=e;
2
+ //# sourceMappingURL=last.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"last.cjs","names":[],"sources":["../../src/array/last.ts"],"sourcesContent":["/**\n * Returns the last element or fallback when array is empty.\n */\nexport function last<T>(array: T[], fallback?: T): T | undefined {\n return array.length > 0 ? array[array.length - 1] : fallback;\n}\n"],"mappings":"AAGA,SAAgB,EAAQ,EAAY,EAA6B,CAC/D,OAAO,EAAM,OAAS,EAAI,EAAM,EAAM,OAAS,GAAK,CACtD"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Returns the last element or fallback when array is empty.
3
+ */
4
+ export declare function last<T>(array: T[], fallback?: T): T | undefined;
5
+ //# sourceMappingURL=last.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"last.d.ts","sourceRoot":"","sources":["../../src/array/last.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS,CAE/D"}
@@ -0,0 +1,8 @@
1
+ //#region src/array/last.ts
2
+ function e(e, t) {
3
+ return e.length > 0 ? e[e.length - 1] : t;
4
+ }
5
+ //#endregion
6
+ export { e as last };
7
+
8
+ //# sourceMappingURL=last.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"last.js","names":[],"sources":["../../src/array/last.ts"],"sourcesContent":["/**\n * Returns the last element or fallback when array is empty.\n */\nexport function last<T>(array: T[], fallback?: T): T | undefined {\n return array.length > 0 ? array[array.length - 1] : fallback;\n}\n"],"mappings":";AAGA,SAAgB,EAAQ,GAAY,GAA6B;CAC/D,OAAO,EAAM,SAAS,IAAI,EAAM,EAAM,SAAS,KAAK;AACtD"}
@@ -0,0 +1,2 @@
1
+ function e(e,t){let n=[],r=[];for(let i=0;i<e.length;i++)t(e[i],i,e)?n.push(e[i]):r.push(e[i]);return[n,r]}exports.partition=e;
2
+ //# sourceMappingURL=partition.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partition.cjs","names":[],"sources":["../../src/array/partition.ts"],"sourcesContent":["/**\n * Splits an array into values that match and do not match the predicate.\n */\nexport function partition<T>(array: T[], predicate: (item: T, index: number, array: T[]) => boolean): [T[], T[]] {\n const accepted: T[] = [];\n const rejected: T[] = [];\n\n for (let index = 0; index < array.length; index++) {\n if (predicate(array[index], index, array)) {\n accepted.push(array[index]);\n } else {\n rejected.push(array[index]);\n }\n }\n\n return [accepted, rejected];\n}\n"],"mappings":"AAGA,SAAgB,EAAa,EAAY,EAAwE,CAC/G,IAAM,EAAgB,CAAC,EACjB,EAAgB,CAAC,EAEvB,IAAK,IAAI,EAAQ,EAAG,EAAQ,EAAM,OAAQ,IACpC,EAAU,EAAM,GAAQ,EAAO,CAAK,EACtC,EAAS,KAAK,EAAM,EAAM,EAE1B,EAAS,KAAK,EAAM,EAAM,EAI9B,MAAO,CAAC,EAAU,CAAQ,CAC5B"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Splits an array into values that match and do not match the predicate.
3
+ */
4
+ export declare function partition<T>(array: T[], predicate: (item: T, index: number, array: T[]) => boolean): [T[], T[]];
5
+ //# sourceMappingURL=partition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partition.d.ts","sourceRoot":"","sources":["../../src/array/partition.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAa/G"}
@@ -0,0 +1,10 @@
1
+ //#region src/array/partition.ts
2
+ function e(e, t) {
3
+ let n = [], r = [];
4
+ for (let i = 0; i < e.length; i++) t(e[i], i, e) ? n.push(e[i]) : r.push(e[i]);
5
+ return [n, r];
6
+ }
7
+ //#endregion
8
+ export { e as partition };
9
+
10
+ //# sourceMappingURL=partition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partition.js","names":[],"sources":["../../src/array/partition.ts"],"sourcesContent":["/**\n * Splits an array into values that match and do not match the predicate.\n */\nexport function partition<T>(array: T[], predicate: (item: T, index: number, array: T[]) => boolean): [T[], T[]] {\n const accepted: T[] = [];\n const rejected: T[] = [];\n\n for (let index = 0; index < array.length; index++) {\n if (predicate(array[index], index, array)) {\n accepted.push(array[index]);\n } else {\n rejected.push(array[index]);\n }\n }\n\n return [accepted, rejected];\n}\n"],"mappings":";AAGA,SAAgB,EAAa,GAAY,GAAwE;CAC/G,IAAM,IAAgB,CAAC,GACjB,IAAgB,CAAC;CAEvB,KAAK,IAAI,IAAQ,GAAG,IAAQ,EAAM,QAAQ,KACxC,AAAI,EAAU,EAAM,IAAQ,GAAO,CAAK,IACtC,EAAS,KAAK,EAAM,EAAM,IAE1B,EAAS,KAAK,EAAM,EAAM;CAI9B,OAAO,CAAC,GAAU,CAAQ;AAC5B"}
@@ -0,0 +1,2 @@
1
+ function e(e,t,n){let r=e.findIndex(t);return r===-1?e:[...e.slice(0,r),n,...e.slice(r+1)]}exports.replace=e;
2
+ //# sourceMappingURL=replace.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"replace.cjs","names":[],"sources":["../../src/array/replace.ts"],"sourcesContent":["import type { Predicate } from '../types';\n\n/**\n * Replaces the first element in an array that satisfies the provided predicate\n * function with a new value.\n *\n * @example\n * ```ts\n * replace([1, 2, 3], (n) => n === 2, 4) // [1, 4, 3]\n * ```\n *\n * @param array - The array to search.\n * @param predicate - A function to test each element of the array.\n * @param value - The new value to replace the found element.\n *\n * @return A new array with the replaced value.\n */\nexport function replace<T>(array: T[], predicate: Predicate<T>, value: T): T[] {\n const index = array.findIndex(predicate);\n\n if (index === -1) return array;\n\n return [...array.slice(0, index), value, ...array.slice(index + 1)];\n}\n"],"mappings":"AAiBA,SAAgB,EAAW,EAAY,EAAyB,EAAe,CAC7E,IAAM,EAAQ,EAAM,UAAU,CAAS,EAIvC,OAFI,IAAU,GAAW,EAElB,CAAC,GAAG,EAAM,MAAM,EAAG,CAAK,EAAG,EAAO,GAAG,EAAM,MAAM,EAAQ,CAAC,CAAC,CACpE"}
@@ -0,0 +1,18 @@
1
+ import type { Predicate } from '../types';
2
+ /**
3
+ * Replaces the first element in an array that satisfies the provided predicate
4
+ * function with a new value.
5
+ *
6
+ * @example
7
+ * ```ts
8
+ * replace([1, 2, 3], (n) => n === 2, 4) // [1, 4, 3]
9
+ * ```
10
+ *
11
+ * @param array - The array to search.
12
+ * @param predicate - A function to test each element of the array.
13
+ * @param value - The new value to replace the found element.
14
+ *
15
+ * @return A new array with the replaced value.
16
+ */
17
+ export declare function replace<T>(array: T[], predicate: Predicate<T>, value: T): T[];
18
+ //# sourceMappingURL=replace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"replace.d.ts","sourceRoot":"","sources":["../../src/array/replace.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,CAM7E"}
@@ -0,0 +1,13 @@
1
+ //#region src/array/replace.ts
2
+ function e(e, t, n) {
3
+ let r = e.findIndex(t);
4
+ return r === -1 ? e : [
5
+ ...e.slice(0, r),
6
+ n,
7
+ ...e.slice(r + 1)
8
+ ];
9
+ }
10
+ //#endregion
11
+ export { e as replace };
12
+
13
+ //# sourceMappingURL=replace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"replace.js","names":[],"sources":["../../src/array/replace.ts"],"sourcesContent":["import type { Predicate } from '../types';\n\n/**\n * Replaces the first element in an array that satisfies the provided predicate\n * function with a new value.\n *\n * @example\n * ```ts\n * replace([1, 2, 3], (n) => n === 2, 4) // [1, 4, 3]\n * ```\n *\n * @param array - The array to search.\n * @param predicate - A function to test each element of the array.\n * @param value - The new value to replace the found element.\n *\n * @return A new array with the replaced value.\n */\nexport function replace<T>(array: T[], predicate: Predicate<T>, value: T): T[] {\n const index = array.findIndex(predicate);\n\n if (index === -1) return array;\n\n return [...array.slice(0, index), value, ...array.slice(index + 1)];\n}\n"],"mappings":";AAiBA,SAAgB,EAAW,GAAY,GAAyB,GAAe;CAC7E,IAAM,IAAQ,EAAM,UAAU,CAAS;CAIvC,OAFI,MAAU,KAAW,IAElB;EAAC,GAAG,EAAM,MAAM,GAAG,CAAK;EAAG;EAAO,GAAG,EAAM,MAAM,IAAQ,CAAC;CAAC;AACpE"}
@@ -0,0 +1,2 @@
1
+ function e(e,t,{wrap:n=!1}={}){if(e.length===0)return e;let r=(t%e.length+e.length)%e.length,i=e.slice(r);return n?[...i,...e.slice(0,r)]:i}exports.rotate=e;
2
+ //# sourceMappingURL=rotate.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rotate.cjs","names":[],"sources":["../../src/array/rotate.ts"],"sourcesContent":["/**\n * Rotates the elements of an array by a specified number of positions.\n *\n * @example\n * ```ts\n * const arr = [1, 2, 3, 4, 5];\n * rotate(arr, 2); // [3, 4, 5]\n * rotate(arr, 2, { wrap: true }); // [3, 4, 5, 1, 2]\n * ```\n * @param array - The array to rotate.\n * @param positions - The number of positions to rotate the array.\n * @param [options] - Options for the rotate operation.\n * @param [options.wrap] - If `true`, the rotated-out elements are appended to the end.\n *\n * @returns A new array with the elements rotated.\n */\nexport function rotate<T>(array: T[], positions: number, { wrap = false }: { wrap?: boolean } = {}): T[] {\n if (array.length === 0) return array;\n\n const normalizedPos = ((positions % array.length) + array.length) % array.length;\n const rotated = array.slice(normalizedPos);\n\n return wrap ? [...rotated, ...array.slice(0, normalizedPos)] : rotated;\n}\n"],"mappings":"AAgBA,SAAgB,EAAU,EAAY,EAAmB,CAAE,OAAO,IAA8B,CAAC,EAAQ,CACvG,GAAI,EAAM,SAAW,EAAG,OAAO,EAE/B,IAAM,GAAkB,EAAY,EAAM,OAAU,EAAM,QAAU,EAAM,OACpE,EAAU,EAAM,MAAM,CAAa,EAEzC,OAAO,EAAO,CAAC,GAAG,EAAS,GAAG,EAAM,MAAM,EAAG,CAAa,CAAC,EAAI,CACjE"}