-
-
Notifications
You must be signed in to change notification settings - Fork 924
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
refactor: simplify/improve effect types
I will refer to all of `create(Computed|RenderEffect|Effect|Memo)` as `createEffect` for brevity. - Simplified `createEffect` such that it no longer needs the use of rest params or extra generics (for `createMemo`). - Added a default type `any` in `createEffect<Next = any, ...>` to replicate the default typescript behaviour of providing `any` as a fallback when parameters are not explicitly typed and cannot be inferred. This should feel more familiar than falling back to `unknown`. This "fixes" certain test cases where the `createEffect` parameter was inferred as `unknown`. - Renamed the generic types of `Computation` to be consistent with other generic types containing `Prev, Next` generics (was confusingly `Init, Next` even though `Init` was used as `Prev` would be used). - Corrected instances of `Memo<Init, Next>` to `Memo<Init | Next, Next>`. - Added test cases for failing partial inference (it isn't in typescript yet)
- Loading branch information
1 parent
9cd3f26
commit 4564834
Showing
2 changed files
with
62 additions
and
63 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters