aboutsummaryrefslogtreecommitdiff
path: root/components/anime/watch/primarySide.js
diff options
context:
space:
mode:
authorFactiven <[email protected]>2023-09-13 00:45:53 +0700
committerGitHub <[email protected]>2023-09-13 00:45:53 +0700
commit7327a69b55a20b99b14ee0803d6cf5f8b88c45ef (patch)
treecbcca777593a8cc4b0282e7d85a6fc51ba517e25 /components/anime/watch/primarySide.js
parentUpdate issue templates (diff)
downloadmoopa-7327a69b55a20b99b14ee0803d6cf5f8b88c45ef.tar.xz
moopa-7327a69b55a20b99b14ee0803d6cf5f8b88c45ef.zip
Update v4 - Merge pre-push to main (#71)
* Create build-test.yml * initial v4 commit * update: github workflow * update: push on branch * Update .github/ISSUE_TEMPLATE/bug_report.md * configuring next.config.js file
Diffstat (limited to 'components/anime/watch/primarySide.js')
-rw-r--r--components/anime/watch/primarySide.js45
1 files changed, 33 insertions, 12 deletions
diff --git a/components/anime/watch/primarySide.js b/components/anime/watch/primarySide.js
index b032fd6..a3d9f4f 100644
--- a/components/anime/watch/primarySide.js
+++ b/components/anime/watch/primarySide.js
@@ -9,18 +9,14 @@ import Link from "next/link";
import Skeleton from "react-loading-skeleton";
import Modal from "../../modal";
import AniList from "../../media/aniList";
-import axios from "axios";
export default function PrimarySide({
info,
session,
epiNumber,
- setLoading,
navigation,
- loading,
providerId,
watchId,
- status,
onList,
proxy,
disqus,
@@ -33,15 +29,31 @@ export default function PrimarySide({
const [open, setOpen] = useState(false);
const [skip, setSkip] = useState();
+ const [loading, setLoading] = useState(true);
+
const router = useRouter();
useEffect(() => {
setLoading(true);
async function fetchData() {
if (info) {
- const { data } = await axios.get(
- `/api/consumet/source/${providerId}/${watchId}`
- );
+ const anify = await fetch("/api/v2/source", {
+ method: "POST",
+ headers: {
+ "Content-Type": "application/json",
+ },
+ body: JSON.stringify({
+ source:
+ providerId === "gogoanime" && !watchId.startsWith("/")
+ ? "consumet"
+ : "anify",
+ providerId: providerId,
+ watchId: watchId,
+ episode: epiNumber,
+ id: info.id,
+ sub: dub ? "dub" : "sub",
+ }),
+ }).then((res) => res.json());
const skip = await fetch(
`https://api.aniskip.com/v2/skip-times/${info.idMal}/${parseInt(
@@ -65,10 +77,9 @@ export default function PrimarySide({
setSkip({ op, ed });
- setEpisodeData(data);
+ setEpisodeData(anify);
setLoading(false);
}
- // setMal(malId);
}
fetchData();
@@ -134,7 +145,7 @@ export default function PrimarySide({
<div className="w-full h-full">
<div key={watchId} className="w-full aspect-video bg-black">
{!loading ? (
- episodeData && (
+ navigation && episodeData?.sources?.length !== 0 ? (
<VideoPlayer
session={session}
info={info}
@@ -142,7 +153,6 @@ export default function PrimarySide({
provider={providerId}
id={watchId}
progress={epiNumber}
- stats={status}
skip={skip}
proxy={proxy}
aniId={info.id}
@@ -151,9 +161,20 @@ export default function PrimarySide({
timeWatched={timeWatched}
dub={dub}
/>
+ ) : (
+ <p className="h-full flex-center">
+ Video is not available, please try other providers
+ </p>
)
) : (
- <div className="aspect-video bg-black" />
+ <div className="flex-center aspect-video bg-black">
+ <div className="lds-ellipsis">
+ <div></div>
+ <div></div>
+ <div></div>
+ <div></div>
+ </div>
+ </div>
)}
</div>
<div className="flex flex-col divide-y divide-white/20">