fix: remove checking buf until I can figure out how to not use buf.lock
This commit is contained in:
@ -7,24 +7,23 @@ export function cn(...inputs: ClassValue[]) {
|
||||
|
||||
export async function attempt<T, E = Error>(
|
||||
func: (() => T) | Promise<T>,
|
||||
handler?: ((error: E) => void) | 'throw',
|
||||
): Promise<{ result: T | null, error: E | null }> {
|
||||
handler?: ((error: E) => void) | 'throw'
|
||||
): Promise<{ result: T | null; error: E | null }> {
|
||||
try {
|
||||
const result = await (func instanceof Promise ? func : Promise.resolve().then(func))
|
||||
return { result, error: null }
|
||||
}
|
||||
catch (error) {
|
||||
const result = await (func instanceof Promise ? func : Promise.resolve().then(func));
|
||||
return { result, error: null };
|
||||
} catch (error) {
|
||||
if (handler === 'throw') {
|
||||
throw error
|
||||
throw error;
|
||||
}
|
||||
if (handler) {
|
||||
handler(error as E)
|
||||
handler(error as E);
|
||||
}
|
||||
|
||||
return { result: null, error: error as E }
|
||||
return { result: null, error: error as E };
|
||||
}
|
||||
}
|
||||
|
||||
export function delay(ms: number) {
|
||||
return new Promise(resolve => setTimeout(resolve, ms));
|
||||
}
|
||||
return new Promise((resolve) => setTimeout(resolve, ms));
|
||||
}
|
||||
|
Reference in New Issue
Block a user