You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A clear and concise description of what the question is. In general we recommend to use Stack Overflow for questions. Questions typically are processed with less priority.
In the above code, I expect the type of the func to be Record<string, string>, but the actual type check returns Record<string, string> | undefined, how can I avoid the undefined?
typeInferCurriedFromRecipe<Recipe,UsePatchesextendsboolean>=Recipeextends(draft: infer DraftState, ...args: infer RestArgs)=>any// verify return type
? ReturnType<Recipe>extendsValidRecipeReturnTypePossiblyPromise<DraftState>
? (base: Immutable<DraftState>,
...args: RestArgs)=>PromisifyReturnIfNeeded<DraftState,Recipe,UsePatches>// N.b. we return mutable draftstate, in case the recipe's first arg isn't read only, and that isn't expected as output either
: never// incorrect return type
: never// not a function
recipes should not use a default argument, as they are never seen by produce. produce would indeed in such a case indeed return undefined, so the inferred type is correct.
🙋♂ Question
A clear and concise description of what the question is. In general we recommend to use Stack Overflow for questions. Questions typically are processed with less priority.
In the above code, I expect the type of the func to be
Record<string, string>
, but the actual type check returnsRecord<string, string> | undefined
, how can I avoid the undefined?This problem only occurs in 9.x versions
Link to repro
https://codesandbox.io/s/immer-sandbox-forked-n1okz2?file=/src/index.ts
Environment
We only accept questions against the latest Immer version.
setUseProxies(true)
setUseProxies(false)
(ES5 only)The text was updated successfully, but these errors were encountered: