library.tsx 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. import { SyntheticEvent, useState } from "react";
  2. import Tab from "@mui/base/TabUnstyled";
  3. import Tabs from "@mui/base/TabsUnstyled";
  4. import TabsList from "@mui/base/TabsListUnstyled";
  5. import TabPanel from "@mui/base/TabPanelUnstyled";
  6. import LibrayList from "components/library/LibrayList";
  7. import styles from "styles/library.module.scss";
  8. const tabs = ["History", "Favorite Books"];
  9. const Library = () => {
  10. const [tab, setTab] = useState(tabs[0]);
  11. const handleTabChange = (
  12. event: SyntheticEvent<Element, Event>,
  13. value: string | number | boolean
  14. ) => {
  15. setTab(value as string);
  16. };
  17. return (
  18. <Tabs
  19. component={"main"}
  20. value={tab}
  21. onChange={handleTabChange}
  22. >
  23. <header className={styles["library-header"]}>
  24. <div className="container">
  25. <h1>{tab}</h1>
  26. <TabsList className="tabs">
  27. {tabs.map((item) => (
  28. <Tab key={item} value={item} className="tab">
  29. {item}
  30. </Tab>
  31. ))}
  32. </TabsList>
  33. </div>
  34. </header>
  35. <div className="container">
  36. {tabs.map((item) => (
  37. <TabPanel key={item} value={item}>
  38. <LibrayList type={item} />
  39. </TabPanel>
  40. ))}
  41. </div>
  42. </Tabs>
  43. );
  44. // <main className="container">
  45. // <h2 className="novel-title">Popular This Week</h2>
  46. // <ul className="novel-list">
  47. // {/* {(data?.data || []).map((item) => (
  48. // <NovelItem
  49. // key={item.uri}
  50. // slug={item.uri}
  51. // img={item.img}
  52. // name={item.name}
  53. // />
  54. // ))} */}
  55. // </ul>
  56. // </main>
  57. };
  58. export default Library;