From 6a2fede61fd53253d13460c28df651fe2f9517c6 Mon Sep 17 00:00:00 2001 From: "samuel.gjabel" Date: Fri, 22 Nov 2024 18:36:56 +0700 Subject: [PATCH] fix: typo --- package.json | 2 +- packages/core/types.ts | 2 +- packages/core/use-value.ts | 7 +++++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index dc9dc1e..52da2fa 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "muya", - "version": "2.0.3", + "version": "2.0.4", "author": "samuel.gjabel@gmail.com", "repository": "https://github.com/samuelgjabel/muya", "main": "cjs/index.js", diff --git a/packages/core/types.ts b/packages/core/types.ts index 1bb4bf9..2ce6143 100644 --- a/packages/core/types.ts +++ b/packages/core/types.ts @@ -14,7 +14,7 @@ export interface Cache { export const EMPTY_SELECTOR = (stateValue: T) => stateValue as unknown as S export interface GetState { - (selector?: (stateValue: T) => S): undefined extends S ? T : S + (selector?: (stateValue: T) => S): Awaited /** * Get the cached state value. */ diff --git a/packages/core/use-value.ts b/packages/core/use-value.ts index 54dc9a9..df12f7d 100644 --- a/packages/core/use-value.ts +++ b/packages/core/use-value.ts @@ -2,7 +2,10 @@ import { useDebugValue, useSyncExternalStore } from 'react' import { EMPTY_SELECTOR, type GetState } from './types' import { isError, isPromise } from './utils/is' -export function useValue(state: GetState, selector: (stateValue: T) => S = EMPTY_SELECTOR): undefined extends S ? T : S { +export function useValue( + state: GetState, + selector: (stateValue: T) => S = EMPTY_SELECTOR, +): Awaited { const { emitter } = state const value = useSyncExternalStore( state.emitter.subscribe, @@ -18,5 +21,5 @@ export function useValue(state: GetState, selector: (stateValue: T) => throw value } - return value as undefined extends S ? T : S + return value as Awaited }