fix(types): align isPromise
return type with its logic
#175
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Tip
The owner of this PR can publish a preview release by commenting
/publish
in this PR. Afterwards, anyone can try it out by runningpnpm add radashi@pr<PR_NUMBER>
.Summary
Change the return type from
Promise<any>
toPromiseLike<unknown>
. This is more representative of the actual check being done.Note: This type guard assumes a "then" method is only ever used for promise-like behavior. Please avoid using this function if you can't ensure such a thing.
Related issue, if any:
Inspired by https://github.com/orgs/radashi-org/discussions/73. This PR does not resolve that issue. I still think we need to rename this function to
isPromiseLike
, but that is a breaking change, so it needs its own PR.For any code change,
Does this PR introduce a breaking change?
No
Bundle impact
src/async/tryit.ts
src/typed/isPromise.ts
Footnotes
Function size includes the
import
dependencies of the function. ↩