@duplojs/utils 1.0.7 → 1.1.7

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 (294) hide show
  1. package/dist/array/coalescing.cjs +9 -0
  2. package/dist/array/coalescing.d.ts +3 -0
  3. package/dist/array/coalescing.mjs +7 -0
  4. package/dist/array/index.cjs +2 -0
  5. package/dist/array/index.d.ts +1 -0
  6. package/dist/array/index.mjs +1 -0
  7. package/dist/array/map.cjs +1 -1
  8. package/dist/array/map.d.ts +2 -2
  9. package/dist/array/map.mjs +1 -1
  10. package/dist/array/reduce.cjs +1 -1
  11. package/dist/array/reduce.mjs +1 -1
  12. package/dist/array/types/ArrayCoalescing.d.ts +1 -0
  13. package/dist/array/types/index.d.ts +1 -0
  14. package/dist/common/escapeRegExp.cjs +2 -2
  15. package/dist/common/escapeRegExp.d.ts +1 -1
  16. package/dist/common/escapeRegExp.mjs +2 -2
  17. package/dist/common/index.d.ts +2 -0
  18. package/dist/common/instanceOf.cjs +20 -0
  19. package/dist/common/instanceOf.d.ts +3 -0
  20. package/dist/common/instanceOf.mjs +18 -0
  21. package/dist/common/kind.cjs +38 -1
  22. package/dist/common/kind.d.ts +21 -3
  23. package/dist/common/kind.mjs +38 -2
  24. package/dist/common/memo.cjs +16 -0
  25. package/dist/common/memo.d.ts +5 -0
  26. package/dist/common/memo.mjs +14 -0
  27. package/dist/common/simpleClone.cjs +2 -2
  28. package/dist/common/simpleClone.mjs +2 -2
  29. package/dist/common/types/anyConstructor.d.ts +1 -0
  30. package/dist/common/types/anyPredicate.d.ts +1 -0
  31. package/dist/common/types/index.d.ts +2 -0
  32. package/dist/common/types/objectEntry.d.ts +1 -1
  33. package/dist/common/types/predicate.d.ts +1 -0
  34. package/dist/common/types/unionContain.d.ts +1 -1
  35. package/dist/dataParser/base.cjs +116 -0
  36. package/dist/dataParser/base.d.ts +44 -0
  37. package/dist/dataParser/base.mjs +109 -0
  38. package/dist/dataParser/baseExtended.cjs +55 -0
  39. package/dist/dataParser/baseExtended.d.ts +45 -0
  40. package/dist/dataParser/baseExtended.mjs +52 -0
  41. package/dist/dataParser/error.cjs +54 -0
  42. package/dist/dataParser/error.d.ts +31 -0
  43. package/dist/dataParser/error.mjs +41 -0
  44. package/dist/dataParser/extended/array.cjs +20 -0
  45. package/dist/dataParser/extended/array.d.ts +21 -0
  46. package/dist/dataParser/extended/array.mjs +18 -0
  47. package/dist/dataParser/extended/bigint.cjs +20 -0
  48. package/dist/dataParser/extended/bigint.d.ts +19 -0
  49. package/dist/dataParser/extended/bigint.mjs +18 -0
  50. package/dist/dataParser/extended/boolean.cjs +11 -0
  51. package/dist/dataParser/extended/boolean.d.ts +9 -0
  52. package/dist/dataParser/extended/boolean.mjs +9 -0
  53. package/dist/dataParser/extended/coerce/bigint.cjs +13 -0
  54. package/dist/dataParser/extended/coerce/bigint.d.ts +7 -0
  55. package/dist/dataParser/extended/coerce/bigint.mjs +11 -0
  56. package/dist/dataParser/extended/coerce/boolean.cjs +13 -0
  57. package/dist/dataParser/extended/coerce/boolean.d.ts +7 -0
  58. package/dist/dataParser/extended/coerce/boolean.mjs +11 -0
  59. package/dist/dataParser/extended/coerce/empty.cjs +13 -0
  60. package/dist/dataParser/extended/coerce/empty.d.ts +7 -0
  61. package/dist/dataParser/extended/coerce/empty.mjs +11 -0
  62. package/dist/dataParser/extended/coerce/index.cjs +17 -0
  63. package/dist/dataParser/extended/coerce/index.d.ts +6 -0
  64. package/dist/dataParser/extended/coerce/index.mjs +6 -0
  65. package/dist/dataParser/extended/coerce/nil.cjs +13 -0
  66. package/dist/dataParser/extended/coerce/nil.d.ts +7 -0
  67. package/dist/dataParser/extended/coerce/nil.mjs +11 -0
  68. package/dist/dataParser/extended/coerce/number.cjs +13 -0
  69. package/dist/dataParser/extended/coerce/number.d.ts +7 -0
  70. package/dist/dataParser/extended/coerce/number.mjs +11 -0
  71. package/dist/dataParser/extended/coerce/string.cjs +13 -0
  72. package/dist/dataParser/extended/coerce/string.d.ts +7 -0
  73. package/dist/dataParser/extended/coerce/string.mjs +11 -0
  74. package/dist/dataParser/extended/empty.cjs +11 -0
  75. package/dist/dataParser/extended/empty.d.ts +9 -0
  76. package/dist/dataParser/extended/empty.mjs +9 -0
  77. package/dist/dataParser/extended/index.cjs +48 -0
  78. package/dist/dataParser/extended/index.d.ts +22 -0
  79. package/dist/dataParser/extended/index.mjs +21 -0
  80. package/dist/dataParser/extended/lazy.cjs +11 -0
  81. package/dist/dataParser/extended/lazy.d.ts +11 -0
  82. package/dist/dataParser/extended/lazy.mjs +9 -0
  83. package/dist/dataParser/extended/literal.cjs +11 -0
  84. package/dist/dataParser/extended/literal.d.ts +11 -0
  85. package/dist/dataParser/extended/literal.mjs +9 -0
  86. package/dist/dataParser/extended/nil.cjs +11 -0
  87. package/dist/dataParser/extended/nil.d.ts +9 -0
  88. package/dist/dataParser/extended/nil.mjs +9 -0
  89. package/dist/dataParser/extended/nullable.cjs +11 -0
  90. package/dist/dataParser/extended/nullable.d.ts +11 -0
  91. package/dist/dataParser/extended/nullable.mjs +9 -0
  92. package/dist/dataParser/extended/number.cjs +27 -0
  93. package/dist/dataParser/extended/number.d.ts +24 -0
  94. package/dist/dataParser/extended/number.mjs +24 -0
  95. package/dist/dataParser/extended/object.cjs +11 -0
  96. package/dist/dataParser/extended/object.d.ts +11 -0
  97. package/dist/dataParser/extended/object.mjs +9 -0
  98. package/dist/dataParser/extended/optional.cjs +11 -0
  99. package/dist/dataParser/extended/optional.d.ts +11 -0
  100. package/dist/dataParser/extended/optional.mjs +9 -0
  101. package/dist/dataParser/extended/pipe.cjs +11 -0
  102. package/dist/dataParser/extended/pipe.d.ts +12 -0
  103. package/dist/dataParser/extended/pipe.mjs +9 -0
  104. package/dist/dataParser/extended/record.cjs +11 -0
  105. package/dist/dataParser/extended/record.d.ts +12 -0
  106. package/dist/dataParser/extended/record.mjs +9 -0
  107. package/dist/dataParser/extended/string.cjs +38 -0
  108. package/dist/dataParser/extended/string.d.ts +32 -0
  109. package/dist/dataParser/extended/string.mjs +34 -0
  110. package/dist/dataParser/extended/templateLiteral.cjs +10 -0
  111. package/dist/dataParser/extended/templateLiteral.d.ts +11 -0
  112. package/dist/dataParser/extended/templateLiteral.mjs +8 -0
  113. package/dist/dataParser/extended/transform.cjs +11 -0
  114. package/dist/dataParser/extended/transform.d.ts +14 -0
  115. package/dist/dataParser/extended/transform.mjs +9 -0
  116. package/dist/dataParser/extended/tuple.cjs +11 -0
  117. package/dist/dataParser/extended/tuple.d.ts +11 -0
  118. package/dist/dataParser/extended/tuple.mjs +9 -0
  119. package/dist/dataParser/extended/union.cjs +11 -0
  120. package/dist/dataParser/extended/union.d.ts +11 -0
  121. package/dist/dataParser/extended/union.mjs +9 -0
  122. package/dist/dataParser/extended/unknown.cjs +11 -0
  123. package/dist/dataParser/extended/unknown.d.ts +9 -0
  124. package/dist/dataParser/extended/unknown.mjs +9 -0
  125. package/dist/dataParser/index.cjs +128 -0
  126. package/dist/dataParser/index.d.ts +6 -0
  127. package/dist/dataParser/index.mjs +38 -0
  128. package/dist/dataParser/parsers/array/checkers/index.d.ts +2 -0
  129. package/dist/dataParser/parsers/array/checkers/max.cjs +23 -0
  130. package/dist/dataParser/parsers/array/checkers/max.d.ts +11 -0
  131. package/dist/dataParser/parsers/array/checkers/max.mjs +20 -0
  132. package/dist/dataParser/parsers/array/checkers/min.cjs +23 -0
  133. package/dist/dataParser/parsers/array/checkers/min.d.ts +11 -0
  134. package/dist/dataParser/parsers/array/checkers/min.mjs +20 -0
  135. package/dist/dataParser/parsers/array/index.cjs +64 -0
  136. package/dist/dataParser/parsers/array/index.d.ts +20 -0
  137. package/dist/dataParser/parsers/array/index.mjs +61 -0
  138. package/dist/dataParser/parsers/bigint/checkers/index.d.ts +2 -0
  139. package/dist/dataParser/parsers/bigint/checkers/max.cjs +23 -0
  140. package/dist/dataParser/parsers/bigint/checkers/max.d.ts +11 -0
  141. package/dist/dataParser/parsers/bigint/checkers/max.mjs +20 -0
  142. package/dist/dataParser/parsers/bigint/checkers/min.cjs +23 -0
  143. package/dist/dataParser/parsers/bigint/checkers/min.d.ts +11 -0
  144. package/dist/dataParser/parsers/bigint/checkers/min.mjs +20 -0
  145. package/dist/dataParser/parsers/bigint/index.cjs +31 -0
  146. package/dist/dataParser/parsers/bigint/index.d.ts +18 -0
  147. package/dist/dataParser/parsers/bigint/index.mjs +28 -0
  148. package/dist/dataParser/parsers/boolean.cjs +40 -0
  149. package/dist/dataParser/parsers/boolean.d.ts +12 -0
  150. package/dist/dataParser/parsers/boolean.mjs +37 -0
  151. package/dist/dataParser/parsers/coerce/bigint.cjs +13 -0
  152. package/dist/dataParser/parsers/coerce/bigint.d.ts +6 -0
  153. package/dist/dataParser/parsers/coerce/bigint.mjs +11 -0
  154. package/dist/dataParser/parsers/coerce/boolean.cjs +13 -0
  155. package/dist/dataParser/parsers/coerce/boolean.d.ts +6 -0
  156. package/dist/dataParser/parsers/coerce/boolean.mjs +11 -0
  157. package/dist/dataParser/parsers/coerce/empty.cjs +13 -0
  158. package/dist/dataParser/parsers/coerce/empty.d.ts +6 -0
  159. package/dist/dataParser/parsers/coerce/empty.mjs +11 -0
  160. package/dist/dataParser/parsers/coerce/index.cjs +17 -0
  161. package/dist/dataParser/parsers/coerce/index.d.ts +6 -0
  162. package/dist/dataParser/parsers/coerce/index.mjs +6 -0
  163. package/dist/dataParser/parsers/coerce/nil.cjs +13 -0
  164. package/dist/dataParser/parsers/coerce/nil.d.ts +6 -0
  165. package/dist/dataParser/parsers/coerce/nil.mjs +11 -0
  166. package/dist/dataParser/parsers/coerce/number.cjs +13 -0
  167. package/dist/dataParser/parsers/coerce/number.d.ts +6 -0
  168. package/dist/dataParser/parsers/coerce/number.mjs +11 -0
  169. package/dist/dataParser/parsers/coerce/string.cjs +13 -0
  170. package/dist/dataParser/parsers/coerce/string.d.ts +6 -0
  171. package/dist/dataParser/parsers/coerce/string.mjs +11 -0
  172. package/dist/dataParser/parsers/empty.cjs +27 -0
  173. package/dist/dataParser/parsers/empty.d.ts +12 -0
  174. package/dist/dataParser/parsers/empty.mjs +24 -0
  175. package/dist/dataParser/parsers/index.d.ts +20 -0
  176. package/dist/dataParser/parsers/lazy.cjs +21 -0
  177. package/dist/dataParser/parsers/lazy.d.ts +14 -0
  178. package/dist/dataParser/parsers/lazy.mjs +18 -0
  179. package/dist/dataParser/parsers/literal.cjs +25 -0
  180. package/dist/dataParser/parsers/literal.d.ts +15 -0
  181. package/dist/dataParser/parsers/literal.mjs +22 -0
  182. package/dist/dataParser/parsers/nil.cjs +27 -0
  183. package/dist/dataParser/parsers/nil.d.ts +12 -0
  184. package/dist/dataParser/parsers/nil.mjs +24 -0
  185. package/dist/dataParser/parsers/nullable.cjs +31 -0
  186. package/dist/dataParser/parsers/nullable.d.ts +14 -0
  187. package/dist/dataParser/parsers/nullable.mjs +28 -0
  188. package/dist/dataParser/parsers/number/checkers/index.d.ts +3 -0
  189. package/dist/dataParser/parsers/number/checkers/int.cjs +27 -0
  190. package/dist/dataParser/parsers/number/checkers/int.d.ts +15 -0
  191. package/dist/dataParser/parsers/number/checkers/int.mjs +23 -0
  192. package/dist/dataParser/parsers/number/checkers/max.cjs +18 -0
  193. package/dist/dataParser/parsers/number/checkers/max.d.ts +11 -0
  194. package/dist/dataParser/parsers/number/checkers/max.mjs +15 -0
  195. package/dist/dataParser/parsers/number/checkers/min.cjs +18 -0
  196. package/dist/dataParser/parsers/number/checkers/min.d.ts +11 -0
  197. package/dist/dataParser/parsers/number/checkers/min.mjs +15 -0
  198. package/dist/dataParser/parsers/number/index.cjs +31 -0
  199. package/dist/dataParser/parsers/number/index.d.ts +18 -0
  200. package/dist/dataParser/parsers/number/index.mjs +28 -0
  201. package/dist/dataParser/parsers/object.cjs +74 -0
  202. package/dist/dataParser/parsers/object.d.ts +26 -0
  203. package/dist/dataParser/parsers/object.mjs +71 -0
  204. package/dist/dataParser/parsers/optional.cjs +31 -0
  205. package/dist/dataParser/parsers/optional.d.ts +14 -0
  206. package/dist/dataParser/parsers/optional.mjs +28 -0
  207. package/dist/dataParser/parsers/pipe.cjs +34 -0
  208. package/dist/dataParser/parsers/pipe.d.ts +16 -0
  209. package/dist/dataParser/parsers/pipe.mjs +31 -0
  210. package/dist/dataParser/parsers/record.cjs +83 -0
  211. package/dist/dataParser/parsers/record.d.ts +30 -0
  212. package/dist/dataParser/parsers/record.mjs +80 -0
  213. package/dist/dataParser/parsers/string/checkers/email.cjs +31 -0
  214. package/dist/dataParser/parsers/string/checkers/email.d.ts +17 -0
  215. package/dist/dataParser/parsers/string/checkers/email.mjs +27 -0
  216. package/dist/dataParser/parsers/string/checkers/index.d.ts +5 -0
  217. package/dist/dataParser/parsers/string/checkers/max.cjs +18 -0
  218. package/dist/dataParser/parsers/string/checkers/max.d.ts +11 -0
  219. package/dist/dataParser/parsers/string/checkers/max.mjs +15 -0
  220. package/dist/dataParser/parsers/string/checkers/min.cjs +18 -0
  221. package/dist/dataParser/parsers/string/checkers/min.d.ts +11 -0
  222. package/dist/dataParser/parsers/string/checkers/min.mjs +15 -0
  223. package/dist/dataParser/parsers/string/checkers/regex.cjs +20 -0
  224. package/dist/dataParser/parsers/string/checkers/regex.d.ts +11 -0
  225. package/dist/dataParser/parsers/string/checkers/regex.mjs +17 -0
  226. package/dist/dataParser/parsers/string/checkers/url.cjs +48 -0
  227. package/dist/dataParser/parsers/string/checkers/url.d.ts +18 -0
  228. package/dist/dataParser/parsers/string/checkers/url.mjs +44 -0
  229. package/dist/dataParser/parsers/string/index.cjs +31 -0
  230. package/dist/dataParser/parsers/string/index.d.ts +18 -0
  231. package/dist/dataParser/parsers/string/index.mjs +28 -0
  232. package/dist/dataParser/parsers/templateLiteral.cjs +45 -0
  233. package/dist/dataParser/parsers/templateLiteral.d.ts +49 -0
  234. package/dist/dataParser/parsers/templateLiteral.mjs +42 -0
  235. package/dist/dataParser/parsers/transform.cjs +43 -0
  236. package/dist/dataParser/parsers/transform.d.ts +17 -0
  237. package/dist/dataParser/parsers/transform.mjs +40 -0
  238. package/dist/dataParser/parsers/tuple.cjs +83 -0
  239. package/dist/dataParser/parsers/tuple.d.ts +33 -0
  240. package/dist/dataParser/parsers/tuple.mjs +80 -0
  241. package/dist/dataParser/parsers/union.cjs +38 -0
  242. package/dist/dataParser/parsers/union.d.ts +15 -0
  243. package/dist/dataParser/parsers/union.mjs +35 -0
  244. package/dist/dataParser/parsers/unknown.cjs +17 -0
  245. package/dist/dataParser/parsers/unknown.d.ts +11 -0
  246. package/dist/dataParser/parsers/unknown.mjs +14 -0
  247. package/dist/dataParser/types/addCheckersToDefinition.d.ts +5 -0
  248. package/dist/dataParser/types/checkers.d.ts +3 -0
  249. package/dist/dataParser/types/dataParsers.d.ts +5 -0
  250. package/dist/dataParser/types/index.d.ts +4 -0
  251. package/dist/dataParser/types/mergeDefinition.d.ts +5 -0
  252. package/dist/either/bool/falsy.cjs +1 -1
  253. package/dist/either/bool/falsy.mjs +1 -1
  254. package/dist/either/bool/truthy.cjs +1 -1
  255. package/dist/either/bool/truthy.mjs +1 -1
  256. package/dist/either/future/error.cjs +1 -1
  257. package/dist/either/future/error.mjs +1 -1
  258. package/dist/either/future/success.cjs +1 -1
  259. package/dist/either/future/success.mjs +1 -1
  260. package/dist/either/left/create.cjs +1 -1
  261. package/dist/either/left/create.mjs +1 -1
  262. package/dist/either/left/error.cjs +1 -1
  263. package/dist/either/left/error.mjs +1 -1
  264. package/dist/either/left/fail.cjs +1 -1
  265. package/dist/either/left/fail.mjs +1 -1
  266. package/dist/either/nullable/empty.cjs +1 -1
  267. package/dist/either/nullable/empty.mjs +1 -1
  268. package/dist/either/nullable/filled.cjs +1 -1
  269. package/dist/either/nullable/filled.mjs +1 -1
  270. package/dist/either/nullish/empty.cjs +1 -1
  271. package/dist/either/nullish/empty.mjs +1 -1
  272. package/dist/either/nullish/filled.cjs +1 -1
  273. package/dist/either/nullish/filled.mjs +1 -1
  274. package/dist/either/optional/empty.cjs +1 -1
  275. package/dist/either/optional/empty.mjs +1 -1
  276. package/dist/either/optional/filled.cjs +1 -1
  277. package/dist/either/optional/filled.mjs +1 -1
  278. package/dist/either/right/asyncPipe.d.ts +2 -2
  279. package/dist/either/right/create.cjs +1 -1
  280. package/dist/either/right/create.mjs +1 -1
  281. package/dist/either/right/ok.cjs +1 -1
  282. package/dist/either/right/ok.mjs +1 -1
  283. package/dist/either/right/success.cjs +1 -1
  284. package/dist/either/right/success.mjs +1 -1
  285. package/dist/generator/reduce.cjs +1 -1
  286. package/dist/generator/reduce.mjs +1 -1
  287. package/dist/index.cjs +14 -0
  288. package/dist/index.d.ts +6 -0
  289. package/dist/index.mjs +12 -1
  290. package/dist/object/fromEntries.d.ts +1 -1
  291. package/dist/object/types/getPropsWithValueExtends.d.ts +1 -1
  292. package/dist/pattern/result.cjs +1 -1
  293. package/dist/pattern/result.mjs +1 -1
  294. package/package.json +57 -1
