feat: Add common package * Add isEdge, safeTry and dataCache to new common package * Add eslint and move prettier config * Fix yarn lock * Clean up tests * Add lint-staged config to common * Add missing dependencies Approved-by: Joakim Jäderberg
12 lines
257 B
TypeScript
12 lines
257 B
TypeScript
export type SafeTryResult<T> = Promise<
|
|
[T, undefined] | [undefined, Error | unknown]
|
|
>
|
|
|
|
export async function safeTry<T>(func: Promise<T>): SafeTryResult<T> {
|
|
try {
|
|
return [await func, undefined]
|
|
} catch (err) {
|
|
return [undefined, err]
|
|
}
|
|
}
|