@duplojs/utils 0.3.0 → 1.0.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 (716) hide show
  1. package/dist/array/at/default.cjs +12 -0
  2. package/dist/array/at/default.d.ts +5 -0
  3. package/dist/array/at/default.mjs +10 -0
  4. package/dist/array/at/first.cjs +7 -0
  5. package/dist/array/at/first.d.ts +2 -0
  6. package/dist/array/at/first.mjs +5 -0
  7. package/dist/array/at/index.d.ts +3 -0
  8. package/dist/array/at/last.cjs +7 -0
  9. package/dist/array/at/last.d.ts +1 -0
  10. package/dist/array/at/last.mjs +5 -0
  11. package/dist/array/concat.cjs +12 -0
  12. package/dist/array/concat.d.ts +2 -0
  13. package/dist/array/concat.mjs +10 -0
  14. package/dist/array/copyWithin.cjs +12 -0
  15. package/dist/array/copyWithin.d.ts +2 -0
  16. package/dist/array/copyWithin.mjs +10 -0
  17. package/dist/array/every.cjs +12 -0
  18. package/dist/array/every.d.ts +6 -0
  19. package/dist/array/every.mjs +10 -0
  20. package/dist/array/fill/all.cjs +12 -0
  21. package/dist/array/fill/all.d.ts +2 -0
  22. package/dist/array/fill/all.mjs +10 -0
  23. package/dist/array/fill/default.cjs +12 -0
  24. package/dist/array/fill/default.d.ts +2 -0
  25. package/dist/array/fill/default.mjs +10 -0
  26. package/dist/array/fill/index.d.ts +2 -0
  27. package/dist/array/filter.cjs +12 -0
  28. package/dist/array/filter.d.ts +8 -0
  29. package/dist/array/filter.mjs +10 -0
  30. package/dist/array/find.cjs +12 -0
  31. package/dist/array/find.d.ts +8 -0
  32. package/dist/array/find.mjs +10 -0
  33. package/dist/array/findAndReplace.cjs +19 -0
  34. package/dist/array/findAndReplace.d.ts +7 -0
  35. package/dist/array/findAndReplace.mjs +17 -0
  36. package/dist/array/findAndSplice/delete.cjs +19 -0
  37. package/dist/array/findAndSplice/delete.d.ts +6 -0
  38. package/dist/array/findAndSplice/delete.mjs +17 -0
  39. package/dist/array/findAndSplice/index.d.ts +3 -0
  40. package/dist/array/findAndSplice/insert.cjs +19 -0
  41. package/dist/array/findAndSplice/insert.d.ts +6 -0
  42. package/dist/array/findAndSplice/insert.mjs +17 -0
  43. package/dist/array/findAndSplice/replace.cjs +19 -0
  44. package/dist/array/findAndSplice/replace.d.ts +6 -0
  45. package/dist/array/findAndSplice/replace.mjs +17 -0
  46. package/dist/array/findIndex.cjs +17 -0
  47. package/dist/array/findIndex.d.ts +6 -0
  48. package/dist/array/findIndex.mjs +15 -0
  49. package/dist/array/findLast.cjs +18 -0
  50. package/dist/array/findLast.d.ts +8 -0
  51. package/dist/array/findLast.mjs +16 -0
  52. package/dist/array/findLastIndex.cjs +18 -0
  53. package/dist/array/findLastIndex.d.ts +6 -0
  54. package/dist/array/findLastIndex.mjs +16 -0
  55. package/dist/array/flat.cjs +19 -0
  56. package/dist/array/flat.d.ts +4 -0
  57. package/dist/array/flat.mjs +17 -0
  58. package/dist/array/flatMap.cjs +12 -0
  59. package/dist/array/flatMap.d.ts +6 -0
  60. package/dist/array/flatMap.mjs +10 -0
  61. package/dist/array/from.cjs +16 -0
  62. package/dist/array/from.d.ts +1 -0
  63. package/dist/array/from.mjs +14 -0
  64. package/dist/array/group.cjs +37 -0
  65. package/dist/array/group.d.ts +16 -0
  66. package/dist/array/group.mjs +34 -0
  67. package/dist/array/includes.cjs +12 -0
  68. package/dist/array/includes.d.ts +2 -0
  69. package/dist/array/includes.mjs +10 -0
  70. package/dist/array/index.cjs +102 -0
  71. package/dist/array/index.d.ts +40 -0
  72. package/dist/array/index.mjs +48 -0
  73. package/dist/array/indexOf.cjs +23 -0
  74. package/dist/array/indexOf.d.ts +2 -0
  75. package/dist/array/indexOf.mjs +21 -0
  76. package/dist/array/is.cjs +7 -0
  77. package/dist/array/is.d.ts +1 -0
  78. package/dist/array/is.mjs +5 -0
  79. package/dist/array/join.cjs +12 -0
  80. package/dist/array/join.d.ts +8 -0
  81. package/dist/array/join.mjs +10 -0
  82. package/dist/array/lastIndexOf.cjs +23 -0
  83. package/dist/array/lastIndexOf.d.ts +2 -0
  84. package/dist/array/lastIndexOf.mjs +21 -0
  85. package/dist/array/map.cjs +12 -0
  86. package/dist/array/map.d.ts +6 -0
  87. package/dist/array/map.mjs +10 -0
  88. package/dist/array/maxElements.cjs +12 -0
  89. package/dist/array/maxElements.d.ts +2 -0
  90. package/dist/array/maxElements.mjs +10 -0
  91. package/dist/array/maxOf.cjs +17 -0
  92. package/dist/array/maxOf.d.ts +1 -0
  93. package/dist/array/maxOf.mjs +15 -0
  94. package/dist/array/minElements.cjs +12 -0
  95. package/dist/array/minElements.d.ts +3 -0
  96. package/dist/array/minElements.mjs +10 -0
  97. package/dist/array/minOf.cjs +17 -0
  98. package/dist/array/minOf.d.ts +1 -0
  99. package/dist/array/minOf.mjs +15 -0
  100. package/dist/array/pop.cjs +7 -0
  101. package/dist/array/pop.d.ts +3 -0
  102. package/dist/array/pop.mjs +5 -0
  103. package/dist/array/push.cjs +12 -0
  104. package/dist/array/push.d.ts +2 -0
  105. package/dist/array/push.mjs +10 -0
  106. package/dist/array/reduce.cjs +41 -0
  107. package/dist/array/reduce.d.ts +30 -0
  108. package/dist/array/reduce.mjs +39 -0
  109. package/dist/array/reduceRight.cjs +41 -0
  110. package/dist/array/reduceRight.d.ts +30 -0
  111. package/dist/array/reduceRight.mjs +39 -0
  112. package/dist/array/reverse.cjs +7 -0
  113. package/dist/array/reverse.d.ts +3 -0
  114. package/dist/array/reverse.mjs +5 -0
  115. package/dist/array/set.cjs +14 -0
  116. package/dist/array/set.d.ts +2 -0
  117. package/dist/array/set.mjs +12 -0
  118. package/dist/array/shift.cjs +7 -0
  119. package/dist/array/shift.d.ts +3 -0
  120. package/dist/array/shift.mjs +5 -0
  121. package/dist/array/slice.cjs +12 -0
  122. package/dist/array/slice.d.ts +2 -0
  123. package/dist/array/slice.mjs +10 -0
  124. package/dist/array/some.cjs +12 -0
  125. package/dist/array/some.d.ts +6 -0
  126. package/dist/array/some.mjs +10 -0
  127. package/dist/array/sort/default.cjs +12 -0
  128. package/dist/array/sort/default.d.ts +2 -0
  129. package/dist/array/sort/default.mjs +10 -0
  130. package/dist/array/sort/index.d.ts +3 -0
  131. package/dist/array/sort/number.cjs +14 -0
  132. package/dist/array/sort/number.d.ts +4 -0
  133. package/dist/array/sort/number.mjs +12 -0
  134. package/dist/array/sort/string.cjs +24 -0
  135. package/dist/array/sort/string.d.ts +4 -0
  136. package/dist/array/sort/string.mjs +22 -0
  137. package/dist/array/splice/delete.cjs +14 -0
  138. package/dist/array/splice/delete.d.ts +2 -0
  139. package/dist/array/splice/delete.mjs +12 -0
  140. package/dist/array/splice/index.d.ts +3 -0
  141. package/dist/array/splice/insert.cjs +14 -0
  142. package/dist/array/splice/insert.d.ts +2 -0
  143. package/dist/array/splice/insert.mjs +12 -0
  144. package/dist/array/splice/replace.cjs +14 -0
  145. package/dist/array/splice/replace.d.ts +2 -0
  146. package/dist/array/splice/replace.mjs +12 -0
  147. package/dist/array/sum.cjs +11 -0
  148. package/dist/array/sum.d.ts +1 -0
  149. package/dist/array/sum.mjs +9 -0
  150. package/dist/array/types/atTuple.d.ts +1 -0
  151. package/dist/array/types/excludeTuple.d.ts +29 -0
  152. package/dist/array/types/extractTuple.d.ts +38 -0
  153. package/dist/array/types/index.d.ts +7 -0
  154. package/dist/array/types/mergeUnionTuple.d.ts +7 -0
  155. package/dist/array/types/popTuple.d.ts +2 -0
  156. package/dist/array/types/reverseTuple.d.ts +2 -0
  157. package/dist/array/types/shiftTuple.d.ts +2 -0
  158. package/dist/array/types/tupleHasSpread.d.ts +2 -0
  159. package/dist/array/unshift.cjs +12 -0
  160. package/dist/array/unshift.d.ts +2 -0
  161. package/dist/array/unshift.mjs +10 -0
  162. package/dist/common/addWrappedProperties.cjs +13 -0
  163. package/dist/common/addWrappedProperties.d.ts +4 -0
  164. package/dist/common/addWrappedProperties.mjs +11 -0
  165. package/dist/common/asyncInnerPipe.cjs +14 -0
  166. package/dist/common/asyncInnerPipe.d.ts +15 -0
  167. package/dist/common/asyncInnerPipe.mjs +12 -0
  168. package/dist/common/asyncLoop.cjs +19 -0
  169. package/dist/common/asyncLoop.d.ts +10 -0
  170. package/dist/common/asyncLoop.mjs +17 -0
  171. package/dist/common/asyncPipe.cjs +11 -0
  172. package/dist/common/asyncPipe.d.ts +16 -0
  173. package/dist/common/asyncPipe.mjs +9 -0
  174. package/dist/common/asyncRetry.cjs +25 -0
  175. package/dist/common/asyncRetry.d.ts +8 -0
  176. package/dist/common/asyncRetry.mjs +22 -0
  177. package/dist/common/clone.cjs +24 -0
  178. package/dist/{clone.d.ts → common/clone.d.ts} +1 -1
  179. package/dist/common/clone.mjs +22 -0
  180. package/dist/common/enum.cjs +11 -0
  181. package/dist/common/enum.d.ts +9 -0
  182. package/dist/common/enum.mjs +9 -0
  183. package/dist/common/escapeRegExp.cjs +7 -0
  184. package/dist/common/escapeRegExp.mjs +5 -0
  185. package/dist/common/externalPromise.cjs +17 -0
  186. package/dist/common/externalPromise.d.ts +5 -0
  187. package/dist/common/externalPromise.mjs +15 -0
  188. package/dist/common/forward.cjs +7 -0
  189. package/dist/common/forward.d.ts +1 -0
  190. package/dist/common/forward.mjs +5 -0
  191. package/dist/common/index.d.ts +27 -0
  192. package/dist/common/innerPipe.cjs +13 -0
  193. package/dist/common/innerPipe.d.ts +12 -0
  194. package/dist/common/innerPipe.mjs +11 -0
  195. package/dist/common/interpolation.cjs +9 -0
  196. package/dist/{interpolation.d.ts → common/interpolation.d.ts} +3 -3
  197. package/dist/common/interpolation.mjs +7 -0
  198. package/dist/common/kind.cjs +29 -0
  199. package/dist/common/kind.d.ts +26 -0
  200. package/dist/common/kind.mjs +26 -0
  201. package/dist/common/loop.cjs +19 -0
  202. package/dist/common/loop.d.ts +15 -0
  203. package/dist/common/loop.mjs +17 -0
  204. package/dist/common/pipe.cjs +11 -0
  205. package/dist/common/pipe.d.ts +12 -0
  206. package/dist/common/pipe.mjs +9 -0
  207. package/dist/common/promiseObject.cjs +12 -0
  208. package/dist/common/promiseObject.d.ts +7 -0
  209. package/dist/common/promiseObject.mjs +10 -0
  210. package/dist/common/simpleClone.cjs +25 -0
  211. package/dist/common/simpleClone.d.ts +1 -0
  212. package/dist/common/simpleClone.mjs +23 -0
  213. package/dist/common/sleep.cjs +7 -0
  214. package/dist/common/sleep.d.ts +1 -0
  215. package/dist/common/sleep.mjs +5 -0
  216. package/dist/common/stringToBytes.cjs +43 -0
  217. package/dist/{stringToBytes.d.ts → common/stringToBytes.d.ts} +3 -0
  218. package/dist/common/stringToBytes.mjs +40 -0
  219. package/dist/common/stringToMillisecond.cjs +48 -0
  220. package/dist/common/stringToMillisecond.d.ts +18 -0
  221. package/dist/common/stringToMillisecond.mjs +45 -0
  222. package/dist/common/toJson.cjs +34 -0
  223. package/dist/common/toJson.d.ts +11 -0
  224. package/dist/common/toJson.mjs +32 -0
  225. package/dist/common/toString.cjs +7 -0
  226. package/dist/common/toString.d.ts +1 -0
  227. package/dist/common/toString.mjs +5 -0
  228. package/dist/common/toTransform.cjs +34 -0
  229. package/dist/common/toTransform.d.ts +11 -0
  230. package/dist/common/toTransform.mjs +32 -0
  231. package/dist/common/toWrappedValue.cjs +11 -0
  232. package/dist/common/toWrappedValue.d.ts +4 -0
  233. package/dist/common/toWrappedValue.mjs +9 -0
  234. package/dist/common/types/IsExtends.d.ts +1 -0
  235. package/dist/common/types/adaptor.d.ts +1 -0
  236. package/dist/common/types/addOne.d.ts +23 -0
  237. package/dist/common/types/and.d.ts +2 -0
  238. package/dist/common/types/anyFunction.d.ts +1 -0
  239. package/dist/common/types/anyObject.d.ts +4 -0
  240. package/dist/common/types/anyTuple.d.ts +1 -0
  241. package/dist/common/types/anyValue.d.ts +2 -0
  242. package/dist/common/types/breakGenericLink.d.ts +1 -0
  243. package/dist/common/types/createTupleFromLength.d.ts +6 -0
  244. package/dist/common/types/deepPartial.d.ts +3 -0
  245. package/dist/common/types/deepRemoveReadonly.d.ts +3 -0
  246. package/dist/common/types/escapeAny.d.ts +1 -0
  247. package/dist/common/types/escapeVoid.d.ts +1 -0
  248. package/dist/common/types/expectType.d.ts +6 -0
  249. package/dist/common/types/fixDeepFunctionInfer.d.ts +2 -0
  250. package/dist/common/types/forcePredicate.d.ts +3 -0
  251. package/dist/common/types/index.d.ts +37 -0
  252. package/dist/common/types/isStringLIteral.d.ts +2 -0
  253. package/dist/common/types/isUnion.d.ts +2 -0
  254. package/dist/common/types/lastUnionElement.d.ts +2 -0
  255. package/dist/common/types/maybeArray.d.ts +1 -0
  256. package/dist/common/types/maybePromise.d.ts +1 -0
  257. package/dist/common/types/maybeWrapped.d.ts +2 -0
  258. package/dist/common/types/neverCoalescing.d.ts +2 -0
  259. package/dist/common/types/not.d.ts +1 -0
  260. package/dist/common/types/objectEntry.d.ts +2 -0
  261. package/dist/common/types/objectKey.d.ts +1 -0
  262. package/dist/common/types/or.d.ts +2 -0
  263. package/dist/common/types/removeDuplicateInUnion.d.ts +4 -0
  264. package/dist/common/types/removeReadonly.d.ts +3 -0
  265. package/dist/common/types/simplifyTopLevel.d.ts +3 -0
  266. package/dist/common/types/simplifyType.d.ts +3 -0
  267. package/dist/common/types/simplifyTypeForce.d.ts +3 -0
  268. package/dist/common/types/toLargeEnsemble.d.ts +6 -0
  269. package/dist/common/types/unionContain.d.ts +2 -0
  270. package/dist/common/types/unionToIntersection.d.ts +1 -0
  271. package/dist/common/types/unionToTuple.d.ts +5 -0
  272. package/dist/common/unwrap.cjs +11 -0
  273. package/dist/common/unwrap.d.ts +4 -0
  274. package/dist/common/unwrap.mjs +9 -0
  275. package/dist/common/when.d.ts +5 -0
  276. package/dist/common/whenNot.d.ts +5 -0
  277. package/dist/common/wrapValue.cjs +15 -0
  278. package/dist/common/wrapValue.d.ts +9 -0
  279. package/dist/common/wrapValue.mjs +11 -0
  280. package/dist/either/base.cjs +7 -0
  281. package/dist/either/base.d.ts +1 -0
  282. package/dist/either/base.mjs +5 -0
  283. package/dist/either/bool/base.cjs +7 -0
  284. package/dist/either/bool/base.d.ts +1 -0
  285. package/dist/either/bool/base.mjs +5 -0
  286. package/dist/either/bool/create.cjs +16 -0
  287. package/dist/either/bool/create.d.ts +4 -0
  288. package/dist/either/bool/create.mjs +14 -0
  289. package/dist/either/bool/falsy.cjs +44 -0
  290. package/dist/either/bool/falsy.d.ts +16 -0
  291. package/dist/either/bool/falsy.mjs +39 -0
  292. package/dist/either/bool/index.d.ts +4 -0
  293. package/dist/either/bool/truthy.cjs +44 -0
  294. package/dist/either/bool/truthy.d.ts +15 -0
  295. package/dist/either/bool/truthy.mjs +39 -0
  296. package/dist/either/future/MaybeFutureEither.d.ts +2 -0
  297. package/dist/either/future/base.cjs +7 -0
  298. package/dist/either/future/base.d.ts +1 -0
  299. package/dist/either/future/base.mjs +5 -0
  300. package/dist/either/future/create.cjs +49 -0
  301. package/dist/either/future/create.d.ts +25 -0
  302. package/dist/either/future/create.mjs +46 -0
  303. package/dist/either/future/error.cjs +13 -0
  304. package/dist/either/future/error.d.ts +6 -0
  305. package/dist/either/future/error.mjs +10 -0
  306. package/dist/either/future/index.d.ts +4 -0
  307. package/dist/either/future/success.cjs +13 -0
  308. package/dist/either/future/success.d.ts +6 -0
  309. package/dist/either/future/success.mjs +10 -0
  310. package/dist/either/hasInformation.cjs +10 -0
  311. package/dist/either/hasInformation.d.ts +7 -0
  312. package/dist/either/hasInformation.mjs +8 -0
  313. package/dist/either/index.cjs +108 -0
  314. package/dist/either/index.d.ts +10 -0
  315. package/dist/either/index.mjs +35 -0
  316. package/dist/either/left/create.cjs +13 -0
  317. package/dist/either/left/create.d.ts +6 -0
  318. package/dist/either/left/create.mjs +10 -0
  319. package/dist/either/left/error.cjs +12 -0
  320. package/dist/either/left/error.d.ts +5 -0
  321. package/dist/either/left/error.mjs +9 -0
  322. package/dist/either/left/fail.cjs +12 -0
  323. package/dist/either/left/fail.d.ts +5 -0
  324. package/dist/either/left/fail.mjs +9 -0
  325. package/dist/either/left/index.d.ts +5 -0
  326. package/dist/either/left/is.cjs +13 -0
  327. package/dist/either/left/is.d.ts +2 -0
  328. package/dist/either/left/is.mjs +11 -0
  329. package/dist/either/left/when.cjs +18 -0
  330. package/dist/either/left/when.d.ts +4 -0
  331. package/dist/either/left/when.mjs +16 -0
  332. package/dist/either/nullable/base.cjs +7 -0
  333. package/dist/either/nullable/base.d.ts +1 -0
  334. package/dist/either/nullable/base.mjs +5 -0
  335. package/dist/either/nullable/create.cjs +12 -0
  336. package/dist/either/nullable/create.d.ts +3 -0
  337. package/dist/either/nullable/create.mjs +10 -0
  338. package/dist/either/nullable/empty.cjs +44 -0
  339. package/dist/either/nullable/empty.d.ts +15 -0
  340. package/dist/either/nullable/empty.mjs +39 -0
  341. package/dist/either/nullable/filled.cjs +44 -0
  342. package/dist/either/nullable/filled.d.ts +15 -0
  343. package/dist/either/nullable/filled.mjs +39 -0
  344. package/dist/either/nullable/index.d.ts +4 -0
  345. package/dist/either/nullish/base.cjs +7 -0
  346. package/dist/either/nullish/base.d.ts +1 -0
  347. package/dist/either/nullish/base.mjs +5 -0
  348. package/dist/either/nullish/create.cjs +12 -0
  349. package/dist/either/nullish/create.d.ts +3 -0
  350. package/dist/either/nullish/create.mjs +10 -0
  351. package/dist/either/nullish/empty.cjs +44 -0
  352. package/dist/either/nullish/empty.d.ts +16 -0
  353. package/dist/either/nullish/empty.mjs +39 -0
  354. package/dist/either/nullish/filled.cjs +44 -0
  355. package/dist/either/nullish/filled.d.ts +15 -0
  356. package/dist/either/nullish/filled.mjs +39 -0
  357. package/dist/either/nullish/index.d.ts +4 -0
  358. package/dist/either/optional/base.cjs +7 -0
  359. package/dist/either/optional/base.d.ts +1 -0
  360. package/dist/either/optional/base.mjs +5 -0
  361. package/dist/either/optional/create.cjs +12 -0
  362. package/dist/either/optional/create.d.ts +3 -0
  363. package/dist/either/optional/create.mjs +10 -0
  364. package/dist/either/optional/empty.cjs +43 -0
  365. package/dist/either/optional/empty.d.ts +15 -0
  366. package/dist/either/optional/empty.mjs +38 -0
  367. package/dist/either/optional/filled.cjs +44 -0
  368. package/dist/either/optional/filled.d.ts +15 -0
  369. package/dist/either/optional/filled.mjs +39 -0
  370. package/dist/either/optional/index.d.ts +4 -0
  371. package/dist/either/right/asyncPipe.cjs +28 -0
  372. package/dist/either/right/asyncPipe.d.ts +22 -0
  373. package/dist/either/right/asyncPipe.mjs +26 -0
  374. package/dist/either/right/create.cjs +13 -0
  375. package/dist/either/right/create.d.ts +6 -0
  376. package/dist/either/right/create.mjs +10 -0
  377. package/dist/either/right/index.d.ts +7 -0
  378. package/dist/either/right/is.cjs +13 -0
  379. package/dist/either/right/is.d.ts +2 -0
  380. package/dist/either/right/is.mjs +11 -0
  381. package/dist/either/right/ok.cjs +12 -0
  382. package/dist/either/right/ok.d.ts +5 -0
  383. package/dist/either/right/ok.mjs +9 -0
  384. package/dist/either/right/pipe.cjs +22 -0
  385. package/dist/either/right/pipe.d.ts +19 -0
  386. package/dist/either/right/pipe.mjs +20 -0
  387. package/dist/either/right/success.cjs +12 -0
  388. package/dist/either/right/success.d.ts +5 -0
  389. package/dist/either/right/success.mjs +9 -0
  390. package/dist/either/right/when.cjs +18 -0
  391. package/dist/either/right/when.d.ts +4 -0
  392. package/dist/either/right/when.mjs +16 -0
  393. package/dist/either/whenHasInformation.cjs +24 -0
  394. package/dist/either/whenHasInformation.d.ts +8 -0
  395. package/dist/either/whenHasInformation.mjs +22 -0
  396. package/dist/generator/asyncFilter.cjs +20 -0
  397. package/dist/generator/asyncFilter.d.ts +8 -0
  398. package/dist/generator/asyncFilter.mjs +18 -0
  399. package/dist/generator/asyncLoop.cjs +26 -0
  400. package/dist/generator/asyncLoop.d.ts +10 -0
  401. package/dist/generator/asyncLoop.mjs +24 -0
  402. package/dist/generator/asyncMap.cjs +18 -0
  403. package/dist/generator/asyncMap.d.ts +6 -0
  404. package/dist/generator/asyncMap.mjs +16 -0
  405. package/dist/generator/asyncReduce.cjs +44 -0
  406. package/dist/generator/asyncReduce.d.ts +30 -0
  407. package/dist/generator/asyncReduce.mjs +42 -0
  408. package/dist/generator/execute.cjs +17 -0
  409. package/dist/generator/execute.d.ts +2 -0
  410. package/dist/generator/execute.mjs +15 -0
  411. package/dist/generator/filter.cjs +20 -0
  412. package/dist/generator/filter.d.ts +8 -0
  413. package/dist/generator/filter.mjs +18 -0
  414. package/dist/generator/index.cjs +23 -0
  415. package/dist/generator/index.d.ts +9 -0
  416. package/dist/generator/index.mjs +9 -0
  417. package/dist/generator/loop.cjs +26 -0
  418. package/dist/generator/loop.d.ts +15 -0
  419. package/dist/generator/loop.mjs +24 -0
  420. package/dist/generator/map.cjs +18 -0
  421. package/dist/generator/map.d.ts +6 -0
  422. package/dist/generator/map.mjs +16 -0
  423. package/dist/generator/reduce.cjs +42 -0
  424. package/dist/generator/reduce.d.ts +30 -0
  425. package/dist/generator/reduce.mjs +40 -0
  426. package/dist/index.cjs +79 -133
  427. package/dist/index.d.ts +15 -25
  428. package/dist/index.mjs +47 -124
  429. package/dist/number/abs.cjs +7 -0
  430. package/dist/number/abs.d.ts +1 -0
  431. package/dist/number/abs.mjs +5 -0
  432. package/dist/number/acos.cjs +7 -0
  433. package/dist/number/acos.d.ts +1 -0
  434. package/dist/number/acos.mjs +5 -0
  435. package/dist/number/add.cjs +12 -0
  436. package/dist/number/add.d.ts +2 -0
  437. package/dist/number/add.mjs +10 -0
  438. package/dist/number/asin.cjs +7 -0
  439. package/dist/number/asin.d.ts +1 -0
  440. package/dist/number/asin.mjs +5 -0
  441. package/dist/number/atan.cjs +7 -0
  442. package/dist/number/atan.d.ts +1 -0
  443. package/dist/number/atan.mjs +5 -0
  444. package/dist/number/atan2.cjs +12 -0
  445. package/dist/number/atan2.d.ts +2 -0
  446. package/dist/number/atan2.mjs +10 -0
  447. package/dist/number/ceil.cjs +7 -0
  448. package/dist/number/ceil.d.ts +1 -0
  449. package/dist/number/ceil.mjs +5 -0
  450. package/dist/number/clamp.cjs +14 -0
  451. package/dist/number/clamp.d.ts +2 -0
  452. package/dist/number/clamp.mjs +12 -0
  453. package/dist/number/cos.cjs +7 -0
  454. package/dist/number/cos.d.ts +1 -0
  455. package/dist/number/cos.mjs +5 -0
  456. package/dist/number/divide.cjs +12 -0
  457. package/dist/number/divide.d.ts +2 -0
  458. package/dist/number/divide.mjs +10 -0
  459. package/dist/number/floor.cjs +7 -0
  460. package/dist/number/floor.d.ts +1 -0
  461. package/dist/number/floor.mjs +5 -0
  462. package/dist/number/index.cjs +49 -0
  463. package/dist/number/index.d.ts +22 -0
  464. package/dist/number/index.mjs +22 -0
  465. package/dist/number/max.cjs +12 -0
  466. package/dist/number/max.d.ts +2 -0
  467. package/dist/number/max.mjs +10 -0
  468. package/dist/number/min.cjs +12 -0
  469. package/dist/number/min.d.ts +2 -0
  470. package/dist/number/min.mjs +10 -0
  471. package/dist/number/modulo.cjs +12 -0
  472. package/dist/number/modulo.d.ts +2 -0
  473. package/dist/number/modulo.mjs +10 -0
  474. package/dist/number/multiply.cjs +12 -0
  475. package/dist/number/multiply.d.ts +2 -0
  476. package/dist/number/multiply.mjs +10 -0
  477. package/dist/number/negate.cjs +7 -0
  478. package/dist/number/negate.d.ts +1 -0
  479. package/dist/number/negate.mjs +5 -0
  480. package/dist/number/power.cjs +12 -0
  481. package/dist/number/power.d.ts +2 -0
  482. package/dist/number/power.mjs +10 -0
  483. package/dist/number/round.cjs +7 -0
  484. package/dist/number/round.d.ts +1 -0
  485. package/dist/number/round.mjs +5 -0
  486. package/dist/number/sin.cjs +7 -0
  487. package/dist/number/sin.d.ts +1 -0
  488. package/dist/number/sin.mjs +5 -0
  489. package/dist/number/subtract.cjs +12 -0
  490. package/dist/number/subtract.d.ts +2 -0
  491. package/dist/number/subtract.mjs +10 -0
  492. package/dist/number/tan.cjs +7 -0
  493. package/dist/number/tan.d.ts +1 -0
  494. package/dist/number/tan.mjs +5 -0
  495. package/dist/number/trunc.cjs +7 -0
  496. package/dist/number/trunc.d.ts +1 -0
  497. package/dist/number/trunc.mjs +5 -0
  498. package/dist/object/assign.cjs +15 -0
  499. package/dist/object/assign.d.ts +4 -0
  500. package/dist/object/assign.mjs +13 -0
  501. package/dist/object/entries.cjs +10 -0
  502. package/dist/object/entries.d.ts +7 -0
  503. package/dist/object/entries.mjs +8 -0
  504. package/dist/object/fromEntries.cjs +7 -0
  505. package/dist/object/fromEntries.d.ts +6 -0
  506. package/dist/object/fromEntries.mjs +5 -0
  507. package/dist/object/getProperty.cjs +12 -0
  508. package/dist/object/getProperty.d.ts +8 -0
  509. package/dist/object/getProperty.mjs +10 -0
  510. package/dist/object/hasKeys.cjs +18 -0
  511. package/dist/object/hasKeys.d.ts +3 -0
  512. package/dist/object/hasKeys.mjs +16 -0
  513. package/dist/object/index.cjs +31 -0
  514. package/dist/object/index.d.ts +14 -0
  515. package/dist/object/index.mjs +13 -0
  516. package/dist/object/keys.cjs +7 -0
  517. package/dist/object/keys.d.ts +1 -0
  518. package/dist/object/keys.mjs +5 -0
  519. package/dist/object/omit.cjs +24 -0
  520. package/dist/object/omit.d.ts +8 -0
  521. package/dist/object/omit.mjs +22 -0
  522. package/dist/object/override.cjs +18 -0
  523. package/dist/object/override.d.ts +2 -0
  524. package/dist/object/override.mjs +16 -0
  525. package/dist/object/pick.cjs +24 -0
  526. package/dist/object/pick.d.ts +7 -0
  527. package/dist/object/pick.mjs +22 -0
  528. package/dist/object/to.cjs +16 -0
  529. package/dist/object/to.d.ts +10 -0
  530. package/dist/object/to.mjs +14 -0
  531. package/dist/object/transformProperties.cjs +18 -0
  532. package/dist/object/transformProperties.d.ts +10 -0
  533. package/dist/object/transformProperties.mjs +16 -0
  534. package/dist/object/transformProperty.cjs +15 -0
  535. package/dist/object/transformProperty.d.ts +7 -0
  536. package/dist/object/transformProperty.mjs +13 -0
  537. package/dist/object/types/UnionObjectToIntersection.d.ts +2 -0
  538. package/dist/object/types/assignObjects.d.ts +2 -0
  539. package/dist/object/types/flatObject.d.ts +25 -0
  540. package/dist/object/types/getPropsWithValue.d.ts +4 -0
  541. package/dist/object/types/index.d.ts +6 -0
  542. package/dist/object/types/partialKeys.d.ts +2 -0
  543. package/dist/object/types/requiredKeys.d.ts +2 -0
  544. package/dist/object/values.cjs +7 -0
  545. package/dist/object/values.d.ts +4 -0
  546. package/dist/object/values.mjs +5 -0
  547. package/dist/pattern/exhaustive.cjs +9 -0
  548. package/dist/pattern/exhaustive.d.ts +3 -0
  549. package/dist/pattern/exhaustive.mjs +7 -0
  550. package/dist/pattern/index.cjs +22 -0
  551. package/dist/pattern/index.d.ts +8 -0
  552. package/dist/pattern/index.mjs +8 -0
  553. package/dist/pattern/isMatch.cjs +44 -0
  554. package/dist/pattern/isMatch.d.ts +2 -0
  555. package/dist/pattern/isMatch.mjs +42 -0
  556. package/dist/pattern/match.cjs +18 -0
  557. package/dist/pattern/match.d.ts +6 -0
  558. package/dist/pattern/match.mjs +16 -0
  559. package/dist/pattern/matchPrimitive.cjs +17 -0
  560. package/dist/pattern/matchPrimitive.d.ts +3 -0
  561. package/dist/pattern/matchPrimitive.mjs +15 -0
  562. package/dist/pattern/otherwise.cjs +17 -0
  563. package/dist/pattern/otherwise.d.ts +4 -0
  564. package/dist/pattern/otherwise.mjs +15 -0
  565. package/dist/pattern/result.cjs +13 -0
  566. package/dist/pattern/result.d.ts +7 -0
  567. package/dist/pattern/result.mjs +10 -0
  568. package/dist/pattern/types/complexMatchedValue/array.d.ts +40 -0
  569. package/dist/pattern/types/complexMatchedValue/index.d.ts +6 -0
  570. package/dist/pattern/types/complexMatchedValue/maybeAll.d.ts +3 -0
  571. package/dist/pattern/types/complexMatchedValue/object.d.ts +11 -0
  572. package/dist/pattern/types/complexMatchedValue/primitive.d.ts +9 -0
  573. package/dist/pattern/types/complexUnMatchedValue/array.d.ts +27 -0
  574. package/dist/pattern/types/complexUnMatchedValue/getIncompleteUnion.d.ts +66 -0
  575. package/dist/pattern/types/complexUnMatchedValue/index.d.ts +9 -0
  576. package/dist/pattern/types/complexUnMatchedValue/maybeAll.d.ts +3 -0
  577. package/dist/pattern/types/complexUnMatchedValue/object.d.ts +17 -0
  578. package/dist/pattern/types/complexUnMatchedValue/primitive.d.ts +8 -0
  579. package/dist/pattern/types/complexUnMatchedValue/unionObject.d.ts +3 -0
  580. package/dist/pattern/types/index.d.ts +3 -0
  581. package/dist/pattern/types/pattern.cjs +5 -0
  582. package/dist/pattern/types/pattern.d.ts +37 -0
  583. package/dist/pattern/types/pattern.mjs +3 -0
  584. package/dist/pattern/union.cjs +20 -0
  585. package/dist/pattern/union.d.ts +6 -0
  586. package/dist/pattern/union.mjs +18 -0
  587. package/dist/string/at/default.cjs +12 -0
  588. package/dist/string/at/default.d.ts +2 -0
  589. package/dist/string/at/default.mjs +10 -0
  590. package/dist/string/at/first.cjs +7 -0
  591. package/dist/string/at/first.d.ts +2 -0
  592. package/dist/string/at/first.mjs +5 -0
  593. package/dist/string/at/index.d.ts +3 -0
  594. package/dist/string/at/last.cjs +9 -0
  595. package/dist/string/at/last.d.ts +2 -0
  596. package/dist/string/at/last.mjs +7 -0
  597. package/dist/string/capitalize.cjs +7 -0
  598. package/dist/string/capitalize.d.ts +1 -0
  599. package/dist/string/capitalize.mjs +5 -0
  600. package/dist/string/charAt.cjs +12 -0
  601. package/dist/string/charAt.d.ts +2 -0
  602. package/dist/string/charAt.mjs +10 -0
  603. package/dist/string/concat.cjs +12 -0
  604. package/dist/string/concat.d.ts +2 -0
  605. package/dist/string/concat.mjs +10 -0
  606. package/dist/string/endsWith.cjs +12 -0
  607. package/dist/string/endsWith.d.ts +2 -0
  608. package/dist/string/endsWith.mjs +10 -0
  609. package/dist/string/includes.cjs +12 -0
  610. package/dist/string/includes.d.ts +2 -0
  611. package/dist/string/includes.mjs +10 -0
  612. package/dist/string/index.cjs +67 -0
  613. package/dist/string/index.d.ts +28 -0
  614. package/dist/string/index.mjs +31 -0
  615. package/dist/string/indexOf.cjs +13 -0
  616. package/dist/string/indexOf.d.ts +2 -0
  617. package/dist/string/indexOf.mjs +11 -0
  618. package/dist/string/isKeyof.cjs +12 -0
  619. package/dist/string/isKeyof.d.ts +3 -0
  620. package/dist/string/isKeyof.mjs +10 -0
  621. package/dist/string/lastIndexOf.cjs +13 -0
  622. package/dist/string/lastIndexOf.d.ts +2 -0
  623. package/dist/string/lastIndexOf.mjs +11 -0
  624. package/dist/string/match.cjs +13 -0
  625. package/dist/string/match.d.ts +2 -0
  626. package/dist/string/match.mjs +11 -0
  627. package/dist/string/matchAll.cjs +12 -0
  628. package/dist/string/matchAll.d.ts +2 -0
  629. package/dist/string/matchAll.mjs +10 -0
  630. package/dist/string/normalize.cjs +12 -0
  631. package/dist/string/normalize.d.ts +3 -0
  632. package/dist/string/normalize.mjs +10 -0
  633. package/dist/string/padEnd.cjs +12 -0
  634. package/dist/string/padEnd.d.ts +2 -0
  635. package/dist/string/padEnd.mjs +10 -0
  636. package/dist/string/padStart.cjs +12 -0
  637. package/dist/string/padStart.d.ts +2 -0
  638. package/dist/string/padStart.mjs +10 -0
  639. package/dist/string/repeat.cjs +15 -0
  640. package/dist/string/repeat.d.ts +2 -0
  641. package/dist/string/repeat.mjs +13 -0
  642. package/dist/string/replace.cjs +12 -0
  643. package/dist/string/replace.d.ts +2 -0
  644. package/dist/string/replace.mjs +10 -0
  645. package/dist/string/replaceAll.cjs +12 -0
  646. package/dist/string/replaceAll.d.ts +2 -0
  647. package/dist/string/replaceAll.mjs +10 -0
  648. package/dist/string/search.cjs +13 -0
  649. package/dist/string/search.d.ts +2 -0
  650. package/dist/string/search.mjs +11 -0
  651. package/dist/string/slice.cjs +12 -0
  652. package/dist/string/slice.d.ts +2 -0
  653. package/dist/string/slice.mjs +10 -0
  654. package/dist/string/split.cjs +16 -0
  655. package/dist/string/split.d.ts +9 -0
  656. package/dist/string/split.mjs +14 -0
  657. package/dist/string/startsWith.cjs +12 -0
  658. package/dist/string/startsWith.d.ts +2 -0
  659. package/dist/string/startsWith.mjs +10 -0
  660. package/dist/string/substring.cjs +12 -0
  661. package/dist/string/substring.d.ts +2 -0
  662. package/dist/string/substring.mjs +10 -0
  663. package/dist/string/test.cjs +12 -0
  664. package/dist/string/test.d.ts +2 -0
  665. package/dist/string/test.mjs +10 -0
  666. package/dist/string/toLowerCase.cjs +7 -0
  667. package/dist/string/toLowerCase.d.ts +1 -0
  668. package/dist/string/toLowerCase.mjs +5 -0
  669. package/dist/string/toUpperCase.cjs +7 -0
  670. package/dist/string/toUpperCase.d.ts +1 -0
  671. package/dist/string/toUpperCase.mjs +5 -0
  672. package/dist/string/trim/default.cjs +7 -0
  673. package/dist/string/trim/default.d.ts +1 -0
  674. package/dist/string/trim/default.mjs +5 -0
  675. package/dist/string/trim/end.cjs +7 -0
  676. package/dist/string/trim/end.d.ts +1 -0
  677. package/dist/string/trim/end.mjs +5 -0
  678. package/dist/string/trim/index.d.ts +3 -0
  679. package/dist/string/trim/start.cjs +7 -0
  680. package/dist/string/trim/start.d.ts +1 -0
  681. package/dist/string/trim/start.mjs +5 -0
  682. package/dist/string/types/NormalizeForm.d.ts +1 -0
  683. package/dist/string/types/endsWith.d.ts +1 -0
  684. package/dist/string/types/first.d.ts +2 -0
  685. package/dist/string/types/includes.d.ts +1 -0
  686. package/dist/string/types/index.d.ts +5 -0
  687. package/dist/string/types/last.d.ts +2 -0
  688. package/dist/string/types/split.d.ts +9 -0
  689. package/dist/string/types/startsWith.d.ts +1 -0
  690. package/dist/string/uncapitalize.cjs +7 -0
  691. package/dist/string/uncapitalize.d.ts +1 -0
  692. package/dist/string/uncapitalize.mjs +5 -0
  693. package/package.json +20 -27
  694. package/dist/addThis.d.ts +0 -2
  695. package/dist/entryUseMapper.d.ts +0 -6
  696. package/dist/expectType.d.ts +0 -6
  697. package/dist/getLastOfUnion.d.ts +0 -2
  698. package/dist/getPropsWithTrueValue.d.ts +0 -3
  699. package/dist/getTypedEntries.d.ts +0 -6
  700. package/dist/getTypedKeys.d.ts +0 -1
  701. package/dist/hasKey.d.ts +0 -2
  702. package/dist/incremente.d.ts +0 -33
  703. package/dist/mergeObjects.d.ts +0 -4
  704. package/dist/overrideInterface.d.ts +0 -1
  705. package/dist/partialKeys.d.ts +0 -2
  706. package/dist/requiredKeys.d.ts +0 -2
  707. package/dist/simpleClone.d.ts +0 -1
  708. package/dist/simplifyType.d.ts +0 -9
  709. package/dist/sleep.d.ts +0 -1
  710. package/dist/types.d.ts +0 -4
  711. package/dist/unPartial.d.ts +0 -10
  712. package/dist/unionToIntersection.d.ts +0 -1
  713. package/dist/unionToTuple.d.ts +0 -4
  714. package/dist/uniqueGeneric.d.ts +0 -5
  715. /package/dist/{escapeRegExp.d.ts → common/escapeRegExp.d.ts} +0 -0
  716. /package/dist/{isEqual.d.ts → common/types/isEqual.d.ts} +0 -0
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ function escapeRegExp(text) {
4
+ return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
5
+ }
6
+
7
+ exports.escapeRegExp = escapeRegExp;
@@ -0,0 +1,5 @@
1
+ function escapeRegExp(text) {
2
+ return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
3
+ }
4
+
5
+ export { escapeRegExp };
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ function createExternalPromise() {
4
+ let resolve = undefined;
5
+ let reject = undefined;
6
+ const promise = new Promise((res, rej) => {
7
+ resolve = res;
8
+ reject = rej;
9
+ });
10
+ return {
11
+ resolve,
12
+ reject,
13
+ promise,
14
+ };
15
+ }
16
+
17
+ exports.createExternalPromise = createExternalPromise;
@@ -0,0 +1,5 @@
1
+ export declare function createExternalPromise<GenericPromiseValue extends unknown>(): {
2
+ resolve: (_value: GenericPromiseValue | Awaited<GenericPromiseValue> | Promise<GenericPromiseValue>) => void;
3
+ reject: (_value: unknown) => void;
4
+ promise: Promise<Awaited<GenericPromiseValue>>;
5
+ };
@@ -0,0 +1,15 @@
1
+ function createExternalPromise() {
2
+ let resolve = undefined;
3
+ let reject = undefined;
4
+ const promise = new Promise((res, rej) => {
5
+ resolve = res;
6
+ reject = rej;
7
+ });
8
+ return {
9
+ resolve,
10
+ reject,
11
+ promise,
12
+ };
13
+ }
14
+
15
+ export { createExternalPromise };
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ function forward(value) {
4
+ return value;
5
+ }
6
+
7
+ exports.forward = forward;
@@ -0,0 +1 @@
1
+ export declare function forward<GenericValue extends unknown>(value: GenericValue): GenericValue;
@@ -0,0 +1,5 @@
1
+ function forward(value) {
2
+ return value;
3
+ }
4
+
5
+ export { forward };
@@ -0,0 +1,27 @@
1
+ export * from "./types";
2
+ export * from "./addWrappedProperties";
3
+ export * from "./asyncPipe";
4
+ export * from "./clone";
5
+ export * from "./enum";
6
+ export * from "./escapeRegExp";
7
+ export * from "./externalPromise";
8
+ export * from "./interpolation";
9
+ export * from "./kind";
10
+ export * from "./pipe";
11
+ export * from "./promiseObject";
12
+ export * from "./simpleClone";
13
+ export * from "./sleep";
14
+ export * from "./stringToBytes";
15
+ export * from "./stringToMillisecond";
16
+ export * from "./toJson";
17
+ export * from "./toTransform";
18
+ export * from "./toWrappedValue";
19
+ export * from "./unwrap";
20
+ export * from "./asyncLoop";
21
+ export * from "./asyncRetry";
22
+ export * from "./wrapValue";
23
+ export * from "./toString";
24
+ export * from "./innerPipe";
25
+ export * from "./asyncInnerPipe";
26
+ export * from "./loop";
27
+ export * from "./forward";
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ function innerPipe(...pipes) {
4
+ return (input) => {
5
+ let acc = input;
6
+ for (const pipe of pipes) {
7
+ acc = pipe(acc);
8
+ }
9
+ return acc;
10
+ };
11
+ }
12
+
13
+ exports.innerPipe = innerPipe;
@@ -0,0 +1,12 @@
1
+ import { type BreakGenericLink, type EscapeVoid } from "./types";
2
+ import { type AnyValue } from "./types/anyValue";
3
+ export declare function innerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid>(pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1): (input: GenericInput) => GenericOutputPipe1;
4
+ export declare function innerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid>(pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2): (input: GenericInput) => GenericOutputPipe2;
5
+ export declare function innerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid>(pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3): (input: GenericInput) => GenericOutputPipe3;
6
+ export declare function innerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid>(pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4): (input: GenericInput) => GenericOutputPipe4;
7
+ export declare function innerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid, GenericOutputPipe5 extends AnyValue | EscapeVoid>(pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4, pipe5: (input: BreakGenericLink<GenericOutputPipe4>) => GenericOutputPipe5): (input: GenericInput) => GenericOutputPipe5;
8
+ export declare function innerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid, GenericOutputPipe5 extends AnyValue | EscapeVoid, GenericOutputPipe6 extends AnyValue | EscapeVoid>(pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4, pipe5: (input: BreakGenericLink<GenericOutputPipe4>) => GenericOutputPipe5, pipe6: (input: BreakGenericLink<GenericOutputPipe5>) => GenericOutputPipe6): (input: GenericInput) => GenericOutputPipe6;
9
+ export declare function innerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid, GenericOutputPipe5 extends AnyValue | EscapeVoid, GenericOutputPipe6 extends AnyValue | EscapeVoid, GenericOutputPipe7 extends AnyValue | EscapeVoid>(pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4, pipe5: (input: BreakGenericLink<GenericOutputPipe4>) => GenericOutputPipe5, pipe6: (input: BreakGenericLink<GenericOutputPipe5>) => GenericOutputPipe6, pipe7: (input: BreakGenericLink<GenericOutputPipe6>) => GenericOutputPipe7): (input: GenericInput) => GenericOutputPipe7;
10
+ export declare function innerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid, GenericOutputPipe5 extends AnyValue | EscapeVoid, GenericOutputPipe6 extends AnyValue | EscapeVoid, GenericOutputPipe7 extends AnyValue | EscapeVoid, GenericOutputPipe8 extends AnyValue | EscapeVoid>(pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4, pipe5: (input: BreakGenericLink<GenericOutputPipe4>) => GenericOutputPipe5, pipe6: (input: BreakGenericLink<GenericOutputPipe5>) => GenericOutputPipe6, pipe7: (input: BreakGenericLink<GenericOutputPipe6>) => GenericOutputPipe7, pipe8: (input: BreakGenericLink<GenericOutputPipe7>) => GenericOutputPipe8): (input: GenericInput) => GenericOutputPipe8;
11
+ export declare function innerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid, GenericOutputPipe5 extends AnyValue | EscapeVoid, GenericOutputPipe6 extends AnyValue | EscapeVoid, GenericOutputPipe7 extends AnyValue | EscapeVoid, GenericOutputPipe8 extends AnyValue | EscapeVoid, GenericOutputPipe9 extends AnyValue | EscapeVoid>(pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4, pipe5: (input: BreakGenericLink<GenericOutputPipe4>) => GenericOutputPipe5, pipe6: (input: BreakGenericLink<GenericOutputPipe5>) => GenericOutputPipe6, pipe7: (input: BreakGenericLink<GenericOutputPipe6>) => GenericOutputPipe7, pipe8: (input: BreakGenericLink<GenericOutputPipe7>) => GenericOutputPipe8, pipe9: (input: BreakGenericLink<GenericOutputPipe8>) => GenericOutputPipe9): (input: GenericInput) => GenericOutputPipe9;
12
+ export declare function innerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid, GenericOutputPipe5 extends AnyValue | EscapeVoid, GenericOutputPipe6 extends AnyValue | EscapeVoid, GenericOutputPipe7 extends AnyValue | EscapeVoid, GenericOutputPipe8 extends AnyValue | EscapeVoid, GenericOutputPipe9 extends AnyValue | EscapeVoid, GenericOutputPipe10 extends AnyValue | EscapeVoid>(pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4, pipe5: (input: BreakGenericLink<GenericOutputPipe4>) => GenericOutputPipe5, pipe6: (input: BreakGenericLink<GenericOutputPipe5>) => GenericOutputPipe6, pipe7: (input: BreakGenericLink<GenericOutputPipe6>) => GenericOutputPipe7, pipe8: (input: BreakGenericLink<GenericOutputPipe7>) => GenericOutputPipe8, pipe9: (input: BreakGenericLink<GenericOutputPipe8>) => GenericOutputPipe9, pipe10: (input: BreakGenericLink<GenericOutputPipe9>) => GenericOutputPipe10): (input: GenericInput) => GenericOutputPipe10;
@@ -0,0 +1,11 @@
1
+ function innerPipe(...pipes) {
2
+ return (input) => {
3
+ let acc = input;
4
+ for (const pipe of pipes) {
5
+ acc = pipe(acc);
6
+ }
7
+ return acc;
8
+ };
9
+ }
10
+
11
+ export { innerPipe };
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ function createInterpolation(value, _strict) {
4
+ return (interpolationValues) => (interpolationValues
5
+ ? value.replace(/\{([^}]*)\}/g, (match, interpolationId) => interpolationValues[interpolationId])
6
+ : value);
7
+ }
8
+
9
+ exports.createInterpolation = createInterpolation;
@@ -1,5 +1,5 @@
1
- import { type IsEqual } from "./isEqual";
2
- export type ExtractInterpolationId<GenericValue extends string> = GenericValue extends `${string}{${infer InferedInterpolationId}}${infer InferedEndValue}` ? InferedInterpolationId | ExtractInterpolationId<InferedEndValue> : never;
3
- export type ReplaceInterpolationIdByValues<GenericValue extends string, GenericInterpolationValues extends Record<string, string>> = GenericValue extends `${infer InferedStartValue}{${infer InferedInterpolationId}}${infer InferedEndValue}` ? InferedInterpolationId extends keyof GenericInterpolationValues ? `${InferedStartValue}${GenericInterpolationValues[InferedInterpolationId]}${ReplaceInterpolationIdByValues<InferedEndValue, GenericInterpolationValues>}` : `${InferedStartValue}${string}${ReplaceInterpolationIdByValues<InferedEndValue, GenericInterpolationValues>}` : GenericValue;
1
+ import { type IsEqual } from "../common/types/isEqual";
2
+ export type ExtractInterpolationId<GenericValue extends string> = GenericValue extends `${string}{${infer InferredInterpolationId}}${infer InferredEndValue}` ? InferredInterpolationId | ExtractInterpolationId<InferredEndValue> : never;
3
+ export type ReplaceInterpolationIdByValues<GenericValue extends string, GenericInterpolationValues extends Record<string, string>> = GenericValue extends `${infer InferredStartValue}{${infer InferredInterpolationId}}${infer InferredEndValue}` ? InferredInterpolationId extends keyof GenericInterpolationValues ? `${InferredStartValue}${GenericInterpolationValues[InferredInterpolationId]}${ReplaceInterpolationIdByValues<InferredEndValue, GenericInterpolationValues>}` : `${InferredStartValue}${string}${ReplaceInterpolationIdByValues<InferredEndValue, GenericInterpolationValues>}` : GenericValue;
4
4
  export type CreateInterpolationContract<GenericInterpolationFunction extends ((value: Record<string, string>) => string)> = ReplaceInterpolationIdByValues<ReturnType<GenericInterpolationFunction>, {}>;
