fp-pack 0.5.0 → 0.7.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 (82) hide show
  1. package/README.md +17 -15
  2. package/dist/fp-pack.umd.js +1 -1
  3. package/dist/fp-pack.umd.js.map +1 -1
  4. package/dist/implement/async/pipeAsync.d.ts +11 -0
  5. package/dist/implement/async/pipeAsync.d.ts.map +1 -1
  6. package/dist/implement/async/pipeAsync.mjs.map +1 -1
  7. package/dist/implement/async/pipeAsyncSideEffect.d.ts +11 -0
  8. package/dist/implement/async/pipeAsyncSideEffect.d.ts.map +1 -1
  9. package/dist/implement/async/pipeAsyncSideEffect.mjs.map +1 -1
  10. package/dist/implement/composition/compose.d.ts +25 -9
  11. package/dist/implement/composition/compose.d.ts.map +1 -1
  12. package/dist/implement/composition/compose.mjs.map +1 -1
  13. package/dist/implement/composition/compose.type-test.d.ts +35 -0
  14. package/dist/implement/composition/compose.type-test.d.ts.map +1 -0
  15. package/dist/implement/composition/compose.util.type-test.d.ts +31 -0
  16. package/dist/implement/composition/compose.util.type-test.d.ts.map +1 -0
  17. package/dist/implement/composition/curry.d.ts +5 -5
  18. package/dist/implement/composition/curry.d.ts.map +1 -1
  19. package/dist/implement/composition/curry.mjs.map +1 -1
  20. package/dist/implement/composition/index.d.ts +4 -0
  21. package/dist/implement/composition/index.d.ts.map +1 -1
  22. package/dist/implement/composition/pipe.d.ts +3 -0
  23. package/dist/implement/composition/pipe.d.ts.map +1 -1
  24. package/dist/implement/composition/pipe.mjs.map +1 -1
  25. package/dist/implement/composition/pipe.type-test.d.ts +117 -1
  26. package/dist/implement/composition/pipe.type-test.d.ts.map +1 -1
  27. package/dist/implement/composition/pipe.util.type-test.d.ts +75 -0
  28. package/dist/implement/composition/pipe.util.type-test.d.ts.map +1 -0
  29. package/dist/implement/composition/sideEffect.d.ts +1 -1
  30. package/dist/implement/composition/sideEffect.d.ts.map +1 -1
  31. package/dist/implement/composition/sideEffect.mjs.map +1 -1
  32. package/dist/implement/composition/tap0.d.ts +6 -0
  33. package/dist/implement/composition/tap0.d.ts.map +1 -0
  34. package/dist/implement/composition/tap0.mjs +9 -0
  35. package/dist/implement/composition/tap0.mjs.map +1 -0
  36. package/dist/implement/object/assocPath.d.ts +2 -1
  37. package/dist/implement/object/assocPath.d.ts.map +1 -1
  38. package/dist/implement/object/assocPath.mjs.map +1 -1
  39. package/dist/implement/object/dissocPath.d.ts +2 -1
  40. package/dist/implement/object/dissocPath.d.ts.map +1 -1
  41. package/dist/implement/object/dissocPath.mjs.map +1 -1
  42. package/dist/implement/object/index.d.ts +1 -0
  43. package/dist/implement/object/index.d.ts.map +1 -1
  44. package/dist/implement/object/path.d.ts +4 -2
  45. package/dist/implement/object/path.d.ts.map +1 -1
  46. package/dist/implement/object/path.mjs.map +1 -1
  47. package/dist/implement/object/pathKey.d.ts +2 -0
  48. package/dist/implement/object/pathKey.d.ts.map +1 -0
  49. package/dist/implement/object/pathOr.d.ts +5 -3
  50. package/dist/implement/object/pathOr.d.ts.map +1 -1
  51. package/dist/implement/object/pathOr.mjs.map +1 -1
  52. package/dist/index.d.ts +1 -0
  53. package/dist/index.d.ts.map +1 -1
  54. package/dist/index.mjs +230 -228
  55. package/dist/index.mjs.map +1 -1
  56. package/dist/skills/fp-pack/SKILL.md +19 -16
  57. package/dist/skills/fp-pack.md +19 -16
  58. package/dist/stream/index.d.ts +1 -0
  59. package/dist/stream/index.d.ts.map +1 -1
  60. package/package.json +1 -1
  61. package/src/implement/async/pipeAsync.ts +71 -0
  62. package/src/implement/async/pipeAsyncSideEffect.ts +74 -0
  63. package/src/implement/composition/compose.test.ts +14 -0
  64. package/src/implement/composition/compose.ts +133 -21
  65. package/src/implement/composition/compose.type-test.ts +109 -0
  66. package/src/implement/composition/compose.util.type-test.ts +128 -0
  67. package/src/implement/composition/curry.ts +5 -5
  68. package/src/implement/composition/index.ts +4 -0
  69. package/src/implement/composition/pipe.ts +4 -0
  70. package/src/implement/composition/pipe.type-test.ts +269 -1
  71. package/src/implement/composition/pipe.util.type-test.ts +256 -0
  72. package/src/implement/composition/sideEffect.ts +1 -1
  73. package/src/implement/composition/tap0.test.ts +16 -0
  74. package/src/implement/composition/tap0.ts +10 -0
  75. package/src/implement/object/assocPath.ts +2 -2
  76. package/src/implement/object/dissocPath.ts +2 -2
  77. package/src/implement/object/index.ts +1 -0
  78. package/src/implement/object/path.ts +5 -3
  79. package/src/implement/object/pathKey.ts +1 -0
  80. package/src/implement/object/pathOr.ts +6 -4
  81. package/src/index.ts +3 -0
  82. package/src/stream/index.ts +1 -0
@@ -1,10 +1,21 @@
1
1
  import { FromFn } from '../composition/from';
2
2
  /** pipeAsync - 비동기 함수 합성 */
3
3
  type AsyncOrSync<A, R> = (a: A) => R | Promise<R>;
4
+ type ZeroFn<R> = () => R | Promise<R>;
4
5
  type PipeInput<Fns extends AsyncOrSync<any, any>[]> = Fns extends [AsyncOrSync<infer A, any>, ...AsyncOrSync<any, any>[]] ? A : never;
5
6
  type PipeOutput<Fns extends AsyncOrSync<any, any>[]> = Fns extends [AsyncOrSync<any, infer R>] ? Awaited<R> : Fns extends [AsyncOrSync<any, infer R>, ...infer Rest] ? Rest extends [AsyncOrSync<Awaited<R>, any>, ...AsyncOrSync<any, any>[]] ? PipeOutput<Rest> : never : never;
6
7
  type PipeAsync<Fns extends AsyncOrSync<any, any>[]> = (input: PipeInput<Fns>) => Promise<PipeOutput<Fns>>;
7
8
  type PipeAsyncFrom<Fns extends [FromFn<any>, ...AsyncOrSync<any, any>[]]> = (input?: PipeInput<Fns>) => Promise<PipeOutput<Fns>>;
9
+ declare function pipeAsync<R>(ab: ZeroFn<R>): () => Promise<Awaited<R>>;
10
+ declare function pipeAsync<B, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, R>): () => Promise<Awaited<R>>;
11
+ declare function pipeAsync<B, C, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, R>): () => Promise<Awaited<R>>;
12
+ declare function pipeAsync<B, C, D, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, R>): () => Promise<Awaited<R>>;
13
+ declare function pipeAsync<B, C, D, E, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, E>, ef: AsyncOrSync<Awaited<E>, R>): () => Promise<Awaited<R>>;
14
+ declare function pipeAsync<B, C, D, E, F, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, E>, ef: AsyncOrSync<Awaited<E>, F>, fg: AsyncOrSync<Awaited<F>, R>): () => Promise<Awaited<R>>;
15
+ declare function pipeAsync<B, C, D, E, F, G, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, E>, ef: AsyncOrSync<Awaited<E>, F>, fg: AsyncOrSync<Awaited<F>, G>, gh: AsyncOrSync<Awaited<G>, R>): () => Promise<Awaited<R>>;
16
+ declare function pipeAsync<B, C, D, E, F, G, H, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, E>, ef: AsyncOrSync<Awaited<E>, F>, fg: AsyncOrSync<Awaited<F>, G>, gh: AsyncOrSync<Awaited<G>, H>, hi: AsyncOrSync<Awaited<H>, R>): () => Promise<Awaited<R>>;
17
+ declare function pipeAsync<B, C, D, E, F, G, H, I, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, E>, ef: AsyncOrSync<Awaited<E>, F>, fg: AsyncOrSync<Awaited<F>, G>, gh: AsyncOrSync<Awaited<G>, H>, hi: AsyncOrSync<Awaited<H>, I>, ij: AsyncOrSync<Awaited<I>, R>): () => Promise<Awaited<R>>;
18
+ declare function pipeAsync<B, C, D, E, F, G, H, I, J, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, E>, ef: AsyncOrSync<Awaited<E>, F>, fg: AsyncOrSync<Awaited<F>, G>, gh: AsyncOrSync<Awaited<G>, H>, hi: AsyncOrSync<Awaited<H>, I>, ij: AsyncOrSync<Awaited<I>, J>, jk: AsyncOrSync<Awaited<J>, R>): () => Promise<Awaited<R>>;
8
19
  declare function pipeAsync<Fns extends [FromFn<any>, ...AsyncOrSync<any, any>[]]>(...funcs: Fns): PipeAsyncFrom<Fns>;
9
20
  declare function pipeAsync<A, R>(ab: AsyncOrSync<A, R>): (a: A) => Promise<Awaited<R>>;
