Skip to content

Commit 3db9ef6

Browse files
authored
Merge pull request #63 from janglad/bug/distributive-action-types
make types non distributive
2 parents d23051e + 51dd313 commit 3db9ef6

File tree

2 files changed

+21
-6
lines changed

2 files changed

+21
-6
lines changed

.changeset/ten-beds-exercise.md

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
"safe-fn": patch
3+
"safe-fn-react": patch
4+
---
5+
6+
Fix type issues with the hook (related to distribution)

packages/safe-fn/src/result.ts

+15-6
Original file line numberDiff line numberDiff line change
@@ -60,14 +60,23 @@ export type InferActionErrError<T> =
6060
/**
6161
* Converts a `ResultAsync<T,E>` to a `<ActionResult<T,E>`.
6262
*/
63-
export type ResultAsyncToActionResult<T> =
64-
T extends ResultAsync<infer D, infer E> ? ActionResult<D, E> : never;
63+
export type ResultAsyncToActionResult<T> = [T] extends [
64+
ResultAsync<infer D, infer E>,
65+
]
66+
? ActionResult<D, E>
67+
: never;
6568

66-
export type ActionResultToResultAsync<T> =
67-
T extends ActionResult<infer D, infer E> ? ResultAsync<D, E> : never;
69+
export type ActionResultToResultAsync<T> = [T] extends [
70+
ActionResult<infer D, infer E>,
71+
]
72+
? ResultAsync<D, E>
73+
: never;
6874

69-
export type ActionResultToResult<T> =
70-
T extends ActionResult<infer D, infer E> ? Result<D, E> : never;
75+
export type ActionResultToResult<T> = [T] extends [
76+
ActionResult<infer D, infer E>,
77+
]
78+
? Result<D, E>
79+
: never;
7180

7281
/**
7382
* Converts an `ActionResult<T,E>` to a `Result<T,E>`.

0 commit comments

Comments
 (0)