From ea510fd5b8d1653ed10252c180e6a11cec1a18d1 Mon Sep 17 00:00:00 2001 From: Valik3201 Date: Sat, 10 Feb 2024 12:30:15 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20Valik320?= =?UTF-8?q?1/goit-react-hw-05-movies@c6cd3da2a9700e8656e4e01338f2f672a2243?= =?UTF-8?q?e1c=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- asset-manifest.json | 26 +++++++++---------- index.html | 2 +- static/js/135.cb65adea.chunk.js | 2 -- static/js/135.cb65adea.chunk.js.map | 1 - static/js/135.d56e912d.chunk.js | 2 ++ static/js/135.d56e912d.chunk.js.map | 1 + static/js/317.8b06e6f5.chunk.js | 2 -- static/js/317.8b06e6f5.chunk.js.map | 1 - static/js/317.a164986f.chunk.js | 2 ++ static/js/317.a164986f.chunk.js.map | 1 + ...be57ba4b.chunk.js => 53.4c78e644.chunk.js} | 4 +-- static/js/53.4c78e644.chunk.js.map | 1 + static/js/53.be57ba4b.chunk.js.map | 1 - static/js/783.1b77d798.chunk.js | 2 -- static/js/783.1b77d798.chunk.js.map | 1 - static/js/783.f7118fb9.chunk.js | 2 ++ static/js/783.f7118fb9.chunk.js.map | 1 + ...8f47b897.chunk.js => 83.2eb59950.chunk.js} | 4 +-- static/js/83.2eb59950.chunk.js.map | 1 + static/js/83.8f47b897.chunk.js.map | 1 - static/js/main.0a6cb666.js | 3 +++ ...CENSE.txt => main.0a6cb666.js.LICENSE.txt} | 0 static/js/main.0a6cb666.js.map | 1 + static/js/main.451c90df.js | 3 --- static/js/main.451c90df.js.map | 1 - 25 files changed, 33 insertions(+), 33 deletions(-) delete mode 100644 static/js/135.cb65adea.chunk.js delete mode 100644 static/js/135.cb65adea.chunk.js.map create mode 100644 static/js/135.d56e912d.chunk.js create mode 100644 static/js/135.d56e912d.chunk.js.map delete mode 100644 static/js/317.8b06e6f5.chunk.js delete mode 100644 static/js/317.8b06e6f5.chunk.js.map create mode 100644 static/js/317.a164986f.chunk.js create mode 100644 static/js/317.a164986f.chunk.js.map rename static/js/{53.be57ba4b.chunk.js => 53.4c78e644.chunk.js} (52%) create mode 100644 static/js/53.4c78e644.chunk.js.map delete mode 100644 static/js/53.be57ba4b.chunk.js.map delete mode 100644 static/js/783.1b77d798.chunk.js delete mode 100644 static/js/783.1b77d798.chunk.js.map create mode 100644 static/js/783.f7118fb9.chunk.js create mode 100644 static/js/783.f7118fb9.chunk.js.map rename static/js/{83.8f47b897.chunk.js => 83.2eb59950.chunk.js} (51%) create mode 100644 static/js/83.2eb59950.chunk.js.map delete mode 100644 static/js/83.8f47b897.chunk.js.map create mode 100644 static/js/main.0a6cb666.js rename static/js/{main.451c90df.js.LICENSE.txt => main.0a6cb666.js.LICENSE.txt} (100%) create mode 100644 static/js/main.0a6cb666.js.map delete mode 100644 static/js/main.451c90df.js delete mode 100644 static/js/main.451c90df.js.map diff --git a/asset-manifest.json b/asset-manifest.json index 1461daa..cad6f03 100644 --- a/asset-manifest.json +++ b/asset-manifest.json @@ -1,12 +1,12 @@ { "files": { "main.css": "/goit-react-hw-05-movies/static/css/main.9ba94ecf.css", - "main.js": "/goit-react-hw-05-movies/static/js/main.451c90df.js", - "static/js/53.be57ba4b.chunk.js": "/goit-react-hw-05-movies/static/js/53.be57ba4b.chunk.js", - "static/js/135.cb65adea.chunk.js": "/goit-react-hw-05-movies/static/js/135.cb65adea.chunk.js", - "static/js/783.1b77d798.chunk.js": "/goit-react-hw-05-movies/static/js/783.1b77d798.chunk.js", - "static/js/83.8f47b897.chunk.js": "/goit-react-hw-05-movies/static/js/83.8f47b897.chunk.js", - "static/js/317.8b06e6f5.chunk.js": "/goit-react-hw-05-movies/static/js/317.8b06e6f5.chunk.js", + "main.js": "/goit-react-hw-05-movies/static/js/main.0a6cb666.js", + "static/js/53.4c78e644.chunk.js": "/goit-react-hw-05-movies/static/js/53.4c78e644.chunk.js", + "static/js/135.d56e912d.chunk.js": "/goit-react-hw-05-movies/static/js/135.d56e912d.chunk.js", + "static/js/783.f7118fb9.chunk.js": "/goit-react-hw-05-movies/static/js/783.f7118fb9.chunk.js", + "static/js/83.2eb59950.chunk.js": "/goit-react-hw-05-movies/static/js/83.2eb59950.chunk.js", + "static/js/317.a164986f.chunk.js": "/goit-react-hw-05-movies/static/js/317.a164986f.chunk.js", "static/js/128.f30358b4.chunk.js": "/goit-react-hw-05-movies/static/js/128.f30358b4.chunk.js", "static/js/461.739dedd0.chunk.js": "/goit-react-hw-05-movies/static/js/461.739dedd0.chunk.js", "static/js/280.b2487061.chunk.js": "/goit-react-hw-05-movies/static/js/280.b2487061.chunk.js", @@ -14,18 +14,18 @@ "static/media/GeistMonoVariableVF.woff2": "/goit-react-hw-05-movies/static/media/GeistMonoVariableVF.6405987f6394ae5b6c56.woff2", "index.html": "/goit-react-hw-05-movies/index.html", "main.9ba94ecf.css.map": "/goit-react-hw-05-movies/static/css/main.9ba94ecf.css.map", - "main.451c90df.js.map": "/goit-react-hw-05-movies/static/js/main.451c90df.js.map", - "53.be57ba4b.chunk.js.map": "/goit-react-hw-05-movies/static/js/53.be57ba4b.chunk.js.map", - "135.cb65adea.chunk.js.map": "/goit-react-hw-05-movies/static/js/135.cb65adea.chunk.js.map", - "783.1b77d798.chunk.js.map": "/goit-react-hw-05-movies/static/js/783.1b77d798.chunk.js.map", - "83.8f47b897.chunk.js.map": "/goit-react-hw-05-movies/static/js/83.8f47b897.chunk.js.map", - "317.8b06e6f5.chunk.js.map": "/goit-react-hw-05-movies/static/js/317.8b06e6f5.chunk.js.map", + "main.0a6cb666.js.map": "/goit-react-hw-05-movies/static/js/main.0a6cb666.js.map", + "53.4c78e644.chunk.js.map": "/goit-react-hw-05-movies/static/js/53.4c78e644.chunk.js.map", + "135.d56e912d.chunk.js.map": "/goit-react-hw-05-movies/static/js/135.d56e912d.chunk.js.map", + "783.f7118fb9.chunk.js.map": "/goit-react-hw-05-movies/static/js/783.f7118fb9.chunk.js.map", + "83.2eb59950.chunk.js.map": "/goit-react-hw-05-movies/static/js/83.2eb59950.chunk.js.map", + "317.a164986f.chunk.js.map": "/goit-react-hw-05-movies/static/js/317.a164986f.chunk.js.map", "128.f30358b4.chunk.js.map": "/goit-react-hw-05-movies/static/js/128.f30358b4.chunk.js.map", "461.739dedd0.chunk.js.map": "/goit-react-hw-05-movies/static/js/461.739dedd0.chunk.js.map", "280.b2487061.chunk.js.map": "/goit-react-hw-05-movies/static/js/280.b2487061.chunk.js.map" }, "entrypoints": [ "static/css/main.9ba94ecf.css", - "static/js/main.451c90df.js" + "static/js/main.0a6cb666.js" ] } \ No newline at end of file diff --git a/index.html b/index.html index 9cb8696..e3369f1 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -Movie Search
\ No newline at end of file +Movie Search
\ No newline at end of file diff --git a/static/js/135.cb65adea.chunk.js b/static/js/135.cb65adea.chunk.js deleted file mode 100644 index 8bead98..0000000 --- a/static/js/135.cb65adea.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgoit_react_hw_05_movies=self.webpackChunkgoit_react_hw_05_movies||[]).push([[135],{7935:function(e,r,t){t.d(r,{C:function(){return u}});var a=t(1413),n=t(4925),s=(t(2791),t(152)),i=t(2758),l=t(184),o=["className","variant"],c=(0,s.j)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function u(e){var r=e.className,t=e.variant,s=(0,n.Z)(e,o);return(0,l.jsx)("div",(0,a.Z)({className:(0,i.cn)(c({variant:t}),r)},s))}},2778:function(e,r,t){t.d(r,{$h:function(){return g},h$:function(){return p},Sw:function(){return y},xD:function(){return j}});var a=t(1928),n=t(1413),s=t(4925),i=t(2791),l=t(152),o=t(2758),c=t(184),u=["className","variant"],d=["className"],f=["className"],m=(0,l.j)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),v=i.forwardRef((function(e,r){var t=e.className,a=e.variant,i=(0,s.Z)(e,u);return(0,c.jsx)("div",(0,n.Z)({ref:r,role:"alert",className:(0,o.cn)(m({variant:a}),t)},i))}));v.displayName="Alert";var x=i.forwardRef((function(e,r){var t=e.className,a=(0,s.Z)(e,d);return(0,c.jsx)("div",(0,n.Z)({ref:r,className:(0,o.cn)("mb-1 font-medium leading-none tracking-tight",t)},a))}));x.displayName="AlertTitle";var h=i.forwardRef((function(e,r){var t=e.className,a=(0,s.Z)(e,f);return(0,c.jsx)("div",(0,n.Z)({ref:r,className:(0,o.cn)("text-sm [&_p]:leading-relaxed",t)},a))}));h.displayName="AlertDescription";var g=function(e){var r=e.message;return(0,c.jsxs)(v,{variant:"destructive",className:"max-w-2xl",children:[(0,c.jsx)(a.LPM,{className:"h-4 w-4"}),(0,c.jsx)(x,{children:"Error"}),(0,c.jsx)(h,{children:r})]})},p=function(){return(0,c.jsxs)(v,{className:"max-w-2xl",children:[(0,c.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,c.jsx)(x,{children:"No Search Results"}),(0,c.jsx)(h,{children:"Your search did not match any movies. Please try again with different keywords or filters."})]})},y=function(){return(0,c.jsxs)(v,{className:"max-w-2xl mt-8",children:[(0,c.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,c.jsx)(x,{children:"No Cast Information"}),(0,c.jsx)(h,{children:"There is no information available about the cast for this movie."})]})},j=function(){return(0,c.jsxs)(v,{className:"max-w-2xl mt-8",children:[(0,c.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,c.jsx)(x,{children:"No Reviews Yet"}),(0,c.jsx)(h,{children:"There are currently no reviews available for this movie."})]})}},4321:function(e,r,t){t.d(r,{a:function(){return i}});var a=t(1928),n=t(9329),s=t(184),i=function(){return(0,s.jsxs)(n.z,{className:"my-4",disabled:!0,children:[(0,s.jsx)(a.BGW,{className:"mr-2 h-4 w-4 animate-spin"}),"Please wait"]})}},4633:function(e,r,t){var a=t(1087),n=t(7935),s=t(184);r.Z=function(e){var r=e.movie;return(0,s.jsx)(a.rU,{to:"/movies/".concat(r.id),children:(0,s.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,s.jsx)("div",{className:"overflow-hidden rounded-lg",children:(0,s.jsx)("img",{src:r.poster_path?"https://image.tmdb.org/t/p/original".concat(r.poster_path):"https://placehold.co/342x513?text=".concat(r.title||r.name),alt:r.title||r.name,className:"h-auto w-auto object-cover transition-all hover:scale-105"})}),r.media_type&&(0,s.jsx)("div",{className:"flex-none",children:(0,s.jsx)(n.C,{children:r.media_type.charAt(0).toUpperCase()+r.media_type.slice(1)})}),(0,s.jsxs)("div",{className:"flex flex-col gap-x-0.5",children:[(0,s.jsx)("h3",{className:"scroll-m-20 text-lg font-bold tracking-tight",children:r.title||r.name}),(0,s.jsxs)("h4",{className:"text-sm text-muted-foreground font-bold",children:[r.release_date&&new Date(r.release_date).getFullYear(),r.first_air_date&&new Date(r.first_air_date).getFullYear()]})]})]})},r.id)}},9135:function(e,r,t){t.r(r),t.d(r,{default:function(){return w}});var a=t(1413),n=t(5861),s=t(9439),i=t(4687),l=t.n(i),o=t(2791),c=t(1087),u=t(3984),d=t(4390),f=function(){var e=(0,n.Z)(l().mark((function e(r){var t,n,s;return l().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=(0,a.Z)((0,a.Z)({},d._),{},{params:{query:r.query,include_adult:r.include_adult||!1,language:r.language||"en-US",primary_release_year:r.primary_release_year||"",page:r.page||1,region:r.region||"",year:r.year||""}}),e.next=3,d.o.get("/search/movie",t);case 3:return n=e.sent,s=n.data,e.abrupt("return",s.results);case 6:case"end":return e.stop()}}),e)})));return function(r){return e.apply(this,arguments)}}(),m=t(4633),v=t(9329),x=t(4925),h=t(2758),g=t(184),p=["className","type"],y=o.forwardRef((function(e,r){var t=e.className,n=e.type,s=(0,x.Z)(e,p);return(0,g.jsx)("input",(0,a.Z)({type:n,className:(0,h.cn)("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",t),ref:r},s))}));y.displayName="Input";var j=t(4321),b=t(2778),N=t(1928),w=function(){var e=(0,o.useRef)(null),r=(0,o.useRef)(null),t=(0,c.lr)(),i=(0,s.Z)(t,2),d=i[0],x=i[1],h=(0,u.a)({queryKey:["searchMovies"],queryFn:function(){var t=(0,n.Z)(l().mark((function t(){var a,n;return l().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,f({query:null===(a=e.current)||void 0===a?void 0:a.value.trim(),include_adult:!1,language:"en-US",primary_release_year:null===(n=r.current)||void 0===n?void 0:n.value.trim(),page:1,region:"",year:""});case 2:return t.abrupt("return",t.sent);case 3:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}()}),p=h.data,w=h.isLoading,_=h.isError,Z=h.error,k=h.refetch,I=function(){var t=(0,n.Z)(l().mark((function t(n){var s,i;return l().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n.preventDefault(),s=e.current.value.trim(),i=r.current.value.trim(),x((0,a.Z)({query:s},i&&{year:i})),k({query:s,include_adult:!1,language:"en-US",primary_release_year:i,page:1,region:"",year:""});case 5:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}();return(0,o.useEffect)((function(){var t=d.get("query")||"",a=d.get("year")||"";e.current.value=t,r.current.value=a}),[d]),(0,g.jsxs)("div",{children:[(0,g.jsx)("h1",{className:"scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl pb-8",children:"Search Movies"}),(0,g.jsx)("form",{onSubmit:I,children:(0,g.jsxs)("div",{className:"flex flex-col sm:flex-row w-full max-w-2xl items-start gap-2 pb-8",children:[(0,g.jsx)(y,{type:"text",ref:e,placeholder:"Enter movie title"}),(0,g.jsx)(y,{type:"text",ref:r,placeholder:"Enter release year"}),(0,g.jsxs)(v.z,{type:"submit",children:[(0,g.jsx)(N._Ve,{className:"mr-2 h-4 w-4"}),"Search"]})]})}),w&&(0,g.jsx)(j.a,{}),_&&(0,g.jsx)(b.$h,{message:Z.message}),d.has("query")&&0===(null===p||void 0===p?void 0:p.length)&&(0,g.jsx)(b.h$,{}),p&&!w&&(0,g.jsx)("div",{className:'className="grid grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 gap-4',children:null===p||void 0===p?void 0:p.map((function(e){return(0,g.jsx)(m.Z,{movie:e},e.id)}))})]})}},4390:function(e,r,t){t.d(r,{_:function(){return n},o:function(){return a.Z}});var a=t(5294);a.Z.defaults.baseURL="https://api.themoviedb.org/3";var n={headers:{accept:"application/json",Authorization:"Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ"}}}}]); -//# sourceMappingURL=135.cb65adea.chunk.js.map \ No newline at end of file diff --git a/static/js/135.cb65adea.chunk.js.map b/static/js/135.cb65adea.chunk.js.map deleted file mode 100644 index 4e95827..0000000 --- a/static/js/135.cb65adea.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/135.cb65adea.chunk.js","mappings":"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","sources":["@/components/ui/badge.jsx","@/components/ui/alert.jsx","components/Alert.jsx","components/Loader.jsx","components/MovieItem.jsx","services/searchMovies.js","@/components/ui/input.jsx","pages/Movies.jsx","services/api.js"],"sourcesContent":["import * as React from \"react\"\nimport { cva } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n destructive:\n \"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80\",\n outline: \"text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Badge({\n className,\n variant,\n ...props\n}) {\n return (
);\n}\n\nexport { Badge, badgeVariants }\n","import * as React from 'react';\nimport { cva } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst alertVariants = cva(\n 'relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7',\n {\n variants: {\n variant: {\n default: 'bg-background text-foreground',\n destructive:\n 'border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nconst Alert = React.forwardRef(({ className, variant, ...props }, ref) => (\n \n));\nAlert.displayName = 'Alert';\n\nconst AlertTitle = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertTitle.displayName = 'AlertTitle';\n\nconst AlertDescription = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertDescription.displayName = 'AlertDescription';\n\nexport { Alert, AlertTitle, AlertDescription };\n","import {\n ExclamationTriangleIcon,\n InfoCircledIcon,\n} from '@radix-ui/react-icons';\n\nimport { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';\n\nexport const AlertDestructive = ({ message }) => {\n return (\n \n \n Error\n {message}\n \n );\n};\n\nexport const AlertInfo = () => {\n return (\n \n \n No Search Results\n \n Your search did not match any movies. Please try again with different\n keywords or filters.\n \n \n );\n};\n\nexport const AlertNoCast = () => {\n return (\n \n \n No Cast Information\n \n There is no information available about the cast for this movie.\n \n \n );\n};\n\nexport const AlertNoReviews = () => {\n return (\n \n \n No Reviews Yet\n \n There are currently no reviews available for this movie.\n \n \n );\n};\n","import { ReloadIcon } from '@radix-ui/react-icons';\n\nimport { Button } from '@/components/ui/button';\n\nexport const Loader = () => {\n return (\n \n );\n};\n","import { Link } from 'react-router-dom';\n\nimport { Badge } from '@/components/ui/badge';\n\nconst MovieItem = ({ movie }) => {\n return (\n \n
\n
\n \n
\n {movie.media_type && (\n
\n \n {movie.media_type.charAt(0).toUpperCase() +\n movie.media_type.slice(1)}\n \n
\n )}\n\n
\n

\n {movie.title || movie.name}\n

\n

\n {movie.release_date && new Date(movie.release_date).getFullYear()}\n {movie.first_air_date &&\n new Date(movie.first_air_date).getFullYear()}\n

\n
\n
\n \n );\n};\n\nexport default MovieItem;\n","import { axios, baseOptions } from './api';\n\nconst searchMovies = async queryParams => {\n const options = {\n ...baseOptions,\n params: {\n query: queryParams.query,\n include_adult: queryParams.include_adult || false,\n language: queryParams.language || 'en-US',\n primary_release_year: queryParams.primary_release_year || '',\n page: queryParams.page || 1,\n region: queryParams.region || '',\n year: queryParams.year || '',\n },\n };\n\n const { data } = await axios.get('/search/movie', options);\n return data.results;\n};\n\nexport { searchMovies };\n","import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst Input = React.forwardRef(({ className, type, ...props }, ref) => {\n return (\n ()\n );\n})\nInput.displayName = \"Input\"\n\nexport { Input }\n","import { useRef, useEffect } from 'react';\nimport { useSearchParams } from 'react-router-dom';\nimport { useQuery } from '@tanstack/react-query';\nimport { searchMovies } from 'services/searchMovies';\n\nimport MovieItem from 'components/MovieItem';\n\nimport { Button } from '@/components/ui/button';\nimport { Input } from '@/components/ui/input';\n\nimport { Loader } from 'components/Loader';\nimport { AlertDestructive, AlertInfo } from 'components/Alert';\n\nimport { MagnifyingGlassIcon } from '@radix-ui/react-icons';\n\nconst Movies = () => {\n const searchInputRef = useRef(null);\n const yearInputRef = useRef(null);\n const [searchParams, setSearchParams] = useSearchParams();\n\n const { data, isLoading, isError, error, refetch } = useQuery({\n queryKey: ['searchMovies'],\n queryFn: async () => {\n return await searchMovies({\n query: searchInputRef.current?.value.trim(),\n include_adult: false,\n language: 'en-US',\n primary_release_year: yearInputRef.current?.value.trim(),\n page: 1,\n region: '',\n year: '',\n });\n },\n });\n\n const handleSearch = async e => {\n e.preventDefault();\n const searchQuery = searchInputRef.current.value.trim();\n const releaseYear = yearInputRef.current.value.trim();\n\n setSearchParams({\n query: searchQuery,\n ...(releaseYear && { year: releaseYear }),\n });\n\n refetch({\n query: searchQuery,\n include_adult: false,\n language: 'en-US',\n primary_release_year: releaseYear,\n page: 1,\n region: '',\n year: '',\n });\n };\n\n useEffect(() => {\n const q = searchParams.get('query') || '';\n const year = searchParams.get('year') || '';\n searchInputRef.current.value = q;\n yearInputRef.current.value = year;\n }, [searchParams]);\n\n return (\n
\n

\n Search Movies\n

\n
\n
\n \n \n \n
\n
\n {isLoading && }\n {isError && }\n {searchParams.has('query') && data?.length === 0 && }\n {data && !isLoading && (\n
\n {data?.map(movie => (\n \n ))}\n
\n )}\n
\n );\n};\n\nexport default Movies;\n","import axios from 'axios';\n\naxios.defaults.baseURL = 'https://api.themoviedb.org/3';\n\nconst baseOptions = {\n headers: {\n accept: 'application/json',\n Authorization:\n 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ',\n },\n};\n\nexport { axios, baseOptions };\n"],"names":["badgeVariants","cva","variants","variant","default","secondary","destructive","outline","defaultVariants","Badge","_ref","className","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","cn","alertVariants","Alert","React","ref","role","displayName","AlertTitle","_ref2","_excluded2","AlertDescription","_ref3","_excluded3","AlertDestructive","message","_jsxs","children","ExclamationTriangleIcon","AlertInfo","InfoCircledIcon","AlertNoCast","AlertNoReviews","Loader","Button","disabled","ReloadIcon","movie","Link","to","concat","id","src","poster_path","title","name","alt","media_type","charAt","toUpperCase","slice","release_date","Date","getFullYear","first_air_date","searchMovies","_asyncToGenerator","_regeneratorRuntime","_callee","queryParams","options","_yield$axios$get","data","_context","prev","next","baseOptions","params","query","include_adult","language","primary_release_year","page","region","year","axios","sent","abrupt","results","stop","_x","apply","arguments","Input","type","searchInputRef","useRef","yearInputRef","_useSearchParams","useSearchParams","_useSearchParams2","_slicedToArray","searchParams","setSearchParams","_useQuery","useQuery","queryKey","queryFn","_queryFn","_searchInputRef$curre","_yearInputRef$current","current","value","trim","isLoading","isError","error","refetch","handleSearch","_callee2","e","searchQuery","releaseYear","_context2","preventDefault","useEffect","q","get","onSubmit","placeholder","MagnifyingGlassIcon","has","length","map","MovieItem","headers","accept","Authorization"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/135.d56e912d.chunk.js b/static/js/135.d56e912d.chunk.js new file mode 100644 index 0000000..39879c9 --- /dev/null +++ b/static/js/135.d56e912d.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgoit_react_hw_05_movies=self.webpackChunkgoit_react_hw_05_movies||[]).push([[135],{7935:function(e,r,t){t.d(r,{C:function(){return u}});var a=t(1413),n=t(4925),s=(t(2791),t(152)),i=t(2758),l=t(184),o=["className","variant"],c=(0,s.j)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function u(e){var r=e.className,t=e.variant,s=(0,n.Z)(e,o);return(0,l.jsx)("div",(0,a.Z)({className:(0,i.cn)(c({variant:t}),r)},s))}},2778:function(e,r,t){t.d(r,{$h:function(){return g},h$:function(){return p},Sw:function(){return y},xD:function(){return j}});var a=t(1928),n=t(1413),s=t(4925),i=t(2791),l=t(152),o=t(2758),c=t(184),u=["className","variant"],d=["className"],f=["className"],m=(0,l.j)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),v=i.forwardRef((function(e,r){var t=e.className,a=e.variant,i=(0,s.Z)(e,u);return(0,c.jsx)("div",(0,n.Z)({ref:r,role:"alert",className:(0,o.cn)(m({variant:a}),t)},i))}));v.displayName="Alert";var x=i.forwardRef((function(e,r){var t=e.className,a=(0,s.Z)(e,d);return(0,c.jsx)("div",(0,n.Z)({ref:r,className:(0,o.cn)("mb-1 font-medium leading-none tracking-tight",t)},a))}));x.displayName="AlertTitle";var h=i.forwardRef((function(e,r){var t=e.className,a=(0,s.Z)(e,f);return(0,c.jsx)("div",(0,n.Z)({ref:r,className:(0,o.cn)("text-sm [&_p]:leading-relaxed",t)},a))}));h.displayName="AlertDescription";var g=function(e){var r=e.message;return(0,c.jsxs)(v,{variant:"destructive",className:"max-w-2xl",children:[(0,c.jsx)(a.LPM,{className:"h-4 w-4"}),(0,c.jsx)(x,{children:"Error"}),(0,c.jsx)(h,{children:r})]})},p=function(){return(0,c.jsxs)(v,{className:"max-w-2xl",children:[(0,c.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,c.jsx)(x,{children:"No Search Results"}),(0,c.jsx)(h,{children:"Your search did not match any movies. Please try again with different keywords or filters."})]})},y=function(){return(0,c.jsxs)(v,{className:"max-w-2xl mt-8",children:[(0,c.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,c.jsx)(x,{children:"No Cast Information"}),(0,c.jsx)(h,{children:"There is no information available about the cast for this movie."})]})},j=function(){return(0,c.jsxs)(v,{className:"max-w-2xl mt-8",children:[(0,c.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,c.jsx)(x,{children:"No Reviews Yet"}),(0,c.jsx)(h,{children:"There are currently no reviews available for this movie."})]})}},4633:function(e,r,t){var a=t(1087),n=t(7935),s=t(184);r.Z=function(e){var r=e.movie;return(0,s.jsx)(a.rU,{to:"/movies/".concat(r.id),children:(0,s.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,s.jsx)("div",{className:"overflow-hidden rounded-lg",children:(0,s.jsx)("img",{src:r.poster_path?"https://image.tmdb.org/t/p/original".concat(r.poster_path):"https://placehold.co/342x513?text=".concat(r.title||r.name),alt:r.title||r.name,className:"h-auto w-auto object-cover transition-all hover:scale-105"})}),r.media_type&&(0,s.jsx)("div",{className:"flex-none",children:(0,s.jsx)(n.C,{children:r.media_type.charAt(0).toUpperCase()+r.media_type.slice(1)})}),(0,s.jsxs)("div",{className:"flex flex-col gap-x-0.5",children:[(0,s.jsx)("h3",{className:"scroll-m-20 text-lg font-bold tracking-tight",children:r.title||r.name}),(0,s.jsxs)("h4",{className:"text-sm text-muted-foreground font-bold",children:[r.release_date&&new Date(r.release_date).getFullYear(),r.first_air_date&&new Date(r.first_air_date).getFullYear()]})]})]})},r.id)}},9135:function(e,r,t){t.r(r),t.d(r,{default:function(){return w}});var a=t(1413),n=t(5861),s=t(9439),i=t(4687),l=t.n(i),o=t(2791),c=t(1087),u=t(3984),d=t(4390),f=function(){var e=(0,n.Z)(l().mark((function e(r){var t,n,s;return l().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=(0,a.Z)((0,a.Z)({},d._),{},{params:{query:r.query,include_adult:r.include_adult||!1,language:r.language||"en-US",primary_release_year:r.primary_release_year||"",page:r.page||1,region:r.region||"",year:r.year||""}}),e.next=3,d.o.get("/search/movie",t);case 3:return n=e.sent,s=n.data,e.abrupt("return",s.results);case 6:case"end":return e.stop()}}),e)})));return function(r){return e.apply(this,arguments)}}(),m=t(4633),v=t(9329),x=t(4925),h=t(2758),g=t(184),p=["className","type"],y=o.forwardRef((function(e,r){var t=e.className,n=e.type,s=(0,x.Z)(e,p);return(0,g.jsx)("input",(0,a.Z)({type:n,className:(0,h.cn)("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",t),ref:r},s))}));y.displayName="Input";var j=t(4321),b=t(2778),N=t(1928),w=function(){var e=(0,o.useRef)(null),r=(0,o.useRef)(null),t=(0,c.lr)(),i=(0,s.Z)(t,2),d=i[0],x=i[1],h=(0,u.a)({queryKey:["searchMovies"],queryFn:function(){var t=(0,n.Z)(l().mark((function t(){var a,n;return l().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,f({query:null===(a=e.current)||void 0===a?void 0:a.value.trim(),include_adult:!1,language:"en-US",primary_release_year:null===(n=r.current)||void 0===n?void 0:n.value.trim(),page:1,region:"",year:""});case 2:return t.abrupt("return",t.sent);case 3:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}()}),p=h.data,w=h.isLoading,_=h.isError,Z=h.error,k=h.refetch,I=function(){var t=(0,n.Z)(l().mark((function t(n){var s,i;return l().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n.preventDefault(),s=e.current.value.trim(),i=r.current.value.trim(),x((0,a.Z)({query:s},i&&{year:i})),k({query:s,include_adult:!1,language:"en-US",primary_release_year:i,page:1,region:"",year:""});case 5:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}();return(0,o.useEffect)((function(){var t=d.get("query")||"",a=d.get("year")||"";e.current.value=t,r.current.value=a}),[d]),(0,g.jsxs)("div",{children:[(0,g.jsx)("h1",{className:"scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl pb-8",children:"Search Movies"}),(0,g.jsx)("form",{onSubmit:I,children:(0,g.jsxs)("div",{className:"flex flex-col sm:flex-row w-full max-w-2xl items-start gap-2 pb-8",children:[(0,g.jsx)(y,{type:"text",ref:e,placeholder:"Enter movie title"}),(0,g.jsx)(y,{type:"text",ref:r,placeholder:"Enter release year"}),(0,g.jsxs)(v.z,{type:"submit",children:[(0,g.jsx)(N._Ve,{className:"mr-2 h-4 w-4"}),"Search"]})]})}),w&&(0,g.jsx)(j.a,{}),_&&(0,g.jsx)(b.$h,{message:Z.message}),d.has("query")&&0===(null===p||void 0===p?void 0:p.length)&&(0,g.jsx)(b.h$,{}),p&&!w&&(0,g.jsx)("div",{className:'className="grid grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 gap-4',children:null===p||void 0===p?void 0:p.map((function(e){return(0,g.jsx)(m.Z,{movie:e},e.id)}))})]})}},4390:function(e,r,t){t.d(r,{_:function(){return n},o:function(){return a.Z}});var a=t(5294);a.Z.defaults.baseURL="https://api.themoviedb.org/3";var n={headers:{accept:"application/json",Authorization:"Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ"}}}}]); +//# sourceMappingURL=135.d56e912d.chunk.js.map \ No newline at end of file diff --git a/static/js/135.d56e912d.chunk.js.map b/static/js/135.d56e912d.chunk.js.map new file mode 100644 index 0000000..1bb5a31 --- /dev/null +++ b/static/js/135.d56e912d.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/135.d56e912d.chunk.js","mappings":"+PAKMA,GAAgBC,EAAAA,EAAAA,GACpB,uKACA,CACEC,SAAU,CACRC,QAAS,CACPC,QACE,mFACFC,UACE,kFACFC,YACE,+FACFC,QAAS,oBAGbC,gBAAiB,CACfL,QAAS,aAKf,SAASM,EAAKC,GAIV,IAHFC,EAASD,EAATC,UACAR,EAAOO,EAAPP,QACGS,GAAKC,EAAAA,EAAAA,GAAAH,EAAAI,GAER,OAAQC,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CAAKL,WAAWM,EAAAA,EAAAA,IAAGjB,EAAc,CAAEG,QAAAA,IAAYQ,IAAgBC,GACzE,C,kQC1BMM,GAAgBjB,EAAAA,EAAAA,GACpB,0KACA,CACEC,SAAU,CACRC,QAAS,CACPC,QAAS,gCACTE,YACE,4FAGNE,gBAAiB,CACfL,QAAS,aAKTgB,EAAQC,EAAAA,YAAiB,SAAAV,EAAmCW,GAAG,IAAnCV,EAASD,EAATC,UAAWR,EAAOO,EAAPP,QAAYS,GAAKC,EAAAA,EAAAA,GAAAH,EAAAI,GAAA,OAC5DC,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEK,IAAKA,EACLC,KAAK,QACLX,WAAWM,EAAAA,EAAAA,IAAGC,EAAc,CAAEf,QAAAA,IAAYQ,IACtCC,GACJ,IAEJO,EAAMI,YAAc,QAEpB,IAAMC,EAAaJ,EAAAA,YAAiB,SAAAK,EAA0BJ,GAAG,IAA1BV,EAASc,EAATd,UAAcC,GAAKC,EAAAA,EAAAA,GAAAY,EAAAC,GAAA,OACxDX,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEK,IAAKA,EACLV,WAAWM,EAAAA,EAAAA,IAAG,+CAAgDN,IAC1DC,GACJ,IAEJY,EAAWD,YAAc,aAEzB,IAAMI,EAAmBP,EAAAA,YAAiB,SAAAQ,EAA0BP,GAAG,IAA1BV,EAASiB,EAATjB,UAAcC,GAAKC,EAAAA,EAAAA,GAAAe,EAAAC,GAAA,OAC9Dd,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEK,IAAKA,EACLV,WAAWM,EAAAA,EAAAA,IAAG,gCAAiCN,IAC3CC,GACJ,IAEJe,EAAiBJ,YAAc,mBCxCxB,IAAMO,EAAmB,SAAHpB,GAAqB,IAAfqB,EAAOrB,EAAPqB,QACjC,OACEC,EAAAA,EAAAA,MAACb,EAAK,CAAChB,QAAQ,cAAcQ,UAAU,YAAWsB,SAAA,EAChDlB,EAAAA,EAAAA,KAACmB,EAAAA,IAAuB,CAACvB,UAAU,aACnCI,EAAAA,EAAAA,KAACS,EAAU,CAAAS,SAAC,WACZlB,EAAAA,EAAAA,KAACY,EAAgB,CAAAM,SAAEF,MAGzB,EAEaI,EAAY,WACvB,OACEH,EAAAA,EAAAA,MAACb,EAAK,CAACR,UAAU,YAAWsB,SAAA,EAC1BlB,EAAAA,EAAAA,KAACqB,EAAAA,IAAe,CAACzB,UAAU,2BAC3BI,EAAAA,EAAAA,KAACS,EAAU,CAAAS,SAAC,uBACZlB,EAAAA,EAAAA,KAACY,EAAgB,CAAAM,SAAC,iGAMxB,EAEaI,EAAc,WACzB,OACEL,EAAAA,EAAAA,MAACb,EAAK,CAACR,UAAU,iBAAgBsB,SAAA,EAC/BlB,EAAAA,EAAAA,KAACqB,EAAAA,IAAe,CAACzB,UAAU,2BAC3BI,EAAAA,EAAAA,KAACS,EAAU,CAAAS,SAAC,yBACZlB,EAAAA,EAAAA,KAACY,EAAgB,CAAAM,SAAC,uEAKxB,EAEaK,EAAiB,WAC5B,OACEN,EAAAA,EAAAA,MAACb,EAAK,CAACR,UAAU,iBAAgBsB,SAAA,EAC/BlB,EAAAA,EAAAA,KAACqB,EAAAA,IAAe,CAACzB,UAAU,2BAC3BI,EAAAA,EAAAA,KAACS,EAAU,CAAAS,SAAC,oBACZlB,EAAAA,EAAAA,KAACY,EAAgB,CAAAM,SAAC,+DAKxB,C,wDCPA,IAzCkB,SAAHvB,GAAmB,IAAb6B,EAAK7B,EAAL6B,MACnB,OACExB,EAAAA,EAAAA,KAACyB,EAAAA,GAAI,CAACC,GAAE,WAAAC,OAAaH,EAAMI,IAAKV,UAC9BD,EAAAA,EAAAA,MAAA,OAAKrB,UAAU,sBAAqBsB,SAAA,EAClClB,EAAAA,EAAAA,KAAA,OAAKJ,UAAU,6BAA4BsB,UACzClB,EAAAA,EAAAA,KAAA,OACE6B,IACEL,EAAMM,YAAW,sCAAAH,OACyBH,EAAMM,aAAW,qCAAAH,OAErDH,EAAMO,OAASP,EAAMQ,MAG7BC,IAAKT,EAAMO,OAASP,EAAMQ,KAC1BpC,UAAU,gEAGb4B,EAAMU,aACLlC,EAAAA,EAAAA,KAAA,OAAKJ,UAAU,YAAWsB,UACxBlB,EAAAA,EAAAA,KAACN,EAAAA,EAAK,CAAAwB,SACHM,EAAMU,WAAWC,OAAO,GAAGC,cAC1BZ,EAAMU,WAAWG,MAAM,QAK/BpB,EAAAA,EAAAA,MAAA,OAAKrB,UAAU,0BAAyBsB,SAAA,EACtClB,EAAAA,EAAAA,KAAA,MAAIJ,UAAU,+CAA8CsB,SACzDM,EAAMO,OAASP,EAAMQ,QAExBf,EAAAA,EAAAA,MAAA,MAAIrB,UAAU,0CAAyCsB,SAAA,CACpDM,EAAMc,cAAgB,IAAIC,KAAKf,EAAMc,cAAcE,cACnDhB,EAAMiB,gBACL,IAAIF,KAAKf,EAAMiB,gBAAgBD,wBA/BHhB,EAAMI,GAqChD,C,iKCzCMc,EAAY,eAAA/C,GAAAgD,EAAAA,EAAAA,GAAAC,IAAAA,MAAG,SAAAC,EAAMC,GAAW,IAAAC,EAAAC,EAAAC,EAAA,OAAAL,IAAAA,MAAA,SAAAM,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAWjC,OAVGL,GAAO9C,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACRoD,EAAAA,GAAW,IACdC,OAAQ,CACNC,MAAOT,EAAYS,MACnBC,cAAeV,EAAYU,gBAAiB,EAC5CC,SAAUX,EAAYW,UAAY,QAClCC,qBAAsBZ,EAAYY,sBAAwB,GAC1DC,KAAMb,EAAYa,MAAQ,EAC1BC,OAAQd,EAAYc,QAAU,GAC9BC,KAAMf,EAAYe,MAAQ,MAC3BX,EAAAE,KAAA,EAGoBU,EAAAA,EAAAA,IAAU,gBAAiBf,GAAS,KAAD,EAA9C,OAA8CC,EAAAE,EAAAa,KAAlDd,EAAID,EAAJC,KAAIC,EAAAc,OAAA,SACLf,EAAKgB,SAAO,wBAAAf,EAAAgB,OAAA,GAAArB,EAAA,KACpB,gBAhBiBsB,GAAA,OAAAxE,EAAAyE,MAAA,KAAAC,UAAA,K,wECEZC,EAAQjE,EAAAA,YAAiB,SAAAV,EAAgCW,GAAS,IAAtCV,EAASD,EAATC,UAAW2E,EAAI5E,EAAJ4E,KAAS1E,GAAKC,EAAAA,EAAAA,GAAAH,EAAAI,GACzD,OACGC,EAAAA,EAAAA,KAAA,SAAAC,EAAAA,EAAAA,GAAA,CACCsE,KAAMA,EACN3E,WAAWM,EAAAA,EAAAA,IACT,wUACAN,GAEFU,IAAKA,GACDT,GAEV,IACAyE,EAAM9D,YAAc,Q,kCCoFpB,EArFe,WACb,IAAMgE,GAAiBC,EAAAA,EAAAA,QAAO,MACxBC,GAAeD,EAAAA,EAAAA,QAAO,MAC5BE,GAAwCC,EAAAA,EAAAA,MAAiBC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAlDI,EAAYF,EAAA,GAAEG,EAAeH,EAAA,GAEpCI,GAAqDC,EAAAA,EAAAA,GAAS,CAC5DC,SAAU,CAAC,gBACXC,QAAQ,WAAD,IAAAC,GAAA1C,EAAAA,EAAAA,GAAAC,IAAAA,MAAE,SAAAC,IAAA,IAAAyC,EAAAC,EAAA,OAAA3C,IAAAA,MAAA,SAAAM,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACMV,EAAa,CACxBa,MAA6B,QAAxB+B,EAAEd,EAAegB,eAAO,IAAAF,OAAA,EAAtBA,EAAwBG,MAAMC,OACrClC,eAAe,EACfC,SAAU,QACVC,qBAA0C,QAAtB6B,EAAEb,EAAac,eAAO,IAAAD,OAAA,EAApBA,EAAsBE,MAAMC,OAClD/B,KAAM,EACNC,OAAQ,GACRC,KAAM,KACL,KAAD,SAAAX,EAAAc,OAAA,SAAAd,EAAAa,MAAA,wBAAAb,EAAAgB,OAAA,GAAArB,EAAA,KACH,yBAAAwC,EAAAjB,MAAA,KAAAC,UAAA,EAVO,KAFFpB,EAAIgC,EAAJhC,KAAM0C,EAASV,EAATU,UAAWC,EAAOX,EAAPW,QAASC,EAAKZ,EAALY,MAAOC,EAAOb,EAAPa,QAenCC,EAAY,eAAApG,GAAAgD,EAAAA,EAAAA,GAAAC,IAAAA,MAAG,SAAAoD,EAAMC,GAAC,IAAAC,EAAAC,EAAA,OAAAvD,IAAAA,MAAA,SAAAwD,GAAA,cAAAA,EAAAjD,KAAAiD,EAAAhD,MAAA,OAC1B6C,EAAEI,iBACIH,EAAc1B,EAAegB,QAAQC,MAAMC,OAC3CS,EAAczB,EAAac,QAAQC,MAAMC,OAE/CV,GAAe/E,EAAAA,EAAAA,GAAC,CACdsD,MAAO2C,GACHC,GAAe,CAAEtC,KAAMsC,KAG7BL,EAAQ,CACNvC,MAAO2C,EACP1C,eAAe,EACfC,SAAU,QACVC,qBAAsByC,EACtBxC,KAAM,EACNC,OAAQ,GACRC,KAAM,KACL,wBAAAuC,EAAAlC,OAAA,GAAA8B,EAAA,KACJ,gBAnBiB7B,GAAA,OAAAxE,EAAAyE,MAAA,KAAAC,UAAA,KA4BlB,OAPAiC,EAAAA,EAAAA,YAAU,WACR,IAAMC,EAAIxB,EAAayB,IAAI,UAAY,GACjC3C,EAAOkB,EAAayB,IAAI,SAAW,GACzChC,EAAegB,QAAQC,MAAQc,EAC/B7B,EAAac,QAAQC,MAAQ5B,CAC/B,GAAG,CAACkB,KAGF9D,EAAAA,EAAAA,MAAA,OAAAC,SAAA,EACElB,EAAAA,EAAAA,KAAA,MAAIJ,UAAU,sEAAqEsB,SAAC,mBAGpFlB,EAAAA,EAAAA,KAAA,QAAMyG,SAAUV,EAAa7E,UAC3BD,EAAAA,EAAAA,MAAA,OAAKrB,UAAU,oEAAmEsB,SAAA,EAChFlB,EAAAA,EAAAA,KAACsE,EAAK,CACJC,KAAK,OACLjE,IAAKkE,EACLkC,YAAY,uBAEd1G,EAAAA,EAAAA,KAACsE,EAAK,CACJC,KAAK,OACLjE,IAAKoE,EACLgC,YAAY,wBAEdzF,EAAAA,EAAAA,MAAC0F,EAAAA,EAAM,CAACpC,KAAK,SAAQrD,SAAA,EACnBlB,EAAAA,EAAAA,KAAC4G,EAAAA,IAAmB,CAAChH,UAAU,iBAAiB,iBAKrD+F,IAAa3F,EAAAA,EAAAA,KAAC6G,EAAAA,EAAM,IACpBjB,IAAW5F,EAAAA,EAAAA,KAACe,EAAAA,GAAgB,CAACC,QAAS6E,EAAM7E,UAC5C+D,EAAa+B,IAAI,UAA6B,KAAb,OAAJ7D,QAAI,IAAJA,OAAI,EAAJA,EAAM8D,UAAgB/G,EAAAA,EAAAA,KAACoB,EAAAA,GAAS,IAC7D6B,IAAS0C,IACR3F,EAAAA,EAAAA,KAAA,OAAKJ,UAAU,sFAAqFsB,SAC7F,OAAJ+B,QAAI,IAAJA,OAAI,EAAJA,EAAM+D,KAAI,SAAAxF,GAAK,OACdxB,EAAAA,EAAAA,KAACiH,EAAAA,EAAS,CAACzF,MAAOA,GAAYA,EAAMI,GAAM,QAMtD,C,8FChGAkC,EAAAA,EAAAA,SAAAA,QAAyB,+BAEzB,IAAMT,EAAc,CAClB6D,QAAS,CACPC,OAAQ,mBACRC,cACE,8N","sources":["@/components/ui/badge.jsx","@/components/ui/alert.jsx","components/Alert.jsx","components/MovieItem.jsx","services/searchMovies.js","@/components/ui/input.jsx","pages/Movies.jsx","services/api.js"],"sourcesContent":["import * as React from \"react\"\nimport { cva } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n destructive:\n \"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80\",\n outline: \"text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Badge({\n className,\n variant,\n ...props\n}) {\n return (
);\n}\n\nexport { Badge, badgeVariants }\n","import * as React from 'react';\nimport { cva } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst alertVariants = cva(\n 'relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7',\n {\n variants: {\n variant: {\n default: 'bg-background text-foreground',\n destructive:\n 'border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nconst Alert = React.forwardRef(({ className, variant, ...props }, ref) => (\n \n));\nAlert.displayName = 'Alert';\n\nconst AlertTitle = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertTitle.displayName = 'AlertTitle';\n\nconst AlertDescription = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertDescription.displayName = 'AlertDescription';\n\nexport { Alert, AlertTitle, AlertDescription };\n","import {\n ExclamationTriangleIcon,\n InfoCircledIcon,\n} from '@radix-ui/react-icons';\n\nimport { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';\n\nexport const AlertDestructive = ({ message }) => {\n return (\n \n \n Error\n {message}\n \n );\n};\n\nexport const AlertInfo = () => {\n return (\n \n \n No Search Results\n \n Your search did not match any movies. Please try again with different\n keywords or filters.\n \n \n );\n};\n\nexport const AlertNoCast = () => {\n return (\n \n \n No Cast Information\n \n There is no information available about the cast for this movie.\n \n \n );\n};\n\nexport const AlertNoReviews = () => {\n return (\n \n \n No Reviews Yet\n \n There are currently no reviews available for this movie.\n \n \n );\n};\n","import { Link } from 'react-router-dom';\n\nimport { Badge } from '@/components/ui/badge';\n\nconst MovieItem = ({ movie }) => {\n return (\n \n
\n
\n \n
\n {movie.media_type && (\n
\n \n {movie.media_type.charAt(0).toUpperCase() +\n movie.media_type.slice(1)}\n \n
\n )}\n\n
\n

\n {movie.title || movie.name}\n

\n

\n {movie.release_date && new Date(movie.release_date).getFullYear()}\n {movie.first_air_date &&\n new Date(movie.first_air_date).getFullYear()}\n

\n
\n
\n \n );\n};\n\nexport default MovieItem;\n","import { axios, baseOptions } from './api';\n\nconst searchMovies = async queryParams => {\n const options = {\n ...baseOptions,\n params: {\n query: queryParams.query,\n include_adult: queryParams.include_adult || false,\n language: queryParams.language || 'en-US',\n primary_release_year: queryParams.primary_release_year || '',\n page: queryParams.page || 1,\n region: queryParams.region || '',\n year: queryParams.year || '',\n },\n };\n\n const { data } = await axios.get('/search/movie', options);\n return data.results;\n};\n\nexport { searchMovies };\n","import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst Input = React.forwardRef(({ className, type, ...props }, ref) => {\n return (\n ()\n );\n})\nInput.displayName = \"Input\"\n\nexport { Input }\n","import { useRef, useEffect } from 'react';\nimport { useSearchParams } from 'react-router-dom';\nimport { useQuery } from '@tanstack/react-query';\nimport { searchMovies } from 'services/searchMovies';\n\nimport MovieItem from 'components/MovieItem';\n\nimport { Button } from '@/components/ui/button';\nimport { Input } from '@/components/ui/input';\n\nimport { Loader } from 'components/Loader';\nimport { AlertDestructive, AlertInfo } from 'components/Alert';\n\nimport { MagnifyingGlassIcon } from '@radix-ui/react-icons';\n\nconst Movies = () => {\n const searchInputRef = useRef(null);\n const yearInputRef = useRef(null);\n const [searchParams, setSearchParams] = useSearchParams();\n\n const { data, isLoading, isError, error, refetch } = useQuery({\n queryKey: ['searchMovies'],\n queryFn: async () => {\n return await searchMovies({\n query: searchInputRef.current?.value.trim(),\n include_adult: false,\n language: 'en-US',\n primary_release_year: yearInputRef.current?.value.trim(),\n page: 1,\n region: '',\n year: '',\n });\n },\n });\n\n const handleSearch = async e => {\n e.preventDefault();\n const searchQuery = searchInputRef.current.value.trim();\n const releaseYear = yearInputRef.current.value.trim();\n\n setSearchParams({\n query: searchQuery,\n ...(releaseYear && { year: releaseYear }),\n });\n\n refetch({\n query: searchQuery,\n include_adult: false,\n language: 'en-US',\n primary_release_year: releaseYear,\n page: 1,\n region: '',\n year: '',\n });\n };\n\n useEffect(() => {\n const q = searchParams.get('query') || '';\n const year = searchParams.get('year') || '';\n searchInputRef.current.value = q;\n yearInputRef.current.value = year;\n }, [searchParams]);\n\n return (\n
\n

\n Search Movies\n

\n
\n
\n \n \n \n
\n
\n {isLoading && }\n {isError && }\n {searchParams.has('query') && data?.length === 0 && }\n {data && !isLoading && (\n
\n {data?.map(movie => (\n \n ))}\n
\n )}\n
\n );\n};\n\nexport default Movies;\n","import axios from 'axios';\n\naxios.defaults.baseURL = 'https://api.themoviedb.org/3';\n\nconst baseOptions = {\n headers: {\n accept: 'application/json',\n Authorization:\n 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ',\n },\n};\n\nexport { axios, baseOptions };\n"],"names":["badgeVariants","cva","variants","variant","default","secondary","destructive","outline","defaultVariants","Badge","_ref","className","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","cn","alertVariants","Alert","React","ref","role","displayName","AlertTitle","_ref2","_excluded2","AlertDescription","_ref3","_excluded3","AlertDestructive","message","_jsxs","children","ExclamationTriangleIcon","AlertInfo","InfoCircledIcon","AlertNoCast","AlertNoReviews","movie","Link","to","concat","id","src","poster_path","title","name","alt","media_type","charAt","toUpperCase","slice","release_date","Date","getFullYear","first_air_date","searchMovies","_asyncToGenerator","_regeneratorRuntime","_callee","queryParams","options","_yield$axios$get","data","_context","prev","next","baseOptions","params","query","include_adult","language","primary_release_year","page","region","year","axios","sent","abrupt","results","stop","_x","apply","arguments","Input","type","searchInputRef","useRef","yearInputRef","_useSearchParams","useSearchParams","_useSearchParams2","_slicedToArray","searchParams","setSearchParams","_useQuery","useQuery","queryKey","queryFn","_queryFn","_searchInputRef$curre","_yearInputRef$current","current","value","trim","isLoading","isError","error","refetch","handleSearch","_callee2","e","searchQuery","releaseYear","_context2","preventDefault","useEffect","q","get","onSubmit","placeholder","Button","MagnifyingGlassIcon","Loader","has","length","map","MovieItem","headers","accept","Authorization"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/317.8b06e6f5.chunk.js b/static/js/317.8b06e6f5.chunk.js deleted file mode 100644 index b0fd146..0000000 --- a/static/js/317.8b06e6f5.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgoit_react_hw_05_movies=self.webpackChunkgoit_react_hw_05_movies||[]).push([[317],{2778:function(e,a,r){r.d(a,{$h:function(){return N},h$:function(){return j},Sw:function(){return p},xD:function(){return w}});var s=r(1928),t=r(1413),n=r(4925),i=r(2791),c=r(152),l=r(2758),o=r(184),d=["className","variant"],u=["className"],f=["className"],m=(0,c.j)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),x=i.forwardRef((function(e,a){var r=e.className,s=e.variant,i=(0,n.Z)(e,d);return(0,o.jsx)("div",(0,t.Z)({ref:a,role:"alert",className:(0,l.cn)(m({variant:s}),r)},i))}));x.displayName="Alert";var v=i.forwardRef((function(e,a){var r=e.className,s=(0,n.Z)(e,u);return(0,o.jsx)("div",(0,t.Z)({ref:a,className:(0,l.cn)("mb-1 font-medium leading-none tracking-tight",r)},s))}));v.displayName="AlertTitle";var h=i.forwardRef((function(e,a){var r=e.className,s=(0,n.Z)(e,f);return(0,o.jsx)("div",(0,t.Z)({ref:a,className:(0,l.cn)("text-sm [&_p]:leading-relaxed",r)},s))}));h.displayName="AlertDescription";var N=function(e){var a=e.message;return(0,o.jsxs)(x,{variant:"destructive",className:"max-w-2xl",children:[(0,o.jsx)(s.LPM,{className:"h-4 w-4"}),(0,o.jsx)(v,{children:"Error"}),(0,o.jsx)(h,{children:a})]})},j=function(){return(0,o.jsxs)(x,{className:"max-w-2xl",children:[(0,o.jsx)(s.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(v,{children:"No Search Results"}),(0,o.jsx)(h,{children:"Your search did not match any movies. Please try again with different keywords or filters."})]})},p=function(){return(0,o.jsxs)(x,{className:"max-w-2xl mt-8",children:[(0,o.jsx)(s.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(v,{children:"No Cast Information"}),(0,o.jsx)(h,{children:"There is no information available about the cast for this movie."})]})},w=function(){return(0,o.jsxs)(x,{className:"max-w-2xl mt-8",children:[(0,o.jsx)(s.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(v,{children:"No Reviews Yet"}),(0,o.jsx)(h,{children:"There are currently no reviews available for this movie."})]})}},4321:function(e,a,r){r.d(a,{a:function(){return i}});var s=r(1928),t=r(9329),n=r(184),i=function(){return(0,n.jsxs)(t.z,{className:"my-4",disabled:!0,children:[(0,n.jsx)(s.BGW,{className:"mr-2 h-4 w-4 animate-spin"}),"Please wait"]})}},7317:function(e,a,r){r.r(a),r.d(a,{default:function(){return _}});var s=r(7689),t=r(3984),n=r(5861),i=r(4687),c=r.n(i),l=r(4390),o=function(){var e=(0,n.Z)(c().mark((function e(a){var r,s;return c().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.o.get("/movie/".concat(a,"/reviews?language=en-US"),l._);case 2:return r=e.sent,s=r.data,e.abrupt("return",s.results);case 5:case"end":return e.stop()}}),e)})));return function(a){return e.apply(this,arguments)}}(),d=r(4321),u=r(2778),f=r(4461),m=r(570),x=r(5658),v=r(1413),h=r(4925),N=r(2791),j=r(2758),p=r(184),w=["className"],g=["className"],y=["className"],Z=["className"],b=["className"],I=["className"],z=N.forwardRef((function(e,a){var r=e.className,s=(0,h.Z)(e,w);return(0,p.jsx)("div",(0,v.Z)({ref:a,className:(0,j.cn)("rounded-xl border bg-card text-card-foreground shadow",r)},s))}));z.displayName="Card";var C=N.forwardRef((function(e,a){var r=e.className,s=(0,h.Z)(e,g);return(0,p.jsx)("div",(0,v.Z)({ref:a,className:(0,j.cn)("flex flex-col space-y-1.5 p-6",r)},s))}));C.displayName="CardHeader";var M=N.forwardRef((function(e,a){var r=e.className,s=(0,h.Z)(e,y);return(0,p.jsx)("div",(0,v.Z)({ref:a,className:(0,j.cn)("font-semibold leading-none tracking-tight",r)},s))}));M.displayName="CardTitle";var k=N.forwardRef((function(e,a){var r=e.className,s=(0,h.Z)(e,Z);return(0,p.jsx)("p",(0,v.Z)({ref:a,className:(0,j.cn)("text-sm text-muted-foreground",r)},s))}));k.displayName="CardDescription";var R=N.forwardRef((function(e,a){var r=e.className,s=(0,h.Z)(e,b);return(0,p.jsx)("div",(0,v.Z)({ref:a,className:(0,j.cn)("p-6 pt-0",r)},s))}));R.displayName="CardContent",N.forwardRef((function(e,a){var r=e.className,s=(0,h.Z)(e,I);return(0,p.jsx)("div",(0,v.Z)({ref:a,className:(0,j.cn)("flex items-center p-6 pt-0",r)},s))})).displayName="CardFooter";var _=function(){var e=(0,s.UO)().movieId,a=(0,t.a)({queryKey:["reviews",e],queryFn:function(){return o(e)}}),r=a.data,n=a.isLoading,i=a.error;return n?(0,p.jsx)(d.a,{}):i?(0,p.jsx)(u.$h,{message:i.message}):(0,p.jsxs)(p.Fragment,{children:[!n&&0===r.length&&(0,p.jsx)(u.xD,{}),(0,p.jsx)("div",{className:"flex flex-col w-full max-w-5xl items-start gap-4 py-8",children:r.map((function(e){return(0,p.jsx)("ul",{children:(0,p.jsx)("li",{children:(0,p.jsxs)(z,{children:[(0,p.jsxs)(C,{children:[(0,p.jsx)(M,{children:e.author}),(0,p.jsx)(k,{children:(0,f.WU)(new Date(e.created_at),"HH:mm, MMMM d, yyyy")})]}),(0,p.jsx)(R,{children:/<([A-Za-z][A-Za-z0-9]*)\b[^>]*>(.*?)<\/\1>/.test(e.content)?(0,p.jsx)("p",{children:(0,x.ZP)(e.content)}):(0,p.jsx)(m.U,{children:e.content})})]})})},e.id)}))})]})}},4390:function(e,a,r){r.d(a,{_:function(){return t},o:function(){return s.Z}});var s=r(5294);s.Z.defaults.baseURL="https://api.themoviedb.org/3";var t={headers:{accept:"application/json",Authorization:"Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ"}}}}]); -//# sourceMappingURL=317.8b06e6f5.chunk.js.map \ No newline at end of file diff --git a/static/js/317.8b06e6f5.chunk.js.map b/static/js/317.8b06e6f5.chunk.js.map deleted file mode 100644 index e550c33..0000000 --- a/static/js/317.8b06e6f5.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/317.8b06e6f5.chunk.js","mappings":"kXAKMA,GAAgBC,EAAAA,EAAAA,GACpB,0KACA,CACEC,SAAU,CACRC,QAAS,CACPC,QAAS,gCACTC,YACE,4FAGNC,gBAAiB,CACfH,QAAS,aAKTI,EAAQC,EAAAA,YAAiB,SAAAC,EAAmCC,GAAG,IAAnCC,EAASF,EAATE,UAAWR,EAAOM,EAAPN,QAAYS,GAAKC,EAAAA,EAAAA,GAAAJ,EAAAK,GAAA,OAC5DC,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEN,IAAKA,EACLO,KAAK,QACLN,WAAWO,EAAAA,EAAAA,IAAGlB,EAAc,CAAEG,QAAAA,IAAYQ,IACtCC,GACJ,IAEJL,EAAMY,YAAc,QAEpB,IAAMC,EAAaZ,EAAAA,YAAiB,SAAAa,EAA0BX,GAAG,IAA1BC,EAASU,EAATV,UAAcC,GAAKC,EAAAA,EAAAA,GAAAQ,EAAAC,GAAA,OACxDP,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEN,IAAKA,EACLC,WAAWO,EAAAA,EAAAA,IAAG,+CAAgDP,IAC1DC,GACJ,IAEJQ,EAAWD,YAAc,aAEzB,IAAMI,EAAmBf,EAAAA,YAAiB,SAAAgB,EAA0Bd,GAAG,IAA1BC,EAASa,EAATb,UAAcC,GAAKC,EAAAA,EAAAA,GAAAW,EAAAC,GAAA,OAC9DV,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEN,IAAKA,EACLC,WAAWO,EAAAA,EAAAA,IAAG,gCAAiCP,IAC3CC,GACJ,IAEJW,EAAiBJ,YAAc,mBCxCxB,IAAMO,EAAmB,SAAHjB,GAAqB,IAAfkB,EAAOlB,EAAPkB,QACjC,OACEC,EAAAA,EAAAA,MAACrB,EAAK,CAACJ,QAAQ,cAAcQ,UAAU,YAAWkB,SAAA,EAChDd,EAAAA,EAAAA,KAACe,EAAAA,IAAuB,CAACnB,UAAU,aACnCI,EAAAA,EAAAA,KAACK,EAAU,CAAAS,SAAC,WACZd,EAAAA,EAAAA,KAACQ,EAAgB,CAAAM,SAAEF,MAGzB,EAEaI,EAAY,WACvB,OACEH,EAAAA,EAAAA,MAACrB,EAAK,CAACI,UAAU,YAAWkB,SAAA,EAC1Bd,EAAAA,EAAAA,KAACiB,EAAAA,IAAe,CAACrB,UAAU,2BAC3BI,EAAAA,EAAAA,KAACK,EAAU,CAAAS,SAAC,uBACZd,EAAAA,EAAAA,KAACQ,EAAgB,CAAAM,SAAC,iGAMxB,EAEaI,EAAc,WACzB,OACEL,EAAAA,EAAAA,MAACrB,EAAK,CAACI,UAAU,iBAAgBkB,SAAA,EAC/Bd,EAAAA,EAAAA,KAACiB,EAAAA,IAAe,CAACrB,UAAU,2BAC3BI,EAAAA,EAAAA,KAACK,EAAU,CAAAS,SAAC,yBACZd,EAAAA,EAAAA,KAACQ,EAAgB,CAAAM,SAAC,uEAKxB,EAEaK,EAAiB,WAC5B,OACEN,EAAAA,EAAAA,MAACrB,EAAK,CAACI,UAAU,iBAAgBkB,SAAA,EAC/Bd,EAAAA,EAAAA,KAACiB,EAAAA,IAAe,CAACrB,UAAU,2BAC3BI,EAAAA,EAAAA,KAACK,EAAU,CAAAS,SAAC,oBACZd,EAAAA,EAAAA,KAACQ,EAAgB,CAAAM,SAAC,+DAKxB,C,wFChDaM,EAAS,WACpB,OACEP,EAAAA,EAAAA,MAACQ,EAAAA,EAAM,CAACzB,UAAU,OAAO0B,UAAQ,EAAAR,SAAA,EAC/Bd,EAAAA,EAAAA,KAACuB,EAAAA,IAAU,CAAC3B,UAAU,8BAA8B,gBAI1D,C,mICTM4B,EAAY,eAAA9B,GAAA+B,EAAAA,EAAAA,GAAAC,IAAAA,MAAG,SAAAC,EAAMC,GAAQ,IAAAC,EAAAC,EAAA,OAAAJ,IAAAA,MAAA,SAAAK,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACVC,EAAAA,EAAAA,IAAU,UAADC,OACpBP,EAAQ,2BAClBQ,EAAAA,GACA,KAAD,EAHW,OAGXP,EAAAE,EAAAM,KAHOP,EAAID,EAAJC,KAAIC,EAAAO,OAAA,SAKLR,EAAKS,SAAO,wBAAAR,EAAAS,OAAA,GAAAb,EAAA,KACpB,gBAPiBc,GAAA,OAAA/C,EAAAgD,MAAA,KAAAC,UAAA,K,kMCEZC,EAAOnD,EAAAA,YAAiB,SAAAC,EAA0BC,GAAG,IAA1BC,EAASF,EAATE,UAAcC,GAAKC,EAAAA,EAAAA,GAAAJ,EAAAK,GAAA,OAClDC,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEN,IAAKA,EACLC,WAAWO,EAAAA,EAAAA,IACT,wDACAP,IAEEC,GACJ,IAEJ+C,EAAKxC,YAAc,OAEnB,IAAMyC,EAAapD,EAAAA,YAAiB,SAAAa,EAA0BX,GAAG,IAA1BC,EAASU,EAATV,UAAcC,GAAKC,EAAAA,EAAAA,GAAAQ,EAAAC,GAAA,OACxDP,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEN,IAAKA,EACLC,WAAWO,EAAAA,EAAAA,IAAG,gCAAiCP,IAC3CC,GACJ,IAEJgD,EAAWzC,YAAc,aAEzB,IAAM0C,EAAYrD,EAAAA,YAAiB,SAAAgB,EAA0Bd,GAAG,IAA1BC,EAASa,EAATb,UAAcC,GAAKC,EAAAA,EAAAA,GAAAW,EAAAC,GAAA,OACvDV,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEN,IAAKA,EACLC,WAAWO,EAAAA,EAAAA,IAAG,4CAA6CP,IACvDC,GACJ,IAEJiD,EAAU1C,YAAc,YAExB,IAAM2C,EAAkBtD,EAAAA,YAAiB,SAAAuD,EAA0BrD,GAAG,IAA1BC,EAASoD,EAATpD,UAAcC,GAAKC,EAAAA,EAAAA,GAAAkD,EAAAC,GAAA,OAC7DjD,EAAAA,EAAAA,KAAA,KAAAC,EAAAA,EAAAA,GAAA,CACEN,IAAKA,EACLC,WAAWO,EAAAA,EAAAA,IAAG,gCAAiCP,IAC3CC,GACJ,IAEJkD,EAAgB3C,YAAc,kBAE9B,IAAM8C,EAAczD,EAAAA,YAAiB,SAAA0D,EAA0BxD,GAAG,IAA1BC,EAASuD,EAATvD,UAAcC,GAAKC,EAAAA,EAAAA,GAAAqD,EAAAC,GAAA,OACzDpD,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CAAKN,IAAKA,EAAKC,WAAWO,EAAAA,EAAAA,IAAG,WAAYP,IAAgBC,GAAS,IAEpEqD,EAAY9C,YAAc,cAEPX,EAAAA,YAAiB,SAAA4D,EAA0B1D,GAAG,IAA1BC,EAASyD,EAATzD,UAAcC,GAAKC,EAAAA,EAAAA,GAAAuD,EAAAC,GAAA,OACxDtD,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEN,IAAKA,EACLC,WAAWO,EAAAA,EAAAA,IAAG,6BAA8BP,IACxCC,GACJ,IAEOO,YAAc,aCnCzB,IAgDA,EAhDgB,WACd,IAAQmD,GAAYC,EAAAA,EAAAA,MAAZD,QAERE,GAAmCC,EAAAA,EAAAA,GAAS,CAC1CC,SAAU,CAAC,UAAWJ,GACtBK,QAAS,kBAAMpC,EAAa+B,EAAQ,IAF9BzB,EAAI2B,EAAJ3B,KAAM+B,EAASJ,EAATI,UAAWC,EAAKL,EAALK,MAKzB,OAAID,GACK7D,EAAAA,EAAAA,KAACoB,EAAAA,EAAM,IAGZ0C,GACK9D,EAAAA,EAAAA,KAACW,EAAAA,GAAgB,CAACC,QAASkD,EAAMlD,WAIxCC,EAAAA,EAAAA,MAAAkD,EAAAA,SAAA,CAAAjD,SAAA,EACI+C,GAA6B,IAAhB/B,EAAKkC,SAAgBhE,EAAAA,EAAAA,KAACmB,EAAAA,GAAc,KACnDnB,EAAAA,EAAAA,KAAA,OAAKJ,UAAU,wDAAuDkB,SACnEgB,EAAKmC,KAAI,SAAAC,GAAM,OACdlE,EAAAA,EAAAA,KAAA,MAAAc,UACEd,EAAAA,EAAAA,KAAA,MAAAc,UACED,EAAAA,EAAAA,MAAC+B,EAAI,CAAA9B,SAAA,EACHD,EAAAA,EAAAA,MAACgC,EAAU,CAAA/B,SAAA,EACTd,EAAAA,EAAAA,KAAC8C,EAAS,CAAAhC,SAAEoD,EAAOC,UACnBnE,EAAAA,EAAAA,KAAC+C,EAAe,CAAAjC,UACbsD,EAAAA,EAAAA,IAAO,IAAIC,KAAKH,EAAOI,YAAa,6BAGzCtE,EAAAA,EAAAA,KAACkD,EAAW,CAAApC,SACT,6CAA6CyD,KAC5CL,EAAOM,UAEPxE,EAAAA,EAAAA,KAAA,KAAAc,UAAI2D,EAAAA,EAAAA,IAAMP,EAAOM,YAEjBxE,EAAAA,EAAAA,KAAC0E,EAAAA,EAAa,CAAA5D,SAAEoD,EAAOM,kBAfxBN,EAAOS,GAoBX,QAKf,C,8FChEAzC,EAAAA,EAAAA,SAAAA,QAAyB,+BAEzB,IAAME,EAAc,CAClBwC,QAAS,CACPC,OAAQ,mBACRC,cACE,8N","sources":["@/components/ui/alert.jsx","components/Alert.jsx","components/Loader.jsx","services/fetchReviews.js","@/components/ui/card.jsx","components/Reviews.jsx","services/api.js"],"sourcesContent":["import * as React from 'react';\nimport { cva } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst alertVariants = cva(\n 'relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7',\n {\n variants: {\n variant: {\n default: 'bg-background text-foreground',\n destructive:\n 'border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nconst Alert = React.forwardRef(({ className, variant, ...props }, ref) => (\n \n));\nAlert.displayName = 'Alert';\n\nconst AlertTitle = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertTitle.displayName = 'AlertTitle';\n\nconst AlertDescription = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertDescription.displayName = 'AlertDescription';\n\nexport { Alert, AlertTitle, AlertDescription };\n","import {\n ExclamationTriangleIcon,\n InfoCircledIcon,\n} from '@radix-ui/react-icons';\n\nimport { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';\n\nexport const AlertDestructive = ({ message }) => {\n return (\n \n \n Error\n {message}\n \n );\n};\n\nexport const AlertInfo = () => {\n return (\n \n \n No Search Results\n \n Your search did not match any movies. Please try again with different\n keywords or filters.\n \n \n );\n};\n\nexport const AlertNoCast = () => {\n return (\n \n \n No Cast Information\n \n There is no information available about the cast for this movie.\n \n \n );\n};\n\nexport const AlertNoReviews = () => {\n return (\n \n \n No Reviews Yet\n \n There are currently no reviews available for this movie.\n \n \n );\n};\n","import { ReloadIcon } from '@radix-ui/react-icons';\n\nimport { Button } from '@/components/ui/button';\n\nexport const Loader = () => {\n return (\n \n );\n};\n","import { axios, baseOptions } from './api';\n\nconst fetchReviews = async movie_id => {\n const { data } = await axios.get(\n `/movie/${movie_id}/reviews?language=en-US`,\n baseOptions\n );\n\n return data.results;\n};\n\nexport { fetchReviews };\n","import * as React from 'react';\n\nimport { cn } from '@/lib/utils';\n\nconst Card = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nCard.displayName = 'Card';\n\nconst CardHeader = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nCardHeader.displayName = 'CardHeader';\n\nconst CardTitle = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nCardTitle.displayName = 'CardTitle';\n\nconst CardDescription = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nCardDescription.displayName = 'CardDescription';\n\nconst CardContent = React.forwardRef(({ className, ...props }, ref) => (\n
\n));\nCardContent.displayName = 'CardContent';\n\nconst CardFooter = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nCardFooter.displayName = 'CardFooter';\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardDescription,\n CardContent,\n};\n","import { useParams } from 'react-router-dom';\nimport { useQuery } from '@tanstack/react-query';\n\nimport { fetchReviews } from 'services/fetchReviews';\n\nimport { Loader } from './Loader';\nimport { AlertDestructive, AlertNoReviews } from './Alert';\n\nimport { format } from 'date-fns';\nimport ReactMarkdown from 'react-markdown';\nimport parse from 'html-react-parser';\n\nimport {\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n} from '@/components/ui/card';\n\nconst Reviews = () => {\n const { movieId } = useParams();\n\n const { data, isLoading, error } = useQuery({\n queryKey: ['reviews', movieId],\n queryFn: () => fetchReviews(movieId),\n });\n\n if (isLoading) {\n return ;\n }\n\n if (error) {\n return ;\n }\n\n return (\n <>\n {!isLoading && data.length === 0 && }\n
\n {data.map(review => (\n
    \n
  • \n \n \n {review.author}\n \n {format(new Date(review.created_at), 'HH:mm, MMMM d, yyyy')}\n \n \n \n {/<([A-Za-z][A-Za-z0-9]*)\\b[^>]*>(.*?)<\\/\\1>/.test(\n review.content\n ) ? (\n

    {parse(review.content)}

    \n ) : (\n {review.content}\n )}\n
    \n
    \n
  • \n
\n ))}\n
\n \n );\n};\n\nexport default Reviews;\n","import axios from 'axios';\n\naxios.defaults.baseURL = 'https://api.themoviedb.org/3';\n\nconst baseOptions = {\n headers: {\n accept: 'application/json',\n Authorization:\n 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ',\n },\n};\n\nexport { axios, baseOptions };\n"],"names":["alertVariants","cva","variants","variant","default","destructive","defaultVariants","Alert","React","_ref","ref","className","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","role","cn","displayName","AlertTitle","_ref2","_excluded2","AlertDescription","_ref3","_excluded3","AlertDestructive","message","_jsxs","children","ExclamationTriangleIcon","AlertInfo","InfoCircledIcon","AlertNoCast","AlertNoReviews","Loader","Button","disabled","ReloadIcon","fetchReviews","_asyncToGenerator","_regeneratorRuntime","_callee","movie_id","_yield$axios$get","data","_context","prev","next","axios","concat","baseOptions","sent","abrupt","results","stop","_x","apply","arguments","Card","CardHeader","CardTitle","CardDescription","_ref4","_excluded4","CardContent","_ref5","_excluded5","_ref6","_excluded6","movieId","useParams","_useQuery","useQuery","queryKey","queryFn","isLoading","error","_Fragment","length","map","review","author","format","Date","created_at","test","content","parse","ReactMarkdown","id","headers","accept","Authorization"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/317.a164986f.chunk.js b/static/js/317.a164986f.chunk.js new file mode 100644 index 0000000..b0ca1b6 --- /dev/null +++ b/static/js/317.a164986f.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgoit_react_hw_05_movies=self.webpackChunkgoit_react_hw_05_movies||[]).push([[317],{2778:function(e,r,a){a.d(r,{$h:function(){return N},h$:function(){return j},Sw:function(){return p},xD:function(){return g}});var s=a(1928),t=a(1413),n=a(4925),i=a(2791),c=a(152),l=a(2758),o=a(184),d=["className","variant"],u=["className"],f=["className"],m=(0,c.j)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),x=i.forwardRef((function(e,r){var a=e.className,s=e.variant,i=(0,n.Z)(e,d);return(0,o.jsx)("div",(0,t.Z)({ref:r,role:"alert",className:(0,l.cn)(m({variant:s}),a)},i))}));x.displayName="Alert";var v=i.forwardRef((function(e,r){var a=e.className,s=(0,n.Z)(e,u);return(0,o.jsx)("div",(0,t.Z)({ref:r,className:(0,l.cn)("mb-1 font-medium leading-none tracking-tight",a)},s))}));v.displayName="AlertTitle";var h=i.forwardRef((function(e,r){var a=e.className,s=(0,n.Z)(e,f);return(0,o.jsx)("div",(0,t.Z)({ref:r,className:(0,l.cn)("text-sm [&_p]:leading-relaxed",a)},s))}));h.displayName="AlertDescription";var N=function(e){var r=e.message;return(0,o.jsxs)(x,{variant:"destructive",className:"max-w-2xl",children:[(0,o.jsx)(s.LPM,{className:"h-4 w-4"}),(0,o.jsx)(v,{children:"Error"}),(0,o.jsx)(h,{children:r})]})},j=function(){return(0,o.jsxs)(x,{className:"max-w-2xl",children:[(0,o.jsx)(s.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(v,{children:"No Search Results"}),(0,o.jsx)(h,{children:"Your search did not match any movies. Please try again with different keywords or filters."})]})},p=function(){return(0,o.jsxs)(x,{className:"max-w-2xl mt-8",children:[(0,o.jsx)(s.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(v,{children:"No Cast Information"}),(0,o.jsx)(h,{children:"There is no information available about the cast for this movie."})]})},g=function(){return(0,o.jsxs)(x,{className:"max-w-2xl mt-8",children:[(0,o.jsx)(s.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(v,{children:"No Reviews Yet"}),(0,o.jsx)(h,{children:"There are currently no reviews available for this movie."})]})}},7317:function(e,r,a){a.r(r),a.d(r,{default:function(){return _}});var s=a(7689),t=a(3984),n=a(5861),i=a(4687),c=a.n(i),l=a(4390),o=function(){var e=(0,n.Z)(c().mark((function e(r){var a,s;return c().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.o.get("/movie/".concat(r,"/reviews?language=en-US"),l._);case 2:return a=e.sent,s=a.data,e.abrupt("return",s.results);case 5:case"end":return e.stop()}}),e)})));return function(r){return e.apply(this,arguments)}}(),d=a(4321),u=a(2778),f=a(4461),m=a(570),x=a(5658),v=a(1413),h=a(4925),N=a(2791),j=a(2758),p=a(184),g=["className"],w=["className"],y=["className"],Z=["className"],b=["className"],I=["className"],C=N.forwardRef((function(e,r){var a=e.className,s=(0,h.Z)(e,g);return(0,p.jsx)("div",(0,v.Z)({ref:r,className:(0,j.cn)("rounded-xl border bg-card text-card-foreground shadow",a)},s))}));C.displayName="Card";var z=N.forwardRef((function(e,r){var a=e.className,s=(0,h.Z)(e,w);return(0,p.jsx)("div",(0,v.Z)({ref:r,className:(0,j.cn)("flex flex-col space-y-1.5 p-6",a)},s))}));z.displayName="CardHeader";var M=N.forwardRef((function(e,r){var a=e.className,s=(0,h.Z)(e,y);return(0,p.jsx)("div",(0,v.Z)({ref:r,className:(0,j.cn)("font-semibold leading-none tracking-tight",a)},s))}));M.displayName="CardTitle";var k=N.forwardRef((function(e,r){var a=e.className,s=(0,h.Z)(e,Z);return(0,p.jsx)("p",(0,v.Z)({ref:r,className:(0,j.cn)("text-sm text-muted-foreground",a)},s))}));k.displayName="CardDescription";var R=N.forwardRef((function(e,r){var a=e.className,s=(0,h.Z)(e,b);return(0,p.jsx)("div",(0,v.Z)({ref:r,className:(0,j.cn)("p-6 pt-0",a)},s))}));R.displayName="CardContent",N.forwardRef((function(e,r){var a=e.className,s=(0,h.Z)(e,I);return(0,p.jsx)("div",(0,v.Z)({ref:r,className:(0,j.cn)("flex items-center p-6 pt-0",a)},s))})).displayName="CardFooter";var _=function(){var e=(0,s.UO)().movieId,r=(0,t.a)({queryKey:["reviews",e],queryFn:function(){return o(e)}}),a=r.data,n=r.isLoading,i=r.error;return n?(0,p.jsx)(d.a,{}):i?(0,p.jsx)(u.$h,{message:i.message}):(0,p.jsxs)(p.Fragment,{children:[!n&&0===a.length&&(0,p.jsx)(u.xD,{}),(0,p.jsx)("div",{className:"flex flex-col w-full max-w-5xl items-start gap-4 py-8",children:a.map((function(e){return(0,p.jsx)("ul",{children:(0,p.jsx)("li",{children:(0,p.jsxs)(C,{children:[(0,p.jsxs)(z,{children:[(0,p.jsx)(M,{children:e.author}),(0,p.jsx)(k,{children:(0,f.WU)(new Date(e.created_at),"HH:mm, MMMM d, yyyy")})]}),(0,p.jsx)(R,{children:/<([A-Za-z][A-Za-z0-9]*)\b[^>]*>(.*?)<\/\1>/.test(e.content)?(0,p.jsx)("p",{children:(0,x.ZP)(e.content)}):(0,p.jsx)(m.U,{children:e.content})})]})})},e.id)}))})]})}},4390:function(e,r,a){a.d(r,{_:function(){return t},o:function(){return s.Z}});var s=a(5294);s.Z.defaults.baseURL="https://api.themoviedb.org/3";var t={headers:{accept:"application/json",Authorization:"Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ"}}}}]); +//# sourceMappingURL=317.a164986f.chunk.js.map \ No newline at end of file diff --git a/static/js/317.a164986f.chunk.js.map b/static/js/317.a164986f.chunk.js.map new file mode 100644 index 0000000..823f36f --- /dev/null +++ b/static/js/317.a164986f.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/317.a164986f.chunk.js","mappings":"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","sources":["@/components/ui/alert.jsx","components/Alert.jsx","services/fetchReviews.js","@/components/ui/card.jsx","components/Reviews.jsx","services/api.js"],"sourcesContent":["import * as React from 'react';\nimport { cva } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst alertVariants = cva(\n 'relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7',\n {\n variants: {\n variant: {\n default: 'bg-background text-foreground',\n destructive:\n 'border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nconst Alert = React.forwardRef(({ className, variant, ...props }, ref) => (\n \n));\nAlert.displayName = 'Alert';\n\nconst AlertTitle = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertTitle.displayName = 'AlertTitle';\n\nconst AlertDescription = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertDescription.displayName = 'AlertDescription';\n\nexport { Alert, AlertTitle, AlertDescription };\n","import {\n ExclamationTriangleIcon,\n InfoCircledIcon,\n} from '@radix-ui/react-icons';\n\nimport { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';\n\nexport const AlertDestructive = ({ message }) => {\n return (\n \n \n Error\n {message}\n \n );\n};\n\nexport const AlertInfo = () => {\n return (\n \n \n No Search Results\n \n Your search did not match any movies. Please try again with different\n keywords or filters.\n \n \n );\n};\n\nexport const AlertNoCast = () => {\n return (\n \n \n No Cast Information\n \n There is no information available about the cast for this movie.\n \n \n );\n};\n\nexport const AlertNoReviews = () => {\n return (\n \n \n No Reviews Yet\n \n There are currently no reviews available for this movie.\n \n \n );\n};\n","import { axios, baseOptions } from './api';\n\nconst fetchReviews = async movie_id => {\n const { data } = await axios.get(\n `/movie/${movie_id}/reviews?language=en-US`,\n baseOptions\n );\n\n return data.results;\n};\n\nexport { fetchReviews };\n","import * as React from 'react';\n\nimport { cn } from '@/lib/utils';\n\nconst Card = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nCard.displayName = 'Card';\n\nconst CardHeader = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nCardHeader.displayName = 'CardHeader';\n\nconst CardTitle = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nCardTitle.displayName = 'CardTitle';\n\nconst CardDescription = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nCardDescription.displayName = 'CardDescription';\n\nconst CardContent = React.forwardRef(({ className, ...props }, ref) => (\n
\n));\nCardContent.displayName = 'CardContent';\n\nconst CardFooter = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nCardFooter.displayName = 'CardFooter';\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardDescription,\n CardContent,\n};\n","import { useParams } from 'react-router-dom';\nimport { useQuery } from '@tanstack/react-query';\n\nimport { fetchReviews } from 'services/fetchReviews';\n\nimport { Loader } from './Loader';\nimport { AlertDestructive, AlertNoReviews } from './Alert';\n\nimport { format } from 'date-fns';\nimport ReactMarkdown from 'react-markdown';\nimport parse from 'html-react-parser';\n\nimport {\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n} from '@/components/ui/card';\n\nconst Reviews = () => {\n const { movieId } = useParams();\n\n const { data, isLoading, error } = useQuery({\n queryKey: ['reviews', movieId],\n queryFn: () => fetchReviews(movieId),\n });\n\n if (isLoading) {\n return ;\n }\n\n if (error) {\n return ;\n }\n\n return (\n <>\n {!isLoading && data.length === 0 && }\n
\n {data.map(review => (\n
    \n
  • \n \n \n {review.author}\n \n {format(new Date(review.created_at), 'HH:mm, MMMM d, yyyy')}\n \n \n \n {/<([A-Za-z][A-Za-z0-9]*)\\b[^>]*>(.*?)<\\/\\1>/.test(\n review.content\n ) ? (\n

    {parse(review.content)}

    \n ) : (\n {review.content}\n )}\n
    \n
    \n
  • \n
\n ))}\n
\n \n );\n};\n\nexport default Reviews;\n","import axios from 'axios';\n\naxios.defaults.baseURL = 'https://api.themoviedb.org/3';\n\nconst baseOptions = {\n headers: {\n accept: 'application/json',\n Authorization:\n 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ',\n },\n};\n\nexport { axios, baseOptions };\n"],"names":["alertVariants","cva","variants","variant","default","destructive","defaultVariants","Alert","React","_ref","ref","className","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","role","cn","displayName","AlertTitle","_ref2","_excluded2","AlertDescription","_ref3","_excluded3","AlertDestructive","message","_jsxs","children","ExclamationTriangleIcon","AlertInfo","InfoCircledIcon","AlertNoCast","AlertNoReviews","fetchReviews","_asyncToGenerator","_regeneratorRuntime","_callee","movie_id","_yield$axios$get","data","_context","prev","next","axios","concat","baseOptions","sent","abrupt","results","stop","_x","apply","arguments","Card","CardHeader","CardTitle","CardDescription","_ref4","_excluded4","CardContent","_ref5","_excluded5","_ref6","_excluded6","movieId","useParams","_useQuery","useQuery","queryKey","queryFn","isLoading","error","Loader","_Fragment","length","map","review","author","format","Date","created_at","test","content","parse","ReactMarkdown","id","headers","accept","Authorization"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/53.be57ba4b.chunk.js b/static/js/53.4c78e644.chunk.js similarity index 52% rename from static/js/53.be57ba4b.chunk.js rename to static/js/53.4c78e644.chunk.js index 2e33076..a6ba0f2 100644 --- a/static/js/53.be57ba4b.chunk.js +++ b/static/js/53.4c78e644.chunk.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgoit_react_hw_05_movies=self.webpackChunkgoit_react_hw_05_movies||[]).push([[53],{7935:function(e,r,t){t.d(r,{C:function(){return d}});var a=t(1413),n=t(4925),s=(t(2791),t(152)),i=t(2758),o=t(184),c=["className","variant"],l=(0,s.j)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function d(e){var r=e.className,t=e.variant,s=(0,n.Z)(e,c);return(0,o.jsx)("div",(0,a.Z)({className:(0,i.cn)(l({variant:t}),r)},s))}},2778:function(e,r,t){t.d(r,{$h:function(){return g},h$:function(){return p},Sw:function(){return j},xD:function(){return N}});var a=t(1928),n=t(1413),s=t(4925),i=t(2791),o=t(152),c=t(2758),l=t(184),d=["className","variant"],u=["className"],f=["className"],m=(0,o.j)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),x=i.forwardRef((function(e,r){var t=e.className,a=e.variant,i=(0,s.Z)(e,d);return(0,l.jsx)("div",(0,n.Z)({ref:r,role:"alert",className:(0,c.cn)(m({variant:a}),t)},i))}));x.displayName="Alert";var v=i.forwardRef((function(e,r){var t=e.className,a=(0,s.Z)(e,u);return(0,l.jsx)("div",(0,n.Z)({ref:r,className:(0,c.cn)("mb-1 font-medium leading-none tracking-tight",t)},a))}));v.displayName="AlertTitle";var h=i.forwardRef((function(e,r){var t=e.className,a=(0,s.Z)(e,f);return(0,l.jsx)("div",(0,n.Z)({ref:r,className:(0,c.cn)("text-sm [&_p]:leading-relaxed",t)},a))}));h.displayName="AlertDescription";var g=function(e){var r=e.message;return(0,l.jsxs)(x,{variant:"destructive",className:"max-w-2xl",children:[(0,l.jsx)(a.LPM,{className:"h-4 w-4"}),(0,l.jsx)(v,{children:"Error"}),(0,l.jsx)(h,{children:r})]})},p=function(){return(0,l.jsxs)(x,{className:"max-w-2xl",children:[(0,l.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,l.jsx)(v,{children:"No Search Results"}),(0,l.jsx)(h,{children:"Your search did not match any movies. Please try again with different keywords or filters."})]})},j=function(){return(0,l.jsxs)(x,{className:"max-w-2xl mt-8",children:[(0,l.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,l.jsx)(v,{children:"No Cast Information"}),(0,l.jsx)(h,{children:"There is no information available about the cast for this movie."})]})},N=function(){return(0,l.jsxs)(x,{className:"max-w-2xl mt-8",children:[(0,l.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,l.jsx)(v,{children:"No Reviews Yet"}),(0,l.jsx)(h,{children:"There are currently no reviews available for this movie."})]})}},4321:function(e,r,t){t.d(r,{a:function(){return i}});var a=t(1928),n=t(9329),s=t(184),i=function(){return(0,s.jsxs)(n.z,{className:"my-4",disabled:!0,children:[(0,s.jsx)(a.BGW,{className:"mr-2 h-4 w-4 animate-spin"}),"Please wait"]})}},4633:function(e,r,t){var a=t(1087),n=t(7935),s=t(184);r.Z=function(e){var r=e.movie;return(0,s.jsx)(a.rU,{to:"/movies/".concat(r.id),children:(0,s.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,s.jsx)("div",{className:"overflow-hidden rounded-lg",children:(0,s.jsx)("img",{src:r.poster_path?"https://image.tmdb.org/t/p/original".concat(r.poster_path):"https://placehold.co/342x513?text=".concat(r.title||r.name),alt:r.title||r.name,className:"h-auto w-auto object-cover transition-all hover:scale-105"})}),r.media_type&&(0,s.jsx)("div",{className:"flex-none",children:(0,s.jsx)(n.C,{children:r.media_type.charAt(0).toUpperCase()+r.media_type.slice(1)})}),(0,s.jsxs)("div",{className:"flex flex-col gap-x-0.5",children:[(0,s.jsx)("h3",{className:"scroll-m-20 text-lg font-bold tracking-tight",children:r.title||r.name}),(0,s.jsxs)("h4",{className:"text-sm text-muted-foreground font-bold",children:[r.release_date&&new Date(r.release_date).getFullYear(),r.first_air_date&&new Date(r.first_air_date).getFullYear()]})]})]})},r.id)}},2053:function(e,r,t){t.r(r),t.d(r,{default:function(){return m}});var a=t(3984),n=t(5861),s=t(4687),i=t.n(s),o=t(4390),c=function(){var e=(0,n.Z)(i().mark((function e(){var r,t;return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.o.get("/trending/movie/day?language=en-US",o._);case 2:return r=e.sent,t=r.data,e.abrupt("return",t.results);case 5:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),l=t(4633),d=t(4321),u=t(2778),f=t(184),m=function(){var e=(0,a.a)({queryKey:["tranding"],queryFn:c}),r=e.isPending,t=e.isError,n=e.data,s=e.error;return r?(0,f.jsx)(d.a,{}):t?(0,f.jsx)(u.$h,{message:s.message}):(0,f.jsxs)("div",{children:[(0,f.jsx)("h1",{className:"scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl pb-8",children:"Trending Movies and TV Shows"}),(0,f.jsx)("div",{className:"grid grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 gap-4",children:n.map((function(e){return(0,f.jsx)(l.Z,{movie:e},e.id)}))})]})}},4390:function(e,r,t){t.d(r,{_:function(){return n},o:function(){return a.Z}});var a=t(5294);a.Z.defaults.baseURL="https://api.themoviedb.org/3";var n={headers:{accept:"application/json",Authorization:"Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ"}}}}]); -//# sourceMappingURL=53.be57ba4b.chunk.js.map \ No newline at end of file +"use strict";(self.webpackChunkgoit_react_hw_05_movies=self.webpackChunkgoit_react_hw_05_movies||[]).push([[53],{7935:function(e,r,t){t.d(r,{C:function(){return d}});var a=t(1413),n=t(4925),s=(t(2791),t(152)),i=t(2758),o=t(184),c=["className","variant"],l=(0,s.j)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function d(e){var r=e.className,t=e.variant,s=(0,n.Z)(e,c);return(0,o.jsx)("div",(0,a.Z)({className:(0,i.cn)(l({variant:t}),r)},s))}},2778:function(e,r,t){t.d(r,{$h:function(){return g},h$:function(){return p},Sw:function(){return j},xD:function(){return N}});var a=t(1928),n=t(1413),s=t(4925),i=t(2791),o=t(152),c=t(2758),l=t(184),d=["className","variant"],u=["className"],f=["className"],m=(0,o.j)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),x=i.forwardRef((function(e,r){var t=e.className,a=e.variant,i=(0,s.Z)(e,d);return(0,l.jsx)("div",(0,n.Z)({ref:r,role:"alert",className:(0,c.cn)(m({variant:a}),t)},i))}));x.displayName="Alert";var v=i.forwardRef((function(e,r){var t=e.className,a=(0,s.Z)(e,u);return(0,l.jsx)("div",(0,n.Z)({ref:r,className:(0,c.cn)("mb-1 font-medium leading-none tracking-tight",t)},a))}));v.displayName="AlertTitle";var h=i.forwardRef((function(e,r){var t=e.className,a=(0,s.Z)(e,f);return(0,l.jsx)("div",(0,n.Z)({ref:r,className:(0,c.cn)("text-sm [&_p]:leading-relaxed",t)},a))}));h.displayName="AlertDescription";var g=function(e){var r=e.message;return(0,l.jsxs)(x,{variant:"destructive",className:"max-w-2xl",children:[(0,l.jsx)(a.LPM,{className:"h-4 w-4"}),(0,l.jsx)(v,{children:"Error"}),(0,l.jsx)(h,{children:r})]})},p=function(){return(0,l.jsxs)(x,{className:"max-w-2xl",children:[(0,l.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,l.jsx)(v,{children:"No Search Results"}),(0,l.jsx)(h,{children:"Your search did not match any movies. Please try again with different keywords or filters."})]})},j=function(){return(0,l.jsxs)(x,{className:"max-w-2xl mt-8",children:[(0,l.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,l.jsx)(v,{children:"No Cast Information"}),(0,l.jsx)(h,{children:"There is no information available about the cast for this movie."})]})},N=function(){return(0,l.jsxs)(x,{className:"max-w-2xl mt-8",children:[(0,l.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,l.jsx)(v,{children:"No Reviews Yet"}),(0,l.jsx)(h,{children:"There are currently no reviews available for this movie."})]})}},4633:function(e,r,t){var a=t(1087),n=t(7935),s=t(184);r.Z=function(e){var r=e.movie;return(0,s.jsx)(a.rU,{to:"/movies/".concat(r.id),children:(0,s.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,s.jsx)("div",{className:"overflow-hidden rounded-lg",children:(0,s.jsx)("img",{src:r.poster_path?"https://image.tmdb.org/t/p/original".concat(r.poster_path):"https://placehold.co/342x513?text=".concat(r.title||r.name),alt:r.title||r.name,className:"h-auto w-auto object-cover transition-all hover:scale-105"})}),r.media_type&&(0,s.jsx)("div",{className:"flex-none",children:(0,s.jsx)(n.C,{children:r.media_type.charAt(0).toUpperCase()+r.media_type.slice(1)})}),(0,s.jsxs)("div",{className:"flex flex-col gap-x-0.5",children:[(0,s.jsx)("h3",{className:"scroll-m-20 text-lg font-bold tracking-tight",children:r.title||r.name}),(0,s.jsxs)("h4",{className:"text-sm text-muted-foreground font-bold",children:[r.release_date&&new Date(r.release_date).getFullYear(),r.first_air_date&&new Date(r.first_air_date).getFullYear()]})]})]})},r.id)}},2053:function(e,r,t){t.r(r),t.d(r,{default:function(){return m}});var a=t(3984),n=t(5861),s=t(4687),i=t.n(s),o=t(4390),c=function(){var e=(0,n.Z)(i().mark((function e(){var r,t;return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.o.get("/trending/movie/day?language=en-US",o._);case 2:return r=e.sent,t=r.data,e.abrupt("return",t.results);case 5:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),l=t(4633),d=t(4321),u=t(2778),f=t(184),m=function(){var e=(0,a.a)({queryKey:["tranding"],queryFn:c}),r=e.isPending,t=e.isError,n=e.data,s=e.error;return r?(0,f.jsx)(d.a,{}):t?(0,f.jsx)(u.$h,{message:s.message}):(0,f.jsxs)("div",{children:[(0,f.jsx)("h1",{className:"scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl pb-8",children:"Trending Movies and TV Shows"}),(0,f.jsx)("div",{className:"grid grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 gap-4",children:n.map((function(e){return(0,f.jsx)(l.Z,{movie:e},e.id)}))})]})}},4390:function(e,r,t){t.d(r,{_:function(){return n},o:function(){return a.Z}});var a=t(5294);a.Z.defaults.baseURL="https://api.themoviedb.org/3";var n={headers:{accept:"application/json",Authorization:"Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ"}}}}]); +//# sourceMappingURL=53.4c78e644.chunk.js.map \ No newline at end of file diff --git a/static/js/53.4c78e644.chunk.js.map b/static/js/53.4c78e644.chunk.js.map new file mode 100644 index 0000000..89a785a --- /dev/null +++ b/static/js/53.4c78e644.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/53.4c78e644.chunk.js","mappings":"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","sources":["@/components/ui/badge.jsx","@/components/ui/alert.jsx","components/Alert.jsx","components/MovieItem.jsx","services/fetchTrendingData.js","pages/Home.jsx","services/api.js"],"sourcesContent":["import * as React from \"react\"\nimport { cva } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n destructive:\n \"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80\",\n outline: \"text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Badge({\n className,\n variant,\n ...props\n}) {\n return (
);\n}\n\nexport { Badge, badgeVariants }\n","import * as React from 'react';\nimport { cva } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst alertVariants = cva(\n 'relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7',\n {\n variants: {\n variant: {\n default: 'bg-background text-foreground',\n destructive:\n 'border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nconst Alert = React.forwardRef(({ className, variant, ...props }, ref) => (\n \n));\nAlert.displayName = 'Alert';\n\nconst AlertTitle = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertTitle.displayName = 'AlertTitle';\n\nconst AlertDescription = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertDescription.displayName = 'AlertDescription';\n\nexport { Alert, AlertTitle, AlertDescription };\n","import {\n ExclamationTriangleIcon,\n InfoCircledIcon,\n} from '@radix-ui/react-icons';\n\nimport { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';\n\nexport const AlertDestructive = ({ message }) => {\n return (\n \n \n Error\n {message}\n \n );\n};\n\nexport const AlertInfo = () => {\n return (\n \n \n No Search Results\n \n Your search did not match any movies. Please try again with different\n keywords or filters.\n \n \n );\n};\n\nexport const AlertNoCast = () => {\n return (\n \n \n No Cast Information\n \n There is no information available about the cast for this movie.\n \n \n );\n};\n\nexport const AlertNoReviews = () => {\n return (\n \n \n No Reviews Yet\n \n There are currently no reviews available for this movie.\n \n \n );\n};\n","import { Link } from 'react-router-dom';\n\nimport { Badge } from '@/components/ui/badge';\n\nconst MovieItem = ({ movie }) => {\n return (\n \n
\n
\n \n
\n {movie.media_type && (\n
\n \n {movie.media_type.charAt(0).toUpperCase() +\n movie.media_type.slice(1)}\n \n
\n )}\n\n
\n

\n {movie.title || movie.name}\n

\n

\n {movie.release_date && new Date(movie.release_date).getFullYear()}\n {movie.first_air_date &&\n new Date(movie.first_air_date).getFullYear()}\n

\n
\n
\n \n );\n};\n\nexport default MovieItem;\n","import { axios, baseOptions } from './api';\n\nconst fetchTrendingData = async () => {\n const { data } = await axios.get(\n '/trending/movie/day?language=en-US',\n baseOptions\n );\n\n return data.results;\n};\n\nexport { fetchTrendingData };\n","import { useQuery } from '@tanstack/react-query';\nimport { fetchTrendingData } from 'services/fetchTrendingData';\n\nimport MovieItem from 'components/MovieItem';\nimport { Loader } from 'components/Loader';\nimport { AlertDestructive } from 'components/Alert';\n\nconst Home = () => {\n const { isPending, isError, data, error } = useQuery({\n queryKey: ['tranding'],\n queryFn: fetchTrendingData,\n });\n\n if (isPending) {\n return ;\n }\n\n if (isError) {\n return ;\n }\n\n return (\n
\n

\n Trending Movies and TV Shows\n

\n
\n {data.map(movie => (\n \n ))}\n
\n
\n );\n};\n\nexport default Home;\n","import axios from 'axios';\n\naxios.defaults.baseURL = 'https://api.themoviedb.org/3';\n\nconst baseOptions = {\n headers: {\n accept: 'application/json',\n Authorization:\n 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ',\n },\n};\n\nexport { axios, baseOptions };\n"],"names":["badgeVariants","cva","variants","variant","default","secondary","destructive","outline","defaultVariants","Badge","_ref","className","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","cn","alertVariants","Alert","React","ref","role","displayName","AlertTitle","_ref2","_excluded2","AlertDescription","_ref3","_excluded3","AlertDestructive","message","_jsxs","children","ExclamationTriangleIcon","AlertInfo","InfoCircledIcon","AlertNoCast","AlertNoReviews","movie","Link","to","concat","id","src","poster_path","title","name","alt","media_type","charAt","toUpperCase","slice","release_date","Date","getFullYear","first_air_date","fetchTrendingData","_asyncToGenerator","_regeneratorRuntime","_callee","_yield$axios$get","data","_context","prev","next","axios","baseOptions","sent","abrupt","results","stop","apply","arguments","_useQuery","useQuery","queryKey","queryFn","isPending","isError","error","Loader","map","MovieItem","headers","accept","Authorization"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/53.be57ba4b.chunk.js.map b/static/js/53.be57ba4b.chunk.js.map deleted file mode 100644 index 67c41f9..0000000 --- a/static/js/53.be57ba4b.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/53.be57ba4b.chunk.js","mappings":"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","sources":["@/components/ui/badge.jsx","@/components/ui/alert.jsx","components/Alert.jsx","components/Loader.jsx","components/MovieItem.jsx","services/fetchTrendingData.js","pages/Home.jsx","services/api.js"],"sourcesContent":["import * as React from \"react\"\nimport { cva } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n destructive:\n \"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80\",\n outline: \"text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Badge({\n className,\n variant,\n ...props\n}) {\n return (
);\n}\n\nexport { Badge, badgeVariants }\n","import * as React from 'react';\nimport { cva } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst alertVariants = cva(\n 'relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7',\n {\n variants: {\n variant: {\n default: 'bg-background text-foreground',\n destructive:\n 'border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nconst Alert = React.forwardRef(({ className, variant, ...props }, ref) => (\n \n));\nAlert.displayName = 'Alert';\n\nconst AlertTitle = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertTitle.displayName = 'AlertTitle';\n\nconst AlertDescription = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertDescription.displayName = 'AlertDescription';\n\nexport { Alert, AlertTitle, AlertDescription };\n","import {\n ExclamationTriangleIcon,\n InfoCircledIcon,\n} from '@radix-ui/react-icons';\n\nimport { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';\n\nexport const AlertDestructive = ({ message }) => {\n return (\n \n \n Error\n {message}\n \n );\n};\n\nexport const AlertInfo = () => {\n return (\n \n \n No Search Results\n \n Your search did not match any movies. Please try again with different\n keywords or filters.\n \n \n );\n};\n\nexport const AlertNoCast = () => {\n return (\n \n \n No Cast Information\n \n There is no information available about the cast for this movie.\n \n \n );\n};\n\nexport const AlertNoReviews = () => {\n return (\n \n \n No Reviews Yet\n \n There are currently no reviews available for this movie.\n \n \n );\n};\n","import { ReloadIcon } from '@radix-ui/react-icons';\n\nimport { Button } from '@/components/ui/button';\n\nexport const Loader = () => {\n return (\n \n );\n};\n","import { Link } from 'react-router-dom';\n\nimport { Badge } from '@/components/ui/badge';\n\nconst MovieItem = ({ movie }) => {\n return (\n \n
\n
\n \n
\n {movie.media_type && (\n
\n \n {movie.media_type.charAt(0).toUpperCase() +\n movie.media_type.slice(1)}\n \n
\n )}\n\n
\n

\n {movie.title || movie.name}\n

\n

\n {movie.release_date && new Date(movie.release_date).getFullYear()}\n {movie.first_air_date &&\n new Date(movie.first_air_date).getFullYear()}\n

\n
\n
\n \n );\n};\n\nexport default MovieItem;\n","import { axios, baseOptions } from './api';\n\nconst fetchTrendingData = async () => {\n const { data } = await axios.get(\n '/trending/movie/day?language=en-US',\n baseOptions\n );\n\n return data.results;\n};\n\nexport { fetchTrendingData };\n","import { useQuery } from '@tanstack/react-query';\nimport { fetchTrendingData } from 'services/fetchTrendingData';\n\nimport MovieItem from 'components/MovieItem';\nimport { Loader } from 'components/Loader';\nimport { AlertDestructive } from 'components/Alert';\n\nconst Home = () => {\n const { isPending, isError, data, error } = useQuery({\n queryKey: ['tranding'],\n queryFn: fetchTrendingData,\n });\n\n if (isPending) {\n return ;\n }\n\n if (isError) {\n return ;\n }\n\n return (\n
\n

\n Trending Movies and TV Shows\n

\n
\n {data.map(movie => (\n \n ))}\n
\n
\n );\n};\n\nexport default Home;\n","import axios from 'axios';\n\naxios.defaults.baseURL = 'https://api.themoviedb.org/3';\n\nconst baseOptions = {\n headers: {\n accept: 'application/json',\n Authorization:\n 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ',\n },\n};\n\nexport { axios, baseOptions };\n"],"names":["badgeVariants","cva","variants","variant","default","secondary","destructive","outline","defaultVariants","Badge","_ref","className","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","cn","alertVariants","Alert","React","ref","role","displayName","AlertTitle","_ref2","_excluded2","AlertDescription","_ref3","_excluded3","AlertDestructive","message","_jsxs","children","ExclamationTriangleIcon","AlertInfo","InfoCircledIcon","AlertNoCast","AlertNoReviews","Loader","Button","disabled","ReloadIcon","movie","Link","to","concat","id","src","poster_path","title","name","alt","media_type","charAt","toUpperCase","slice","release_date","Date","getFullYear","first_air_date","fetchTrendingData","_asyncToGenerator","_regeneratorRuntime","_callee","_yield$axios$get","data","_context","prev","next","axios","baseOptions","sent","abrupt","results","stop","apply","arguments","_useQuery","useQuery","queryKey","queryFn","isPending","isError","error","map","MovieItem","headers","accept","Authorization"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/783.1b77d798.chunk.js b/static/js/783.1b77d798.chunk.js deleted file mode 100644 index 6fc77e3..0000000 --- a/static/js/783.1b77d798.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkgoit_react_hw_05_movies=self.webpackChunkgoit_react_hw_05_movies||[]).push([[783],{7935:function(e,t,r){r.d(t,{C:function(){return d}});var s=r(1413),a=r(4925),n=(r(2791),r(152)),i=r(2758),l=r(184),c=["className","variant"],o=(0,n.j)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function d(e){var t=e.className,r=e.variant,n=(0,a.Z)(e,c);return(0,l.jsx)("div",(0,s.Z)({className:(0,i.cn)(o({variant:r}),t)},n))}},2778:function(e,t,r){r.d(t,{$h:function(){return v},h$:function(){return j},Sw:function(){return p},xD:function(){return N}});var s=r(1928),a=r(1413),n=r(4925),i=r(2791),l=r(152),c=r(2758),o=r(184),d=["className","variant"],u=["className"],x=["className"],m=(0,l.j)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),f=i.forwardRef((function(e,t){var r=e.className,s=e.variant,i=(0,n.Z)(e,d);return(0,o.jsx)("div",(0,a.Z)({ref:t,role:"alert",className:(0,c.cn)(m({variant:s}),r)},i))}));f.displayName="Alert";var h=i.forwardRef((function(e,t){var r=e.className,s=(0,n.Z)(e,u);return(0,o.jsx)("div",(0,a.Z)({ref:t,className:(0,c.cn)("mb-1 font-medium leading-none tracking-tight",r)},s))}));h.displayName="AlertTitle";var g=i.forwardRef((function(e,t){var r=e.className,s=(0,n.Z)(e,x);return(0,o.jsx)("div",(0,a.Z)({ref:t,className:(0,c.cn)("text-sm [&_p]:leading-relaxed",r)},s))}));g.displayName="AlertDescription";var v=function(e){var t=e.message;return(0,o.jsxs)(f,{variant:"destructive",className:"max-w-2xl",children:[(0,o.jsx)(s.LPM,{className:"h-4 w-4"}),(0,o.jsx)(h,{children:"Error"}),(0,o.jsx)(g,{children:t})]})},j=function(){return(0,o.jsxs)(f,{className:"max-w-2xl",children:[(0,o.jsx)(s.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(h,{children:"No Search Results"}),(0,o.jsx)(g,{children:"Your search did not match any movies. Please try again with different keywords or filters."})]})},p=function(){return(0,o.jsxs)(f,{className:"max-w-2xl mt-8",children:[(0,o.jsx)(s.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(h,{children:"No Cast Information"}),(0,o.jsx)(g,{children:"There is no information available about the cast for this movie."})]})},N=function(){return(0,o.jsxs)(f,{className:"max-w-2xl mt-8",children:[(0,o.jsx)(s.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(h,{children:"No Reviews Yet"}),(0,o.jsx)(g,{children:"There are currently no reviews available for this movie."})]})}},4321:function(e,t,r){r.d(t,{a:function(){return i}});var s=r(1928),a=r(9329),n=r(184),i=function(){return(0,n.jsxs)(a.z,{className:"my-4",disabled:!0,children:[(0,n.jsx)(s.BGW,{className:"mr-2 h-4 w-4 animate-spin"}),"Please wait"]})}},7783:function(e,t,r){r.r(t),r.d(t,{default:function(){return v}});var s=r(7689),a=r(1087),n=r(3984),i=r(2791),l=r(4461),c=r(5861),o=r(4687),d=r.n(o),u=r(4390),x=function(){var e=(0,c.Z)(d().mark((function e(t){var r,s;return d().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,u.o.get("/movie/".concat(t,"?language=en-US"),u._);case 2:return r=e.sent,s=r.data,e.abrupt("return",s);case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),m=r(7935),f=r(4321),h=r(2778),g=r(184),v=function(){var e=(0,s.UO)().movieId,t=(0,n.a)({queryKey:["movieDetails",e],queryFn:function(){return x(e)}}),r=t.isPending,c=t.isError,o=t.data,d=t.error;return r?(0,g.jsx)(f.a,{}):c?(0,g.jsx)(h.$h,{message:d.message}):(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-3 gap-4 sm:gap-8 max-w-6xl",children:[(0,g.jsx)("img",{src:o.poster_path?"https://image.tmdb.org/t/p/original".concat(o.poster_path):"https://placehold.co/342x513?text=".concat(o.title),alt:o.title,className:"w-full rounded-lg"}),(0,g.jsxs)("div",{className:"col-span-2 flex flex-col gap-4",children:[(0,g.jsxs)("div",{children:[(0,g.jsx)("h1",{className:"scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl",children:o.title}),"en"!==o.original_language&&(0,g.jsx)("h2",{className:"scroll-m-20 pt-2 text-3xl text-muted-foreground font-semibold tracking-tight first:mt-0",children:o.original_title})]}),(0,g.jsxs)("p",{className:"text-md font-semibold",children:["Realese date:"," ",(0,g.jsx)("span",{className:"text-muted-foreground",children:(0,l.WU)(new Date(o.release_date),"MMMM d, yyyy")})]}),o.tagline&&(0,g.jsx)("blockquote",{className:"border-l-2 pl-6 italic",children:o.tagline}),(0,g.jsx)("p",{className:"leading-7",children:o.overview}),(0,g.jsxs)("div",{className:"flex flex-row flex-wrap gap-2",children:[(0,g.jsx)("p",{className:"scroll-m-20 text-md font-semibold tracking-tight",children:"Genres:"}),o.genres.map((function(e){return(0,g.jsx)("ul",{children:(0,g.jsx)("li",{children:(0,g.jsx)(m.C,{children:e.name})})},e.id)}))]}),(0,g.jsxs)("div",{className:"flex flex-row flex-wrap gap-2",children:[(0,g.jsx)("p",{className:"scroll-m-20 text-md font-semibold tracking-tight",children:"Production Countries:"}),o.production_countries.map((function(e){return(0,g.jsx)("ul",{children:(0,g.jsx)("li",{children:(0,g.jsx)(m.C,{children:e.name})})},e.iso_3166_1)}))]})]})]}),(0,g.jsxs)("ul",{className:"flex flex-row gap-4 border-b pt-4 pb-2",children:[(0,g.jsx)("li",{children:(0,g.jsx)(a.OL,{to:"cast",className:function(e){return e.isActive?"scroll-m-20 text-2xl font-semibold tracking-tight":"scroll-m-20 text-2xl font-semibold tracking-tight text-muted-foreground transition hover:text-inherit"},children:"Cast"})}),(0,g.jsx)("li",{children:(0,g.jsx)(a.OL,{to:"reviews",className:function(e){return e.isActive?"scroll-m-20 text-2xl font-semibold tracking-tight":"scroll-m-20 text-2xl font-semibold tracking-tight text-muted-foreground transition hover:text-inherit"},children:"Reviews"})})]}),(0,g.jsx)(i.Suspense,{fallback:(0,g.jsx)("div",{children:"Loading subpage..."}),children:(0,g.jsx)(s.j3,{})})]})}},4390:function(e,t,r){r.d(t,{_:function(){return a},o:function(){return s.Z}});var s=r(5294);s.Z.defaults.baseURL="https://api.themoviedb.org/3";var a={headers:{accept:"application/json",Authorization:"Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ"}}}}]); -//# sourceMappingURL=783.1b77d798.chunk.js.map \ No newline at end of file diff --git a/static/js/783.1b77d798.chunk.js.map b/static/js/783.1b77d798.chunk.js.map deleted file mode 100644 index 4a746db..0000000 --- a/static/js/783.1b77d798.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/783.1b77d798.chunk.js","mappings":"+PAKMA,GAAgBC,EAAAA,EAAAA,GACpB,uKACA,CACEC,SAAU,CACRC,QAAS,CACPC,QACE,mFACFC,UACE,kFACFC,YACE,+FACFC,QAAS,oBAGbC,gBAAiB,CACfL,QAAS,aAKf,SAASM,EAAKC,GAIV,IAHFC,EAASD,EAATC,UACAR,EAAOO,EAAPP,QACGS,GAAKC,EAAAA,EAAAA,GAAAH,EAAAI,GAER,OAAQC,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CAAKL,WAAWM,EAAAA,EAAAA,IAAGjB,EAAc,CAAEG,QAAAA,IAAYQ,IAAgBC,GACzE,C,kQC1BMM,GAAgBjB,EAAAA,EAAAA,GACpB,0KACA,CACEC,SAAU,CACRC,QAAS,CACPC,QAAS,gCACTE,YACE,4FAGNE,gBAAiB,CACfL,QAAS,aAKTgB,EAAQC,EAAAA,YAAiB,SAAAV,EAAmCW,GAAG,IAAnCV,EAASD,EAATC,UAAWR,EAAOO,EAAPP,QAAYS,GAAKC,EAAAA,EAAAA,GAAAH,EAAAI,GAAA,OAC5DC,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEK,IAAKA,EACLC,KAAK,QACLX,WAAWM,EAAAA,EAAAA,IAAGC,EAAc,CAAEf,QAAAA,IAAYQ,IACtCC,GACJ,IAEJO,EAAMI,YAAc,QAEpB,IAAMC,EAAaJ,EAAAA,YAAiB,SAAAK,EAA0BJ,GAAG,IAA1BV,EAASc,EAATd,UAAcC,GAAKC,EAAAA,EAAAA,GAAAY,EAAAC,GAAA,OACxDX,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEK,IAAKA,EACLV,WAAWM,EAAAA,EAAAA,IAAG,+CAAgDN,IAC1DC,GACJ,IAEJY,EAAWD,YAAc,aAEzB,IAAMI,EAAmBP,EAAAA,YAAiB,SAAAQ,EAA0BP,GAAG,IAA1BV,EAASiB,EAATjB,UAAcC,GAAKC,EAAAA,EAAAA,GAAAe,EAAAC,GAAA,OAC9Dd,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEK,IAAKA,EACLV,WAAWM,EAAAA,EAAAA,IAAG,gCAAiCN,IAC3CC,GACJ,IAEJe,EAAiBJ,YAAc,mBCxCxB,IAAMO,EAAmB,SAAHpB,GAAqB,IAAfqB,EAAOrB,EAAPqB,QACjC,OACEC,EAAAA,EAAAA,MAACb,EAAK,CAAChB,QAAQ,cAAcQ,UAAU,YAAWsB,SAAA,EAChDlB,EAAAA,EAAAA,KAACmB,EAAAA,IAAuB,CAACvB,UAAU,aACnCI,EAAAA,EAAAA,KAACS,EAAU,CAAAS,SAAC,WACZlB,EAAAA,EAAAA,KAACY,EAAgB,CAAAM,SAAEF,MAGzB,EAEaI,EAAY,WACvB,OACEH,EAAAA,EAAAA,MAACb,EAAK,CAACR,UAAU,YAAWsB,SAAA,EAC1BlB,EAAAA,EAAAA,KAACqB,EAAAA,IAAe,CAACzB,UAAU,2BAC3BI,EAAAA,EAAAA,KAACS,EAAU,CAAAS,SAAC,uBACZlB,EAAAA,EAAAA,KAACY,EAAgB,CAAAM,SAAC,iGAMxB,EAEaI,EAAc,WACzB,OACEL,EAAAA,EAAAA,MAACb,EAAK,CAACR,UAAU,iBAAgBsB,SAAA,EAC/BlB,EAAAA,EAAAA,KAACqB,EAAAA,IAAe,CAACzB,UAAU,2BAC3BI,EAAAA,EAAAA,KAACS,EAAU,CAAAS,SAAC,yBACZlB,EAAAA,EAAAA,KAACY,EAAgB,CAAAM,SAAC,uEAKxB,EAEaK,EAAiB,WAC5B,OACEN,EAAAA,EAAAA,MAACb,EAAK,CAACR,UAAU,iBAAgBsB,SAAA,EAC/BlB,EAAAA,EAAAA,KAACqB,EAAAA,IAAe,CAACzB,UAAU,2BAC3BI,EAAAA,EAAAA,KAACS,EAAU,CAAAS,SAAC,oBACZlB,EAAAA,EAAAA,KAACY,EAAgB,CAAAM,SAAC,+DAKxB,C,wFChDaM,EAAS,WACpB,OACEP,EAAAA,EAAAA,MAACQ,EAAAA,EAAM,CAAC7B,UAAU,OAAO8B,UAAQ,EAAAR,SAAA,EAC/BlB,EAAAA,EAAAA,KAAC2B,EAAAA,IAAU,CAAC/B,UAAU,8BAA8B,gBAI1D,C,iKCTMgC,EAAiB,eAAAjC,GAAAkC,EAAAA,EAAAA,GAAAC,IAAAA,MAAG,SAAAC,EAAMC,GAAQ,IAAAC,EAAAC,EAAA,OAAAJ,IAAAA,MAAA,SAAAK,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACfC,EAAAA,EAAAA,IAAU,UAADC,OACpBP,EAAQ,mBAClBQ,EAAAA,GACA,KAAD,EAHW,OAGXP,EAAAE,EAAAM,KAHOP,EAAID,EAAJC,KAAIC,EAAAO,OAAA,SAKLR,GAAI,wBAAAC,EAAAQ,OAAA,GAAAZ,EAAA,KACZ,gBAPsBa,GAAA,OAAAjD,EAAAkD,MAAA,KAAAC,UAAA,K,uCCgIvB,EArHqB,WACnB,IAAQC,GAAYC,EAAAA,EAAAA,MAAZD,QAERE,GAA4CC,EAAAA,EAAAA,GAAS,CACnDC,SAAU,CAAC,eAAgBJ,GAC3BK,QAAS,kBAAMxB,EAAkBmB,EAAQ,IAFnCM,EAASJ,EAATI,UAAWC,EAAOL,EAAPK,QAASpB,EAAIe,EAAJf,KAAMqB,EAAKN,EAALM,MAKlC,OAAIF,GACKrD,EAAAA,EAAAA,KAACwB,EAAAA,EAAM,IAGZ8B,GACKtD,EAAAA,EAAAA,KAACe,EAAAA,GAAgB,CAACC,QAASuC,EAAMvC,WAIxCC,EAAAA,EAAAA,MAAA,OAAAC,SAAA,EACED,EAAAA,EAAAA,MAAA,OAAKrB,UAAU,2DAA0DsB,SAAA,EACvElB,EAAAA,EAAAA,KAAA,OACEwD,IACEtB,EAAKuB,YAAW,sCAAAlB,OAC0BL,EAAKuB,aAAW,qCAAAlB,OACjBL,EAAKwB,OAEhDC,IAAKzB,EAAKwB,MACV9D,UAAU,uBAEZqB,EAAAA,EAAAA,MAAA,OAAKrB,UAAU,iCAAgCsB,SAAA,EAC7CD,EAAAA,EAAAA,MAAA,OAAAC,SAAA,EACElB,EAAAA,EAAAA,KAAA,MAAIJ,UAAU,iEAAgEsB,SAC3EgB,EAAKwB,QAGoB,OAA3BxB,EAAK0B,oBACJ5D,EAAAA,EAAAA,KAAA,MAAIJ,UAAU,0FAAyFsB,SACpGgB,EAAK2B,qBAKZ5C,EAAAA,EAAAA,MAAA,KAAGrB,UAAU,wBAAuBsB,SAAA,CAAC,gBACrB,KACdlB,EAAAA,EAAAA,KAAA,QAAMJ,UAAU,wBAAuBsB,UACpC4C,EAAAA,EAAAA,IAAO,IAAIC,KAAK7B,EAAK8B,cAAe,qBAIxC9B,EAAK+B,UACJjE,EAAAA,EAAAA,KAAA,cAAYJ,UAAU,yBAAwBsB,SAC3CgB,EAAK+B,WAIVjE,EAAAA,EAAAA,KAAA,KAAGJ,UAAU,YAAWsB,SAAEgB,EAAKgC,YAE/BjD,EAAAA,EAAAA,MAAA,OAAKrB,UAAU,gCAA+BsB,SAAA,EAC5ClB,EAAAA,EAAAA,KAAA,KAAGJ,UAAU,mDAAkDsB,SAAC,YAG/DgB,EAAKiC,OAAOC,KAAI,SAAAC,GAAK,OACpBrE,EAAAA,EAAAA,KAAA,MAAAkB,UACElB,EAAAA,EAAAA,KAAA,MAAAkB,UACElB,EAAAA,EAAAA,KAACN,EAAAA,EAAK,CAAAwB,SAAEmD,EAAMC,UAFTD,EAAME,GAIV,QAITtD,EAAAA,EAAAA,MAAA,OAAKrB,UAAU,gCAA+BsB,SAAA,EAC5ClB,EAAAA,EAAAA,KAAA,KAAGJ,UAAU,mDAAkDsB,SAAC,0BAG/DgB,EAAKsC,qBAAqBJ,KAAI,SAAAK,GAAO,OACpCzE,EAAAA,EAAAA,KAAA,MAAAkB,UACElB,EAAAA,EAAAA,KAAA,MAAAkB,UACElB,EAAAA,EAAAA,KAACN,EAAAA,EAAK,CAAAwB,SAAEuD,EAAQH,UAFXG,EAAQC,WAIZ,cAMbzD,EAAAA,EAAAA,MAAA,MAAIrB,UAAU,yCAAwCsB,SAAA,EACpDlB,EAAAA,EAAAA,KAAA,MAAAkB,UACElB,EAAAA,EAAAA,KAAC2E,EAAAA,GAAO,CACNC,GAAG,OACHhF,UAAW,SAAAD,GAAW,OAAAA,EAARkF,SAER,oDACA,uGAAuG,EAC5G3D,SACF,YAIHlB,EAAAA,EAAAA,KAAA,MAAAkB,UACElB,EAAAA,EAAAA,KAAC2E,EAAAA,GAAO,CACNC,GAAG,UACHhF,UAAW,SAAAc,GAAW,OAAAA,EAARmE,SAER,oDACA,uGAAuG,EAC5G3D,SACF,kBAKLlB,EAAAA,EAAAA,KAAC8E,EAAAA,SAAQ,CAACC,UAAU/E,EAAAA,EAAAA,KAAA,OAAAkB,SAAK,uBAAyBA,UAChDlB,EAAAA,EAAAA,KAACgF,EAAAA,GAAM,QAIf,C,8FC9HA1C,EAAAA,EAAAA,SAAAA,QAAyB,+BAEzB,IAAME,EAAc,CAClByC,QAAS,CACPC,OAAQ,mBACRC,cACE,8N","sources":["@/components/ui/badge.jsx","@/components/ui/alert.jsx","components/Alert.jsx","components/Loader.jsx","services/fetchMovieDetails.js","pages/MovieDetails.jsx","services/api.js"],"sourcesContent":["import * as React from \"react\"\nimport { cva } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n destructive:\n \"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80\",\n outline: \"text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Badge({\n className,\n variant,\n ...props\n}) {\n return (
);\n}\n\nexport { Badge, badgeVariants }\n","import * as React from 'react';\nimport { cva } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst alertVariants = cva(\n 'relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7',\n {\n variants: {\n variant: {\n default: 'bg-background text-foreground',\n destructive:\n 'border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nconst Alert = React.forwardRef(({ className, variant, ...props }, ref) => (\n \n));\nAlert.displayName = 'Alert';\n\nconst AlertTitle = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertTitle.displayName = 'AlertTitle';\n\nconst AlertDescription = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertDescription.displayName = 'AlertDescription';\n\nexport { Alert, AlertTitle, AlertDescription };\n","import {\n ExclamationTriangleIcon,\n InfoCircledIcon,\n} from '@radix-ui/react-icons';\n\nimport { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';\n\nexport const AlertDestructive = ({ message }) => {\n return (\n \n \n Error\n {message}\n \n );\n};\n\nexport const AlertInfo = () => {\n return (\n \n \n No Search Results\n \n Your search did not match any movies. Please try again with different\n keywords or filters.\n \n \n );\n};\n\nexport const AlertNoCast = () => {\n return (\n \n \n No Cast Information\n \n There is no information available about the cast for this movie.\n \n \n );\n};\n\nexport const AlertNoReviews = () => {\n return (\n \n \n No Reviews Yet\n \n There are currently no reviews available for this movie.\n \n \n );\n};\n","import { ReloadIcon } from '@radix-ui/react-icons';\n\nimport { Button } from '@/components/ui/button';\n\nexport const Loader = () => {\n return (\n \n );\n};\n","import { axios, baseOptions } from './api';\n\nconst fetchMovieDetails = async movie_id => {\n const { data } = await axios.get(\n `/movie/${movie_id}?language=en-US`,\n baseOptions\n );\n\n return data;\n};\n\nexport { fetchMovieDetails };\n","import { NavLink, Outlet, useParams } from 'react-router-dom';\nimport { useQuery } from '@tanstack/react-query';\nimport { Suspense } from 'react';\n\nimport { format } from 'date-fns';\n\nimport { fetchMovieDetails } from 'services/fetchMovieDetails';\n\nimport { Badge } from '@/components/ui/badge';\n\nimport { Loader } from 'components/Loader';\nimport { AlertDestructive } from 'components/Alert';\n\nconst MovieDetails = () => {\n const { movieId } = useParams();\n\n const { isPending, isError, data, error } = useQuery({\n queryKey: ['movieDetails', movieId],\n queryFn: () => fetchMovieDetails(movieId),\n });\n\n if (isPending) {\n return ;\n }\n\n if (isError) {\n return ;\n }\n\n return (\n
\n
\n \n
\n
\n

\n {data.title}\n

\n\n {data.original_language !== 'en' && (\n

\n {data.original_title}\n

\n )}\n
\n\n

\n Realese date:{' '}\n \n {format(new Date(data.release_date), 'MMMM d, yyyy')}\n \n

\n\n {data.tagline && (\n
\n {data.tagline}\n
\n )}\n\n

{data.overview}

\n\n
\n

\n Genres:\n

\n {data.genres.map(genre => (\n
    \n
  • \n {genre.name}\n
  • \n
\n ))}\n
\n\n
\n

\n Production Countries:\n

\n {data.production_countries.map(country => (\n
    \n
  • \n {country.name}\n
  • \n
\n ))}\n
\n
\n
\n\n
    \n
  • \n \n isActive\n ? 'scroll-m-20 text-2xl font-semibold tracking-tight'\n : 'scroll-m-20 text-2xl font-semibold tracking-tight text-muted-foreground transition hover:text-inherit'\n }\n >\n Cast\n \n
  • \n
  • \n \n isActive\n ? 'scroll-m-20 text-2xl font-semibold tracking-tight'\n : 'scroll-m-20 text-2xl font-semibold tracking-tight text-muted-foreground transition hover:text-inherit'\n }\n >\n Reviews\n \n
  • \n
\n Loading subpage...
}>\n \n \n
\n );\n};\n\nexport default MovieDetails;\n","import axios from 'axios';\n\naxios.defaults.baseURL = 'https://api.themoviedb.org/3';\n\nconst baseOptions = {\n headers: {\n accept: 'application/json',\n Authorization:\n 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ',\n },\n};\n\nexport { axios, baseOptions };\n"],"names":["badgeVariants","cva","variants","variant","default","secondary","destructive","outline","defaultVariants","Badge","_ref","className","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","cn","alertVariants","Alert","React","ref","role","displayName","AlertTitle","_ref2","_excluded2","AlertDescription","_ref3","_excluded3","AlertDestructive","message","_jsxs","children","ExclamationTriangleIcon","AlertInfo","InfoCircledIcon","AlertNoCast","AlertNoReviews","Loader","Button","disabled","ReloadIcon","fetchMovieDetails","_asyncToGenerator","_regeneratorRuntime","_callee","movie_id","_yield$axios$get","data","_context","prev","next","axios","concat","baseOptions","sent","abrupt","stop","_x","apply","arguments","movieId","useParams","_useQuery","useQuery","queryKey","queryFn","isPending","isError","error","src","poster_path","title","alt","original_language","original_title","format","Date","release_date","tagline","overview","genres","map","genre","name","id","production_countries","country","iso_3166_1","NavLink","to","isActive","Suspense","fallback","Outlet","headers","accept","Authorization"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/783.f7118fb9.chunk.js b/static/js/783.f7118fb9.chunk.js new file mode 100644 index 0000000..0f58f89 --- /dev/null +++ b/static/js/783.f7118fb9.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkgoit_react_hw_05_movies=self.webpackChunkgoit_react_hw_05_movies||[]).push([[783],{7935:function(e,t,r){r.d(t,{C:function(){return d}});var s=r(1413),a=r(4925),n=(r(2791),r(152)),i=r(2758),l=r(184),o=["className","variant"],c=(0,n.j)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function d(e){var t=e.className,r=e.variant,n=(0,a.Z)(e,o);return(0,l.jsx)("div",(0,s.Z)({className:(0,i.cn)(c({variant:r}),t)},n))}},2778:function(e,t,r){r.d(t,{$h:function(){return v},h$:function(){return p},Sw:function(){return j},xD:function(){return N}});var s=r(1928),a=r(1413),n=r(4925),i=r(2791),l=r(152),o=r(2758),c=r(184),d=["className","variant"],u=["className"],x=["className"],m=(0,l.j)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),f=i.forwardRef((function(e,t){var r=e.className,s=e.variant,i=(0,n.Z)(e,d);return(0,c.jsx)("div",(0,a.Z)({ref:t,role:"alert",className:(0,o.cn)(m({variant:s}),r)},i))}));f.displayName="Alert";var h=i.forwardRef((function(e,t){var r=e.className,s=(0,n.Z)(e,u);return(0,c.jsx)("div",(0,a.Z)({ref:t,className:(0,o.cn)("mb-1 font-medium leading-none tracking-tight",r)},s))}));h.displayName="AlertTitle";var g=i.forwardRef((function(e,t){var r=e.className,s=(0,n.Z)(e,x);return(0,c.jsx)("div",(0,a.Z)({ref:t,className:(0,o.cn)("text-sm [&_p]:leading-relaxed",r)},s))}));g.displayName="AlertDescription";var v=function(e){var t=e.message;return(0,c.jsxs)(f,{variant:"destructive",className:"max-w-2xl",children:[(0,c.jsx)(s.LPM,{className:"h-4 w-4"}),(0,c.jsx)(h,{children:"Error"}),(0,c.jsx)(g,{children:t})]})},p=function(){return(0,c.jsxs)(f,{className:"max-w-2xl",children:[(0,c.jsx)(s.H4u,{className:"h-4 w-4 text-blue-500"}),(0,c.jsx)(h,{children:"No Search Results"}),(0,c.jsx)(g,{children:"Your search did not match any movies. Please try again with different keywords or filters."})]})},j=function(){return(0,c.jsxs)(f,{className:"max-w-2xl mt-8",children:[(0,c.jsx)(s.H4u,{className:"h-4 w-4 text-blue-500"}),(0,c.jsx)(h,{children:"No Cast Information"}),(0,c.jsx)(g,{children:"There is no information available about the cast for this movie."})]})},N=function(){return(0,c.jsxs)(f,{className:"max-w-2xl mt-8",children:[(0,c.jsx)(s.H4u,{className:"h-4 w-4 text-blue-500"}),(0,c.jsx)(h,{children:"No Reviews Yet"}),(0,c.jsx)(g,{children:"There are currently no reviews available for this movie."})]})}},7783:function(e,t,r){r.r(t),r.d(t,{default:function(){return v}});var s=r(7689),a=r(1087),n=r(3984),i=r(2791),l=r(4461),o=r(5861),c=r(4687),d=r.n(c),u=r(4390),x=function(){var e=(0,o.Z)(d().mark((function e(t){var r,s;return d().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,u.o.get("/movie/".concat(t,"?language=en-US"),u._);case 2:return r=e.sent,s=r.data,e.abrupt("return",s);case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),m=r(7935),f=r(4321),h=r(2778),g=r(184),v=function(){var e=(0,s.UO)().movieId,t=(0,n.a)({queryKey:["movieDetails",e],queryFn:function(){return x(e)}}),r=t.isPending,o=t.isError,c=t.data,d=t.error;return r?(0,g.jsx)(f.a,{}):o?(0,g.jsx)(h.$h,{message:d.message}):(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-3 gap-4 sm:gap-8 max-w-6xl",children:[(0,g.jsx)("img",{src:c.poster_path?"https://image.tmdb.org/t/p/original".concat(c.poster_path):"https://placehold.co/342x513?text=".concat(c.title),alt:c.title,className:"w-full rounded-lg"}),(0,g.jsxs)("div",{className:"col-span-2 flex flex-col gap-4",children:[(0,g.jsxs)("div",{children:[(0,g.jsx)("h1",{className:"scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl",children:c.title}),"en"!==c.original_language&&(0,g.jsx)("h2",{className:"scroll-m-20 pt-2 text-3xl text-muted-foreground font-semibold tracking-tight first:mt-0",children:c.original_title})]}),(0,g.jsxs)("p",{className:"text-md font-semibold",children:["Realese date:"," ",(0,g.jsx)("span",{className:"text-muted-foreground",children:(0,l.WU)(new Date(c.release_date),"MMMM d, yyyy")})]}),c.tagline&&(0,g.jsx)("blockquote",{className:"border-l-2 pl-6 italic",children:c.tagline}),(0,g.jsx)("p",{className:"leading-7",children:c.overview}),(0,g.jsxs)("div",{className:"flex flex-row flex-wrap gap-2",children:[(0,g.jsx)("p",{className:"scroll-m-20 text-md font-semibold tracking-tight",children:"Genres:"}),c.genres.map((function(e){return(0,g.jsx)("ul",{children:(0,g.jsx)("li",{children:(0,g.jsx)(m.C,{children:e.name})})},e.id)}))]}),(0,g.jsxs)("div",{className:"flex flex-row flex-wrap gap-2",children:[(0,g.jsx)("p",{className:"scroll-m-20 text-md font-semibold tracking-tight",children:"Production Countries:"}),c.production_countries.map((function(e){return(0,g.jsx)("ul",{children:(0,g.jsx)("li",{children:(0,g.jsx)(m.C,{children:e.name})})},e.iso_3166_1)}))]})]})]}),(0,g.jsxs)("ul",{className:"flex flex-row gap-4 border-b pt-4 pb-2",children:[(0,g.jsx)("li",{children:(0,g.jsx)(a.OL,{to:"cast",className:function(e){return e.isActive?"scroll-m-20 text-2xl font-semibold tracking-tight":"scroll-m-20 text-2xl font-semibold tracking-tight text-muted-foreground transition hover:text-inherit"},children:"Cast"})}),(0,g.jsx)("li",{children:(0,g.jsx)(a.OL,{to:"reviews",className:function(e){return e.isActive?"scroll-m-20 text-2xl font-semibold tracking-tight":"scroll-m-20 text-2xl font-semibold tracking-tight text-muted-foreground transition hover:text-inherit"},children:"Reviews"})})]}),(0,g.jsx)(i.Suspense,{fallback:(0,g.jsx)("div",{children:"Loading subpage..."}),children:(0,g.jsx)(s.j3,{})})]})}},4390:function(e,t,r){r.d(t,{_:function(){return a},o:function(){return s.Z}});var s=r(5294);s.Z.defaults.baseURL="https://api.themoviedb.org/3";var a={headers:{accept:"application/json",Authorization:"Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ"}}}}]); +//# sourceMappingURL=783.f7118fb9.chunk.js.map \ No newline at end of file diff --git a/static/js/783.f7118fb9.chunk.js.map b/static/js/783.f7118fb9.chunk.js.map new file mode 100644 index 0000000..ebbcc89 --- /dev/null +++ b/static/js/783.f7118fb9.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/783.f7118fb9.chunk.js","mappings":"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","sources":["@/components/ui/badge.jsx","@/components/ui/alert.jsx","components/Alert.jsx","services/fetchMovieDetails.js","pages/MovieDetails.jsx","services/api.js"],"sourcesContent":["import * as React from \"react\"\nimport { cva } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n destructive:\n \"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80\",\n outline: \"text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Badge({\n className,\n variant,\n ...props\n}) {\n return (
);\n}\n\nexport { Badge, badgeVariants }\n","import * as React from 'react';\nimport { cva } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst alertVariants = cva(\n 'relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7',\n {\n variants: {\n variant: {\n default: 'bg-background text-foreground',\n destructive:\n 'border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nconst Alert = React.forwardRef(({ className, variant, ...props }, ref) => (\n \n));\nAlert.displayName = 'Alert';\n\nconst AlertTitle = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertTitle.displayName = 'AlertTitle';\n\nconst AlertDescription = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertDescription.displayName = 'AlertDescription';\n\nexport { Alert, AlertTitle, AlertDescription };\n","import {\n ExclamationTriangleIcon,\n InfoCircledIcon,\n} from '@radix-ui/react-icons';\n\nimport { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';\n\nexport const AlertDestructive = ({ message }) => {\n return (\n \n \n Error\n {message}\n \n );\n};\n\nexport const AlertInfo = () => {\n return (\n \n \n No Search Results\n \n Your search did not match any movies. Please try again with different\n keywords or filters.\n \n \n );\n};\n\nexport const AlertNoCast = () => {\n return (\n \n \n No Cast Information\n \n There is no information available about the cast for this movie.\n \n \n );\n};\n\nexport const AlertNoReviews = () => {\n return (\n \n \n No Reviews Yet\n \n There are currently no reviews available for this movie.\n \n \n );\n};\n","import { axios, baseOptions } from './api';\n\nconst fetchMovieDetails = async movie_id => {\n const { data } = await axios.get(\n `/movie/${movie_id}?language=en-US`,\n baseOptions\n );\n\n return data;\n};\n\nexport { fetchMovieDetails };\n","import { NavLink, Outlet, useParams } from 'react-router-dom';\nimport { useQuery } from '@tanstack/react-query';\nimport { Suspense } from 'react';\n\nimport { format } from 'date-fns';\n\nimport { fetchMovieDetails } from 'services/fetchMovieDetails';\n\nimport { Badge } from '@/components/ui/badge';\n\nimport { Loader } from 'components/Loader';\nimport { AlertDestructive } from 'components/Alert';\n\nconst MovieDetails = () => {\n const { movieId } = useParams();\n\n const { isPending, isError, data, error } = useQuery({\n queryKey: ['movieDetails', movieId],\n queryFn: () => fetchMovieDetails(movieId),\n });\n\n if (isPending) {\n return ;\n }\n\n if (isError) {\n return ;\n }\n\n return (\n
\n
\n \n
\n
\n

\n {data.title}\n

\n\n {data.original_language !== 'en' && (\n

\n {data.original_title}\n

\n )}\n
\n\n

\n Realese date:{' '}\n \n {format(new Date(data.release_date), 'MMMM d, yyyy')}\n \n

\n\n {data.tagline && (\n
\n {data.tagline}\n
\n )}\n\n

{data.overview}

\n\n
\n

\n Genres:\n

\n {data.genres.map(genre => (\n
    \n
  • \n {genre.name}\n
  • \n
\n ))}\n
\n\n
\n

\n Production Countries:\n

\n {data.production_countries.map(country => (\n
    \n
  • \n {country.name}\n
  • \n
\n ))}\n
\n
\n
\n\n
    \n
  • \n \n isActive\n ? 'scroll-m-20 text-2xl font-semibold tracking-tight'\n : 'scroll-m-20 text-2xl font-semibold tracking-tight text-muted-foreground transition hover:text-inherit'\n }\n >\n Cast\n \n
  • \n
  • \n \n isActive\n ? 'scroll-m-20 text-2xl font-semibold tracking-tight'\n : 'scroll-m-20 text-2xl font-semibold tracking-tight text-muted-foreground transition hover:text-inherit'\n }\n >\n Reviews\n \n
  • \n
\n Loading subpage...
}>\n \n \n
\n );\n};\n\nexport default MovieDetails;\n","import axios from 'axios';\n\naxios.defaults.baseURL = 'https://api.themoviedb.org/3';\n\nconst baseOptions = {\n headers: {\n accept: 'application/json',\n Authorization:\n 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ',\n },\n};\n\nexport { axios, baseOptions };\n"],"names":["badgeVariants","cva","variants","variant","default","secondary","destructive","outline","defaultVariants","Badge","_ref","className","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","cn","alertVariants","Alert","React","ref","role","displayName","AlertTitle","_ref2","_excluded2","AlertDescription","_ref3","_excluded3","AlertDestructive","message","_jsxs","children","ExclamationTriangleIcon","AlertInfo","InfoCircledIcon","AlertNoCast","AlertNoReviews","fetchMovieDetails","_asyncToGenerator","_regeneratorRuntime","_callee","movie_id","_yield$axios$get","data","_context","prev","next","axios","concat","baseOptions","sent","abrupt","stop","_x","apply","arguments","movieId","useParams","_useQuery","useQuery","queryKey","queryFn","isPending","isError","error","Loader","src","poster_path","title","alt","original_language","original_title","format","Date","release_date","tagline","overview","genres","map","genre","name","id","production_countries","country","iso_3166_1","NavLink","to","isActive","Suspense","fallback","Outlet","headers","accept","Authorization"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/83.8f47b897.chunk.js b/static/js/83.2eb59950.chunk.js similarity index 51% rename from static/js/83.8f47b897.chunk.js rename to static/js/83.2eb59950.chunk.js index a58d326..cc23164 100644 --- a/static/js/83.8f47b897.chunk.js +++ b/static/js/83.2eb59950.chunk.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkgoit_react_hw_05_movies=self.webpackChunkgoit_react_hw_05_movies||[]).push([[83],{2778:function(e,r,a){a.d(r,{$h:function(){return g},h$:function(){return j},Sw:function(){return p},xD:function(){return N}});var t=a(1928),s=a(1413),n=a(4925),i=a(2791),c=a(152),l=a(2758),o=a(184),u=["className","variant"],d=["className"],m=["className"],f=(0,c.j)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),x=i.forwardRef((function(e,r){var a=e.className,t=e.variant,i=(0,n.Z)(e,u);return(0,o.jsx)("div",(0,s.Z)({ref:r,role:"alert",className:(0,l.cn)(f({variant:t}),a)},i))}));x.displayName="Alert";var h=i.forwardRef((function(e,r){var a=e.className,t=(0,n.Z)(e,d);return(0,o.jsx)("div",(0,s.Z)({ref:r,className:(0,l.cn)("mb-1 font-medium leading-none tracking-tight",a)},t))}));h.displayName="AlertTitle";var v=i.forwardRef((function(e,r){var a=e.className,t=(0,n.Z)(e,m);return(0,o.jsx)("div",(0,s.Z)({ref:r,className:(0,l.cn)("text-sm [&_p]:leading-relaxed",a)},t))}));v.displayName="AlertDescription";var g=function(e){var r=e.message;return(0,o.jsxs)(x,{variant:"destructive",className:"max-w-2xl",children:[(0,o.jsx)(t.LPM,{className:"h-4 w-4"}),(0,o.jsx)(h,{children:"Error"}),(0,o.jsx)(v,{children:r})]})},j=function(){return(0,o.jsxs)(x,{className:"max-w-2xl",children:[(0,o.jsx)(t.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(h,{children:"No Search Results"}),(0,o.jsx)(v,{children:"Your search did not match any movies. Please try again with different keywords or filters."})]})},p=function(){return(0,o.jsxs)(x,{className:"max-w-2xl mt-8",children:[(0,o.jsx)(t.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(h,{children:"No Cast Information"}),(0,o.jsx)(v,{children:"There is no information available about the cast for this movie."})]})},N=function(){return(0,o.jsxs)(x,{className:"max-w-2xl mt-8",children:[(0,o.jsx)(t.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(h,{children:"No Reviews Yet"}),(0,o.jsx)(v,{children:"There are currently no reviews available for this movie."})]})}},6083:function(e,r,a){a.r(r),a.d(r,{default:function(){return f}});var t=a(7689),s=a(3984),n=a(5861),i=a(4687),c=a.n(i),l=a(4390),o=function(){var e=(0,n.Z)(c().mark((function e(r){var a,t;return c().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.o.get("/movie/".concat(r,"/credits?language=en-US"),l._);case 2:return a=e.sent,t=a.data,e.abrupt("return",t.cast);case 5:case"end":return e.stop()}}),e)})));return function(r){return e.apply(this,arguments)}}(),u=a(4321),d=a(2778),m=a(184),f=function(){var e=(0,t.UO)().movieId,r=(0,s.a)({queryKey:["cast",e],queryFn:function(){return o(e)}}),a=r.data,n=r.isLoading,i=r.error;return n?(0,m.jsx)(u.a,{}):i?(0,m.jsx)(d.$h,{message:i.message}):(0,m.jsxs)(m.Fragment,{children:[!n&&0===a.length&&(0,m.jsx)(d.Sw,{}),(0,m.jsx)("div",{className:"grid grid-cols-4 sm:grid-cols-6 gap-4 max-w-5xl py-4 text-xs",children:a.map((function(e){return(0,m.jsx)("ul",{children:(0,m.jsxs)("li",{children:[(0,m.jsx)("img",{src:e.profile_path?"https://image.tmdb.org/t/p/w185".concat(e.profile_path):"https://placehold.co/185x278?text=".concat(e.name),alt:e.name,className:"rounded-lg mb-2"}),(0,m.jsx)("p",{className:"font-bold",children:e.name}),(0,m.jsx)("p",{className:"text-muted-foreground",children:e.character})]})},e.id)}))})]})}},4321:function(e,r,a){a.d(r,{a:function(){return i}});var t=a(1928),s=a(9329),n=a(184),i=function(){return(0,n.jsxs)(s.z,{className:"my-4",disabled:!0,children:[(0,n.jsx)(t.BGW,{className:"mr-2 h-4 w-4 animate-spin"}),"Please wait"]})}},4390:function(e,r,a){a.d(r,{_:function(){return s},o:function(){return t.Z}});var t=a(5294);t.Z.defaults.baseURL="https://api.themoviedb.org/3";var s={headers:{accept:"application/json",Authorization:"Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ"}}}}]); -//# sourceMappingURL=83.8f47b897.chunk.js.map \ No newline at end of file +"use strict";(self.webpackChunkgoit_react_hw_05_movies=self.webpackChunkgoit_react_hw_05_movies||[]).push([[83],{2778:function(e,r,t){t.d(r,{$h:function(){return g},h$:function(){return j},Sw:function(){return p},xD:function(){return N}});var a=t(1928),s=t(1413),n=t(4925),i=t(2791),c=t(152),l=t(2758),o=t(184),u=["className","variant"],d=["className"],m=["className"],f=(0,c.j)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),x=i.forwardRef((function(e,r){var t=e.className,a=e.variant,i=(0,n.Z)(e,u);return(0,o.jsx)("div",(0,s.Z)({ref:r,role:"alert",className:(0,l.cn)(f({variant:a}),t)},i))}));x.displayName="Alert";var h=i.forwardRef((function(e,r){var t=e.className,a=(0,n.Z)(e,d);return(0,o.jsx)("div",(0,s.Z)({ref:r,className:(0,l.cn)("mb-1 font-medium leading-none tracking-tight",t)},a))}));h.displayName="AlertTitle";var v=i.forwardRef((function(e,r){var t=e.className,a=(0,n.Z)(e,m);return(0,o.jsx)("div",(0,s.Z)({ref:r,className:(0,l.cn)("text-sm [&_p]:leading-relaxed",t)},a))}));v.displayName="AlertDescription";var g=function(e){var r=e.message;return(0,o.jsxs)(x,{variant:"destructive",className:"max-w-2xl",children:[(0,o.jsx)(a.LPM,{className:"h-4 w-4"}),(0,o.jsx)(h,{children:"Error"}),(0,o.jsx)(v,{children:r})]})},j=function(){return(0,o.jsxs)(x,{className:"max-w-2xl",children:[(0,o.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(h,{children:"No Search Results"}),(0,o.jsx)(v,{children:"Your search did not match any movies. Please try again with different keywords or filters."})]})},p=function(){return(0,o.jsxs)(x,{className:"max-w-2xl mt-8",children:[(0,o.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(h,{children:"No Cast Information"}),(0,o.jsx)(v,{children:"There is no information available about the cast for this movie."})]})},N=function(){return(0,o.jsxs)(x,{className:"max-w-2xl mt-8",children:[(0,o.jsx)(a.H4u,{className:"h-4 w-4 text-blue-500"}),(0,o.jsx)(h,{children:"No Reviews Yet"}),(0,o.jsx)(v,{children:"There are currently no reviews available for this movie."})]})}},6083:function(e,r,t){t.r(r),t.d(r,{default:function(){return f}});var a=t(7689),s=t(3984),n=t(5861),i=t(4687),c=t.n(i),l=t(4390),o=function(){var e=(0,n.Z)(c().mark((function e(r){var t,a;return c().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.o.get("/movie/".concat(r,"/credits?language=en-US"),l._);case 2:return t=e.sent,a=t.data,e.abrupt("return",a.cast);case 5:case"end":return e.stop()}}),e)})));return function(r){return e.apply(this,arguments)}}(),u=t(4321),d=t(2778),m=t(184),f=function(){var e=(0,a.UO)().movieId,r=(0,s.a)({queryKey:["cast",e],queryFn:function(){return o(e)}}),t=r.data,n=r.isLoading,i=r.error;return n?(0,m.jsx)(u.a,{}):i?(0,m.jsx)(d.$h,{message:i.message}):(0,m.jsxs)(m.Fragment,{children:[!n&&0===t.length&&(0,m.jsx)(d.Sw,{}),(0,m.jsx)("div",{className:"grid grid-cols-4 sm:grid-cols-6 gap-4 max-w-5xl py-4 text-xs",children:t.map((function(e){return(0,m.jsx)("ul",{children:(0,m.jsxs)("li",{children:[(0,m.jsx)("img",{src:e.profile_path?"https://image.tmdb.org/t/p/w185".concat(e.profile_path):"https://placehold.co/185x278?text=".concat(e.name),alt:e.name,className:"rounded-lg mb-2"}),(0,m.jsx)("p",{className:"font-bold",children:e.name}),(0,m.jsx)("p",{className:"text-muted-foreground",children:e.character})]})},e.id)}))})]})}},4390:function(e,r,t){t.d(r,{_:function(){return s},o:function(){return a.Z}});var a=t(5294);a.Z.defaults.baseURL="https://api.themoviedb.org/3";var s={headers:{accept:"application/json",Authorization:"Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ"}}}}]); +//# sourceMappingURL=83.2eb59950.chunk.js.map \ No newline at end of file diff --git a/static/js/83.2eb59950.chunk.js.map b/static/js/83.2eb59950.chunk.js.map new file mode 100644 index 0000000..cc1aa30 --- /dev/null +++ b/static/js/83.2eb59950.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/83.2eb59950.chunk.js","mappings":"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","sources":["@/components/ui/alert.jsx","components/Alert.jsx","services/fetchCast.js","components/Cast.jsx","services/api.js"],"sourcesContent":["import * as React from 'react';\nimport { cva } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst alertVariants = cva(\n 'relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7',\n {\n variants: {\n variant: {\n default: 'bg-background text-foreground',\n destructive:\n 'border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nconst Alert = React.forwardRef(({ className, variant, ...props }, ref) => (\n \n));\nAlert.displayName = 'Alert';\n\nconst AlertTitle = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertTitle.displayName = 'AlertTitle';\n\nconst AlertDescription = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertDescription.displayName = 'AlertDescription';\n\nexport { Alert, AlertTitle, AlertDescription };\n","import {\n ExclamationTriangleIcon,\n InfoCircledIcon,\n} from '@radix-ui/react-icons';\n\nimport { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';\n\nexport const AlertDestructive = ({ message }) => {\n return (\n \n \n Error\n {message}\n \n );\n};\n\nexport const AlertInfo = () => {\n return (\n \n \n No Search Results\n \n Your search did not match any movies. Please try again with different\n keywords or filters.\n \n \n );\n};\n\nexport const AlertNoCast = () => {\n return (\n \n \n No Cast Information\n \n There is no information available about the cast for this movie.\n \n \n );\n};\n\nexport const AlertNoReviews = () => {\n return (\n \n \n No Reviews Yet\n \n There are currently no reviews available for this movie.\n \n \n );\n};\n","import { axios, baseOptions } from './api';\n\nconst fetchCast = async movie_id => {\n const { data } = await axios.get(\n `/movie/${movie_id}/credits?language=en-US`,\n baseOptions\n );\n\n return data.cast;\n};\n\nexport { fetchCast };\n","import { useParams } from 'react-router-dom';\nimport { useQuery } from '@tanstack/react-query';\n\nimport { fetchCast } from 'services/fetchCast';\n\nimport { Loader } from './Loader';\nimport { AlertDestructive, AlertNoCast } from './Alert';\n\nconst Cast = () => {\n const { movieId } = useParams();\n\n const { data, isLoading, error } = useQuery({\n queryKey: ['cast', movieId],\n queryFn: () => fetchCast(movieId),\n });\n\n if (isLoading) {\n return ;\n }\n\n if (error) {\n return ;\n }\n\n return (\n <>\n {!isLoading && data.length === 0 && }\n
\n {data.map(actor => (\n
    \n
  • \n \n

    {actor.name}

    \n

    {actor.character}

    \n
  • \n
\n ))}\n
\n \n );\n};\n\nexport default Cast;\n","import axios from 'axios';\n\naxios.defaults.baseURL = 'https://api.themoviedb.org/3';\n\nconst baseOptions = {\n headers: {\n accept: 'application/json',\n Authorization:\n 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ',\n },\n};\n\nexport { axios, baseOptions };\n"],"names":["alertVariants","cva","variants","variant","default","destructive","defaultVariants","Alert","React","_ref","ref","className","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","role","cn","displayName","AlertTitle","_ref2","_excluded2","AlertDescription","_ref3","_excluded3","AlertDestructive","message","_jsxs","children","ExclamationTriangleIcon","AlertInfo","InfoCircledIcon","AlertNoCast","AlertNoReviews","fetchCast","_asyncToGenerator","_regeneratorRuntime","_callee","movie_id","_yield$axios$get","data","_context","prev","next","axios","concat","baseOptions","sent","abrupt","cast","stop","_x","apply","arguments","movieId","useParams","_useQuery","useQuery","queryKey","queryFn","isLoading","error","Loader","_Fragment","length","map","actor","src","profile_path","name","alt","character","id","headers","accept","Authorization"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/83.8f47b897.chunk.js.map b/static/js/83.8f47b897.chunk.js.map deleted file mode 100644 index 5f848e8..0000000 --- a/static/js/83.8f47b897.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/83.8f47b897.chunk.js","mappings":"iXAKMA,GAAgBC,EAAAA,EAAAA,GACpB,0KACA,CACEC,SAAU,CACRC,QAAS,CACPC,QAAS,gCACTC,YACE,4FAGNC,gBAAiB,CACfH,QAAS,aAKTI,EAAQC,EAAAA,YAAiB,SAAAC,EAAmCC,GAAG,IAAnCC,EAASF,EAATE,UAAWR,EAAOM,EAAPN,QAAYS,GAAKC,EAAAA,EAAAA,GAAAJ,EAAAK,GAAA,OAC5DC,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEN,IAAKA,EACLO,KAAK,QACLN,WAAWO,EAAAA,EAAAA,IAAGlB,EAAc,CAAEG,QAAAA,IAAYQ,IACtCC,GACJ,IAEJL,EAAMY,YAAc,QAEpB,IAAMC,EAAaZ,EAAAA,YAAiB,SAAAa,EAA0BX,GAAG,IAA1BC,EAASU,EAATV,UAAcC,GAAKC,EAAAA,EAAAA,GAAAQ,EAAAC,GAAA,OACxDP,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEN,IAAKA,EACLC,WAAWO,EAAAA,EAAAA,IAAG,+CAAgDP,IAC1DC,GACJ,IAEJQ,EAAWD,YAAc,aAEzB,IAAMI,EAAmBf,EAAAA,YAAiB,SAAAgB,EAA0Bd,GAAG,IAA1BC,EAASa,EAATb,UAAcC,GAAKC,EAAAA,EAAAA,GAAAW,EAAAC,GAAA,OAC9DV,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,GAAA,CACEN,IAAKA,EACLC,WAAWO,EAAAA,EAAAA,IAAG,gCAAiCP,IAC3CC,GACJ,IAEJW,EAAiBJ,YAAc,mBCxCxB,IAAMO,EAAmB,SAAHjB,GAAqB,IAAfkB,EAAOlB,EAAPkB,QACjC,OACEC,EAAAA,EAAAA,MAACrB,EAAK,CAACJ,QAAQ,cAAcQ,UAAU,YAAWkB,SAAA,EAChDd,EAAAA,EAAAA,KAACe,EAAAA,IAAuB,CAACnB,UAAU,aACnCI,EAAAA,EAAAA,KAACK,EAAU,CAAAS,SAAC,WACZd,EAAAA,EAAAA,KAACQ,EAAgB,CAAAM,SAAEF,MAGzB,EAEaI,EAAY,WACvB,OACEH,EAAAA,EAAAA,MAACrB,EAAK,CAACI,UAAU,YAAWkB,SAAA,EAC1Bd,EAAAA,EAAAA,KAACiB,EAAAA,IAAe,CAACrB,UAAU,2BAC3BI,EAAAA,EAAAA,KAACK,EAAU,CAAAS,SAAC,uBACZd,EAAAA,EAAAA,KAACQ,EAAgB,CAAAM,SAAC,iGAMxB,EAEaI,EAAc,WACzB,OACEL,EAAAA,EAAAA,MAACrB,EAAK,CAACI,UAAU,iBAAgBkB,SAAA,EAC/Bd,EAAAA,EAAAA,KAACiB,EAAAA,IAAe,CAACrB,UAAU,2BAC3BI,EAAAA,EAAAA,KAACK,EAAU,CAAAS,SAAC,yBACZd,EAAAA,EAAAA,KAACQ,EAAgB,CAAAM,SAAC,uEAKxB,EAEaK,EAAiB,WAC5B,OACEN,EAAAA,EAAAA,MAACrB,EAAK,CAACI,UAAU,iBAAgBkB,SAAA,EAC/Bd,EAAAA,EAAAA,KAACiB,EAAAA,IAAe,CAACrB,UAAU,2BAC3BI,EAAAA,EAAAA,KAACK,EAAU,CAAAS,SAAC,oBACZd,EAAAA,EAAAA,KAACQ,EAAgB,CAAAM,SAAC,+DAKxB,C,mIClDMM,EAAS,eAAA1B,GAAA2B,EAAAA,EAAAA,GAAAC,IAAAA,MAAG,SAAAC,EAAMC,GAAQ,IAAAC,EAAAC,EAAA,OAAAJ,IAAAA,MAAA,SAAAK,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACPC,EAAAA,EAAAA,IAAU,UAADC,OACpBP,EAAQ,2BAClBQ,EAAAA,GACA,KAAD,EAHW,OAGXP,EAAAE,EAAAM,KAHOP,EAAID,EAAJC,KAAIC,EAAAO,OAAA,SAKLR,EAAKS,MAAI,wBAAAR,EAAAS,OAAA,GAAAb,EAAA,KACjB,gBAPcc,GAAA,OAAA3C,EAAA4C,MAAA,KAAAC,UAAA,K,6BCgDf,EA1Ca,WACX,IAAQC,GAAYC,EAAAA,EAAAA,MAAZD,QAERE,GAAmCC,EAAAA,EAAAA,GAAS,CAC1CC,SAAU,CAAC,OAAQJ,GACnBK,QAAS,kBAAMzB,EAAUoB,EAAQ,IAF3Bd,EAAIgB,EAAJhB,KAAMoB,EAASJ,EAATI,UAAWC,EAAKL,EAALK,MAKzB,OAAID,GACK9C,EAAAA,EAAAA,KAACgD,EAAAA,EAAM,IAGZD,GACK/C,EAAAA,EAAAA,KAACW,EAAAA,GAAgB,CAACC,QAASmC,EAAMnC,WAIxCC,EAAAA,EAAAA,MAAAoC,EAAAA,SAAA,CAAAnC,SAAA,EACIgC,GAA6B,IAAhBpB,EAAKwB,SAAgBlD,EAAAA,EAAAA,KAACkB,EAAAA,GAAW,KAChDlB,EAAAA,EAAAA,KAAA,OAAKJ,UAAU,+DAA8DkB,SAC1EY,EAAKyB,KAAI,SAAAC,GAAK,OACbpD,EAAAA,EAAAA,KAAA,MAAAc,UACED,EAAAA,EAAAA,MAAA,MAAAC,SAAA,EACEd,EAAAA,EAAAA,KAAA,OACEqD,IACED,EAAME,aAAY,kCAAAvB,OACoBqB,EAAME,cAAY,qCAAAvB,OACfqB,EAAMG,MAEjDC,IAAKJ,EAAMG,KACX3D,UAAU,qBAEZI,EAAAA,EAAAA,KAAA,KAAGJ,UAAU,YAAWkB,SAAEsC,EAAMG,QAChCvD,EAAAA,EAAAA,KAAA,KAAGJ,UAAU,wBAAuBkB,SAAEsC,EAAMK,gBAZvCL,EAAMM,GAcV,QAKf,C,wFC5CaV,EAAS,WACpB,OACEnC,EAAAA,EAAAA,MAAC8C,EAAAA,EAAM,CAAC/D,UAAU,OAAOgE,UAAQ,EAAA9C,SAAA,EAC/Bd,EAAAA,EAAAA,KAAC6D,EAAAA,IAAU,CAACjE,UAAU,8BAA8B,gBAI1D,C,8FCTAkC,EAAAA,EAAAA,SAAAA,QAAyB,+BAEzB,IAAME,EAAc,CAClB8B,QAAS,CACPC,OAAQ,mBACRC,cACE,8N","sources":["@/components/ui/alert.jsx","components/Alert.jsx","services/fetchCast.js","components/Cast.jsx","components/Loader.jsx","services/api.js"],"sourcesContent":["import * as React from 'react';\nimport { cva } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst alertVariants = cva(\n 'relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7',\n {\n variants: {\n variant: {\n default: 'bg-background text-foreground',\n destructive:\n 'border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nconst Alert = React.forwardRef(({ className, variant, ...props }, ref) => (\n \n));\nAlert.displayName = 'Alert';\n\nconst AlertTitle = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertTitle.displayName = 'AlertTitle';\n\nconst AlertDescription = React.forwardRef(({ className, ...props }, ref) => (\n \n));\nAlertDescription.displayName = 'AlertDescription';\n\nexport { Alert, AlertTitle, AlertDescription };\n","import {\n ExclamationTriangleIcon,\n InfoCircledIcon,\n} from '@radix-ui/react-icons';\n\nimport { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';\n\nexport const AlertDestructive = ({ message }) => {\n return (\n \n \n Error\n {message}\n \n );\n};\n\nexport const AlertInfo = () => {\n return (\n \n \n No Search Results\n \n Your search did not match any movies. Please try again with different\n keywords or filters.\n \n \n );\n};\n\nexport const AlertNoCast = () => {\n return (\n \n \n No Cast Information\n \n There is no information available about the cast for this movie.\n \n \n );\n};\n\nexport const AlertNoReviews = () => {\n return (\n \n \n No Reviews Yet\n \n There are currently no reviews available for this movie.\n \n \n );\n};\n","import { axios, baseOptions } from './api';\n\nconst fetchCast = async movie_id => {\n const { data } = await axios.get(\n `/movie/${movie_id}/credits?language=en-US`,\n baseOptions\n );\n\n return data.cast;\n};\n\nexport { fetchCast };\n","import { useParams } from 'react-router-dom';\nimport { useQuery } from '@tanstack/react-query';\n\nimport { fetchCast } from 'services/fetchCast';\n\nimport { Loader } from './Loader';\nimport { AlertDestructive, AlertNoCast } from './Alert';\n\nconst Cast = () => {\n const { movieId } = useParams();\n\n const { data, isLoading, error } = useQuery({\n queryKey: ['cast', movieId],\n queryFn: () => fetchCast(movieId),\n });\n\n if (isLoading) {\n return ;\n }\n\n if (error) {\n return ;\n }\n\n return (\n <>\n {!isLoading && data.length === 0 && }\n
\n {data.map(actor => (\n
    \n
  • \n \n

    {actor.name}

    \n

    {actor.character}

    \n
  • \n
\n ))}\n
\n \n );\n};\n\nexport default Cast;\n","import { ReloadIcon } from '@radix-ui/react-icons';\n\nimport { Button } from '@/components/ui/button';\n\nexport const Loader = () => {\n return (\n \n );\n};\n","import axios from 'axios';\n\naxios.defaults.baseURL = 'https://api.themoviedb.org/3';\n\nconst baseOptions = {\n headers: {\n accept: 'application/json',\n Authorization:\n 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlYTMyZWM5MzExODExYjA2NDkyNzhmZGFmYzEyMzAwZSIsInN1YiI6IjY1YzIwN2U2ZjQ0ZjI3MDE2M2MwYzBjMiIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.zkFtcEcge5gUigfN2sq7K5C-DaNfEfDz1qyoSucACIQ',\n },\n};\n\nexport { axios, baseOptions };\n"],"names":["alertVariants","cva","variants","variant","default","destructive","defaultVariants","Alert","React","_ref","ref","className","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","role","cn","displayName","AlertTitle","_ref2","_excluded2","AlertDescription","_ref3","_excluded3","AlertDestructive","message","_jsxs","children","ExclamationTriangleIcon","AlertInfo","InfoCircledIcon","AlertNoCast","AlertNoReviews","fetchCast","_asyncToGenerator","_regeneratorRuntime","_callee","movie_id","_yield$axios$get","data","_context","prev","next","axios","concat","baseOptions","sent","abrupt","cast","stop","_x","apply","arguments","movieId","useParams","_useQuery","useQuery","queryKey","queryFn","isLoading","error","Loader","_Fragment","length","map","actor","src","profile_path","name","alt","character","id","Button","disabled","ReloadIcon","headers","accept","Authorization"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/main.0a6cb666.js b/static/js/main.0a6cb666.js new file mode 100644 index 0000000..8db5afe --- /dev/null +++ b/static/js/main.0a6cb666.js @@ -0,0 +1,3 @@ +/*! For license information please see main.0a6cb666.js.LICENSE.txt */ +!function(){var e={9329:function(e,t,n){"use strict";n.d(t,{d:function(){return f},z:function(){return d}});var r=n(1413),o=n(4925),a=n(2791),i=n(2533),l=n(152),u=n(2758),s=n(184),c=["className","variant","size","asChild"],f=(0,l.j)("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),d=a.forwardRef((function(e,t){var n=e.className,a=e.variant,l=e.size,d=e.asChild,p=void 0!==d&&d,v=(0,o.Z)(e,c),h=p?i.g7:"button";return(0,s.jsx)(h,(0,r.Z)({className:(0,u.cn)(f({variant:a,size:l,className:n})),ref:t},v))}));d.displayName="Button"},2758:function(e,t,n){"use strict";function r(e){var t,n,o="";if("string"==typeof e||"number"==typeof e)o+=e;else if("object"==typeof e)if(Array.isArray(e)){var a=e.length;for(t=0;te&&(t=0,r=n,n=new Map)}return{get:function(e){var t=n.get(e);return void 0!==t?t:void 0!==(t=r.get(e))?(o(e,t),t):void 0},set:function(e,t){n.has(e)?n.set(e,t):o(e,t)}}}function h(e){var t=e.separator,n=1===t.length,r=t[0],o=t.length;return function(e){for(var a,i=[],l=0,u=0,s=0;su?a-u:void 0}}}function m(e){return(0,a.Z)({cache:v(e.cacheSize),splitModifiers:h(e)},u(e))}var y=/\s+/;function g(e,t){var n=t.splitModifiers,r=t.getClassGroupId,o=t.getConflictingClassGroupIds,a=new Set;return e.trim().split(y).map((function(e){var t=n(e),o=t.modifiers,a=t.hasImportantModifier,i=t.baseClassName,u=t.maybePostfixModifierPosition,s=r(u?i.substring(0,u):i),c=Boolean(u);if(!s){if(!u)return{isTailwindClass:!1,originalClassName:e};if(!(s=r(i)))return{isTailwindClass:!1,originalClassName:e};c=!1}var f=function(e){if(e.length<=1)return e;var t=[],n=[];return e.forEach((function(e){"["===e[0]?(t.push.apply(t,(0,l.Z)(n.sort()).concat([e])),n=[]):n.push(e)})),t.push.apply(t,(0,l.Z)(n.sort())),t}(o).join(":");return{isTailwindClass:!0,modifierId:a?f+"!":f,classGroupId:s,originalClassName:e,hasPostfixModifier:c}})).reverse().filter((function(e){if(!e.isTailwindClass)return!0;var t=e.modifierId,n=e.classGroupId,r=e.hasPostfixModifier,i=t+n;return!a.has(i)&&(a.add(i),o(n,r).forEach((function(e){return a.add(t+e)})),!0)})).reverse().map((function(e){return e.originalClassName})).join(" ")}function b(){for(var e,t,n=0,r="";n1?t-1:0),r=1;r=0||(o[n]=e[n]);return o}var a=["color"],i=(0,r.forwardRef)((function(e,t){var n=e.color,i=void 0===n?"currentColor":n,l=o(e,a);return(0,r.createElement)("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},l,{ref:t}),(0,r.createElement)("path",{d:"M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z",fill:i,fillRule:"evenodd",clipRule:"evenodd"}))})),l=["color"],u=(0,r.forwardRef)((function(e,t){var n=e.color,a=void 0===n?"currentColor":n,i=o(e,l);return(0,r.createElement)("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},i,{ref:t}),(0,r.createElement)("path",{d:"M8.4449 0.608765C8.0183 -0.107015 6.9817 -0.107015 6.55509 0.608766L0.161178 11.3368C-0.275824 12.07 0.252503 13 1.10608 13H13.8939C14.7475 13 15.2758 12.07 14.8388 11.3368L8.4449 0.608765ZM7.4141 1.12073C7.45288 1.05566 7.54712 1.05566 7.5859 1.12073L13.9798 11.8488C14.0196 11.9154 13.9715 12 13.8939 12H1.10608C1.02849 12 0.980454 11.9154 1.02018 11.8488L7.4141 1.12073ZM6.8269 4.48611C6.81221 4.10423 7.11783 3.78663 7.5 3.78663C7.88217 3.78663 8.18778 4.10423 8.1731 4.48612L8.01921 8.48701C8.00848 8.766 7.7792 8.98664 7.5 8.98664C7.2208 8.98664 6.99151 8.766 6.98078 8.48701L6.8269 4.48611ZM8.24989 10.476C8.24989 10.8902 7.9141 11.226 7.49989 11.226C7.08567 11.226 6.74989 10.8902 6.74989 10.476C6.74989 10.0618 7.08567 9.72599 7.49989 9.72599C7.9141 9.72599 8.24989 10.0618 8.24989 10.476Z",fill:a,fillRule:"evenodd",clipRule:"evenodd"}))})),s=["color"],c=(0,r.forwardRef)((function(e,t){var n=e.color,a=void 0===n?"currentColor":n,i=o(e,s);return(0,r.createElement)("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},i,{ref:t}),(0,r.createElement)("path",{d:"M7.07926 0.222253C7.31275 -0.007434 7.6873 -0.007434 7.92079 0.222253L14.6708 6.86227C14.907 7.09465 14.9101 7.47453 14.6778 7.71076C14.4454 7.947 14.0655 7.95012 13.8293 7.71773L13 6.90201V12.5C13 12.7761 12.7762 13 12.5 13H2.50002C2.22388 13 2.00002 12.7761 2.00002 12.5V6.90201L1.17079 7.71773C0.934558 7.95012 0.554672 7.947 0.32229 7.71076C0.0899079 7.47453 0.0930283 7.09465 0.32926 6.86227L7.07926 0.222253ZM7.50002 1.49163L12 5.91831V12H10V8.49999C10 8.22385 9.77617 7.99999 9.50002 7.99999H6.50002C6.22388 7.99999 6.00002 8.22385 6.00002 8.49999V12H3.00002V5.91831L7.50002 1.49163ZM7.00002 12H9.00002V8.99999H7.00002V12Z",fill:a,fillRule:"evenodd",clipRule:"evenodd"}))})),f=["color"],d=(0,r.forwardRef)((function(e,t){var n=e.color,a=void 0===n?"currentColor":n,i=o(e,f);return(0,r.createElement)("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},i,{ref:t}),(0,r.createElement)("path",{d:"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM1.82707 7.49972C1.82707 4.36671 4.36689 1.82689 7.49991 1.82689C10.6329 1.82689 13.1727 4.36671 13.1727 7.49972C13.1727 10.6327 10.6329 13.1726 7.49991 13.1726C4.36689 13.1726 1.82707 10.6327 1.82707 7.49972ZM8.24992 4.49999C8.24992 4.9142 7.91413 5.24999 7.49992 5.24999C7.08571 5.24999 6.74992 4.9142 6.74992 4.49999C6.74992 4.08577 7.08571 3.74999 7.49992 3.74999C7.91413 3.74999 8.24992 4.08577 8.24992 4.49999ZM6.00003 5.99999H6.50003H7.50003C7.77618 5.99999 8.00003 6.22384 8.00003 6.49999V9.99999H8.50003H9.00003V11H8.50003H7.50003H6.50003H6.00003V9.99999H6.50003H7.00003V6.99999H6.50003H6.00003V5.99999Z",fill:a,fillRule:"evenodd",clipRule:"evenodd"}))})),p=["color"],v=(0,r.forwardRef)((function(e,t){var n=e.color,a=void 0===n?"currentColor":n,i=o(e,p);return(0,r.createElement)("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},i,{ref:t}),(0,r.createElement)("path",{d:"M10 6.5C10 8.433 8.433 10 6.5 10C4.567 10 3 8.433 3 6.5C3 4.567 4.567 3 6.5 3C8.433 3 10 4.567 10 6.5ZM9.30884 10.0159C8.53901 10.6318 7.56251 11 6.5 11C4.01472 11 2 8.98528 2 6.5C2 4.01472 4.01472 2 6.5 2C8.98528 2 11 4.01472 11 6.5C11 7.56251 10.6318 8.53901 10.0159 9.30884L12.8536 12.1464C13.0488 12.3417 13.0488 12.6583 12.8536 12.8536C12.6583 13.0488 12.3417 13.0488 12.1464 12.8536L9.30884 10.0159Z",fill:a,fillRule:"evenodd",clipRule:"evenodd"}))})),h=["color"],m=(0,r.forwardRef)((function(e,t){var n=e.color,a=void 0===n?"currentColor":n,i=o(e,h);return(0,r.createElement)("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},i,{ref:t}),(0,r.createElement)("path",{d:"M1.84998 7.49998C1.84998 4.66458 4.05979 1.84998 7.49998 1.84998C10.2783 1.84998 11.6515 3.9064 12.2367 5H10.5C10.2239 5 10 5.22386 10 5.5C10 5.77614 10.2239 6 10.5 6H13.5C13.7761 6 14 5.77614 14 5.5V2.5C14 2.22386 13.7761 2 13.5 2C13.2239 2 13 2.22386 13 2.5V4.31318C12.2955 3.07126 10.6659 0.849976 7.49998 0.849976C3.43716 0.849976 0.849976 4.18537 0.849976 7.49998C0.849976 10.8146 3.43716 14.15 7.49998 14.15C9.44382 14.15 11.0622 13.3808 12.2145 12.2084C12.8315 11.5806 13.3133 10.839 13.6418 10.0407C13.7469 9.78536 13.6251 9.49315 13.3698 9.38806C13.1144 9.28296 12.8222 9.40478 12.7171 9.66014C12.4363 10.3425 12.0251 10.9745 11.5013 11.5074C10.5295 12.4963 9.16504 13.15 7.49998 13.15C4.05979 13.15 1.84998 10.3354 1.84998 7.49998Z",fill:a,fillRule:"evenodd",clipRule:"evenodd"}))})),y=["color"],g=(0,r.forwardRef)((function(e,t){var n=e.color,a=void 0===n?"currentColor":n,i=o(e,y);return(0,r.createElement)("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},i,{ref:t}),(0,r.createElement)("path",{d:"M4.76447 3.12199C5.63151 3.04859 6.56082 3 7.5 3C8.43918 3 9.36849 3.04859 10.2355 3.12199C11.2796 3.21037 11.9553 3.27008 12.472 3.39203C12.9425 3.50304 13.2048 3.64976 13.4306 3.88086C13.4553 3.90618 13.4902 3.94414 13.5133 3.97092C13.7126 4.20149 13.8435 4.4887 13.918 5.03283C13.9978 5.6156 14 6.37644 14 7.52493C14 8.66026 13.9978 9.41019 13.9181 9.98538C13.8439 10.5206 13.7137 10.8061 13.5125 11.0387C13.4896 11.0651 13.4541 11.1038 13.4296 11.1287C13.2009 11.3625 12.9406 11.5076 12.4818 11.6164C11.9752 11.7365 11.3143 11.7942 10.2878 11.8797C9.41948 11.9521 8.47566 12 7.5 12C6.52434 12 5.58052 11.9521 4.7122 11.8797C3.68572 11.7942 3.02477 11.7365 2.51816 11.6164C2.05936 11.5076 1.7991 11.3625 1.57037 11.1287C1.54593 11.1038 1.51035 11.0651 1.48748 11.0387C1.28628 10.8061 1.15612 10.5206 1.08193 9.98538C1.00221 9.41019 1 8.66026 1 7.52493C1 6.37644 1.00216 5.6156 1.082 5.03283C1.15654 4.4887 1.28744 4.20149 1.48666 3.97092C1.5098 3.94414 1.54468 3.90618 1.56942 3.88086C1.7952 3.64976 2.05752 3.50304 2.52796 3.39203C3.04473 3.27008 3.7204 3.21037 4.76447 3.12199ZM0 7.52493C0 5.28296 0 4.16198 0.729985 3.31713C0.766457 3.27491 0.815139 3.22194 0.854123 3.18204C1.63439 2.38339 2.64963 2.29744 4.68012 2.12555C5.56923 2.05028 6.52724 2 7.5 2C8.47276 2 9.43077 2.05028 10.3199 2.12555C12.3504 2.29744 13.3656 2.38339 14.1459 3.18204C14.1849 3.22194 14.2335 3.27491 14.27 3.31713C15 4.16198 15 5.28296 15 7.52493C15 9.74012 15 10.8477 14.2688 11.6929C14.2326 11.7348 14.1832 11.7885 14.1444 11.8281C13.3629 12.6269 12.3655 12.71 10.3709 12.8763C9.47971 12.9505 8.50782 13 7.5 13C6.49218 13 5.52028 12.9505 4.62915 12.8763C2.63446 12.71 1.63712 12.6269 0.855558 11.8281C0.816844 11.7885 0.767442 11.7348 0.731221 11.6929C0 10.8477 0 9.74012 0 7.52493ZM5.25 5.38264C5.25 5.20225 5.43522 5.08124 5.60041 5.15369L10.428 7.27105C10.6274 7.35853 10.6274 7.64147 10.428 7.72895L5.60041 9.84631C5.43522 9.91876 5.25 9.79775 5.25 9.61736V5.38264Z",fill:a,fillRule:"evenodd",clipRule:"evenodd"}))}))},8278:function(e,t,n){"use strict";n.d(t,{Ep:function(){return k},J0:function(){return y},LX:function(){return O},RQ:function(){return D},WK:function(){return V},X3:function(){return W},Zn:function(){return M},aU:function(){return r},cP:function(){return x},cm:function(){return j},fp:function(){return E},lX:function(){return m},pC:function(){return F}});var r,o=n(3144),a=n(5671),i=n(136),l=n(7277),u=n(8737),s=n(9439),c=n(4506),f=n(7762),d=n(3433);n(4687);function p(){return p=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0&&(t.hash=e.substr(n),e=e.substr(0,n));var r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function S(e,t,n,o){void 0===o&&(o={});var a=o,i=a.window,l=void 0===i?document.defaultView:i,u=a.v5Compat,s=void 0!==u&&u,c=l.history,f=r.Pop,d=null,v=m();function m(){return(c.state||{idx:null}).idx}function g(){f=r.Pop;var e=m(),t=null==e?null:e-v;v=e,d&&d({action:f,location:S.location,delta:t})}function x(e){var t="null"!==l.location.origin?l.location.origin:l.location.href,n="string"===typeof e?e:k(e);return y(t,"No window.location.(origin|href) available to create URL for href: "+n),new URL(n,t)}null==v&&(v=0,c.replaceState(p({},c.state,{idx:v}),""));var S={get action(){return f},get location(){return e(l,c)},listen:function(e){if(d)throw new Error("A history only accepts one active listener");return l.addEventListener(h,g),d=e,function(){l.removeEventListener(h,g),d=null}},createHref:function(e){return t(l,e)},createURL:x,encodeLocation:function(e){var t=x(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){f=r.Push;var o=w(S.location,e,t);n&&n(o,e);var a=b(o,v=m()+1),i=S.createHref(o);try{c.pushState(a,"",i)}catch(u){if(u instanceof DOMException&&"DataCloneError"===u.name)throw u;l.location.assign(i)}s&&d&&d({action:f,location:S.location,delta:1})},replace:function(e,t){f=r.Replace;var o=w(S.location,e,t);n&&n(o,e);var a=b(o,v=m()),i=S.createHref(o);c.replaceState(a,"",i),s&&d&&d({action:f,location:S.location,delta:0})},go:function(e){return c.go(e)}};return S}!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(v||(v={}));new Set(["lazy","caseSensitive","path","id","index","children"]);function E(e,t,n){void 0===n&&(n="/");var r=M(("string"===typeof t?x(t):t).pathname||"/",n);if(null==r)return null;var o=C(e);!function(e){e.sort((function(e,t){return e.score!==t.score?t.score-e.score:function(e,t){var n=e.length===t.length&&e.slice(0,-1).every((function(e,n){return e===t[n]}));return n?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map((function(e){return e.childrenIndex})),t.routesMeta.map((function(e){return e.childrenIndex})))}))}(o);for(var a=null,i=0;null==a&&i0&&(y(!0!==e.index,'Index routes must not have child routes. Please remove all child routes from route path "'+l+'".'),C(e.children,t,u,l)),(null!=e.path||e.index)&&t.push({path:l,score:N(l,e.index),routesMeta:u})};return e.forEach((function(e,t){var n;if(""!==e.path&&null!=(n=e.path)&&n.includes("?")){var r,a=(0,f.Z)(Z(e.path));try{for(a.s();!(r=a.n()).done;){var i=r.value;o(e,t,i)}}catch(l){a.e(l)}finally{a.f()}}else o(e,t)})),t}function Z(e){var t=e.split("/");if(0===t.length)return[];var n=(0,c.Z)(t),r=n[0],o=n.slice(1),a=r.endsWith("?"),i=r.replace(/\?$/,"");if(0===o.length)return a?[i,""]:[i];var l=Z(o.join("/")),u=[];return u.push.apply(u,(0,d.Z)(l.map((function(e){return""===e?i:[i,e].join("/")})))),a&&u.push.apply(u,(0,d.Z)(l)),u.map((function(t){return e.startsWith("/")&&""===t?"/":t}))}var P=/^:[\w-]+$/,_=function(e){return"*"===e};function N(e,t){var n=e.split("/"),r=n.length;return n.some(_)&&(r+=-2),t&&(r+=2),n.filter((function(e){return!_(e)})).reduce((function(e,t){return e+(P.test(t)?3:""===t?1:10)}),r)}function R(e,t){for(var n=e.routesMeta,r={},o="/",a=[],i=0;i and the router will parse it for you.'}function z(e){return e.filter((function(e,t){return 0===t||e.route.path&&e.route.path.length>0}))}function j(e,t){var n=z(e);return t?n.map((function(t,n){return n===e.length-1?t.pathname:t.pathnameBase})):n.map((function(e){return e.pathnameBase}))}function F(e,t,n,r){var o;void 0===r&&(r=!1),"string"===typeof e?o=x(e):(y(!(o=p({},e)).pathname||!o.pathname.includes("?"),L("?","pathname","search",o)),y(!o.pathname||!o.pathname.includes("#"),L("#","pathname","hash",o)),y(!o.search||!o.search.includes("#"),L("#","search","hash",o)));var a,i=""===e||""===o.pathname,l=i?"/":o.pathname;if(null==l)a=n;else{var u=t.length-1;if(!r&&l.startsWith("..")){for(var s=l.split("/");".."===s[0];)s.shift(),u-=1;o.pathname=s.join("/")}a=u>=0?t[u]:"/"}var c=function(e,t){void 0===t&&(t="/");var n="string"===typeof e?x(e):e,r=n.pathname,o=n.search,a=void 0===o?"":o,i=n.hash,l=void 0===i?"":i,u=r?r.startsWith("/")?r:function(e,t){var n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach((function(e){".."===e?n.length>1&&n.pop():"."!==e&&n.push(e)})),n.length>1?n.join("/"):"/"}(r,t):t;return{pathname:u,search:A(a),hash:U(l)}}(o,a),f=l&&"/"!==l&&l.endsWith("/"),d=(i||"."===l)&&n.endsWith("/");return c.pathname.endsWith("/")||!f&&!d||(c.pathname+="/"),c}var D=function(e){return e.join("/").replace(/\/\/+/g,"/")},I=function(e){return e.replace(/\/+$/,"").replace(/^\/*/,"/")},A=function(e){return e&&"?"!==e?e.startsWith("?")?e:"?"+e:""},U=function(e){return e&&"#"!==e?e.startsWith("#")?e:"#"+e:""},W=function(e){(0,i.Z)(n,e);var t=(0,l.Z)(n);function n(){return(0,a.Z)(this,n),t.apply(this,arguments)}return(0,o.Z)(n)}((0,u.Z)(Error));function V(e){return null!=e&&"number"===typeof e.status&&"string"===typeof e.statusText&&"boolean"===typeof e.internal&&"data"in e}var H=["post","put","patch","delete"],B=(new Set(H),["get"].concat(H));new Set(B),new Set([301,302,303,307,308]),new Set([307,308]);Symbol("deferred")},4463:function(e,t,n){"use strict";var r=n(2791),o=n(5296);function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n