diff --git a/package-lock.json b/package-lock.json index fd6e132..0645c8b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@josepot/react-rxjs", - "version": "0.2.0", + "version": "0.2.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 58825a5..e91c6c2 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "version": "0.2.0", + "version": "0.2.1", "sideEffects": false, "repository": { "type": "git", diff --git a/src/connectFactoryObservable.ts b/src/connectFactoryObservable.ts index 5e09517..205f2bd 100644 --- a/src/connectFactoryObservable.ts +++ b/src/connectFactoryObservable.ts @@ -4,16 +4,18 @@ import { BehaviorObservable, } from "./operators/distinct-share-replay" import { ConnectorOptions, defaultConnectorOptions } from "./options" -import { useObservable } from "./" +import { useObservable, SUSPENSE } from "./" export function connectFactoryObservable< - I, A extends (number | string | boolean | null)[], O >( getObservable: (...args: A) => Observable, _options?: ConnectorOptions, -): [(...args: A) => O | I, (...args: A) => Observable] { +): [ + (...args: A) => Exclude, + (...args: A) => Observable, +] { const options = { ...defaultConnectorOptions, ..._options, diff --git a/src/useObservable.ts b/src/useObservable.ts index df49677..f0c799e 100644 --- a/src/useObservable.ts +++ b/src/useObservable.ts @@ -29,7 +29,7 @@ const getEnhancedSource = ( export const useObservable = ( source$: Observable, unsubscribeGraceTime = 200, -) => { +): Exclude => { const [state, setState] = useState(SUSPENSE as any) useEffect(() => { @@ -44,6 +44,6 @@ export const useObservable = ( }, [source$, unsubscribeGraceTime]) return state !== (SUSPENSE as any) - ? state + ? (state as any) : getEnhancedSource(source$, unsubscribeGraceTime).getValue() }