@@ -8,7 +8,7 @@ import { eitherOptionalKind } from './base.mjs';
8
8
 
9
9
  const eitherOptionalFilledKind = createKind("either-optional-filled");
10
10
  function optionalFilled(value) {
11
- return eitherOptionalKind.addTo(eitherOptionalFilledKind.addTo(right("optional", value)));
11
+ return eitherOptionalKind.setTo(eitherOptionalFilledKind.setTo(right("optional", value)));
12
12
  }
13
13
  function isOptionalFilled(input) {
14
14
  return isRight(input)
@@ -5,8 +5,8 @@ import { type Future } from "../future";
5
5
  import { type EitherSuccess } from "./success";
6
6
  import { type AnyValue, type Unwrap } from "../../common";
7
7
  type Either = EitherRight | EitherLeft;
8
- export type EitherRightAsyncPipeFunction<GenericInput extends AnyValue = AnyValue, GenericOutput extends MaybeFutureEither<AnyValue> = MaybeFutureEither<AnyValue>> = (input: Awaited<GenericInput> extends infer InferredInput extends Either ? Unwrap<Exclude<Awaited<InferredInput>, EitherLeft>> : Exclude<Awaited<GenericInput>, Either>) => GenericOutput;
9
- export type EitherRightAsyncPipeResult<GenericPipeOutputs extends AnyValue, GenericLastPipeOutput extends AnyValue> = Extract<Awaited<GenericPipeOutputs>, EitherLeft> | Exclude<Awaited<GenericLastPipeOutput> extends Either ? Awaited<GenericLastPipeOutput> : EitherSuccess<Awaited<GenericLastPipeOutput>>, EitherLeft>;
8
+ export type EitherRightAsyncPipeFunction<GenericInput extends AnyValue = AnyValue, GenericOutput extends MaybeFutureEither<AnyValue> = MaybeFutureEither<AnyValue>> = (input: Awaited<GenericInput> extends infer InferredInput ? InferredInput extends Either ? Unwrap<Exclude<InferredInput, EitherLeft>> : InferredInput : never) => GenericOutput;
9
+ export type EitherRightAsyncPipeResult<GenericPipeOutputs extends AnyValue, GenericLastPipeOutput extends AnyValue> = Extract<Awaited<GenericPipeOutputs>, EitherLeft> | (Awaited<GenericLastPipeOutput> extends infer InferredLastResult ? Exclude<InferredLastResult extends Either ? InferredLastResult : EitherSuccess<InferredLastResult>, EitherLeft> : never);
10
10
  export declare function rightAsyncPipe<GenericInput extends MaybeFutureEither<AnyValue>, GenericOutputPipe1 extends MaybeFutureEither<AnyValue>>(input: GenericInput, pipe1: EitherRightAsyncPipeFunction<GenericInput, GenericOutputPipe1>): Future<Extract<EitherRightAsyncPipeResult<GenericInput | GenericOutputPipe1, GenericOutputPipe1>, any>>;
11
11
  export declare function rightAsyncPipe<GenericInput extends MaybeFutureEither<AnyValue>, GenericOutputPipe1 extends MaybeFutureEither<AnyValue>, GenericOutputPipe2 extends MaybeFutureEither<AnyValue>>(input: GenericInput, pipe1: EitherRightAsyncPipeFunction<GenericInput, GenericOutputPipe1>, pipe2: EitherRightAsyncPipeFunction<GenericOutputPipe1, GenericOutputPipe2>): Future<Extract<EitherRightAsyncPipeResult<GenericInput | GenericOutputPipe1 | GenericOutputPipe2, GenericOutputPipe2>, any>>;
12
12
  export declare function rightAsyncPipe<GenericInput extends MaybeFutureEither<AnyValue>, GenericOutputPipe1 extends MaybeFutureEither<AnyValue>, GenericOutputPipe2 extends MaybeFutureEither<AnyValue>, GenericOutputPipe3 extends MaybeFutureEither<AnyValue>>(input: GenericInput, pipe1: EitherRightAsyncPipeFunction<GenericInput, GenericOutputPipe1>, pipe2: EitherRightAsyncPipeFunction<GenericOutputPipe1, GenericOutputPipe2>, pipe3: EitherRightAsyncPipeFunction<GenericOutputPipe2, GenericOutputPipe3>): Future<Extract<EitherRightAsyncPipeResult<GenericInput | GenericOutputPipe1 | GenericOutputPipe2 | GenericOutputPipe3, GenericOutputPipe3>, any>>;
@@ -6,7 +6,7 @@ var base = require('../base.cjs');
6
6
 
7
7
  const eitherRightKind = kind.createKind("either-right");
8
8
  function right(information, value = undefined) {
9
- return eitherRightKind.addTo(base.eitherInformationKind.addTo(wrapValue.wrapValue(value), information));
9
+ return eitherRightKind.setTo(base.eitherInformationKind.setTo(wrapValue.wrapValue(value), information));
10
10
  }
11
11
 
12
12
  exports.eitherRightKind = eitherRightKind;
@@ -4,7 +4,7 @@ import { eitherInformationKind } from '../base.mjs';
4
4
 
5
5
  const eitherRightKind = createKind("either-right");
6
6
  function right(information, value = undefined) {
7
- return eitherRightKind.addTo(eitherInformationKind.addTo(wrapValue(value), information));
7
+ return eitherRightKind.setTo(eitherInformationKind.setTo(wrapValue(value), information));
8
8
  }
9
9
 
10
10
  export { eitherRightKind, right };
@@ -5,7 +5,7 @@ var create = require('./create.cjs');
5
5
 
6
6
  const eitherOkKind = kind.createKind("either-ok");
7
7
  function ok() {
8
- return eitherOkKind.addTo(create.right("ok", undefined));
8
+ return eitherOkKind.setTo(create.right("ok", undefined));
9
9
  }
10
10
 
11
11
  exports.eitherOkKind = eitherOkKind;
@@ -3,7 +3,7 @@ import { right } from './create.mjs';
3
3
 
4
4
  const eitherOkKind = createKind("either-ok");
5
5
  function ok() {
6
- return eitherOkKind.addTo(right("ok", undefined));
6
+ return eitherOkKind.setTo(right("ok", undefined));
7
7
  }
8
8
 
9
9
  export { eitherOkKind, ok };
@@ -5,7 +5,7 @@ var kind = require('../../common/kind.cjs');
5
5
 
6
6
  const eitherSuccessKind = kind.createKind("either-success");
7
7
  function success(value) {
8
- return eitherSuccessKind.addTo(create.right("success", value));
8
+ return eitherSuccessKind.setTo(create.right("success", value));
9
9
  }
10
10
 
11
11
  exports.eitherSuccessKind = eitherSuccessKind;
@@ -3,7 +3,7 @@ import { createKind } from '../../common/kind.mjs';
3
3
 
4
4
  const eitherSuccessKind = createKind("either-success");
5
5
  function success(value) {
6
- return eitherSuccessKind.addTo(right("success", value));
6
+ return eitherSuccessKind.setTo(right("success", value));
7
7
  }
8
8
 
9
9
  export { eitherSuccessKind, success };
@@ -7,7 +7,7 @@ var override = require('../object/override.cjs');
7
7
 
8
8
  const generatorReduceFromKind = kind.createKind("generator-reduce-from");
9
9
  function reduceFrom(value) {
10
- return generatorReduceFromKind.addTo(wrapValue.wrapValue(value));
10
+ return generatorReduceFromKind.setTo(wrapValue.wrapValue(value));
11
11
  }
12
12
  function reduce(...args) {
13
13
  if (args.length === 2) {
@@ -5,7 +5,7 @@ import { override } from '../object/override.mjs';
5
5
 
6
6
  const generatorReduceFromKind = createKind("generator-reduce-from");
7
7
  function reduceFrom(value) {
8
- return generatorReduceFromKind.addTo(wrapValue(value));
8
+ return generatorReduceFromKind.setTo(wrapValue(value));
9
9
  }
10
10
  function reduce(...args) {
11
11
  if (args.length === 2) {
package/dist/index.cjs CHANGED
@@ -35,6 +35,8 @@ var and = require('./common/and.cjs');
35
35
  var or = require('./common/or.cjs');
36
36
  var whenElse = require('./common/whenElse.cjs');
37
37
  var justReturn = require('./common/justReturn.cjs');
38
+ var memo = require('./common/memo.cjs');
39
+ var instanceOf = require('./common/instanceOf.cjs');
38
40
  var index = require('./array/index.cjs');
39
41
  var index$1 = require('./number/index.cjs');
40
42
  var index$2 = require('./either/index.cjs');
@@ -42,6 +44,9 @@ var index$3 = require('./object/index.cjs');
42
44
  var index$4 = require('./string/index.cjs');
43
45
  var index$5 = require('./generator/index.cjs');
44
46
  var index$6 = require('./pattern/index.cjs');
47
+ var index$7 = require('./dataParser/index.cjs');
48
+ var index$8 = require('./dataParser/parsers/coerce/index.cjs');
49
+ var index$9 = require('./dataParser/extended/index.cjs');
45
50
 
46
51
 
47
52
 
@@ -54,6 +59,7 @@ exports.createExternalPromise = externalPromise.createExternalPromise;
54
59
  exports.createInterpolation = interpolation.createInterpolation;
55
60
  exports.createKind = kind.createKind;
56
61
  exports.keyKindPrefix = kind.keyKindPrefix;
62
+ exports.kindHeritage = kind.kindHeritage;
57
63
  exports.pipe = pipe.pipe;
58
64
  exports.promiseObject = promiseObject.promiseObject;
59
65
  exports.simpleClone = simpleClone.simpleClone;
@@ -86,6 +92,8 @@ exports.and = and.and;
86
92
  exports.or = or.or;
87
93
  exports.whenElse = whenElse.whenElse;
88
94
  exports.justReturn = justReturn.justReturn;
95
+ exports.memo = memo.memo;
96
+ exports.instanceOf = instanceOf.instanceOf;
89
97
  exports.A = index;
90
98
  exports.DArray = index;
91
99
  exports.DNumber = index$1;
@@ -100,3 +108,9 @@ exports.DGenerator = index$5;
100
108
  exports.G = index$5;
101
109
  exports.DPattern = index$6;
102
110
  exports.P = index$6;
111
+ exports.DDataParser = index$7;
112
+ exports.DP = index$7;
113
+ exports.DDataParserCoerce = index$8;
114
+ exports.DPC = index$8;
115
+ exports.DDataParserExtended = index$9;
116
+ exports.DPE = index$9;
package/dist/index.d.ts CHANGED
@@ -13,3 +13,9 @@ export * as G from "./generator";
13
13
  export * as DGenerator from "./generator";
14
14
  export * as P from "./pattern";
15
15
  export * as DPattern from "./pattern";
16
+ export * as DP from "./dataParser";
17
+ export * as DDataParser from "./dataParser";
18
+ export * as DPC from "./dataParser/parsers/coerce";
19
+ export * as DDataParserCoerce from "./dataParser/parsers/coerce";
20
+ export * as DPE from "./dataParser/extended";
21
+ export * as DDataParserExtended from "./dataParser/extended";
package/dist/index.mjs CHANGED
@@ -5,7 +5,7 @@ export { createEnum } from './common/enum.mjs';
5
5
  export { escapeRegExp } from './common/escapeRegExp.mjs';
6
6
  export { createExternalPromise } from './common/externalPromise.mjs';
7
7
  export { createInterpolation } from './common/interpolation.mjs';
8
- export { createKind, keyKindPrefix } from './common/kind.mjs';
8
+ export { createKind, keyKindPrefix, kindHeritage } from './common/kind.mjs';
9
9
  export { pipe } from './common/pipe.mjs';
10
10
  export { promiseObject } from './common/promiseObject.mjs';
11
11
  export { simpleClone } from './common/simpleClone.mjs';
@@ -33,6 +33,8 @@ export { and } from './common/and.mjs';
33
33
  export { or } from './common/or.mjs';
34
34
  export { whenElse } from './common/whenElse.mjs';
35
35
  export { justReturn } from './common/justReturn.mjs';
36
+ export { memo } from './common/memo.mjs';
37
+ export { instanceOf } from './common/instanceOf.mjs';
36
38
  import * as index from './array/index.mjs';
37
39
  export { index as A };
38
40
  export { index as DArray };
@@ -54,3 +56,12 @@ export { index$5 as G };
54
56
  import * as index$6 from './pattern/index.mjs';
55
57
  export { index$6 as DPattern };
56
58
  export { index$6 as P };
59
+ import * as index$7 from './dataParser/index.mjs';
60
+ export { index$7 as DDataParser };
61
+ export { index$7 as DP };
62
+ import * as index$8 from './dataParser/parsers/coerce/index.mjs';
63
+ export { index$8 as DDataParserCoerce };
64
+ export { index$8 as DPC };
65
+ import * as index$9 from './dataParser/extended/index.mjs';
66
+ export { index$9 as DDataParserExtended };
67
+ export { index$9 as DPE };
@@ -2,5 +2,5 @@ import { type ObjectEntry, type ObjectKey, type AnyValue, type SimplifyTopLevel
2
2
  type ComputeEntries<GenericEntry extends ObjectEntry> = SimplifyTopLevel<{
3
3
  [Entry in GenericEntry as Entry[0]]?: Entry[1];
4
4
  }>;
5
- export declare function fromEntries<GenericKey extends ObjectKey, GenericValue extends AnyValue, GenericEntry extends [GenericKey, GenericValue]>(entries: GenericEntry[]): ComputeEntries<GenericEntry>;
5
+ export declare function fromEntries<GenericKey extends ObjectKey, GenericValue extends AnyValue, GenericEntry extends readonly [GenericKey, GenericValue]>(entries: readonly GenericEntry[]): ComputeEntries<GenericEntry>;
6
6
  export {};
@@ -1,3 +1,3 @@
1
1
  export type GetPropsWithValueExtends<GenericObject extends object, GenericValue extends unknown> = {
2
- [Prop in keyof GenericObject]: GenericObject[Prop] extends GenericValue ? Prop : never;
2
+ [Prop in keyof GenericObject]: GenericObject[Prop] extends infer InferredValue ? InferredValue extends GenericValue ? Prop : never : never;
3
3
  }[keyof GenericObject];
@@ -5,7 +5,7 @@ var wrapValue = require('../common/wrapValue.cjs');
5
5
 
6
6
  const patternResultKind = kind.createKind("pattern-result");
7
7
  function result(value) {
8
- return patternResultKind.addTo(wrapValue.wrapValue(value));
8
+ return patternResultKind.setTo(wrapValue.wrapValue(value));
9
9
  }
10
10
  const isResult = patternResultKind.has;
11
11
 
@@ -3,7 +3,7 @@ import { wrapValue } from '../common/wrapValue.mjs';
3
3
 
4
4
  const patternResultKind = createKind("pattern-result");
5
5
  function result(value) {
6
- return patternResultKind.addTo(wrapValue(value));
6
+ return patternResultKind.setTo(wrapValue(value));
7
7
  }
8
8
  const isResult = patternResultKind.has;
9
9
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duplojs/utils",
3
- "version": "1.0.7",
3
+ "version": "1.1.7",
4
4
  "author": "mathcovax",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -11,6 +11,7 @@
11
11
  "scripts": {
12
12
  "build": "rollup --config && tsc-alias -p tsconfig.build.json",
13
13
  "test:tu": "vitest --coverage",
14
+ "test:tu:bench": "vitest bench",
14
15
  "test:tu:watch": "vitest --coverage --watch",
15
16
  "test:tu:update": "vitest --coverage --update",
16
17
  "test:types": "tsc -p tsconfig.test.json",
@@ -24,6 +25,61 @@
24
25
  "import": "./dist/index.mjs",
25
26
  "require": "./dist/index.cjs",
26
27
  "types": "./dist/index.d.ts"
28
+ },
29
+ "./array": {
30
+ "import": "./dist/array/index.mjs",
31
+ "require": "./dist/array/index.cjs",
32
+ "types": "./dist/array/index.d.ts"
33
+ },
34
+ "./common": {
35
+ "import": "./dist/common/index.mjs",
36
+ "require": "./dist/common/index.cjs",
37
+ "types": "./dist/common/index.d.ts"
38
+ },
39
+ "./dataParser": {
40
+ "import": "./dist/dataParser/index.mjs",
41
+ "require": "./dist/dataParser/index.cjs",
42
+ "types": "./dist/dataParser/index.d.ts"
43
+ },
44
+ "./dataParserCoerce": {
45
+ "import": "./dist/dataParser/parsers/coerce/index.mjs",
46
+ "require": "./dist/dataParser/parsers/coerce/index.cjs",
47
+ "types": "./dist/dataParser/parsers/coerce/index.d.ts"
48
+ },
49
+ "./dataParserExtended": {
50
+ "import": "./dist/dataParser/extended/index.mjs",
51
+ "require": "./dist/dataParser/extended/index.cjs",
52
+ "types": "./dist/dataParser/extended/index.d.ts"
53
+ },
54
+ "./either": {
55
+ "import": "./dist/either/index.mjs",
56
+ "require": "./dist/either/index.cjs",
57
+ "types": "./dist/either/index.d.ts"
58
+ },
59
+ "./generator": {
60
+ "import": "./dist/generator/index.mjs",
61
+ "require": "./dist/generator/index.cjs",
62
+ "types": "./dist/generator/index.d.ts"
63
+ },
64
+ "./number": {
65
+ "import": "./dist/number/index.mjs",
66
+ "require": "./dist/number/index.cjs",
67
+ "types": "./dist/number/index.d.ts"
68
+ },
69
+ "./object": {
70
+ "import": "./dist/object/index.mjs",
71
+ "require": "./dist/object/index.cjs",
72
+ "types": "./dist/object/index.d.ts"
73
+ },
74
+ "./pattern": {
75
+ "import": "./dist/pattern/index.mjs",
76
+ "require": "./dist/pattern/index.cjs",
77
+ "types": "./dist/pattern/index.d.ts"
78
+ },
79
+ "./string": {
80
+ "import": "./dist/string/index.mjs",
81
+ "require": "./dist/string/index.cjs",
82
+ "types": "./dist/string/index.d.ts"
27
83
  }
28
84
  },
29
85
  "files": [