aboutsummaryrefslogtreecommitdiffstats
path: root/node_modules/rxjs/src/internal/operators/mergeWith.ts
diff options
context:
space:
mode:
authorPinapelz <yukais@pinapelz.com>2025-06-28 17:26:46 -0700
committerPinapelz <yukais@pinapelz.com>2025-06-28 17:43:56 -0700
commite4fa1e69e7ebfb627c7198fd1a9881e9327ec4d4 (patch)
tree06284a538a6008eca75051399e47db4e5d50301c /node_modules/rxjs/src/internal/operators/mergeWith.ts
initial commit: scaffolding
Diffstat (limited to 'node_modules/rxjs/src/internal/operators/mergeWith.ts')
-rw-r--r--node_modules/rxjs/src/internal/operators/mergeWith.ts49
1 files changed, 49 insertions, 0 deletions
diff --git a/node_modules/rxjs/src/internal/operators/mergeWith.ts b/node_modules/rxjs/src/internal/operators/mergeWith.ts
new file mode 100644
index 0000000..b0c8142
--- /dev/null
+++ b/node_modules/rxjs/src/internal/operators/mergeWith.ts
@@ -0,0 +1,49 @@
+import { ObservableInputTuple, OperatorFunction } from '../types';
+import { merge } from './merge';
+
+/**
+ * Merge the values from all observables to a single observable result.
+ *
+ * Creates an observable, that when subscribed to, subscribes to the source
+ * observable, and all other sources provided as arguments. All values from
+ * every source are emitted from the resulting subscription.
+ *
+ * When all sources complete, the resulting observable will complete.
+ *
+ * When any source errors, the resulting observable will error.
+ *
+ * ## Example
+ *
+ * Joining all outputs from multiple user input event streams
+ *
+ * ```ts
+ * import { fromEvent, map, mergeWith } from 'rxjs';
+ *
+ * const clicks$ = fromEvent(document, 'click').pipe(map(() => 'click'));
+ * const mousemoves$ = fromEvent(document, 'mousemove').pipe(map(() => 'mousemove'));
+ * const dblclicks$ = fromEvent(document, 'dblclick').pipe(map(() => 'dblclick'));
+ *
+ * mousemoves$
+ * .pipe(mergeWith(clicks$, dblclicks$))
+ * .subscribe(x => console.log(x));
+ *
+ * // result (assuming user interactions)
+ * // 'mousemove'
+ * // 'mousemove'
+ * // 'mousemove'
+ * // 'click'
+ * // 'click'
+ * // 'dblclick'
+ * ```
+ *
+ * @see {@link merge}
+ *
+ * @param otherSources the sources to combine the current source with.
+ * @return A function that returns an Observable that merges the values from
+ * all given Observables.
+ */
+export function mergeWith<T, A extends readonly unknown[]>(
+ ...otherSources: [...ObservableInputTuple<A>]
+): OperatorFunction<T, T | A[number]> {
+ return merge(...otherSources);
+}
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage