export async function tryCatchAsync<T, E = Error>(
promise: Promise<T>,
): Promise<Result<T, E>> {
try {
const data = await promise;
return { data, error: null };
} catch (error) {
return { data: null, error: error as E };
}
}
export async function tryCatchAsync<T, E = Error>(
promise: () => Promise<T>,
): Promise<Result<T, E>> {
try {
const data = await promise;
return { data, error: null };
} catch (error) {
return { data: null, error: error as E };
}
}
Refs
- https://t3.chat/chat/7c2a80ef-6ab0-4738-a83e-c909d0b2ca0a
- **