選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

53 行
1.4 KiB

  1. import { fetchAllCustomers, fetchAllSubsidiaries } from "@/app/api/customer";
  2. import { fetchGrades } from "@/app/api/grades";
  3. import {
  4. fetchProjectBuildingTypes,
  5. fetchProjectCategories,
  6. fetchProjectContractTypes,
  7. fetchProjectFundingTypes,
  8. fetchProjectLocationTypes,
  9. fetchProjectServiceTypes,
  10. fetchProjectWorkNatures,
  11. } from "@/app/api/projects";
  12. import { preloadStaff, preloadTeamLeads } from "@/app/api/staff";
  13. import { fetchAllTasks, fetchTaskTemplates } from "@/app/api/tasks";
  14. import CreateProject from "@/components/CreateProject";
  15. import { I18nProvider, getServerI18n } from "@/i18n";
  16. import Typography from "@mui/material/Typography";
  17. import { Metadata } from "next";
  18. export const metadata: Metadata = {
  19. title: "Create Project",
  20. };
  21. const Projects: React.FC = async () => {
  22. const { t } = await getServerI18n("projects");
  23. // Preload necessary dependencies
  24. fetchAllTasks();
  25. fetchTaskTemplates();
  26. fetchProjectCategories();
  27. fetchProjectContractTypes();
  28. fetchProjectFundingTypes();
  29. fetchProjectLocationTypes();
  30. fetchProjectServiceTypes();
  31. fetchProjectBuildingTypes();
  32. fetchProjectWorkNatures();
  33. fetchAllCustomers();
  34. fetchAllSubsidiaries();
  35. fetchGrades();
  36. preloadTeamLeads();
  37. preloadStaff();
  38. return (
  39. <>
  40. <Typography variant="h4">{t("Create Project")}</Typography>
  41. <I18nProvider namespaces={["projects"]}>
  42. <CreateProject />
  43. </I18nProvider>
  44. </>
  45. );
  46. };
  47. export default Projects;