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

59 行
1.8KB

  1. import { Tabs } from "@mui/material";
  2. import { QRサービス券駐車場グループ管理Context } from "contexts/page/dashboard/parking/QRサービス券駐車場グループ管理Context";
  3. import usePage from "hooks/usePage";
  4. import { PageID, TabID } from "pages";
  5. import { useContext, useMemo } from "react";
  6. import { getPath } from "routes/path";
  7. import { TabProps, useTab } from "./tabutil";
  8. export default function useQRサービス券駐車場グループ管理Tabs() {
  9. const {} = useContext(QRサービス券駐車場グループ管理Context);
  10. const { tabId } = usePage();
  11. const tabs: TabProps[] = useMemo(() => {
  12. const list: TabProps[] = [
  13. {
  14. label: "一覧",
  15. tabId: TabID.QRサービス券駐車場グループ管理_一覧,
  16. path: getPath([
  17. PageID.QRサービス券駐車場グループ管理,
  18. TabID.QRサービス券駐車場グループ管理_一覧,
  19. ]),
  20. },
  21. {
  22. label: "新規登録",
  23. tabId: TabID.QRサービス券駐車場グループ管理_新規登録,
  24. path: getPath([
  25. PageID.QRサービス券駐車場グループ管理,
  26. TabID.QRサービス券駐車場グループ管理_新規登録,
  27. ]),
  28. },
  29. ];
  30. if (tabId === TabID.QRサービス券駐車場グループ管理_詳細) {
  31. list.push({
  32. label: "詳細",
  33. tabId: TabID.QRサービス券駐車場グループ管理_詳細,
  34. });
  35. }
  36. return list;
  37. }, [tabId]);
  38. const { elements, getTabIndex } = useTab(tabs);
  39. return {
  40. element: (
  41. <Tabs
  42. value={getTabIndex}
  43. textColor="inherit"
  44. // scrollButtons
  45. // allowScrollButtonsMobile
  46. variant="scrollable"
  47. >
  48. {elements}
  49. </Tabs>
  50. ),
  51. };
  52. }