aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2022-10-31 16:06:22 +0100
committerFlorian Dold <florian@dold.me>2022-10-31 16:06:22 +0100
commitd3855a1861799e5ca6972ea1b7fa1475835460ba (patch)
tree51b126cea8c11fd77e8a3d5bf65e0f523f191b02
parent6e7928062f5bb93769d2960c77af95d5959a64a4 (diff)
demobank-ui: fix error reporting
-rw-r--r--Makefile31
-rw-r--r--packages/demobank-ui/src/pages/home/index.tsx17
-rw-r--r--packages/taler-wallet-cli/Makefile5
3 files changed, 17 insertions, 36 deletions
diff --git a/Makefile b/Makefile
index 04ae43c81..05f179624 100644
--- a/Makefile
+++ b/Makefile
@@ -1,8 +1,5 @@
# This Makefile has been placed in the public domain.
-src = src
-poname = taler-wallet-webex
-
tsc = node_modules/typescript/bin/tsc
pogen = node_modules/@gnu-taler/pogen/bin/pogen.js
typedoc = node_modules/typedoc/bin/typedoc
@@ -82,30 +79,10 @@ webextension-dev:
pnpm install --frozen-lockfile --filter @gnu-taler/taler-wallet-webextension...
pnpm run --filter @gnu-taler/taler-wallet-webextension... dev
-.PHONY: i18n
-i18n: compile
- # extract translatable strings
- find $(src) \( -name '*.ts' -or -name '*.tsx' \) ! -name '*.d.ts' \
- | xargs node $(pogen) \
- | msguniq \
- | msgmerge src/i18n/poheader - \
- > src/i18n/$(poname).pot
- # merge existing translations
- @for pofile in src/i18n/*.po; do \
- echo merging $$pofile; \
- msgmerge -o $$pofile $$pofile src/i18n/$(poname).pot; \
- done;
- # generate .ts file containing all translations
- cat src/i18n/strings-prelude > src/i18n/strings.ts
- @for pofile in src/i18n/*.po; do \
- echo appending $$pofile; \
- ./contrib/po2ts $$pofile >> src/i18n/strings.ts; \
- done;
- ./node_modules/.bin/prettier --config .prettierrc --write src/i18n/strings.ts
-
-# Some commands are only available when ./configure has been run
-
-
.PHONY: lint
lint:
./node_modules/.bin/eslint --ext '.js,.ts,.tsx' 'src'
+
+
+install:
+ @echo Please run \'make install\' from one of the directories in packages/\'
diff --git a/packages/demobank-ui/src/pages/home/index.tsx b/packages/demobank-ui/src/pages/home/index.tsx
index 0eb7e389d..2da48f3ab 100644
--- a/packages/demobank-ui/src/pages/home/index.tsx
+++ b/packages/demobank-ui/src/pages/home/index.tsx
@@ -31,7 +31,7 @@ import { QR } from "../../components/QR.js";
import { useLocalStorage, useNotNullLocalStorage } from "../../hooks/index.js";
import { Translate, useTranslator } from "../../i18n/index.js";
import "../../scss/main.scss";
-import { Amounts, parsePaytoUri } from "@gnu-taler/taler-util";
+import { Amounts, HttpStatusCode, parsePaytoUri } from "@gnu-taler/taler-util";
interface BankUiSettings {
allowRegistrations: boolean;
@@ -2119,7 +2119,7 @@ function Account(Props: any): VNode {
// revalidateOnFocus: false,
// revalidateOnReconnect: false,
});
- const [pageState, pageStateSetter] = useContext(PageContext);
+ const [pageState, setPageState] = useContext(PageContext);
const { withdrawalInProgress, withdrawalId, isLoggedIn, talerWithdrawUri } =
pageState;
const i18n = useTranslator();
@@ -2141,7 +2141,7 @@ function Account(Props: any): VNode {
*/
switch (error.status) {
case 404: {
- pageStateSetter((prevState: PageStateType) => ({
+ setPageState((prevState: PageStateType) => ({
...prevState,
hasError: true,
isLoggedIn: false,
@@ -2166,8 +2166,9 @@ function Account(Props: any): VNode {
(cache as any).clear();
return <p>Profile not found...</p>;
}
- case 401: {
- pageStateSetter((prevState: PageStateType) => ({
+ case HttpStatusCode.Unauthorized:
+ case HttpStatusCode.Forbidden: {
+ setPageState((prevState: PageStateType) => ({
...prevState,
hasError: true,
isLoggedIn: false,
@@ -2178,10 +2179,10 @@ function Account(Props: any): VNode {
return <p>Wrong credentials...</p>;
}
default: {
- pageStateSetter((prevState: PageStateType) => ({
+ setPageState((prevState: PageStateType) => ({
...prevState,
hasError: true,
- // isLoggedIn: false,
+ isLoggedIn: false,
error: {
title: i18n`Account information could not be retrieved.`,
debug: JSON.stringify(error),
@@ -2249,7 +2250,7 @@ function Account(Props: any): VNode {
{Props.children}
<PaymentOptions
backendState={backendState}
- pageStateSetter={pageStateSetter}
+ pageStateSetter={setPageState}
/>
</CurrencyContext.Provider>
</div>
diff --git a/packages/taler-wallet-cli/Makefile b/packages/taler-wallet-cli/Makefile
index f898d0174..b910a82bd 100644
--- a/packages/taler-wallet-cli/Makefile
+++ b/packages/taler-wallet-cli/Makefile
@@ -1,7 +1,10 @@
# This Makefile has been placed in the public domain.
+-include ../../.config.mk
include .config.mk
+$(info prefix is $(prefix))
+
all:
@echo use 'make install' to build and install taler-wallet-cli
@@ -22,6 +25,6 @@ install:
install -d $(install_target)/node_modules/taler-wallet-cli/dist
install ./dist/taler-wallet-cli.js $(install_target)/node_modules/taler-wallet-cli/dist/
install ./dist/taler-wallet-cli.js.map $(install_target)/node_modules/taler-wallet-cli/dist/
- install ./bin/taler-wallet-cli $(install_target)/node_modules/taler-wallet-cli/bin/
+ install ./bin/taler-wallet-cli.js $(install_target)/node_modules/taler-wallet-cli/bin/
ln -sf $(install_target)/node_modules/taler-wallet-cli/bin/taler-wallet-cli $(prefix)/bin/taler-wallet-cli
endif