aboutsummaryrefslogtreecommitdiff
path: root/packages/aml-backoffice-ui/src/utils/errors.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'packages/aml-backoffice-ui/src/utils/errors.tsx')
-rw-r--r--packages/aml-backoffice-ui/src/utils/errors.tsx77
1 files changed, 0 insertions, 77 deletions
diff --git a/packages/aml-backoffice-ui/src/utils/errors.tsx b/packages/aml-backoffice-ui/src/utils/errors.tsx
deleted file mode 100644
index b67d61a5f..000000000
--- a/packages/aml-backoffice-ui/src/utils/errors.tsx
+++ /dev/null
@@ -1,77 +0,0 @@
-import {
- ErrorType,
- HttpResponse,
- HttpResponsePaginated,
- notifyError,
- useTranslationContext,
-} from "@gnu-taler/web-util/browser";
-import { VNode, h } from "preact";
-import { Loading } from "./Loading.js";
-import { HttpStatusCode, TranslatedString } from "@gnu-taler/taler-util";
-import { AmlExchangeBackend } from "../types.js";
-
-export function handleNotOkResult<Error extends AmlExchangeBackend.AmlError>(
- i18n: ReturnType<typeof useTranslationContext>["i18n"],
-): <T>(
- result: HttpResponsePaginated<T, Error> | HttpResponse<T, Error>,
-) => VNode {
- return function handleNotOkResult2<T>(
- result: HttpResponsePaginated<T, Error> | HttpResponse<T, Error>,
- ): VNode {
- if (result.loading) return <Loading />;
- if (!result.ok) {
- switch (result.type) {
- case ErrorType.TIMEOUT: {
- notifyError(i18n.str`Request timeout, try again later.`, undefined);
- break;
- }
- case ErrorType.CLIENT: {
- if (result.status === HttpStatusCode.Unauthorized) {
- notifyError(i18n.str`Wrong credentials`, undefined);
- return <div> not authorized</div>;
- }
- const errorData = result.payload;
- notifyError(
- i18n.str`Could not load due to a client error`,
- errorData.hint as TranslatedString,
- JSON.stringify(result),
- );
- break;
- }
- case ErrorType.SERVER: {
- notifyError(
- i18n.str`Server returned with error`,
- result.payload.hint as TranslatedString,
- JSON.stringify(result.payload),
- );
- break;
- }
- case ErrorType.UNREADABLE: {
- notifyError(
- i18n.str`Unexpected error.`,
- `Response from ${result.info?.url} is unreadable, http status: ${result.status}` as TranslatedString,
- JSON.stringify(result),
- );
- break;
- }
- case ErrorType.UNEXPECTED: {
- notifyError(
- i18n.str`Unexpected error.`,
- `Diagnostic from ${result.info?.url} is "${result.message}"` as TranslatedString,
- JSON.stringify(result),
- );
- break;
- }
- default: {
- assertUnreachable(result);
- }
- }
-
- return <div>error</div>;
- }
- return <div />;
- };
-}
-export function assertUnreachable(x: never): never {
- throw new Error("Didn't expect to get here");
-}