diff --git a/app/api/config.ts b/app/api/config.ts
index e75acb0..d4b4e1b 100644
--- a/app/api/config.ts
+++ b/app/api/config.ts
@@ -81,5 +81,6 @@ export const ENDPOINTS = {
watching: `${API_PREFIX}/discover/watching`,
recommendations: `${API_PREFIX}/discover/recommendations`,
collections: `${API_PREFIX}/collection/all`,
+ schedule: `${API_PREFIX}/schedule`,
}
};
diff --git a/app/components/Discovery/Modal/ScheduleModal.tsx b/app/components/Discovery/Modal/ScheduleModal.tsx
new file mode 100644
index 0000000..1b60d49
--- /dev/null
+++ b/app/components/Discovery/Modal/ScheduleModal.tsx
@@ -0,0 +1,71 @@
+"use client";
+
+import { ENDPOINTS } from "#/api/config";
+import { useSWRfetcher } from "#/api/utils";
+import useSWR from "swr";
+import { Modal, ModalBody, ModalHeader } from "flowbite-react";
+import { Spinner } from "#/components/Spinner/Spinner";
+import { ReleaseCourusel } from "#/components/ReleaseCourusel/ReleaseCourusel";
+type ModalProps = {
+ isOpen: boolean;
+ setIsOpen: (value: boolean) => void;
+};
+
+export const ScheduleModal = ({ isOpen, setIsOpen }: ModalProps) => {
+ const { data, isLoading, error } = useSWR(
+ ENDPOINTS.discover.schedule,
+ useSWRfetcher,
+ {
+ revalidateOnFocus: false,
+ revalidateIfStale: false,
+ revalidateOnReconnect: false,
+ }
+ );
+
+ return (
+ setIsOpen(false)}
+ size="7xl"
+ dismissible
+ >
+ Расписание
+
+ {!error ?
+ isLoading ?
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+ : "Ошибка загрузки"}
+
+
+ );
+};
diff --git a/app/pages/Discover.tsx b/app/pages/Discover.tsx
index 13f33c9..ca7cb7a 100644
--- a/app/pages/Discover.tsx
+++ b/app/pages/Discover.tsx
@@ -3,6 +3,7 @@ import { CollectionsOfTheWeek } from "#/components/Discovery/CollectionsOfTheWee
import { DiscussingToday } from "#/components/Discovery/DiscussingToday";
import { InterestingCarousel } from "#/components/Discovery/InterestingCarousel";
import { PopularModal } from "#/components/Discovery/Modal/PopularModal";
+import { ScheduleModal } from "#/components/Discovery/Modal/ScheduleModal";
import { RecommendedCarousel } from "#/components/Discovery/RecommendedCarousel";
import { WatchingNowCarousel } from "#/components/Discovery/WatchingNowCarousel";
import { Button } from "flowbite-react";
@@ -12,6 +13,7 @@ import { useState } from "react";
export const DiscoverPage = () => {
const router = useRouter();
const [PopularModalOpen, setPopularModalOpen] = useState(false);
+ const [ScheduleModalOpen, setScheduleModalOpen] = useState(false);
return (
<>
@@ -25,7 +27,11 @@ export const DiscoverPage = () => {
Популярное
-