2023-06-21 09:28:00 +00:00
|
|
|
// @ts-strict-ignore
|
2023-06-15 14:06:08 +00:00
|
|
|
import { AppPageNav } from "@dashboard/apps/components/AppPage/AppPageNav";
|
2023-05-22 06:35:35 +00:00
|
|
|
import { AppUrls } from "@dashboard/apps/urls";
|
2023-03-01 14:04:53 +00:00
|
|
|
import { AppQuery } from "@dashboard/graphql";
|
|
|
|
import React from "react";
|
|
|
|
|
|
|
|
import HeaderOptions from "./HeaderOptions";
|
|
|
|
|
|
|
|
interface HeaderProps {
|
|
|
|
data: AppQuery["app"];
|
|
|
|
onAppActivateOpen: () => void;
|
|
|
|
onAppDeactivateOpen: () => void;
|
|
|
|
onAppDeleteOpen: () => void;
|
|
|
|
}
|
|
|
|
|
|
|
|
const Header: React.FC<HeaderProps> = ({
|
|
|
|
data,
|
|
|
|
onAppActivateOpen,
|
|
|
|
onAppDeactivateOpen,
|
|
|
|
onAppDeleteOpen,
|
2023-05-22 06:35:35 +00:00
|
|
|
}) => {
|
2023-06-01 18:07:11 +00:00
|
|
|
const getBackButtonUrl = () => {
|
|
|
|
/**
|
|
|
|
* App is null with first render so fallback with HTML-safe fallback
|
|
|
|
*/
|
|
|
|
if (!data?.id) {
|
|
|
|
return "#";
|
|
|
|
}
|
|
|
|
|
|
|
|
const isAppActive = data.isActive;
|
|
|
|
|
|
|
|
return isAppActive
|
|
|
|
? AppUrls.resolveAppUrl(data.id)
|
|
|
|
: AppUrls.resolveAppListUrl();
|
|
|
|
};
|
2023-05-22 06:35:35 +00:00
|
|
|
|
2023-06-20 14:03:42 +00:00
|
|
|
if (!data) {
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
2023-05-22 06:35:35 +00:00
|
|
|
return (
|
|
|
|
<>
|
2023-06-15 14:06:08 +00:00
|
|
|
<AppPageNav
|
|
|
|
name={data.name}
|
|
|
|
supportUrl={data.supportUrl}
|
|
|
|
homepageUrl={data.homepageUrl}
|
|
|
|
author={data.author}
|
|
|
|
appLogoUrl={data.brand?.logo.default}
|
|
|
|
appId={data.id}
|
|
|
|
goBackUrl={getBackButtonUrl()}
|
|
|
|
showMangeAppButton={false}
|
2023-05-22 06:35:35 +00:00
|
|
|
/>
|
2023-06-15 14:06:08 +00:00
|
|
|
|
2023-05-22 06:35:35 +00:00
|
|
|
<HeaderOptions
|
2023-06-20 14:03:42 +00:00
|
|
|
isActive={data.isActive}
|
2023-05-22 06:35:35 +00:00
|
|
|
onAppActivateOpen={onAppActivateOpen}
|
|
|
|
onAppDeactivateOpen={onAppDeactivateOpen}
|
|
|
|
onAppDeleteOpen={onAppDeleteOpen}
|
|
|
|
/>
|
|
|
|
</>
|
|
|
|
);
|
|
|
|
};
|
2023-03-01 14:04:53 +00:00
|
|
|
export default Header;
|