diff options
| author | zephex-alt <[email protected]> | 2024-05-06 22:02:15 +0000 |
|---|---|---|
| committer | GitHub <[email protected]> | 2024-05-06 22:02:15 +0000 |
| commit | d58aa441e59f4f04f126c23da0864a5ff682e50a (patch) | |
| tree | f772df95c9e29df62f25bc0a16e6cad78e2fd69e /src/app/movies/components | |
| parent | added MOVIES support. SERIES support coming soon! (diff) | |
| download | dramalama-d58aa441e59f4f04f126c23da0864a5ff682e50a.tar.xz dramalama-d58aa441e59f4f04f126c23da0864a5ff682e50a.zip | |
minor fixes
Diffstat (limited to 'src/app/movies/components')
| -rw-r--r-- | src/app/movies/components/cacher.js | 17 | ||||
| -rw-r--r-- | src/app/movies/components/popular.jsx | 3 | ||||
| -rw-r--r-- | src/app/movies/components/search_2.jsx | 3 | ||||
| -rw-r--r-- | src/app/movies/components/trending.jsx | 3 |
4 files changed, 26 insertions, 0 deletions
diff --git a/src/app/movies/components/cacher.js b/src/app/movies/components/cacher.js new file mode 100644 index 0000000..169508a --- /dev/null +++ b/src/app/movies/components/cacher.js @@ -0,0 +1,17 @@ +import { getInfoURL } from "../../../../utils/movie_urls"; + +const PreFetchMovieInfo = async (data) => { + try { + const fetchPromises = data.results.map(async (element) => { + const link = `${getInfoURL(element.id)}`; + await fetch(link, { next: { revalidate: 21600 } }); + }); + + await Promise.all(fetchPromises); + console.log("Movie info pre-fetched successfully!"); + } catch (error) { + console.error("Error occurred while pre-fetching video links:", error); + } +}; + +export default PreFetchMovieInfo; diff --git a/src/app/movies/components/popular.jsx b/src/app/movies/components/popular.jsx index 0773780..04d9cf8 100644 --- a/src/app/movies/components/popular.jsx +++ b/src/app/movies/components/popular.jsx @@ -1,10 +1,12 @@ import { POPULAR } from "../../../../utils/movie_urls"; +import PreFetchMovieInfo from "./cacher"; import styles from "../styles/pop_trend.module.css"; import Image from "next/image"; import Link from "next/link"; export default async function POPULAR_MOVIES() { const data = await get_popular(); + PreFetchMovieInfo(data); return ( <main className={styles.Main}> @@ -29,6 +31,7 @@ export default async function POPULAR_MOVIES() { backgroundRepeat: "no-repeat", backgroundSize: "cover", }} + className={styles.MovieEntryPrev} > <div className={styles.MovieEntry}> <Image diff --git a/src/app/movies/components/search_2.jsx b/src/app/movies/components/search_2.jsx index 1c2ff88..0eb66fb 100644 --- a/src/app/movies/components/search_2.jsx +++ b/src/app/movies/components/search_2.jsx @@ -1,12 +1,14 @@ "use server"; import { SEARCH } from "../../../../utils/movie_urls"; +import PreFetchMovieInfo from "./cacher"; import Image from "next/image"; import Link from "next/link"; import styles from "../styles/search.module.css"; const SearchResults = async (title) => { const data = await get_search_results(title); + PreFetchMovieInfo(data); return ( <div className={styles.MovieSearchResultsContainer}> {data && @@ -26,6 +28,7 @@ const SearchResults = async (title) => { borderRadius: "0.5rem", overflow: "hidden", }} + className={styles.MovieResultsPrev} > <section className={styles.MovieEntry}> <p>{item.title || item.original_title}</p> diff --git a/src/app/movies/components/trending.jsx b/src/app/movies/components/trending.jsx index b12d068..be2a2e1 100644 --- a/src/app/movies/components/trending.jsx +++ b/src/app/movies/components/trending.jsx @@ -1,10 +1,12 @@ import { TRENDING } from "../../../../utils/movie_urls"; +import PreFetchMovieInfo from "./cacher"; import styles from "../styles/pop_trend.module.css"; import Link from "next/link"; import Image from "next/image"; export default async function TREDNING_MOVIES() { const data = await get_popular(); + PreFetchMovieInfo(data); return ( <main className={styles.Main}> @@ -29,6 +31,7 @@ export default async function TREDNING_MOVIES() { backgroundRepeat: "no-repeat", backgroundSize: "cover", }} + className={styles.MovieEntryPrev} > <div className={styles.MovieEntry}> <Image |