10
21
  declare function pipeAsync<A, B, R>(ab: AsyncOrSync<A, B>, bc: AsyncOrSync<Awaited<B>, R>): (a: A) => Promise<Awaited<R>>;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeAsync.d.ts","sourceRoot":"","sources":["../../../src/implement/async/pipeAsync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeAsync.d.ts","sourceRoot":"","sources":["../../../src/implement/async/pipeAsync.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeAsync.mjs","sources":["../../../src/implement/async/pipeAsync.ts"],"sourcesContent":["import type { FromFn } from '../composition/from';\n\n/** pipeAsync - 비동기 함수 합성 */\ntype AsyncOrSync<A, R> = (a: A) => R | Promise<R>;\ntype PipeInput<Fns extends AsyncOrSync<any, any>[]> = Fns extends [AsyncOrSync<infer A, any>, ...AsyncOrSync<any, any>[]]\n ? A\n : never;\ntype PipeOutput<Fns extends AsyncOrSync<any, any>[]> = Fns extends [AsyncOrSync<any, infer R>]\n ? Awaited<R>\n : Fns extends [AsyncOrSync<any, infer R>, ...infer Rest]\n ? Rest extends [AsyncOrSync<Awaited<R>, any>, ...AsyncOrSync<any, any>[]]\n ? PipeOutput<Rest>\n : never\n : never;\ntype PipeAsync<Fns extends AsyncOrSync<any, any>[]> = (input: PipeInput<Fns>) => Promise<PipeOutput<Fns>>;\ntype PipeAsyncFrom<Fns extends [FromFn<any>, ...AsyncOrSync<any, any>[]]> = (\n input?: PipeInput<Fns>\n) => Promise<PipeOutput<Fns>>;\n\nfunction pipeAsync<Fns extends [FromFn<any>, ...AsyncOrSync<any, any>[]]>(...funcs: Fns): PipeAsyncFrom<Fns>;\nfunction pipeAsync<A, R>(ab: AsyncOrSync<A, R>): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, R>(ab: AsyncOrSync<A, B>, bc: AsyncOrSync<Awaited<B>, R>): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, E, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, E, F, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, E, F, G, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, E, F, G, H, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, E, F, G, H, I, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, I>,\n ij: AsyncOrSync<Awaited<I>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, E, F, G, H, I, J, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, I>,\n ij: AsyncOrSync<Awaited<I>, J>,\n jk: AsyncOrSync<Awaited<J>, R>\n): (a: A) => Promise<Awaited<R>>;\n\nfunction pipeAsync<Fns extends [AsyncOrSync<any, any>, ...AsyncOrSync<any, any>[]]>(...funcs: Fns): PipeAsync<Fns>;\nfunction pipeAsync(...funcs: Array<AsyncOrSync<any, any>>): (value: any) => Promise<any>;\nfunction pipeAsync(...funcs: Array<(arg: any) => any>) {\n return async (value: any) => {\n let acc = value;\n for (const fn of funcs) {\n acc = await fn(acc);\n }\n return acc;\n };\n}\n\nexport default pipeAsync;\n"],"names":["pipeAsync","funcs","value","acc","fn"],"mappings":"AA6FA,SAASA,KAAaC,GAAiC;AACrD,SAAO,OAAOC,MAAe;AAC3B,QAAIC,IAAMD;AACV,eAAWE,KAAMH;AACf,MAAAE,IAAM,MAAMC,EAAGD,CAAG;AAEpB,WAAOA;AAAA,EACT;AACF;"}
1
+ {"version":3,"file":"pipeAsync.mjs","sources":["../../../src/implement/async/pipeAsync.ts"],"sourcesContent":["import type { FromFn } from '../composition/from';\n\n/** pipeAsync - 비동기 함수 합성 */\ntype AsyncOrSync<A, R> = (a: A) => R | Promise<R>;\ntype ZeroFn<R> = () => R | Promise<R>;\ntype PipeInput<Fns extends AsyncOrSync<any, any>[]> = Fns extends [AsyncOrSync<infer A, any>, ...AsyncOrSync<any, any>[]]\n ? A\n : never;\ntype PipeOutput<Fns extends AsyncOrSync<any, any>[]> = Fns extends [AsyncOrSync<any, infer R>]\n ? Awaited<R>\n : Fns extends [AsyncOrSync<any, infer R>, ...infer Rest]\n ? Rest extends [AsyncOrSync<Awaited<R>, any>, ...AsyncOrSync<any, any>[]]\n ? PipeOutput<Rest>\n : never\n : never;\ntype PipeAsync<Fns extends AsyncOrSync<any, any>[]> = (input: PipeInput<Fns>) => Promise<PipeOutput<Fns>>;\ntype PipeAsyncFrom<Fns extends [FromFn<any>, ...AsyncOrSync<any, any>[]]> = (\n input?: PipeInput<Fns>\n) => Promise<PipeOutput<Fns>>;\n\nfunction pipeAsync<R>(ab: ZeroFn<R>): () => Promise<Awaited<R>>;\nfunction pipeAsync<B, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, R>): () => Promise<Awaited<R>>;\nfunction pipeAsync<B, C, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, R>\n): () => Promise<Awaited<R>>;\nfunction pipeAsync<B, C, D, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, R>\n): () => Promise<Awaited<R>>;\nfunction pipeAsync<B, C, D, E, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, R>\n): () => Promise<Awaited<R>>;\nfunction pipeAsync<B, C, D, E, F, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, R>\n): () => Promise<Awaited<R>>;\nfunction pipeAsync<B, C, D, E, F, G, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, R>\n): () => Promise<Awaited<R>>;\nfunction pipeAsync<B, C, D, E, F, G, H, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, R>\n): () => Promise<Awaited<R>>;\nfunction pipeAsync<B, C, D, E, F, G, H, I, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, I>,\n ij: AsyncOrSync<Awaited<I>, R>\n): () => Promise<Awaited<R>>;\nfunction pipeAsync<B, C, D, E, F, G, H, I, J, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, I>,\n ij: AsyncOrSync<Awaited<I>, J>,\n jk: AsyncOrSync<Awaited<J>, R>\n): () => Promise<Awaited<R>>;\nfunction pipeAsync<Fns extends [FromFn<any>, ...AsyncOrSync<any, any>[]]>(...funcs: Fns): PipeAsyncFrom<Fns>;\nfunction pipeAsync<A, R>(ab: AsyncOrSync<A, R>): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, R>(ab: AsyncOrSync<A, B>, bc: AsyncOrSync<Awaited<B>, R>): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, E, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, E, F, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, E, F, G, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, E, F, G, H, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, E, F, G, H, I, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, I>,\n ij: AsyncOrSync<Awaited<I>, R>\n): (a: A) => Promise<Awaited<R>>;\nfunction pipeAsync<A, B, C, D, E, F, G, H, I, J, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, I>,\n ij: AsyncOrSync<Awaited<I>, J>,\n jk: AsyncOrSync<Awaited<J>, R>\n): (a: A) => Promise<Awaited<R>>;\n\nfunction pipeAsync<Fns extends [AsyncOrSync<any, any>, ...AsyncOrSync<any, any>[]]>(...funcs: Fns): PipeAsync<Fns>;\nfunction pipeAsync(...funcs: Array<AsyncOrSync<any, any>>): (value: any) => Promise<any>;\nfunction pipeAsync(...funcs: Array<(arg: any) => any>) {\n return async (value: any) => {\n let acc = value;\n for (const fn of funcs) {\n acc = await fn(acc);\n }\n return acc;\n };\n}\n\nexport default pipeAsync;\n"],"names":["pipeAsync","funcs","value","acc","fn"],"mappings":"AAoKA,SAASA,KAAaC,GAAiC;AACrD,SAAO,OAAOC,MAAe;AAC3B,QAAIC,IAAMD;AACV,eAAWE,KAAMH;AACf,MAAAE,IAAM,MAAMC,EAAGD,CAAG;AAEpB,WAAOA;AAAA,EACT;AACF;"}
@@ -4,6 +4,7 @@ import { default as SideEffect } from '../composition/sideEffect';
4
4
  type MaybeSideEffect<T> = T | SideEffect<any>;
5
5
  type NonSideEffect<T> = Exclude<T, SideEffect<any>>;
6
6
  type AsyncOrSync<A, R> = (a: A) => MaybeSideEffect<R> | Promise<MaybeSideEffect<R>>;
