saleor-apps-redis_apl/apps/invoices/src/modules/app-configuration/views/app-config.view.tsx
2023-09-06 12:22:54 +00:00

60 lines
1.8 KiB
TypeScript

import { Box, Text } from "@saleor/macaw-ui/next";
import { DefaultShopAddress } from "../../shop-info/ui/default-shop-address";
import { PerChannelConfigList } from "../../channels/ui/per-channel-config-list";
import { actions, useAppBridge } from "@saleor/app-sdk/app-bridge";
import { Layout } from "@saleor/apps-ui";
export const AppConfigView = () => {
const { appBridge } = useAppBridge();
return (
<Box>
<Text as={"h1"} variant={"hero"} marginBottom={5}>
Configuration
</Text>
<Text as={"p"} marginBottom={1.5}>
The Invoices App will generate invoices for each order, for which{" "}
<code>INVOICE_REQUESTED</code> event will be triggered
</Text>
<Layout.AppSection
marginTop={10}
heading={"Default address of the shop"}
sideContent={
<Text as={"p"} marginBottom={1.5}>
By default it will use{" "}
<a
href={"#"}
onClick={() => {
appBridge?.dispatch(
actions.Redirect({
to: "/site-settings",
}),
);
}}
>
site settings
</a>{" "}
address, but each channel can be configured separately
</Text>
}
>
<DefaultShopAddress />
</Layout.AppSection>
<Layout.AppSection
marginTop={10}
heading={"Shop address per channel"}
sideContent={
<Text>
Configure custom billing address for each channel. If not set, default shop address will
be used
</Text>
}
>
<Layout.AppSectionCard>
<PerChannelConfigList />
</Layout.AppSectionCard>
</Layout.AppSection>
</Box>
);
};