[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-merchant-backoffice] 01/02: fix routing for non-default instance
From: |
gnunet |
Subject: |
[taler-merchant-backoffice] 01/02: fix routing for non-default instance |
Date: |
Tue, 29 Jun 2021 20:56:07 +0200 |
This is an automated email from the git hooks/post-receive script.
sebasjm pushed a commit to branch master
in repository merchant-backoffice.
commit 22feef1aa742a613d77e6f29f1f4cd9dadf68490
Author: Sebastian <sebasjm@gmail.com>
AuthorDate: Tue Jun 29 15:54:18 2021 -0300
fix routing for non-default instance
---
packages/frontend/src/ApplicationReadyRoutes.tsx | 20 +++++++++++---------
packages/frontend/src/hooks/order.ts | 10 +++++++---
packages/frontend/src/hooks/product.ts | 10 +++++++---
3 files changed, 25 insertions(+), 15 deletions(-)
diff --git a/packages/frontend/src/ApplicationReadyRoutes.tsx
b/packages/frontend/src/ApplicationReadyRoutes.tsx
index 7c17895..7439a2d 100644
--- a/packages/frontend/src/ApplicationReadyRoutes.tsx
+++ b/packages/frontend/src/ApplicationReadyRoutes.tsx
@@ -29,6 +29,7 @@ import { NotYetReadyAppMenu, Menu, NotificationCard } from
'./components/menu';
import { useTranslator } from './i18n';
import { createHashHistory } from 'history';
import { useState } from 'preact/hooks';
+import { CreateStockNoRestock } from './components/form/InputStock.stories';
export function ApplicationReadyRoutes(): VNode {
const i18n = useTranslator();
@@ -61,6 +62,9 @@ export function ApplicationReadyRoutes(): VNode {
if (result.loading) return <NotYetReadyAppMenu title="Loading..." />
+ let admin = true
+ let instanceNameByBackendURL = undefined
+
if (!result.ok) {
const path = new URL(backendURL).pathname
const match = INSTANCE_ID_LOOKUP.exec(path)
@@ -80,24 +84,22 @@ export function ApplicationReadyRoutes(): VNode {
</Fragment>
}
- return <Fragment>
- <Menu instance={match[1]} onLogout={clearTokenAndGoToRoot}
setInstanceName={() => null} />
- <InstanceRoutes id={match[1]} setInstanceName={() => null} />
- </Fragment>
+ admin = false
+ instanceNameByBackendURL = match[1]
}
const history = createHashHistory()
return <Router history={history}>
- <Route default component={DefaultMainRoute}
clearTokenAndGoToRoot={clearTokenAndGoToRoot} />
+ <Route default component={DefaultMainRoute}
clearTokenAndGoToRoot={clearTokenAndGoToRoot} admin={admin}
instanceNameByBackendURL={instanceNameByBackendURL} />
</Router>
}
-function DefaultMainRoute({ clearTokenAndGoToRoot, instance }: any) {
- const [instanceName, setInstanceName] = useState(instance || 'default')
+function DefaultMainRoute({ clearTokenAndGoToRoot, instance, admin,
instanceNameByBackendURL }: any) {
+ const [instanceName, setInstanceName] = useState(instanceNameByBackendURL ||
instance || 'default')
return <Fragment>
- <Menu instance={instanceName} admin onLogout={clearTokenAndGoToRoot}
setInstanceName={setInstanceName} />
- <InstanceRoutes admin id={instanceName} setInstanceName={setInstanceName}
/>
+ <Menu instance={instanceName} admin={admin}
onLogout={clearTokenAndGoToRoot} setInstanceName={setInstanceName} />
+ <InstanceRoutes admin={admin} id={instanceName}
setInstanceName={setInstanceName} />
</Fragment>
}
diff --git a/packages/frontend/src/hooks/order.ts
b/packages/frontend/src/hooks/order.ts
index b81058a..a0d7916 100644
--- a/packages/frontend/src/hooks/order.ts
+++ b/packages/frontend/src/hooks/order.ts
@@ -108,10 +108,14 @@ export function useOrderAPI(): OrderAPI {
}
export function useOrderDetails(oderId: string):
HttpResponse<MerchantBackend.Orders.MerchantOrderStatusResponse> {
- const { url: baseUrl } = useBackendContext();
- const { token, id: instanceId, admin } = useInstanceContext();
+ const { url: baseUrl, token: baseToken } = useBackendContext();
+ const { token: instanceToken, id, admin } = useInstanceContext();
- const url = !admin ? baseUrl : `${baseUrl}/instances/${instanceId}`
+ const { url, token } = !admin ? {
+ url: baseUrl, token: baseToken
+ } : {
+ url: `${baseUrl}/instances/${id}`, token: instanceToken
+ };
const { data, error, isValidating } =
useSWR<HttpResponseOk<MerchantBackend.Orders.MerchantOrderStatusResponse>,
HttpError>([`/private/orders/${oderId}`, token, url], fetcher, {
refreshInterval:0,
diff --git a/packages/frontend/src/hooks/product.ts
b/packages/frontend/src/hooks/product.ts
index 6bc131d..edba27b 100644
--- a/packages/frontend/src/hooks/product.ts
+++ b/packages/frontend/src/hooks/product.ts
@@ -173,10 +173,14 @@ export function useInstanceProducts():
HttpResponse<(MerchantBackend.Products.Pr
}
export function useProductDetails(productId: string):
HttpResponse<MerchantBackend.Products.ProductDetail> {
- const { url: baseUrl } = useBackendContext();
- const { token, id: instanceId, admin } = useInstanceContext();
+ const { url: baseUrl, token: baseToken } = useBackendContext();
+ const { token: instanceToken, id, admin } = useInstanceContext();
- const url = !admin ? baseUrl : `${baseUrl}/instances/${instanceId}`
+ const { url, token } = !admin ? {
+ url: baseUrl, token: baseToken
+ } : {
+ url: `${baseUrl}/instances/${id}`, token: instanceToken
+ };
const { data, error, isValidating } =
useSWR<HttpResponseOk<MerchantBackend.Products.ProductDetail>, HttpError>(
[`/private/products/${productId}`, token, url], fetcher, {
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.