openreplay/frontend/app/components/Client/Projects/ProjectTabContent.tsx
Andrey Babushkin fd5c0c9747
Add lokalisation (#3092)
* applied eslint

* add locales and lint the project

* removed error boundary

* updated locales

* fix min files

* fix locales
2025-03-06 17:43:15 +01:00

36 lines
1.2 KiB
TypeScript

import React from 'react';
import { useStore } from '@/mstore';
import { observer } from 'mobx-react-lite';
import ProjectTabTracking from 'Components/Client/Projects/ProjectTabTracking';
import CustomFields from 'Components/Client/CustomFields';
import ProjectTags from 'Components/Client/Projects/ProjectTags';
import ProjectCaptureRate from 'Components/Client/Projects/ProjectCaptureRate';
import { Empty } from 'antd';
const ProjectTabContent: React.FC = () => {
const { projectsStore } = useStore();
const { pid, tab } = projectsStore.config;
const project = React.useMemo(
() => projectsStore.list.find((p) => p.projectId === pid),
[pid, projectsStore.list],
);
if (!project) {
return <Empty description="Project not found" />;
}
const tabContent: Record<string, React.ReactNode> = React.useMemo(
() => ({
installation: <ProjectTabTracking project={project} />,
captureRate: <ProjectCaptureRate project={project} />,
metadata: <CustomFields />,
tags: <ProjectTags />,
}),
[project],
);
return <div>{tabContent[tab] || <Empty description="Tab not found" />}</div>;
};
export default observer(ProjectTabContent);