7
+ type ZeroFn<R> = () => MaybeSideEffect<R> | Promise<MaybeSideEffect<R>>;
7
8
  type PipeInput<Fns extends AsyncOrSync<any, any>[]> = Fns extends [
8
9
  AsyncOrSync<infer A, any>,
9
10
  ...AsyncOrSync<any, any>[]
@@ -13,6 +14,16 @@ type Resolve<T> = T extends infer R ? R : never;
13
14
  type PipeAsyncSideEffect<Fns extends AsyncOrSync<any, any>[]> = (input: PipeInput<Fns> | SideEffect<any>) => Promise<Resolve<PipeOutput<Fns>>>;
14
15
  type PipeAsyncSideEffectFrom<Fns extends [FromFn<any>, ...AsyncOrSync<any, any>[]]> = (input?: PipeInput<Fns> | SideEffect<any>) => Promise<Resolve<PipeOutput<Fns>>>;
15
16
  declare function pipeAsyncSideEffect<Fns extends [FromFn<any>, ...AsyncOrSync<any, any>[]]>(...funcs: Fns): PipeAsyncSideEffectFrom<Fns>;
17
+ declare function pipeAsyncSideEffect<R>(ab: ZeroFn<R>): () => Promise<MaybeSideEffect<Awaited<R>>>;
18
+ declare function pipeAsyncSideEffect<B, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, R>): () => Promise<MaybeSideEffect<Awaited<R>>>;
19
+ declare function pipeAsyncSideEffect<B, C, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, R>): () => Promise<MaybeSideEffect<Awaited<R>>>;
20
+ declare function pipeAsyncSideEffect<B, C, D, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, R>): () => Promise<MaybeSideEffect<Awaited<R>>>;
21
+ declare function pipeAsyncSideEffect<B, C, D, E, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, E>, ef: AsyncOrSync<Awaited<E>, R>): () => Promise<MaybeSideEffect<Awaited<R>>>;
22
+ declare function pipeAsyncSideEffect<B, C, D, E, F, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, E>, ef: AsyncOrSync<Awaited<E>, F>, fg: AsyncOrSync<Awaited<F>, R>): () => Promise<MaybeSideEffect<Awaited<R>>>;
23
+ declare function pipeAsyncSideEffect<B, C, D, E, F, G, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, E>, ef: AsyncOrSync<Awaited<E>, F>, fg: AsyncOrSync<Awaited<F>, G>, gh: AsyncOrSync<Awaited<G>, R>): () => Promise<MaybeSideEffect<Awaited<R>>>;
24
+ declare function pipeAsyncSideEffect<B, C, D, E, F, G, H, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, E>, ef: AsyncOrSync<Awaited<E>, F>, fg: AsyncOrSync<Awaited<F>, G>, gh: AsyncOrSync<Awaited<G>, H>, hi: AsyncOrSync<Awaited<H>, R>): () => Promise<MaybeSideEffect<Awaited<R>>>;
25
+ declare function pipeAsyncSideEffect<B, C, D, E, F, G, H, I, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, E>, ef: AsyncOrSync<Awaited<E>, F>, fg: AsyncOrSync<Awaited<F>, G>, gh: AsyncOrSync<Awaited<G>, H>, hi: AsyncOrSync<Awaited<H>, I>, ij: AsyncOrSync<Awaited<I>, R>): () => Promise<MaybeSideEffect<Awaited<R>>>;
26
+ declare function pipeAsyncSideEffect<B, C, D, E, F, G, H, I, J, R>(ab: ZeroFn<B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, D>, de: AsyncOrSync<Awaited<D>, E>, ef: AsyncOrSync<Awaited<E>, F>, fg: AsyncOrSync<Awaited<F>, G>, gh: AsyncOrSync<Awaited<G>, H>, hi: AsyncOrSync<Awaited<H>, I>, ij: AsyncOrSync<Awaited<I>, J>, jk: AsyncOrSync<Awaited<J>, R>): () => Promise<MaybeSideEffect<Awaited<R>>>;
16
27
  declare function pipeAsyncSideEffect<A, R>(ab: AsyncOrSync<A, R>): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;
17
28
  declare function pipeAsyncSideEffect<A, B, R>(ab: AsyncOrSync<A, B>, bc: AsyncOrSync<Awaited<B>, R>): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;
