You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

51 line
1.3 KiB

  1. import { preloadClaims } from "@/app/api/claims";
  2. // import { preloadSkill, preloadTeamLeads } from "@/app/api/staff";
  3. import SkillSearch from "@/components/SkillSearch";
  4. import { I18nProvider, getServerI18n } from "@/i18n";
  5. import Add from "@mui/icons-material/Add";
  6. import Button from "@mui/material/Button";
  7. import Stack from "@mui/material/Stack";
  8. import Typography from "@mui/material/Typography";
  9. import { Metadata } from "next";
  10. import Link from "next/link";
  11. import { Suspense } from "react";
  12. export const metadata: Metadata = {
  13. title: "Skill",
  14. };
  15. const Skill: React.FC = async () => {
  16. const { t } = await getServerI18n("skill");
  17. // preloadTeamLeads();
  18. // preloadSkill();
  19. return (
  20. <>
  21. <Stack
  22. direction="row"
  23. justifyContent="space-between"
  24. flexWrap="wrap"
  25. rowGap={2}
  26. >
  27. <Typography variant="h4" marginInlineEnd={2}>
  28. {t("Skill")}
  29. </Typography>
  30. <Button
  31. variant="contained"
  32. startIcon={<Add />}
  33. LinkComponent={Link}
  34. href="/settings/skill/create"
  35. >
  36. {t("Create Skill")}
  37. </Button>
  38. </Stack>
  39. <I18nProvider namespaces={["skill", "common"]}>
  40. <Suspense fallback={<SkillSearch.Loading />}>
  41. <SkillSearch />
  42. </Suspense>
  43. </I18nProvider>
  44. </>
  45. );
  46. };
  47. export default Skill;