5
5
  export declare function createInterpolation<GenericValue extends string, GenericInterpolationId extends ExtractInterpolationId<GenericValue>, GenericStrict extends boolean>(value: GenericValue, strict?: GenericStrict): <GenericInterpolationMapperValue extends string, GenericInterpolationValues extends Record<GenericInterpolationId, GenericInterpolationMapperValue>>(...[interpolationValues]: IsEqual<GenericInterpolationId, never> extends true ? [] : [interpolationValues: GenericInterpolationValues]) => IsEqual<GenericStrict, true> extends true ? ReplaceInterpolationIdByValues<GenericValue, GenericInterpolationValues> : string;
@@ -0,0 +1,7 @@
1
+ function createInterpolation(value, _strict) {
2
+ return (interpolationValues) => (interpolationValues
3
+ ? value.replace(/\{([^}]*)\}/g, (match, interpolationId) => interpolationValues[interpolationId])
4
+ : value);
5
+ }
6
+
7
+ export { createInterpolation };
@@ -0,0 +1,29 @@
1
+ 'use strict';
2
+
3
+ var wrapValue = require('./wrapValue.cjs');
4
+
5
+ const keyKindPrefix = `${wrapValue.keyWrappedValue}/kind/`;
6
+ function createKind(name) {
7
+ const runTimeKey = `${keyKindPrefix}${name}`;
8
+ return {
9
+ definition: undefined,
10
+ runTimeKey,
11
+ addTo(input, value = null) {
12
+ return {
13
+ ...input,
14
+ [runTimeKey]: value,
15
+ };
16
+ },
17
+ has(input) {
18
+ return input
19
+ && typeof input === "object"
20
+ && runTimeKey in input;
21
+ },
22
+ getValue(input) {
23
+ return input[runTimeKey];
24
+ },
25
+ };
26
+ }
27
+
28
+ exports.createKind = createKind;
29
+ exports.keyKindPrefix = keyKindPrefix;
@@ -0,0 +1,26 @@
1
+ import { type Or, type IsEqual } from "./types";
2
+ export interface KindHandler<GenericKindDefinition extends KindDefinition> {
3
+ definition: GenericKindDefinition;
4
+ runTimeKey: string;
5
+ has<GenericInput extends unknown>(input: GenericInput): input is Extract<GenericInput, Kind<GenericKindDefinition, GenericKindDefinition["value"]>>;
6
+ addTo<GenericInput extends {}, GenericValue extends GenericKindDefinition["value"] = GenericKindDefinition["value"]>(...args: Or<[
7
+ IsEqual<GenericValue, never>,
8
+ IsEqual<GenericValue, unknown>,
9
+ IsEqual<GenericValue, any>
10
+ ]> extends true ? [input: GenericInput, value?: GenericValue] : [input: GenericInput, value: GenericValue]): Kind<GenericKindDefinition, GenericValue> & GenericInput;
11
+ getValue<GenericKind extends Kind<GenericKindDefinition, GenericKindDefinition["value"]>>(input: GenericKind): GenericKind[SymbolKind][GenericKindDefinition["name"]];
12
+ }
13
+ export interface KindDefinition<GenericName extends string = string, GenericValue extends unknown = unknown> {
14
+ name: GenericName;
15
+ value: GenericValue;
16
+ }
17
+ declare const SymbolKind: unique symbol;
18
+ type SymbolKind = typeof SymbolKind;
19
+ export interface Kind<GenericKindDefinition extends KindDefinition, GenericValue extends KindDefinition["value"] = KindDefinition["value"]> {
20
+ [SymbolKind]: {
21
+ [Prop in GenericKindDefinition["name"]]: GenericValue;
22
+ };
23
+ }
24
+ export declare const keyKindPrefix = "@duplojs/utils/value/kind/";
25
+ export declare function createKind<GenericName extends string, GenericKindValue extends unknown = unknown>(name: GenericName): KindHandler<KindDefinition<GenericName, GenericKindValue>>;
26
+ export {};
@@ -0,0 +1,26 @@
1
+ import { keyWrappedValue } from './wrapValue.mjs';
2
+
3
+ const keyKindPrefix = `${keyWrappedValue}/kind/`;
4
+ function createKind(name) {
5
+ const runTimeKey = `${keyKindPrefix}${name}`;
6
+ return {
7
+ definition: undefined,
8
+ runTimeKey,
9
+ addTo(input, value = null) {
10
+ return {
11
+ ...input,
12
+ [runTimeKey]: value,
13
+ };
14
+ },
15
+ has(input) {
16
+ return input
17
+ && typeof input === "object"
18
+ && runTimeKey in input;
19
+ },
20
+ getValue(input) {
21
+ return input[runTimeKey];
22
+ },
23
+ };
24
+ }
25
+
26
+ export { createKind, keyKindPrefix };
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ function loop(loop) {
4
+ let previousOutput = undefined;
5
+ for (let count = 0; true; count++) {
6
+ const result = loop({
7
+ previousOutput,
8
+ count,
9
+ next: (data) => ({ "-nextData": data }),
10
+ exit: (data) => ({ "-exitData": data }),
11
+ });
12
+ if ("-exitData" in result) {
13
+ return result["-exitData"];
14
+ }
15
+ previousOutput = result["-nextData"];
16
+ }
17
+ }
18
+
19
+ exports.loop = loop;
@@ -0,0 +1,15 @@
1
+ import { type AnyValue } from "./types/anyValue";
2
+ interface LoopOutputExistResult<GenericOutput extends any> {
3
+ "-exitData": GenericOutput;
4
+ }
5
+ interface LoopOutputNextResult<GenericOutput extends any> {
6
+ "-nextData": GenericOutput;
7
+ }
8
+ export interface LoopParams<GenericRawNextOutput extends any> {
9
+ count: number;
10
+ previousOutput: GenericRawNextOutput | undefined;
11
+ next<GenericValue extends GenericRawNextOutput | undefined = undefined>(output?: GenericValue): LoopOutputNextResult<GenericValue>;
12
+ exit<GenericOutput extends AnyValue = undefined>(output?: GenericOutput): LoopOutputExistResult<GenericOutput>;
13
+ }
14
+ export declare function loop<GenericRawExitOutput extends AnyValue = undefined, GenericRawNextOutput extends AnyValue = undefined>(loop: (params: LoopParams<GenericRawNextOutput>) => LoopOutputNextResult<GenericRawNextOutput> | LoopOutputExistResult<GenericRawExitOutput>): GenericRawExitOutput;
15
+ export {};
@@ -0,0 +1,17 @@
1
+ function loop(loop) {
2
+ let previousOutput = undefined;
3
+ for (let count = 0; true; count++) {
4
+ const result = loop({
5
+ previousOutput,
6
+ count,
7
+ next: (data) => ({ "-nextData": data }),
8
+ exit: (data) => ({ "-exitData": data }),
9
+ });
10
+ if ("-exitData" in result) {
11
+ return result["-exitData"];
12
+ }
13
+ previousOutput = result["-nextData"];
14
+ }
15
+ }
16
+
17
+ export { loop };
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ function pipe(input, ...pipes) {
4
+ let acc = input;
5
+ for (const pipe of pipes) {
6
+ acc = pipe(acc);
7
+ }
8
+ return acc;
9
+ }
10
+
11
+ exports.pipe = pipe;
@@ -0,0 +1,12 @@
1
+ import { type BreakGenericLink, type EscapeVoid } from "./types";
2
+ import { type AnyValue } from "./types/anyValue";
3
+ export declare function pipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid>(input: GenericInput, pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1): GenericOutputPipe1;
4
+ export declare function pipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid>(input: GenericInput, pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2): GenericOutputPipe2;
5
+ export declare function pipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid>(input: GenericInput, pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3): GenericOutputPipe3;
6
+ export declare function pipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid>(input: GenericInput, pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4): GenericOutputPipe4;
7
+ export declare function pipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid, GenericOutputPipe5 extends AnyValue | EscapeVoid>(input: GenericInput, pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4, pipe5: (input: BreakGenericLink<GenericOutputPipe4>) => GenericOutputPipe5): GenericOutputPipe5;
8
+ export declare function pipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid, GenericOutputPipe5 extends AnyValue | EscapeVoid, GenericOutputPipe6 extends AnyValue | EscapeVoid>(input: GenericInput, pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4, pipe5: (input: BreakGenericLink<GenericOutputPipe4>) => GenericOutputPipe5, pipe6: (input: BreakGenericLink<GenericOutputPipe5>) => GenericOutputPipe6): GenericOutputPipe6;
9
+ export declare function pipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid, GenericOutputPipe5 extends AnyValue | EscapeVoid, GenericOutputPipe6 extends AnyValue | EscapeVoid, GenericOutputPipe7 extends AnyValue | EscapeVoid>(input: GenericInput, pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4, pipe5: (input: BreakGenericLink<GenericOutputPipe4>) => GenericOutputPipe5, pipe6: (input: BreakGenericLink<GenericOutputPipe5>) => GenericOutputPipe6, pipe7: (input: BreakGenericLink<GenericOutputPipe6>) => GenericOutputPipe7): GenericOutputPipe7;
10
+ export declare function pipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid, GenericOutputPipe5 extends AnyValue | EscapeVoid, GenericOutputPipe6 extends AnyValue | EscapeVoid, GenericOutputPipe7 extends AnyValue | EscapeVoid, GenericOutputPipe8 extends AnyValue | EscapeVoid>(input: GenericInput, pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4, pipe5: (input: BreakGenericLink<GenericOutputPipe4>) => GenericOutputPipe5, pipe6: (input: BreakGenericLink<GenericOutputPipe5>) => GenericOutputPipe6, pipe7: (input: BreakGenericLink<GenericOutputPipe6>) => GenericOutputPipe7, pipe8: (input: BreakGenericLink<GenericOutputPipe7>) => GenericOutputPipe8): GenericOutputPipe8;
11
+ export declare function pipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid, GenericOutputPipe5 extends AnyValue | EscapeVoid, GenericOutputPipe6 extends AnyValue | EscapeVoid, GenericOutputPipe7 extends AnyValue | EscapeVoid, GenericOutputPipe8 extends AnyValue | EscapeVoid, GenericOutputPipe9 extends AnyValue | EscapeVoid>(input: GenericInput, pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4, pipe5: (input: BreakGenericLink<GenericOutputPipe4>) => GenericOutputPipe5, pipe6: (input: BreakGenericLink<GenericOutputPipe5>) => GenericOutputPipe6, pipe7: (input: BreakGenericLink<GenericOutputPipe6>) => GenericOutputPipe7, pipe8: (input: BreakGenericLink<GenericOutputPipe7>) => GenericOutputPipe8, pipe9: (input: BreakGenericLink<GenericOutputPipe8>) => GenericOutputPipe9): GenericOutputPipe9;
12
+ export declare function pipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid, GenericOutputPipe4 extends AnyValue | EscapeVoid, GenericOutputPipe5 extends AnyValue | EscapeVoid, GenericOutputPipe6 extends AnyValue | EscapeVoid, GenericOutputPipe7 extends AnyValue | EscapeVoid, GenericOutputPipe8 extends AnyValue | EscapeVoid, GenericOutputPipe9 extends AnyValue | EscapeVoid, GenericOutputPipe10 extends AnyValue | EscapeVoid>(input: GenericInput, pipe1: (input: BreakGenericLink<GenericInput>) => GenericOutputPipe1, pipe2: (input: BreakGenericLink<GenericOutputPipe1>) => GenericOutputPipe2, pipe3: (input: BreakGenericLink<GenericOutputPipe2>) => GenericOutputPipe3, pipe4: (input: BreakGenericLink<GenericOutputPipe3>) => GenericOutputPipe4, pipe5: (input: BreakGenericLink<GenericOutputPipe4>) => GenericOutputPipe5, pipe6: (input: BreakGenericLink<GenericOutputPipe5>) => GenericOutputPipe6, pipe7: (input: BreakGenericLink<GenericOutputPipe6>) => GenericOutputPipe7, pipe8: (input: BreakGenericLink<GenericOutputPipe7>) => GenericOutputPipe8, pipe9: (input: BreakGenericLink<GenericOutputPipe8>) => GenericOutputPipe9, pipe10: (input: BreakGenericLink<GenericOutputPipe9>) => GenericOutputPipe10): GenericOutputPipe10;
@@ -0,0 +1,9 @@
1
+ function pipe(input, ...pipes) {
2
+ let acc = input;
3
+ for (const pipe of pipes) {
4
+ acc = pipe(acc);
5
+ }
6
+ return acc;
7
+ }
8
+
9
+ export { pipe };
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ function promiseObject(object) {
4
+ return Promise
5
+ .all(Object.entries(object)
6
+ .map(([key, promisedValue]) => promisedValue instanceof Promise
7
+ ? promisedValue.then((value) => [key, value])
8
+ : [key, promisedValue]))
9
+ .then((entries) => Object.fromEntries(entries));
10
+ }
11
+
12
+ exports.promiseObject = promiseObject;
@@ -0,0 +1,7 @@
1
+ import { type AnyValue } from "../common/types/anyValue";
2
+ import { type MaybePromise } from "../common/types/maybePromise";
3
+ import { type SimplifyTopLevel } from "../common/types/simplifyTopLevel";
4
+ export type AwaitedPromiseObject<GenericObject extends Record<string, MaybePromise<unknown>>> = {
5
+ [Prop in keyof GenericObject]: Awaited<GenericObject[Prop]>;
6
+ };
7
+ export declare function promiseObject<GenericValue extends AnyValue, GenericObject extends Record<string, MaybePromise<GenericValue>>>(object: GenericObject): Promise<SimplifyTopLevel<AwaitedPromiseObject<GenericObject>>>;
@@ -0,0 +1,10 @@
1
+ function promiseObject(object) {
2
+ return Promise
3
+ .all(Object.entries(object)
4
+ .map(([key, promisedValue]) => promisedValue instanceof Promise
5
+ ? promisedValue.then((value) => [key, value])
6
+ : [key, promisedValue]))
7
+ .then((entries) => Object.fromEntries(entries));
8
+ }
9
+
10
+ export { promiseObject };
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ function simpleClone(unknownValue) {
4
+ if (!unknownValue) {
5
+ return unknownValue;
6
+ }
7
+ else if (typeof unknownValue !== "object") {
8
+ return unknownValue;
9
+ }
10
+ else if (unknownValue.constructor?.name === "Object"
11
+ || unknownValue.constructor === undefined) {
12
+ return Object.entries(unknownValue).reduce((pv, [key, value]) => {
13
+ pv[key] = simpleClone(value);
14
+ return pv;
15
+ }, {});
16
+ }
17
+ else if (unknownValue instanceof Array && unknownValue.constructor.name === "Array") {
18
+ return unknownValue.map(simpleClone);
19
+ }
20
+ else {
21
+ return unknownValue;
22
+ }
23
+ }
24
+
25
+ exports.simpleClone = simpleClone;
@@ -0,0 +1 @@
1
+ export declare function simpleClone<GenericObject extends unknown = unknown>(unknownValue: GenericObject): GenericObject;
@@ -0,0 +1,23 @@
1
+ function simpleClone(unknownValue) {
2
+ if (!unknownValue) {
3
+ return unknownValue;
4
+ }
5
+ else if (typeof unknownValue !== "object") {
6
+ return unknownValue;
7
+ }
8
+ else if (unknownValue.constructor?.name === "Object"
9
+ || unknownValue.constructor === undefined) {
10
+ return Object.entries(unknownValue).reduce((pv, [key, value]) => {
11
+ pv[key] = simpleClone(value);
12
+ return pv;
13
+ }, {});
14
+ }
15
+ else if (unknownValue instanceof Array && unknownValue.constructor.name === "Array") {
16
+ return unknownValue.map(simpleClone);
17
+ }
18
+ else {
19
+ return unknownValue;
20
+ }
21
+ }
22
+
23
+ export { simpleClone };
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ function sleep(millieSeconde) {
4
+ return new Promise((resolve) => void setTimeout(resolve, millieSeconde));
5
+ }
6
+
7
+ exports.sleep = sleep;
@@ -0,0 +1 @@
1
+ export declare function sleep(millieSeconde?: number): Promise<void>;
@@ -0,0 +1,5 @@
1
+ function sleep(millieSeconde) {
2
+ return new Promise((resolve) => void setTimeout(resolve, millieSeconde));
3
+ }
4
+
5
+ export { sleep };
@@ -0,0 +1,43 @@
1
+ 'use strict';
2
+
3
+ var isKeyof = require('../string/isKeyof.cjs');
4
+
5
+ /* eslint-disable id-length */
6
+ const kind = "kind-invalid-bytes-in-string-error";
7
+ class InvalidBytesInStringError extends Error {
8
+ input;
9
+ constructor(input) {
10
+ super(`Invalid Input: ${input}`);
11
+ this.input = input;
12
+ }
13
+ [kind] = null;
14
+ static instanceof(value) {
15
+ return typeof value === "object"
16
+ && value?.constructor?.name === "InvalidBytesInStringError"
17
+ && kind in value;
18
+ }
19
+ }
20
+ const parseRegExp = /(?<rawValue>[0-9.]+)(?<unit>b|kb|mb|gb|tb|pd)/;
21
+ const unitMapper = {
22
+ b: 1,
23
+ kb: 1 << 10,
24
+ mb: 1 << 20,
25
+ gb: 1 << 30,
26
+ tb: Math.pow(1024, 4),
27
+ pb: Math.pow(1024, 5),
28
+ };
29
+ function stringToBytes(bytesInString) {
30
+ if (typeof bytesInString === "number") {
31
+ return bytesInString;
32
+ }
33
+ const regExpResults = parseRegExp.exec(bytesInString);
34
+ const { rawValue, unit } = regExpResults?.groups ?? {};
35
+ const value = parseFloat(rawValue ?? "");
36
+ if (isNaN(value) || !unit || !isKeyof.isKeyof(unit, unitMapper)) {
37
+ throw new InvalidBytesInStringError(bytesInString);
38
+ }
39
+ return Math.floor(unitMapper[unit] * value);
40
+ }
41
+
42
+ exports.InvalidBytesInStringError = InvalidBytesInStringError;
43
+ exports.stringToBytes = stringToBytes;
@@ -1,6 +1,9 @@
1
+ declare const kind = "kind-invalid-bytes-in-string-error";
1
2
  export declare class InvalidBytesInStringError extends Error {
2
3
  input: string;
3
4
  constructor(input: string);
5
+ [kind]: unknown;
6
+ static instanceof(value: unknown): value is InvalidBytesInStringError;
4
7
  }
