Skip to content

@epikodelabs/streamix


@epikodelabs/streamix / src/public-api / compose

Function: compose()

Call Signature

compose<T>(): Operator<T, T>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:55

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T = any

Returns

Operator<T, T>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A>(op1): Operator<T, A>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:56

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

Parameters

op1

Operator<T, A>

Returns

Operator<T, A>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B>(op1, op2): Operator<T, B>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:57

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

Returns

Operator<T, B>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C>(op1, op2, op3): Operator<T, C>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:58

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

Returns

Operator<T, C>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D>(op1, op2, op3, op4): Operator<T, D>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:59

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

Returns

Operator<T, D>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D, E>(op1, op2, op3, op4, op5): Operator<T, E>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:60

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

E

E

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

Returns

Operator<T, E>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D, E, F>(op1, op2, op3, op4, op5, op6): Operator<T, F>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:61

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

E

E

F

F

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

Returns

Operator<T, F>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D, E, F, G>(op1, op2, op3, op4, op5, op6, op7): Operator<T, G>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:62

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

E

E

F

F

G

G

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

Returns

Operator<T, G>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D, E, F, G, H>(op1, op2, op3, op4, op5, op6, op7, op8): Operator<T, H>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:63

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

Returns

Operator<T, H>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D, E, F, G, H, I>(op1, op2, op3, op4, op5, op6, op7, op8, op9): Operator<T, I>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:64

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

Returns

Operator<T, I>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D, E, F, G, H, I, J>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10): Operator<T, J>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:65

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

Returns

Operator<T, J>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D, E, F, G, H, I, J, K>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10, op11): Operator<T, K>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:66

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

K

K

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

op11

Operator<J, K>

Returns

Operator<T, K>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D, E, F, G, H, I, J, K, L>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10, op11, op12): Operator<T, L>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:67

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

K

K

L

L

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

op11

Operator<J, K>

op12

Operator<K, L>

Returns

Operator<T, L>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D, E, F, G, H, I, J, K, L, M>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10, op11, op12, op13): Operator<T, M>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:68

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

K

K

L

L

M

M

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

op11

Operator<J, K>

op12

Operator<K, L>

op13

Operator<L, M>

Returns

Operator<T, M>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D, E, F, G, H, I, J, K, L, M, N>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10, op11, op12, op13, op14): Operator<T, N>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:69

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

K

K

L

L

M

M

N

N

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

op11

Operator<J, K>

op12

Operator<K, L>

op13

Operator<L, M>

op14

Operator<M, N>

Returns

Operator<T, N>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10, op11, op12, op13, op14, op15): Operator<T, O>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:70

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

K

K

L

L

M

M

N

N

O

O

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

op11

Operator<J, K>

op12

Operator<K, L>

op13

Operator<L, M>

op14

Operator<M, N>

op15

Operator<N, O>

Returns

Operator<T, O>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Call Signature

compose<T, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10, op11, op12, op13, op14, op15, op16): Operator<T, P>

Defined in: projects/libraries/streamix/src/lib/atoms/compose.ts:71

Composes multiple operators into a single reusable operator.

The input type is inferred from the first operator. Up to 16 operators are fully typed via overloads; beyond that the generic fallback is used.

Type Parameters

T

T

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

K

K

L

L

M

M

N

N

O

O

P

P

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

op11

Operator<J, K>

op12

Operator<K, L>

op13

Operator<L, M>

op14

Operator<M, N>

op15

Operator<N, O>

op16

Operator<O, P>

Returns

Operator<T, P>

A single Operator that runs the composed chain.

Example

ts
const searchPipeline = compose(
  debounce(300),
  distinctUntilChanged(),
  switchMap(search)
);

pipe(query, searchPipeline);

Released under the GNU AGPL v3 or later.