Comments (8)
@ASafaeirad
You're right
it could be much more general than being just for promises
but in that case we should have one for general use and one specifically for promises
because the return type won't really work out this way
if we change it to
type TryCatch = <T, E>(f: () => T, onErr: () => E) => E | T
this way if the T
is of type e.g Promise<string>
and the E is number
then the return type would be Promise<string> | number
which is not what we want
so in conclusion we need a new function for each wrapper type
I'll fix the signature
from toolbox.
Will look into this one, feel free to assign
from toolbox.
This is an old issue, we gave up with namespaces.
from toolbox.
It seems nice 👍
But why should it work with promises?
from toolbox.
I think we also need a namespace for each type so that we can have such thing
import * as N from 'toolbox/Nullable'
import { asyncTryCatch, tryCatch } from 'toolbox/functions'
tryCatch()
asyncTryCatch()
N.tryCatch()
N.asyncTryCatch()
from toolbox.
It makes sense. I agree.
from toolbox.
Do we really need this syntax?
N.asyncTryCatch()
N.tryCatch()
Cause right now nullable functions are exposed like this:
import { concatArrays } from '@fullstacksjs/toolbox'
If we want to have a syntax like N.tryCatch()
and also prevent confusion with the normal tryCatch
, we need to export a single nullable object rather than its utilities, which is breaking.
Or maybe I'm just missing something
from toolbox.
🎉 This issue has been resolved in version 4.6.0 🎉
The release is available on:
Your semantic-release bot 📦🚀
from toolbox.
Related Issues (20)
- toCamelCase not working for UPPER_CASE_SNAKE HOT 1
- pruneNullOrEmpty HOT 2
- compact
- Typescript 5 ESM Support HOT 1
- Documentation HOT 1
- Test and coverage CI
- isNull Guard on Nested Nullable Chain HOT 1
- The automated release is failing 🚨 HOT 4
- AsyncVoidFn
- Code Coverage Badge
- [Proposal]: debounce HOT 4
- [Proposal]: throttle HOT 3
- [Proposal]: uniq HOT 12
- [Proposal]: toggleArrayValue HOT 4
- [Proposal]: toDecimal fallback
- [Proposal]: merge HOT 3
- [Bug]: External `tryOr` link in the docs HOT 1
- [Proposal]: bindArgs (only-args, exclude `thisArg`) HOT 2
- shuffle
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from toolbox.