5
8
  declare const unitMapper: {
6
9
  b: number;
@@ -0,0 +1,40 @@
1
+ import { isKeyof } from '../string/isKeyof.mjs';
2
+
3
+ /* eslint-disable id-length */
4
+ const kind = "kind-invalid-bytes-in-string-error";
5
+ class InvalidBytesInStringError extends Error {
6
+ input;
7
+ constructor(input) {
8
+ super(`Invalid Input: ${input}`);
9
+ this.input = input;
10
+ }
11
+ [kind] = null;
12
+ static instanceof(value) {
13
+ return typeof value === "object"
14
+ && value?.constructor?.name === "InvalidBytesInStringError"
15
+ && kind in value;
16
+ }
17
+ }
18
+ const parseRegExp = /(?<rawValue>[0-9.]+)(?<unit>b|kb|mb|gb|tb|pd)/;
19
+ const unitMapper = {
20
+ b: 1,
21
+ kb: 1 << 10,
22
+ mb: 1 << 20,
23
+ gb: 1 << 30,
24
+ tb: Math.pow(1024, 4),
25
+ pb: Math.pow(1024, 5),
26
+ };
27
+ function stringToBytes(bytesInString) {
28
+ if (typeof bytesInString === "number") {
29
+ return bytesInString;
30
+ }
31
+ const regExpResults = parseRegExp.exec(bytesInString);
32
+ const { rawValue, unit } = regExpResults?.groups ?? {};
33
+ const value = parseFloat(rawValue ?? "");
34
+ if (isNaN(value) || !unit || !isKeyof(unit, unitMapper)) {
35
+ throw new InvalidBytesInStringError(bytesInString);
36
+ }
37
+ return Math.floor(unitMapper[unit] * value);
38
+ }
39
+
40
+ export { InvalidBytesInStringError, stringToBytes };
@@ -0,0 +1,48 @@
1
+ 'use strict';
2
+
3
+ var isKeyof = require('../string/isKeyof.cjs');
4
+
5
+ /* eslint-disable id-length */
6
+ const kind = "kind-invalid-millisecond-in-string-error";
7
+ class InvalidMillisecondInStringError extends Error {
8
+ input;
9
+ constructor(input) {
10
+ super(`Invalid Input: ${input}`);
11
+ this.input = input;
12
+ }
13
+ [kind] = null;
14
+ static instanceof(value) {
15
+ return typeof value === "object"
16
+ && value?.constructor?.name === "InvalidMillisecondInStringError"
17
+ && kind in value;
18
+ }
19
+ }
20
+ const unitMapper = {
21
+ ms: 1,
22
+ s: 1000,
23
+ m: 60_000,
24
+ h: 3_600_000,
25
+ d: 86_400_000,
26
+ w: 604_800_000,
27
+ };
28
+ const parseRegExp = /(?<rawValue>[0-9.]+)(?<unit>ms|s|m|h|d|w)/;
29
+ function stringToMillisecond(millisecondInString, ...millisecondInStrings) {
30
+ if (typeof millisecondInString === "number") {
31
+ return millisecondInString;
32
+ }
33
+ const result = parseRegExp.exec(millisecondInString);
34
+ const { rawValue, unit } = result?.groups ?? {};
35
+ const value = parseFloat(rawValue ?? "");
36
+ if (isNaN(value) || !unit || !isKeyof.isKeyof(unit, unitMapper)) {
37
+ throw new InvalidMillisecondInStringError(millisecondInString);
38
+ }
39
+ const millisecond = Math.floor(value * unitMapper[unit]);
40
+ const [otherMillisecondInString, ...restMillisecondInStrings] = millisecondInStrings;
41
+ if (otherMillisecondInString) {
42
+ return millisecond + stringToMillisecond(otherMillisecondInString, ...restMillisecondInStrings);
43
+ }
44
+ return millisecond;
45
+ }
46
+
47
+ exports.InvalidMillisecondInStringError = InvalidMillisecondInStringError;
48
+ exports.stringToMillisecond = stringToMillisecond;