You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
success/packages/excalidraw/sync/utils.ts

19 lines
389 B
TypeScript

export const Utils = {
try<T>(cb: () => T): [T, null] | [null, Error] {
try {
const result = cb();
return [result, null];
} catch (error) {
if (error instanceof Error) {
return [null, error];
}
if (typeof error === "string") {
return [null, new Error(error)];
}
return [null, new Error("Unknown error")];
}
},
};