Agent extension api (#5281)

Co-authored-by: Douwe Osinga <douwe@squareup.com>
This commit is contained in:
Douwe Osinga
2025-10-29 11:16:06 -04:00
committed by GitHub
parent c45ce49430
commit e7ca2e3bf7
22 changed files with 435 additions and 992 deletions
+23
View File
@@ -0,0 +1,23 @@
export async function safeJsonParse<T>(
response: Response,
errorMessage: string = 'Failed to parse server response'
): Promise<T> {
try {
return (await response.json()) as T;
} catch (error) {
if (error instanceof SyntaxError) {
throw new Error(errorMessage);
}
throw error;
}
}
export function errorMessage(err: Error | unknown, default_value?: string) {
if (err instanceof Error) {
return err.message;
} else if (typeof err === 'object' && err !== null && 'message' in err) {
return String(err.message);
} else {
return default_value || String(err);
}
}