18
29
  declare function pipeAsyncSideEffect<A, B, C, R>(ab: AsyncOrSync<A, B>, bc: AsyncOrSync<Awaited<B>, C>, cd: AsyncOrSync<Awaited<C>, R>): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeAsyncSideEffect.d.ts","sourceRoot":"","sources":["../../../src/implement/async/pipeAsyncSideEffect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeAsyncSideEffect.d.ts","sourceRoot":"","sources":["../../../src/implement/async/pipeAsyncSideEffect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,UAA4B,MAAM,2BAA2B,CAAC;AAErE,uDAAuD;AACvD,KAAK,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;AAC9C,KAAK,aAAa,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AACpD,KAAK,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,eAAe,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;AACpF,KAAK,MAAM,CAAC,CAAC,IAAI,MAAM,eAAe,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;AACxE,KAAK,SAAS,CAAC,GAAG,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS;IAChE,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC;IACzB,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;CAC3B,GACG,CAAC,GACD,KAAK,CAAC;AACV,KAAK,UAAU,CAAC,GAAG,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,GAC1F,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAC3B,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,GAAG,MAAM,IAAI,CAAC,GACpD,IAAI,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GACpF,UAAU,CAAC,IAAI,CAAC,GAChB,KAAK,GACP,KAAK,CAAC;AACZ,KAAK,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChD,KAAK,mBAAmB,CAAC,GAAG,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,IAAI,CAC9D,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,KACpC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACvC,KAAK,uBAAuB,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,CACpF,KAAK,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,KACrC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAEvC,iBAAS,mBAAmB,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,EAChF,GAAG,KAAK,EAAE,GAAG,GACZ,uBAAuB,CAAC,GAAG,CAAC,CAAC;AAChC,iBAAS,mBAAmB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3F,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAC/B,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EACb,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAClC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EACb,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACrC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EACb,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACxC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EACb,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAC3C,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EACb,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAC9C,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EACb,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACjD,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EACb,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACpD,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EACb,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACvD,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EACb,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAC/B,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GACpB,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpE,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAClC,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EACrB,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpE,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACrC,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EACrB,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpE,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACxC,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EACrB,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpE,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAC3C,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EACrB,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpE,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAC9C,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EACrB,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpE,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACjD,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EACrB,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpE,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACpD,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EACrB,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpE,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACvD,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EACrB,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpE,iBAAS,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAC1D,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EACrB,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEpE,iBAAS,mBAAmB,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,EAC1F,GAAG,KAAK,EAAE,GAAG,GACZ,mBAAmB,CAAC,GAAG,CAAC,CAAC;AAC5B,iBAAS,mBAAmB,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAcnG,eAAe,mBAAmB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeAsyncSideEffect.mjs","sources":["../../../src/implement/async/pipeAsyncSideEffect.ts"],"sourcesContent":["import type { FromFn } from '../composition/from';\nimport SideEffect, { isSideEffect } from '../composition/sideEffect';\n\n/** pipeAsyncSideEffect - SideEffect를 허용하는 비동기 함수 합성 */\ntype MaybeSideEffect<T> = T | SideEffect<any>;\ntype NonSideEffect<T> = Exclude<T, SideEffect<any>>;\ntype AsyncOrSync<A, R> = (a: A) => MaybeSideEffect<R> | Promise<MaybeSideEffect<R>>;\ntype PipeInput<Fns extends AsyncOrSync<any, any>[]> = Fns extends [\n AsyncOrSync<infer A, any>,\n ...AsyncOrSync<any, any>[]\n]\n ? A\n : never;\ntype PipeOutput<Fns extends AsyncOrSync<any, any>[]> = Fns extends [AsyncOrSync<any, infer R>]\n ? MaybeSideEffect<Awaited<R>>\n : Fns extends [AsyncOrSync<any, infer R>, ...infer Rest]\n ? Rest extends [AsyncOrSync<Awaited<NonSideEffect<R>>, any>, ...AsyncOrSync<any, any>[]]\n ? PipeOutput<Rest>\n : never\n : never;\ntype Resolve<T> = T extends infer R ? R : never;\ntype PipeAsyncSideEffect<Fns extends AsyncOrSync<any, any>[]> = (\n input: PipeInput<Fns> | SideEffect<any>\n) => Promise<Resolve<PipeOutput<Fns>>>;\ntype PipeAsyncSideEffectFrom<Fns extends [FromFn<any>, ...AsyncOrSync<any, any>[]]> = (\n input?: PipeInput<Fns> | SideEffect<any>\n) => Promise<Resolve<PipeOutput<Fns>>>;\n\nfunction pipeAsyncSideEffect<Fns extends [FromFn<any>, ...AsyncOrSync<any, any>[]]>(\n ...funcs: Fns\n): PipeAsyncSideEffectFrom<Fns>;\nfunction pipeAsyncSideEffect<A, R>(\n ab: AsyncOrSync<A, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, E, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, E, F, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, E, F, G, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, E, F, G, H, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, E, F, G, H, I, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, I>,\n ij: AsyncOrSync<Awaited<I>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, E, F, G, H, I, J, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, I>,\n ij: AsyncOrSync<Awaited<I>, J>,\n jk: AsyncOrSync<Awaited<J>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\n\nfunction pipeAsyncSideEffect<Fns extends [AsyncOrSync<any, any>, ...AsyncOrSync<any, any>[]]>(\n ...funcs: Fns\n): PipeAsyncSideEffect<Fns>;\nfunction pipeAsyncSideEffect(...funcs: Array<AsyncOrSync<any, any>>): (value: any) => Promise<any>;\nfunction pipeAsyncSideEffect(...funcs: Array<(arg: any) => any>) {\n return async (value: any) => {\n let acc = value;\n for (const fn of funcs) {\n if (isSideEffect(acc)) {\n return acc;\n }\n acc = await fn(acc);\n }\n return acc;\n };\n}\n\nexport default pipeAsyncSideEffect;\n"],"names":["pipeAsyncSideEffect","funcs","value","acc","fn","isSideEffect"],"mappings":";AA+GA,SAASA,KAAuBC,GAAiC;AAC/D,SAAO,OAAOC,MAAe;AAC3B,QAAIC,IAAMD;AACV,eAAWE,KAAMH,GAAO;AACtB,UAAII,EAAaF,CAAG;AAClB,eAAOA;AAET,MAAAA,IAAM,MAAMC,EAAGD,CAAG;AAAA,IACpB;AACA,WAAOA;AAAA,EACT;AACF;"}
1
+ {"version":3,"file":"pipeAsyncSideEffect.mjs","sources":["../../../src/implement/async/pipeAsyncSideEffect.ts"],"sourcesContent":["import type { FromFn } from '../composition/from';\nimport SideEffect, { isSideEffect } from '../composition/sideEffect';\n\n/** pipeAsyncSideEffect - SideEffect를 허용하는 비동기 함수 합성 */\ntype MaybeSideEffect<T> = T | SideEffect<any>;\ntype NonSideEffect<T> = Exclude<T, SideEffect<any>>;\ntype AsyncOrSync<A, R> = (a: A) => MaybeSideEffect<R> | Promise<MaybeSideEffect<R>>;\ntype ZeroFn<R> = () => MaybeSideEffect<R> | Promise<MaybeSideEffect<R>>;\ntype PipeInput<Fns extends AsyncOrSync<any, any>[]> = Fns extends [\n AsyncOrSync<infer A, any>,\n ...AsyncOrSync<any, any>[]\n]\n ? A\n : never;\ntype PipeOutput<Fns extends AsyncOrSync<any, any>[]> = Fns extends [AsyncOrSync<any, infer R>]\n ? MaybeSideEffect<Awaited<R>>\n : Fns extends [AsyncOrSync<any, infer R>, ...infer Rest]\n ? Rest extends [AsyncOrSync<Awaited<NonSideEffect<R>>, any>, ...AsyncOrSync<any, any>[]]\n ? PipeOutput<Rest>\n : never\n : never;\ntype Resolve<T> = T extends infer R ? R : never;\ntype PipeAsyncSideEffect<Fns extends AsyncOrSync<any, any>[]> = (\n input: PipeInput<Fns> | SideEffect<any>\n) => Promise<Resolve<PipeOutput<Fns>>>;\ntype PipeAsyncSideEffectFrom<Fns extends [FromFn<any>, ...AsyncOrSync<any, any>[]]> = (\n input?: PipeInput<Fns> | SideEffect<any>\n) => Promise<Resolve<PipeOutput<Fns>>>;\n\nfunction pipeAsyncSideEffect<Fns extends [FromFn<any>, ...AsyncOrSync<any, any>[]]>(\n ...funcs: Fns\n): PipeAsyncSideEffectFrom<Fns>;\nfunction pipeAsyncSideEffect<R>(ab: ZeroFn<R>): () => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<B, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, R>\n): () => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<B, C, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, R>\n): () => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<B, C, D, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, R>\n): () => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<B, C, D, E, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, R>\n): () => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<B, C, D, E, F, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, R>\n): () => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<B, C, D, E, F, G, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, R>\n): () => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<B, C, D, E, F, G, H, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, R>\n): () => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<B, C, D, E, F, G, H, I, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, I>,\n ij: AsyncOrSync<Awaited<I>, R>\n): () => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<B, C, D, E, F, G, H, I, J, R>(\n ab: ZeroFn<B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, I>,\n ij: AsyncOrSync<Awaited<I>, J>,\n jk: AsyncOrSync<Awaited<J>, R>\n): () => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, R>(\n ab: AsyncOrSync<A, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, E, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, E, F, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, E, F, G, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, E, F, G, H, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, E, F, G, H, I, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, I>,\n ij: AsyncOrSync<Awaited<I>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\nfunction pipeAsyncSideEffect<A, B, C, D, E, F, G, H, I, J, R>(\n ab: AsyncOrSync<A, B>,\n bc: AsyncOrSync<Awaited<B>, C>,\n cd: AsyncOrSync<Awaited<C>, D>,\n de: AsyncOrSync<Awaited<D>, E>,\n ef: AsyncOrSync<Awaited<E>, F>,\n fg: AsyncOrSync<Awaited<F>, G>,\n gh: AsyncOrSync<Awaited<G>, H>,\n hi: AsyncOrSync<Awaited<H>, I>,\n ij: AsyncOrSync<Awaited<I>, J>,\n jk: AsyncOrSync<Awaited<J>, R>\n): (a: A | SideEffect<any>) => Promise<MaybeSideEffect<Awaited<R>>>;\n\nfunction pipeAsyncSideEffect<Fns extends [AsyncOrSync<any, any>, ...AsyncOrSync<any, any>[]]>(\n ...funcs: Fns\n): PipeAsyncSideEffect<Fns>;\nfunction pipeAsyncSideEffect(...funcs: Array<AsyncOrSync<any, any>>): (value: any) => Promise<any>;\nfunction pipeAsyncSideEffect(...funcs: Array<(arg: any) => any>) {\n return async (value: any) => {\n let acc = value;\n for (const fn of funcs) {\n if (isSideEffect(acc)) {\n return acc;\n }\n acc = await fn(acc);\n }\n return acc;\n };\n}\n\nexport default pipeAsyncSideEffect;\n"],"names":["pipeAsyncSideEffect","funcs","value","acc","fn","isSideEffect"],"mappings":";AAyLA,SAASA,KAAuBC,GAAiC;AAC/D,SAAO,OAAOC,MAAe;AAC3B,QAAIC,IAAMD;AACV,eAAWE,KAAMH,GAAO;AACtB,UAAII,EAAaF,CAAG;AAClB,eAAOA;AAET,MAAAA,IAAM,MAAMC,EAAGD,CAAG;AAAA,IACpB;AACA,WAAOA;AAAA,EACT;AACF;"}
@@ -1,15 +1,31 @@
1
- /**
2
- * compose - 함수를 우→좌로 합성
3
- */
1
+ import { FromFn } from './from';
4
2
  type UnaryFn<A, R> = (a: A) => R;
3
+ type ZeroFn<R> = () => R;
5
4
  type ComposeInput<Fns extends UnaryFn<any, any>[]> = Fns extends [...UnaryFn<any, any>[], UnaryFn<infer A, any>] ? A : never;
6
- type ComposeChain<Fns extends UnaryFn<any, any>[]> = Fns extends [UnaryFn<infer A, infer R>] ? UnaryFn<A, R> : Fns extends [UnaryFn<infer A, infer R>, ...infer Rest] ? Rest extends [UnaryFn<R, any>, ...UnaryFn<any, any>[]] ? ComposeChain<Rest> extends UnaryFn<any, infer NextR> ? UnaryFn<A, NextR> : never : never : never;
7
- type Compose<Fns extends UnaryFn<any, any>[]> = (input: ComposeInput<Fns>) => ComposeChain<Fns> extends UnaryFn<any, infer R> ? R : never;
5
+ type ComposeOutput<Fns extends UnaryFn<any, any>[]> = Fns extends [UnaryFn<any, infer R>] ? R : Fns extends [UnaryFn<infer A, infer R>, ...infer Rest] ? Rest extends [UnaryFn<any, any>, ...UnaryFn<any, any>[]] ? ComposeOutput<Rest> extends A ? R : never : never : never;
6
+ type Compose<Fns extends UnaryFn<any, any>[]> = (input: ComposeInput<Fns>) => ComposeOutput<Fns>;
7
+ type ComposeFrom<Fns extends [...UnaryFn<any, any>[], FromFn<any>]> = (input?: ComposeInput<Fns>) => ComposeOutput<Fns>;
8
+ declare function compose<R>(ab: ZeroFn<R>): () => R;
9
+ declare function compose<B, R>(ab: UnaryFn<B, R>, bc: ZeroFn<B>): () => R;
10
+ declare function compose<C, B, R>(ab: UnaryFn<B, R>, bc: UnaryFn<C, B>, cd: ZeroFn<C>): () => R;
11
+ declare function compose<D, C, B, R>(ab: UnaryFn<B, R>, bc: UnaryFn<C, B>, cd: UnaryFn<D, C>, de: ZeroFn<D>): () => R;
12
+ declare function compose<E, D, C, B, R>(ab: UnaryFn<B, R>, bc: UnaryFn<C, B>, cd: UnaryFn<D, C>, de: UnaryFn<E, D>, ef: ZeroFn<E>): () => R;
13
+ declare function compose<F, E, D, C, B, R>(ab: UnaryFn<B, R>, bc: UnaryFn<C, B>, cd: UnaryFn<D, C>, de: UnaryFn<E, D>, ef: UnaryFn<F, E>, fg: ZeroFn<F>): () => R;
14
+ declare function compose<G, F, E, D, C, B, R>(ab: UnaryFn<B, R>, bc: UnaryFn<C, B>, cd: UnaryFn<D, C>, de: UnaryFn<E, D>, ef: UnaryFn<F, E>, fg: UnaryFn<G, F>, gh: ZeroFn<G>): () => R;
15
+ declare function compose<H, G, F, E, D, C, B, R>(ab: UnaryFn<B, R>, bc: UnaryFn<C, B>, cd: UnaryFn<D, C>, de: UnaryFn<E, D>, ef: UnaryFn<F, E>, fg: UnaryFn<G, F>, gh: UnaryFn<H, G>, hi: ZeroFn<H>): () => R;
16
+ declare function compose<I, H, G, F, E, D, C, B, R>(ab: UnaryFn<B, R>, bc: UnaryFn<C, B>, cd: UnaryFn<D, C>, de: UnaryFn<E, D>, ef: UnaryFn<F, E>, fg: UnaryFn<G, F>, gh: UnaryFn<H, G>, hi: UnaryFn<I, H>, ij: ZeroFn<I>): () => R;
17
+ declare function compose<J, I, H, G, F, E, D, C, B, R>(ab: UnaryFn<B, R>, bc: UnaryFn<C, B>, cd: UnaryFn<D, C>, de: UnaryFn<E, D>, ef: UnaryFn<F, E>, fg: UnaryFn<G, F>, gh: UnaryFn<H, G>, hi: UnaryFn<I, H>, ij: UnaryFn<J, I>, jk: ZeroFn<J>): () => R;
18
+ declare function compose<Fns extends [...UnaryFn<any, any>[], FromFn<any>]>(...funcs: Fns): ComposeFrom<Fns>;
8
19
  declare function compose<A, R>(ab: UnaryFn<A, R>): (a: A) => R;
9
- declare function compose<A, B, R>(ab: UnaryFn<A, B>, bc: UnaryFn<B, R>): (a: A) => R;
10
- declare function compose<A, B, C, R>(ab: UnaryFn<A, B>, bc: UnaryFn<B, C>, cd: UnaryFn<C, R>): (a: A) => R;
11
- declare function compose<A, B, C, D, R>(ab: UnaryFn<A, B>, bc: UnaryFn<B, C>, cd: UnaryFn<C, D>, de: UnaryFn<D, R>): (a: A) => R;
12
- declare function compose<A, B, C, D, E, R>(ab: UnaryFn<A, B>, bc: UnaryFn<B, C>, cd: UnaryFn<C, D>, de: UnaryFn<D, E>, ef: UnaryFn<E, R>): (a: A) => R;
20
+ declare function compose<A, B, R>(ab: UnaryFn<B, R>, bc: UnaryFn<A, B>): (a: A) => R;
21
+ declare function compose<A, B, C, R>(ab: UnaryFn<C, R>, bc: UnaryFn<B, C>, cd: UnaryFn<A, B>): (a: A) => R;
22
+ declare function compose<A, B, C, D, R>(ab: UnaryFn<D, R>, bc: UnaryFn<C, D>, cd: UnaryFn<B, C>, de: UnaryFn<A, B>): (a: A) => R;
23
+ declare function compose<A, B, C, D, E, R>(ab: UnaryFn<E, R>, bc: UnaryFn<D, E>, cd: UnaryFn<C, D>, de: UnaryFn<B, C>, ef: UnaryFn<A, B>): (a: A) => R;
24
+ declare function compose<A, B, C, D, E, F, R>(ab: UnaryFn<F, R>, bc: UnaryFn<E, F>, cd: UnaryFn<D, E>, de: UnaryFn<C, D>, ef: UnaryFn<B, C>, fg: UnaryFn<A, B>): (a: A) => R;
25
+ declare function compose<A, B, C, D, E, F, G, R>(ab: UnaryFn<G, R>, bc: UnaryFn<F, G>, cd: UnaryFn<E, F>, de: UnaryFn<D, E>, ef: UnaryFn<C, D>, fg: UnaryFn<B, C>, gh: UnaryFn<A, B>): (a: A) => R;
26
+ declare function compose<A, B, C, D, E, F, G, H, R>(ab: UnaryFn<H, R>, bc: UnaryFn<G, H>, cd: UnaryFn<F, G>, de: UnaryFn<E, F>, ef: UnaryFn<D, E>, fg: UnaryFn<C, D>, gh: UnaryFn<B, C>, hi: UnaryFn<A, B>): (a: A) => R;
27
+ declare function compose<A, B, C, D, E, F, G, H, I, R>(ab: UnaryFn<I, R>, bc: UnaryFn<H, I>, cd: UnaryFn<G, H>, de: UnaryFn<F, G>, ef: UnaryFn<E, F>, fg: UnaryFn<D, E>, gh: UnaryFn<C, D>, hi: UnaryFn<B, C>, ij: UnaryFn<A, B>): (a: A) => R;
28
+ declare function compose<A, B, C, D, E, F, G, H, I, J, R>(ab: UnaryFn<J, R>, bc: UnaryFn<I, J>, cd: UnaryFn<H, I>, de: UnaryFn<G, H>, ef: UnaryFn<F, G>, fg: UnaryFn<E, F>, gh: UnaryFn<D, E>, hi: UnaryFn<C, D>, ij: UnaryFn<B, C>, jk: UnaryFn<A, B>): (a: A) => R;
13
29
  declare function compose<Fns extends [UnaryFn<any, any>, ...UnaryFn<any, any>[]]>(...funcs: Fns): Compose<Fns>;
14
30
  declare function compose(...funcs: Array<UnaryFn<any, any>>): (input: any) => any;
15
31
  export default compose;
@@ -1 +1 @@
1
- {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../../src/implement/composition/compose.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../../src/implement/composition/compose.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"compose.mjs","sources":["../../../src/implement/composition/compose.ts"],"sourcesContent":["/**\n * compose - 함수를 우→좌로 합성\n */\n\ntype UnaryFn<A, R> = (a: A) => R;\ntype ComposeInput<Fns extends UnaryFn<any, any>[]> = Fns extends [...UnaryFn<any, any>[], UnaryFn<infer A, any>]\n ? A\n : never;\ntype ComposeChain<Fns extends UnaryFn<any, any>[]> = Fns extends [UnaryFn<infer A, infer R>]\n ? UnaryFn<A, R>\n : Fns extends [UnaryFn<infer A, infer R>, ...infer Rest]\n ? Rest extends [UnaryFn<R, any>, ...UnaryFn<any, any>[]]\n ? ComposeChain<Rest> extends UnaryFn<any, infer NextR>\n ? UnaryFn<A, NextR>\n : never\n : never\n : never;\ntype Compose<Fns extends UnaryFn<any, any>[]> = (input: ComposeInput<Fns>) => ComposeChain<Fns> extends UnaryFn<\n any,\n infer R\n>\n ? R\n : never;\n\nfunction compose<A, R>(ab: UnaryFn<A, R>): (a: A) => R;\nfunction compose<A, B, R>(ab: UnaryFn<A, B>, bc: UnaryFn<B, R>): (a: A) => R;\nfunction compose<A, B, C, R>(ab: UnaryFn<A, B>, bc: UnaryFn<B, C>, cd: UnaryFn<C, R>): (a: A) => R;\nfunction compose<A, B, C, D, R>(\n ab: UnaryFn<A, B>,\n bc: UnaryFn<B, C>,\n cd: UnaryFn<C, D>,\n de: UnaryFn<D, R>\n): (a: A) => R;\nfunction compose<A, B, C, D, E, R>(\n ab: UnaryFn<A, B>,\n bc: UnaryFn<B, C>,\n cd: UnaryFn<C, D>,\n de: UnaryFn<D, E>,\n ef: UnaryFn<E, R>\n): (a: A) => R;\n\nfunction compose<Fns extends [UnaryFn<any, any>, ...UnaryFn<any, any>[]]>(...funcs: Fns): Compose<Fns>;\nfunction compose(...funcs: Array<UnaryFn<any, any>>): (input: any) => any;\nfunction compose(...funcs: Array<(input: any) => any>) {\n return (value: any) => funcs.reduceRight((acc, fn) => fn(acc), value);\n}\n\nexport default compose;\n"],"names":["compose","funcs","value","acc","fn"],"mappings":"AA2CA,SAASA,KAAWC,GAAmC;AACrD,SAAO,CAACC,MAAeD,EAAM,YAAY,CAACE,GAAKC,MAAOA,EAAGD,CAAG,GAAGD,CAAK;AACtE;"}
1
+ {"version":3,"file":"compose.mjs","sources":["../../../src/implement/composition/compose.ts"],"sourcesContent":["/**\n * compose - 함수를 우→좌로 합성\n */\n\nimport type { FromFn } from './from';\n\ntype UnaryFn<A, R> = (a: A) => R;\ntype ZeroFn<R> = () => R;\ntype ComposeInput<Fns extends UnaryFn<any, any>[]> = Fns extends [...UnaryFn<any, any>[], UnaryFn<infer A, any>]\n ? A\n : never;\ntype ComposeOutput<Fns extends UnaryFn<any, any>[]> = Fns extends [UnaryFn<any, infer R>]\n ? R\n : Fns extends [UnaryFn<infer A, infer R>, ...infer Rest]\n ? Rest extends [UnaryFn<any, any>, ...UnaryFn<any, any>[]]\n ? ComposeOutput<Rest> extends A\n ? R\n : never\n : never\n : never;\ntype Compose<Fns extends UnaryFn<any, any>[]> = (input: ComposeInput<Fns>) => ComposeOutput<Fns>;\ntype ComposeFrom<Fns extends [...UnaryFn<any, any>[], FromFn<any>]> = (input?: ComposeInput<Fns>) => ComposeOutput<Fns>;\n\nfunction compose<R>(ab: ZeroFn<R>): () => R;\nfunction compose<B, R>(ab: UnaryFn<B, R>, bc: ZeroFn<B>): () => R;\nfunction compose<C, B, R>(ab: UnaryFn<B, R>, bc: UnaryFn<C, B>, cd: ZeroFn<C>): () => R;\nfunction compose<D, C, B, R>(ab: UnaryFn<B, R>, bc: UnaryFn<C, B>, cd: UnaryFn<D, C>, de: ZeroFn<D>): () => R;\nfunction compose<E, D, C, B, R>(\n ab: UnaryFn<B, R>,\n bc: UnaryFn<C, B>,\n cd: UnaryFn<D, C>,\n de: UnaryFn<E, D>,\n ef: ZeroFn<E>\n): () => R;\nfunction compose<F, E, D, C, B, R>(\n ab: UnaryFn<B, R>,\n bc: UnaryFn<C, B>,\n cd: UnaryFn<D, C>,\n de: UnaryFn<E, D>,\n ef: UnaryFn<F, E>,\n fg: ZeroFn<F>\n): () => R;\nfunction compose<G, F, E, D, C, B, R>(\n ab: UnaryFn<B, R>,\n bc: UnaryFn<C, B>,\n cd: UnaryFn<D, C>,\n de: UnaryFn<E, D>,\n ef: UnaryFn<F, E>,\n fg: UnaryFn<G, F>,\n gh: ZeroFn<G>\n): () => R;\nfunction compose<H, G, F, E, D, C, B, R>(\n ab: UnaryFn<B, R>,\n bc: UnaryFn<C, B>,\n cd: UnaryFn<D, C>,\n de: UnaryFn<E, D>,\n ef: UnaryFn<F, E>,\n fg: UnaryFn<G, F>,\n gh: UnaryFn<H, G>,\n hi: ZeroFn<H>\n): () => R;\nfunction compose<I, H, G, F, E, D, C, B, R>(\n ab: UnaryFn<B, R>,\n bc: UnaryFn<C, B>,\n cd: UnaryFn<D, C>,\n de: UnaryFn<E, D>,\n ef: UnaryFn<F, E>,\n fg: UnaryFn<G, F>,\n gh: UnaryFn<H, G>,\n hi: UnaryFn<I, H>,\n ij: ZeroFn<I>\n): () => R;\nfunction compose<J, I, H, G, F, E, D, C, B, R>(\n ab: UnaryFn<B, R>,\n bc: UnaryFn<C, B>,\n cd: UnaryFn<D, C>,\n de: UnaryFn<E, D>,\n ef: UnaryFn<F, E>,\n fg: UnaryFn<G, F>,\n gh: UnaryFn<H, G>,\n hi: UnaryFn<I, H>,\n ij: UnaryFn<J, I>,\n jk: ZeroFn<J>\n): () => R;\n\nfunction compose<Fns extends [...UnaryFn<any, any>[], FromFn<any>]>(...funcs: Fns): ComposeFrom<Fns>;\nfunction compose<A, R>(ab: UnaryFn<A, R>): (a: A) => R;\nfunction compose<A, B, R>(ab: UnaryFn<B, R>, bc: UnaryFn<A, B>): (a: A) => R;\nfunction compose<A, B, C, R>(ab: UnaryFn<C, R>, bc: UnaryFn<B, C>, cd: UnaryFn<A, B>): (a: A) => R;\nfunction compose<A, B, C, D, R>(\n ab: UnaryFn<D, R>,\n bc: UnaryFn<C, D>,\n cd: UnaryFn<B, C>,\n de: UnaryFn<A, B>\n): (a: A) => R;\nfunction compose<A, B, C, D, E, R>(\n ab: UnaryFn<E, R>,\n bc: UnaryFn<D, E>,\n cd: UnaryFn<C, D>,\n de: UnaryFn<B, C>,\n ef: UnaryFn<A, B>\n): (a: A) => R;\nfunction compose<A, B, C, D, E, F, R>(\n ab: UnaryFn<F, R>,\n bc: UnaryFn<E, F>,\n cd: UnaryFn<D, E>,\n de: UnaryFn<C, D>,\n ef: UnaryFn<B, C>,\n fg: UnaryFn<A, B>\n): (a: A) => R;\nfunction compose<A, B, C, D, E, F, G, R>(\n ab: UnaryFn<G, R>,\n bc: UnaryFn<F, G>,\n cd: UnaryFn<E, F>,\n de: UnaryFn<D, E>,\n ef: UnaryFn<C, D>,\n fg: UnaryFn<B, C>,\n gh: UnaryFn<A, B>\n): (a: A) => R;\nfunction compose<A, B, C, D, E, F, G, H, R>(\n ab: UnaryFn<H, R>,\n bc: UnaryFn<G, H>,\n cd: UnaryFn<F, G>,\n de: UnaryFn<E, F>,\n ef: UnaryFn<D, E>,\n fg: UnaryFn<C, D>,\n gh: UnaryFn<B, C>,\n hi: UnaryFn<A, B>\n): (a: A) => R;\nfunction compose<A, B, C, D, E, F, G, H, I, R>(\n ab: UnaryFn<I, R>,\n bc: UnaryFn<H, I>,\n cd: UnaryFn<G, H>,\n de: UnaryFn<F, G>,\n ef: UnaryFn<E, F>,\n fg: UnaryFn<D, E>,\n gh: UnaryFn<C, D>,\n hi: UnaryFn<B, C>,\n ij: UnaryFn<A, B>\n): (a: A) => R;\nfunction compose<A, B, C, D, E, F, G, H, I, J, R>(\n ab: UnaryFn<J, R>,\n bc: UnaryFn<I, J>,\n cd: UnaryFn<H, I>,\n de: UnaryFn<G, H>,\n ef: UnaryFn<F, G>,\n fg: UnaryFn<E, F>,\n gh: UnaryFn<D, E>,\n hi: UnaryFn<C, D>,\n ij: UnaryFn<B, C>,\n jk: UnaryFn<A, B>\n): (a: A) => R;\n\nfunction compose<Fns extends [UnaryFn<any, any>, ...UnaryFn<any, any>[]]>(...funcs: Fns): Compose<Fns>;\nfunction compose(...funcs: Array<UnaryFn<any, any>>): (input: any) => any;\nfunction compose(...funcs: Array<(...args: any[]) => any>) {\n return (value: any) => funcs.reduceRight((acc, fn) => fn(acc), value);\n}\n\nexport default compose;\n"],"names":["compose","funcs","value","acc","fn"],"mappings":"AA2JA,SAASA,KAAWC,GAAuC;AACzD,SAAO,CAACC,MAAeD,EAAM,YAAY,CAACE,GAAKC,MAAOA,EAAGD,CAAG,GAAGD,CAAK;AACtE;"}
@@ -0,0 +1,35 @@
1
+ type Equal<A, B> = (<T>() => T extends A ? 1 : 2) extends (<T>() => T extends B ? 1 : 2) ? true : false;
2
+ type Expect<T extends true> = T;
3
+ export declare const pureCompose: (a: number) => string;
4
+ type PureComposeExpected = (input: number) => string;
5
+ export type ComposePureIsStrict = Expect<Equal<typeof pureCompose, PureComposeExpected>>;
6
+ export declare const pureComposeSix: (a: number) => string;
7
+ type PureComposeSixExpected = (input: number) => string;
8
+ export type ComposePureSixIsStrict = Expect<Equal<typeof pureComposeSix, PureComposeSixExpected>>;
9
+ export declare const pureComposeTen: (a: number) => string;
10
+ type PureComposeTenExpected = (input: number) => string;
11
+ export type ComposePureTenIsStrict = Expect<Equal<typeof pureComposeTen, PureComposeTenExpected>>;
12
+ export declare const composeZero: () => number;
13
+ type ComposeZeroExpected = () => number;
14
+ export type ComposeZeroIsStrict = Expect<Equal<typeof composeZero, ComposeZeroExpected>>;
15
+ export declare const composeZeroValue: number;
16
+ type ComposeZeroValueExpected = number;
17
+ export type ComposeZeroValueIsStrict = Expect<Equal<typeof composeZeroValue, ComposeZeroValueExpected>>;
18
+ export declare const composeFromNoInput: (input?: unknown) => number;
19
+ type ComposeFromNoInputExpected = (input?: unknown) => number;
20
+ export type ComposeFromNoInputIsStrict = Expect<Equal<typeof composeFromNoInput, ComposeFromNoInputExpected>>;
21
+ export declare const composeFromNoInputValue: number;
22
+ type ComposeFromNoInputValueExpected = number;
23
+ export type ComposeFromNoInputValueIsStrict = Expect<Equal<typeof composeFromNoInputValue, ComposeFromNoInputValueExpected>>;
24
+ export declare const composeFromNoInputValueWithArg: number;
25
+ type ComposeFromNoInputValueWithArgExpected = number;
26
+ export type ComposeFromNoInputValueWithArgIsStrict = Expect<Equal<typeof composeFromNoInputValueWithArg, ComposeFromNoInputValueWithArgExpected>>;
27
+ export declare const composeFromTen: (input?: unknown) => string;
28
+ export declare const composeFromTenValue: string;
29
+ type ComposeFromTenValueExpected = string;
30
+ export type ComposeFromTenValueIsStrict = Expect<Equal<typeof composeFromTenValue, ComposeFromTenValueExpected>>;
31
+ export declare const composeFromTenValueNoInput: string;
32
+ type ComposeFromTenValueNoInputExpected = string;
33
+ export type ComposeFromTenValueNoInputIsStrict = Expect<Equal<typeof composeFromTenValueNoInput, ComposeFromTenValueNoInputExpected>>;
34
+ export {};
35
+ //# sourceMappingURL=compose.type-test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose.type-test.d.ts","sourceRoot":"","sources":["../../../src/implement/composition/compose.type-test.ts"],"names":[],"mappings":"AAGA,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GACpF,IAAI,GACJ,KAAK,CAAC;AACV,KAAK,MAAM,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC;AAEhC,eAAO,MAAM,WAAW,uBAKvB,CAAC;AAEF,KAAK,mBAAmB,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AACrD,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,WAAW,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAEzF,eAAO,MAAM,cAAc,uBAO1B,CAAC;AAEF,KAAK,sBAAsB,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AACxD,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,cAAc,EAAE,sBAAsB,CAAC,CAAC,CAAC;AAElG,eAAO,MAAM,cAAc,uBAW1B,CAAC;AAEF,KAAK,sBAAsB,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AACxD,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,cAAc,EAAE,sBAAsB,CAAC,CAAC,CAAC;AAElG,eAAO,MAAM,WAAW,cAIvB,CAAC;AAEF,KAAK,mBAAmB,GAAG,MAAM,MAAM,CAAC;AACxC,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,WAAW,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAEzF,eAAO,MAAM,gBAAgB,QAAgB,CAAC;AAE9C,KAAK,wBAAwB,GAAG,MAAM,CAAC;AACvC,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,gBAAgB,EAAE,wBAAwB,CAAC,CAAC,CAAC;AAExG,eAAO,MAAM,kBAAkB,6BAAmB,CAAC;AAEnD,KAAK,0BAA0B,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC;AAC9D,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,kBAAkB,EAAE,0BAA0B,CAAC,CAAC,CAAC;AAE9G,eAAO,MAAM,uBAAuB,QAAuB,CAAC;AAE5D,KAAK,+BAA+B,GAAG,MAAM,CAAC;AAC9C,MAAM,MAAM,+BAA+B,GAAG,MAAM,CAClD,KAAK,CAAC,OAAO,uBAAuB,EAAE,+BAA+B,CAAC,CACvE,CAAC;AAEF,eAAO,MAAM,8BAA8B,QAA8B,CAAC;AAE1E,KAAK,sCAAsC,GAAG,MAAM,CAAC;AACrD,MAAM,MAAM,sCAAsC,GAAG,MAAM,CACzD,KAAK,CAAC,OAAO,8BAA8B,EAAE,sCAAsC,CAAC,CACrF,CAAC;AAEF,eAAO,MAAM,cAAc,6BAW1B,CAAC;AAEF,eAAO,MAAM,mBAAmB,QAA0B,CAAC;AAE3D,KAAK,2BAA2B,GAAG,MAAM,CAAC;AAC1C,MAAM,MAAM,2BAA2B,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,mBAAmB,EAAE,2BAA2B,CAAC,CAAC,CAAC;AAEjH,eAAO,MAAM,0BAA0B,QAAmB,CAAC;AAE3D,KAAK,kCAAkC,GAAG,MAAM,CAAC;AACjD,MAAM,MAAM,kCAAkC,GAAG,MAAM,CACrD,KAAK,CAAC,OAAO,0BAA0B,EAAE,kCAAkC,CAAC,CAC7E,CAAC"}
@@ -0,0 +1,31 @@
1
+ type Equal<A, B> = (<T>() => T extends A ? 1 : 2) extends (<T>() => T extends B ? 1 : 2) ? true : false;
2
+ type Expect<T extends true> = T;
3
+ type User = {
4
+ name?: string;
5
+ };
6
+ type TagOwner = {
7
+ tags?: Array<string | null>;
8
+ };
9
+ type Config = {
10
+ value?: number;
11
+ };
12
+ export declare const composeArrayControlString: (a: any[]) => string;
13
+ type ComposeArrayControlStringExpected = (input: any[]) => string;
14
+ export type ComposeArrayControlStringIsStrict = Expect<Equal<typeof composeArrayControlString, ComposeArrayControlStringExpected>>;
15
+ export declare const composeObjectNullableControl: (a: User) => string;
16
+ type ComposeObjectNullableControlExpected = (input: User) => string;
17
+ export type ComposeObjectNullableControlIsStrict = Expect<Equal<typeof composeObjectNullableControl, ComposeObjectNullableControlExpected>>;
18
+ export declare const composeTags: (a: TagOwner) => string;
19
+ type ComposeTagsExpected = (input: TagOwner) => string;
20
+ export type ComposeTagsIsStrict = Expect<Equal<typeof composeTags, ComposeTagsExpected>>;
21
+ export declare const composeConfigValue: (a: Config[]) => number;
22
+ type ComposeConfigValueExpected = (input: Config[]) => number;
23
+ export type ComposeConfigValueIsStrict = Expect<Equal<typeof composeConfigValue, ComposeConfigValueExpected>>;
24
+ export declare const composeStreamSync: (a: number) => number;
25
+ type ComposeStreamSyncExpected = (input: number) => number;
26
+ export type ComposeStreamSyncIsStrict = Expect<Equal<typeof composeStreamSync, ComposeStreamSyncExpected>>;
27
+ export declare const composeStreamToArray: (a: number) => Promise<number[]>;
28
+ type ComposeStreamToArrayExpected = (input: number) => Promise<number[]>;
29
+ export type ComposeStreamToArrayIsStrict = Expect<Equal<typeof composeStreamToArray, ComposeStreamToArrayExpected>>;
30
+ export {};
31
+ //# sourceMappingURL=compose.util.type-test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose.util.type-test.d.ts","sourceRoot":"","sources":["../../../src/implement/composition/compose.util.type-test.ts"],"names":[],"mappings":"AAuBA,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GACpF,IAAI,GACJ,KAAK,CAAC;AACV,KAAK,MAAM,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC;AAEhC,KAAK,IAAI,GAAG;IACV,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,QAAQ,GAAG;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC7B,CAAC;AAEF,KAAK,MAAM,GAAG;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAkBF,eAAO,MAAM,yBAAyB,sBAUrC,CAAC;AAEF,KAAK,iCAAiC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC;AAClE,MAAM,MAAM,iCAAiC,GAAG,MAAM,CACpD,KAAK,CAAC,OAAO,yBAAyB,EAAE,iCAAiC,CAAC,CAC3E,CAAC;AAEF,eAAO,MAAM,4BAA4B,qBASxC,CAAC;AAEF,KAAK,oCAAoC,GAAG,CAAC,KAAK,EAAE,IAAI,KAAK,MAAM,CAAC;AACpE,MAAM,MAAM,oCAAoC,GAAG,MAAM,CACvD,KAAK,CAAC,OAAO,4BAA4B,EAAE,oCAAoC,CAAC,CACjF,CAAC;AAEF,eAAO,MAAM,WAAW,yBAMvB,CAAC;AAEF,KAAK,mBAAmB,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK,MAAM,CAAC;AACvD,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,WAAW,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAEzF,eAAO,MAAM,kBAAkB,yBAK9B,CAAC;AAEF,KAAK,0BAA0B,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;AAC9D,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,kBAAkB,EAAE,0BAA0B,CAAC,CAAC,CAAC;AAE9G,eAAO,MAAM,iBAAiB,uBAK7B,CAAC;AAEF,KAAK,yBAAyB,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AAC3D,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,iBAAiB,EAAE,yBAAyB,CAAC,CAAC,CAAC;AAE3G,eAAO,MAAM,oBAAoB,kCAIhC,CAAC;AAEF,KAAK,4BAA4B,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AACzE,MAAM,MAAM,4BAA4B,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,oBAAoB,EAAE,4BAA4B,CAAC,CAAC,CAAC"}
@@ -2,22 +2,22 @@
2
2
  * Curry function with stable TypeScript types.
3
3
  * Supports functions with 2-5 parameters and keeps data-last call order.
4
4
  */
5
- type Curry2<Fn> = Fn extends (a: infer A, b: infer B) => infer R ? {
5
+ export type Curry2<Fn> = Fn extends (a: infer A, b: infer B) => infer R ? {
6
6
  (...args: [A]): (b: B) => R;
7
7
  (...args: [A, B]): R;
8
8
  } : never;
9
- type Curry3<Fn> = Fn extends (a: infer A, b: infer B, c: infer C) => infer R ? {
9
+ export type Curry3<Fn> = Fn extends (a: infer A, b: infer B, c: infer C) => infer R ? {
10
10
  (...args: [A]): (b: B) => (c: C) => R;
11
11
  (...args: [A, B]): (c: C) => R;
12
12
  (...args: [A, B, C]): R;
13
13
  } : never;
14
- type Curry4<Fn> = Fn extends (a: infer A, b: infer B, c: infer C, d: infer D) => infer R ? {
14
+ export type Curry4<Fn> = Fn extends (a: infer A, b: infer B, c: infer C, d: infer D) => infer R ? {
15
15
  (...args: [A]): (b: B) => (c: C) => (d: D) => R;
16
16
  (...args: [A, B]): (c: C) => (d: D) => R;
17
17
  (...args: [A, B, C]): (d: D) => R;
18
18
  (...args: [A, B, C, D]): R;
19
19
  } : never;
20
- type Curry5<Fn> = Fn extends (a: infer A, b: infer B, c: infer C, d: infer D, e: infer E) => infer R ? {
20
+ export type Curry5<Fn> = Fn extends (a: infer A, b: infer B, c: infer C, d: infer D, e: infer E) => infer R ? {
21
21
  (...args: [A]): (b: B) => (c: C) => (d: D) => (e: E) => R;
22
22
  (...args: [A, B]): (c: C) => (d: D) => (e: E) => R;
23
23
  (...args: [A, B, C]): (d: D) => (e: E) => R;
@@ -26,7 +26,7 @@ type Curry5<Fn> = Fn extends (a: infer A, b: infer B, c: infer C, d: infer D, e:
26
26
  } : never;
27
27
  type CurryVariadic<Fn extends (...args: any[]) => any> = Fn extends (...args: infer P) => infer R ? <T extends any[]>(...args: T) => T extends P ? R : P extends [...T, ...infer Rest] ? CurryVariadic<(...args: Rest) => R> : never : never;
28
28
  type CurryByArity<Fn extends (...args: any[]) => any> = Parameters<Fn>['length'] extends 2 ? Curry2<Fn> : Parameters<Fn>['length'] extends 3 ? Curry3<Fn> : Parameters<Fn>['length'] extends 4 ? Curry4<Fn> : Parameters<Fn>['length'] extends 5 ? Curry5<Fn> : CurryVariadic<Fn>;
29
- type Curried<Fn extends (...args: any[]) => any> = CurryByArity<Fn>;
29
+ export type Curried<Fn extends (...args: any[]) => any> = CurryByArity<Fn>;
30
30
  declare function curry<Fn extends (...args: any[]) => any>(fn: Fn): Curried<Fn>;
31
31
  export default curry;
32
32
  //# sourceMappingURL=curry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"curry.d.ts","sourceRoot":"","sources":["../../../src/implement/composition/curry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"curry.d.ts","sourceRoot":"","sources":["../../../src/implement/composition/curry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"curry.mjs","sources":["../../../src/implement/composition/curry.ts"],"sourcesContent":["/**\n * Curry function with stable TypeScript types.\n * Supports functions with 2-5 parameters and keeps data-last call order.\n */\n\ntype Curry2<Fn> = Fn extends (a: infer A, b: infer B) => infer R\n ? {\n (...args: [A]): (b: B) => R;\n (...args: [A, B]): R;\n }\n : never;\n\ntype Curry3<Fn> = Fn extends (a: infer A, b: infer B, c: infer C) => infer R\n ? {\n (...args: [A]): (b: B) => (c: C) => R;\n (...args: [A, B]): (c: C) => R;\n (...args: [A, B, C]): R;\n }\n : never;\n\ntype Curry4<Fn> = Fn extends (a: infer A, b: infer B, c: infer C, d: infer D) => infer R\n ? {\n (...args: [A]): (b: B) => (c: C) => (d: D) => R;\n (...args: [A, B]): (c: C) => (d: D) => R;\n (...args: [A, B, C]): (d: D) => R;\n (...args: [A, B, C, D]): R;\n }\n : never;\n\ntype Curry5<Fn> = Fn extends (a: infer A, b: infer B, c: infer C, d: infer D, e: infer E) => infer R\n ? {\n (...args: [A]): (b: B) => (c: C) => (d: D) => (e: E) => R;\n (...args: [A, B]): (c: C) => (d: D) => (e: E) => R;\n (...args: [A, B, C]): (d: D) => (e: E) => R;\n (...args: [A, B, C, D]): (e: E) => R;\n (...args: [A, B, C, D, E]): R;\n }\n : never;\n\ntype CurryVariadic<Fn extends (...args: any[]) => any> = Fn extends (...args: infer P) => infer R\n ? <T extends any[]>(\n ...args: T\n ) => T extends P ? R : P extends [...T, ...infer Rest] ? CurryVariadic<(...args: Rest) => R> : never\n : never;\n\ntype CurryByArity<Fn extends (...args: any[]) => any> = Parameters<Fn>['length'] extends 2\n ? Curry2<Fn>\n : Parameters<Fn>['length'] extends 3\n ? Curry3<Fn>\n : Parameters<Fn>['length'] extends 4\n ? Curry4<Fn>\n : Parameters<Fn>['length'] extends 5\n ? Curry5<Fn>\n : CurryVariadic<Fn>;\n\ntype Curried<Fn extends (...args: any[]) => any> = CurryByArity<Fn>;\n\nfunction curry<Fn extends (...args: any[]) => any>(fn: Fn): Curried<Fn>;\n\n// Implementation\nfunction curry(fn: (...args: any[]) => any, ...args: any[]): any {\n const curried = (accumulated: any[]) => {\n return accumulated.length >= fn.length\n ? fn(...accumulated)\n : (...nextArgs: any[]) => curried([...accumulated, ...nextArgs]);\n };\n\n return args.length === 0 ? curried([]) : curried(args);\n}\n\nexport default curry;\n"],"names":["curry","fn","args","curried","accumulated","nextArgs"],"mappings":"AA4DA,SAASA,EAAMC,MAAgCC,GAAkB;AAC/D,QAAMC,IAAU,CAACC,MACRA,EAAY,UAAUH,EAAG,SAC5BA,EAAG,GAAGG,CAAW,IACjB,IAAIC,MAAoBF,EAAQ,CAAC,GAAGC,GAAa,GAAGC,CAAQ,CAAC;AAGnE,SAAOH,EAAK,WAAW,IAAIC,EAAQ,EAAE,IAAIA,EAAQD,CAAI;AACvD;"}
1
+ {"version":3,"file":"curry.mjs","sources":["../../../src/implement/composition/curry.ts"],"sourcesContent":["/**\n * Curry function with stable TypeScript types.\n * Supports functions with 2-5 parameters and keeps data-last call order.\n */\n\nexport type Curry2<Fn> = Fn extends (a: infer A, b: infer B) => infer R\n ? {\n (...args: [A]): (b: B) => R;\n (...args: [A, B]): R;\n }\n : never;\n\nexport type Curry3<Fn> = Fn extends (a: infer A, b: infer B, c: infer C) => infer R\n ? {\n (...args: [A]): (b: B) => (c: C) => R;\n (...args: [A, B]): (c: C) => R;\n (...args: [A, B, C]): R;\n }\n : never;\n\nexport type Curry4<Fn> = Fn extends (a: infer A, b: infer B, c: infer C, d: infer D) => infer R\n ? {\n (...args: [A]): (b: B) => (c: C) => (d: D) => R;\n (...args: [A, B]): (c: C) => (d: D) => R;\n (...args: [A, B, C]): (d: D) => R;\n (...args: [A, B, C, D]): R;\n }\n : never;\n\nexport type Curry5<Fn> = Fn extends (a: infer A, b: infer B, c: infer C, d: infer D, e: infer E) => infer R\n ? {\n (...args: [A]): (b: B) => (c: C) => (d: D) => (e: E) => R;\n (...args: [A, B]): (c: C) => (d: D) => (e: E) => R;\n (...args: [A, B, C]): (d: D) => (e: E) => R;\n (...args: [A, B, C, D]): (e: E) => R;\n (...args: [A, B, C, D, E]): R;\n }\n : never;\n\ntype CurryVariadic<Fn extends (...args: any[]) => any> = Fn extends (...args: infer P) => infer R\n ? <T extends any[]>(\n ...args: T\n ) => T extends P ? R : P extends [...T, ...infer Rest] ? CurryVariadic<(...args: Rest) => R> : never\n : never;\n\ntype CurryByArity<Fn extends (...args: any[]) => any> = Parameters<Fn>['length'] extends 2\n ? Curry2<Fn>\n : Parameters<Fn>['length'] extends 3\n ? Curry3<Fn>\n : Parameters<Fn>['length'] extends 4\n ? Curry4<Fn>\n : Parameters<Fn>['length'] extends 5\n ? Curry5<Fn>\n : CurryVariadic<Fn>;\n\nexport type Curried<Fn extends (...args: any[]) => any> = CurryByArity<Fn>;\n\nfunction curry<Fn extends (...args: any[]) => any>(fn: Fn): Curried<Fn>;\n\n// Implementation\nfunction curry(fn: (...args: any[]) => any, ...args: any[]): any {\n const curried = (accumulated: any[]) => {\n return accumulated.length >= fn.length\n ? fn(...accumulated)\n : (...nextArgs: any[]) => curried([...accumulated, ...nextArgs]);\n };\n\n return args.length === 0 ? curried([]) : curried(args);\n}\n\nexport default curry;\n"],"names":["curry","fn","args","curried","accumulated","nextArgs"],"mappings":"AA4DA,SAASA,EAAMC,MAAgCC,GAAkB;AAC/D,QAAMC,IAAU,CAACC,MACRA,EAAY,UAAUH,EAAG,SAC5BA,EAAG,GAAGG,CAAW,IACjB,IAAIC,MAAoBF,EAAQ,CAAC,GAAGC,GAAa,GAAGC,CAAQ,CAAC;AAGnE,SAAOH,EAAK,WAAW,IAAIC,EAAQ,EAAE,IAAIA,EAAQD,CAAI;AACvD;"}
@@ -3,16 +3,20 @@ export { default as pipeSideEffect } from './pipeSideEffect';
3
3
  export { default as pipeSideEffectStrict } from './pipeSideEffectStrict';
4
4
  export { default as compose } from './compose';
5
5
  export { default as curry } from './curry';
6
+ export type { Curried, Curry2, Curry3, Curry4, Curry5 } from './curry';
6
7
  export { default as partial } from './partial';
7
8
  export { default as flip } from './flip';
8
9
  export { default as complement } from './complement';
9
10
  export { default as identity } from './identity';
10
11
  export { default as constant } from './constant';
11
12
  export { default as from } from './from';
13
+ export type { FromFn } from './from';
12
14
  export { default as tap } from './tap';
15
+ export { default as tap0 } from './tap0';
13
16
  export { default as once } from './once';
14
17
  export { default as memoize } from './memoize';
15
18
  export { default as SideEffect } from './sideEffect';
16
19
  export { SideEffect as SideEffectClass } from './sideEffect';
17
20
  export { isSideEffect, matchSideEffect, runPipeResult } from './sideEffect';
21
+ export type { MatchHandlers } from './sideEffect';
18
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/implement/composition/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,UAAU,IAAI,eAAe,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/implement/composition/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,YAAY,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,UAAU,IAAI,eAAe,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC5E,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
@@ -1,8 +1,10 @@
1
+ import { FromFn } from './from';
1
2
  type UnaryFn<A, R> = (a: A) => R;
2
3
  type ZeroFn<R> = () => R;
3
4
  type PipeInput<Fns extends UnaryFn<any, any>[]> = Fns extends [UnaryFn<infer A, any>, ...UnaryFn<any, any>[]] ? A : never;
4
5
  type PipeOutput<Fns extends UnaryFn<any, any>[]> = Fns extends [UnaryFn<any, infer R>] ? R : Fns extends [UnaryFn<any, infer R>, ...infer Rest] ? Rest extends [UnaryFn<R, any>, ...UnaryFn<any, any>[]] ? PipeOutput<Rest> : never : never;
5
6
  type Pipe<Fns extends UnaryFn<any, any>[]> = (input: PipeInput<Fns>) => PipeOutput<Fns>;
7
+ type PipeFrom<Fns extends [FromFn<any>, ...UnaryFn<any, any>[]]> = (input?: PipeInput<Fns>) => PipeOutput<Fns>;
6
8
  declare function pipe<R>(ab: ZeroFn<R>): () => R;
7
9
  declare function pipe<B, R>(ab: ZeroFn<B>, bc: UnaryFn<B, R>): () => R;
8
10
  declare function pipe<B, C, R>(ab: ZeroFn<B>, bc: UnaryFn<B, C>, cd: UnaryFn<C, R>): () => R;
@@ -13,6 +15,7 @@ declare function pipe<B, C, D, E, F, G, R>(ab: ZeroFn<B>, bc: UnaryFn<B, C>, cd:
13
15
  declare function pipe<B, C, D, E, F, G, H, R>(ab: ZeroFn<B>, bc: UnaryFn<B, C>, cd: UnaryFn<C, D>, de: UnaryFn<D, E>, ef: UnaryFn<E, F>, fg: UnaryFn<F, G>, gh: UnaryFn<G, H>, hi: UnaryFn<H, R>): () => R;
14
16
  declare function pipe<B, C, D, E, F, G, H, I, R>(ab: ZeroFn<B>, bc: UnaryFn<B, C>, cd: UnaryFn<C, D>, de: UnaryFn<D, E>, ef: UnaryFn<E, F>, fg: UnaryFn<F, G>, gh: UnaryFn<G, H>, hi: UnaryFn<H, I>, ij: UnaryFn<I, R>): () => R;
15
17
  declare function pipe<B, C, D, E, F, G, H, I, J, R>(ab: ZeroFn<B>, bc: UnaryFn<B, C>, cd: UnaryFn<C, D>, de: UnaryFn<D, E>, ef: UnaryFn<E, F>, fg: UnaryFn<F, G>, gh: UnaryFn<G, H>, hi: UnaryFn<H, I>, ij: UnaryFn<I, J>, jk: UnaryFn<J, R>): () => R;
18
+ declare function pipe<Fns extends [FromFn<any>, ...UnaryFn<any, any>[]]>(...funcs: Fns): PipeFrom<Fns>;
16
19
  declare function pipe<A, R>(ab: UnaryFn<A, R>): (a: A) => R;
17
20
  declare function pipe<A, B, R>(ab: UnaryFn<A, B>, bc: UnaryFn<B, R>): (a: A) => R;
18
21
  declare function pipe<A, B, C, R>(ab: UnaryFn<A, B>, bc: UnaryFn<B, C>, cd: UnaryFn<C, R>): (a: A) => R;