Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 4 additions & 19 deletions libs/rx-stateful/src/lib/types/guards.ts
Original file line number Diff line number Diff line change
@@ -1,24 +1,9 @@
import {RxStatefulConfig, SourceTriggerConfig} from "./types";
import {isObservable, Observable, Subject} from "rxjs";
import { SourceTriggerConfig } from './types';


export function isObservableOrSubjectGuard(arg: any): arg is Observable<any> | Subject<any>{
return isObservable(arg) || arg instanceof Subject;
}

export function isRxStatefulConfigOrObsGuard<T,E>(arg: any): arg is RxStatefulConfig<T, E>{
// write type guard for RxStatefulConfig
return !(isObservableOrSubjectGuard(arg))
}

export function isRxStatefulConfigOrSourceTriggerConfigGuard<T,E>(arg: any): arg is RxStatefulConfig<T, E>{
// write type guard for RxStatefulConfig
return (arg as any)?.trigger !== undefined
}
export function isFunctionGuard(value: any): value is (...args: any[]) => any {
return typeof value === 'function';
return typeof value === 'function';
}

export function isSourceTriggerConfigGuard<T>(arg: any): arg is SourceTriggerConfig<T>{
return arg?.sourceTriggerConfig !== undefined;
export function isSourceTriggerConfigGuard<T>(arg: any): arg is SourceTriggerConfig<T> {
return arg?.sourceTriggerConfig !== undefined;
}