๐Ÿ“ฆ SeolJaeHyeok / Hyeokflix

๐Ÿ“„ .eslintcache ยท 1 lines
1[{"/Users/seoljaehyeok/hyeokflix/src/index.js":"1","/Users/seoljaehyeok/hyeokflix/src/Components/App.js":"2","/Users/seoljaehyeok/hyeokflix/src/components/App.js":"3","/Users/seoljaehyeok/hyeokflix/src/components/Router.js":"4","/Users/seoljaehyeok/hyeokflix/src/components/Search/SearchViewer.js":"5","/Users/seoljaehyeok/hyeokflix/src/components/Home/HomeViewer.js":"6","/Users/seoljaehyeok/hyeokflix/src/components/Detail/DetailViewer.js":"7","/Users/seoljaehyeok/hyeokflix/src/components/common/Header.js":"8","/Users/seoljaehyeok/hyeokflix/src/lib/api.js":"9","/Users/seoljaehyeok/hyeokflix/src/containers/Movie/MovieContainer.js":"10","/Users/seoljaehyeok/hyeokflix/src/components/Movie/MovieViewer.js":"11","/Users/seoljaehyeok/hyeokflix/src/components/common/Loader.js":"12","/Users/seoljaehyeok/hyeokflix/src/components/Tv/TvViewer.js":"13","/Users/seoljaehyeok/hyeokflix/src/containers/Movie/index.js":"14","/Users/seoljaehyeok/hyeokflix/src/containers/Tv/TvContainer.js":"15","/Users/seoljaehyeok/hyeokflix/src/containers/Detail/DetailContainer.js":"16","/Users/seoljaehyeok/hyeokflix/src/containers/Search/SearchContainer.js":"17","/Users/seoljaehyeok/hyeokflix/src/components/common/Section.js":"18","/Users/seoljaehyeok/hyeokflix/src/containers/Tv/index.js":"19","/Users/seoljaehyeok/hyeokflix/src/components/common/Poster.js":"20","/Users/seoljaehyeok/hyeokflix/src/components/common/Message.js":"21","/Users/seoljaehyeok/hyeokflix/src/containers/Search/index.js":"22","/Users/seoljaehyeok/hyeokflix/src/lib/GlobalStyles.js":"23","/Users/seoljaehyeok/hyeokflix/src/containers/Person/index.js":"24","/Users/seoljaehyeok/hyeokflix/src/containers/Person/PersonContainer.js":"25","/Users/seoljaehyeok/hyeokflix/src/components/Person/PersonViewer.js":"26","/Users/seoljaehyeok/hyeokflix/src/containers/Detail/index.js":"27","/Users/seoljaehyeok/hyeokflix/src/containers/Home/HomeContainer.js":"28","/Users/seoljaehyeok/hyeokflix/src/components/Detail/Video.js":"29","/Users/seoljaehyeok/hyeokflix/src/pages/PersonPage.js":"30","/Users/seoljaehyeok/hyeokflix/src/pages/MoviePage.js":"31","/Users/seoljaehyeok/hyeokflix/src/pages/SearchPage.js":"32","/Users/seoljaehyeok/hyeokflix/src/pages/TvPage.js":"33","/Users/seoljaehyeok/hyeokflix/src/pages/DetailPage.js":"34","/Users/seoljaehyeok/hyeokflix/src/components/Detail/Country.js":"35","/Users/seoljaehyeok/hyeokflix/src/components/common/PosterSlider.js":"36","/Users/seoljaehyeok/hyeokflix/src/components/Home/Background.js":"37","/Users/seoljaehyeok/hyeokflix/src/components/Detail/Company.js":"38","/Users/seoljaehyeok/hyeokflix/src/components/Detail/Casting.js":"39","/Users/seoljaehyeok/hyeokflix/src/pages/HomePage.js":"40"},{"size":195,"mtime":1626309339766,"results":"41","hashOfConfig":"42"},{"size":149,"mtime":1626322881531,"results":"43","hashOfConfig":"42"},{"size":275,"mtime":1626327566370,"results":"44","hashOfConfig":"42"},{"size":1093,"mtime":1645452074967,"results":"45","hashOfConfig":"46"},{"size":2865,"mtime":1645453387924,"results":"47","hashOfConfig":"46"},{"size":1794,"mtime":1628215452587,"results":"48","hashOfConfig":"42"},{"size":11616,"mtime":1645453735461,"results":"49","hashOfConfig":"46"},{"size":1943,"mtime":1645452139074,"results":"50","hashOfConfig":"46"},{"size":1942,"mtime":1645453815528,"results":"51","hashOfConfig":"46"},{"size":1451,"mtime":1628065687970,"results":"52","hashOfConfig":"42"},{"size":2882,"mtime":1628215488499,"results":"53","hashOfConfig":"42"},{"size":478,"mtime":1627309724529,"results":"54","hashOfConfig":"46"},{"size":2804,"mtime":1645453464916,"results":"55","hashOfConfig":"46"},{"size":79,"mtime":1627308634503,"results":"56","hashOfConfig":"42"},{"size":1403,"mtime":1628065682808,"results":"57","hashOfConfig":"46"},{"size":1320,"mtime":1645452497323,"results":"58","hashOfConfig":"46"},{"size":1852,"mtime":1627899631808,"results":"59","hashOfConfig":"60"},{"size":591,"mtime":1628228276378,"results":"61","hashOfConfig":"42"},{"size":70,"mtime":1627309135300,"results":"62","hashOfConfig":"42"},{"size":1715,"mtime":1628143041250,"results":"63","hashOfConfig":"46"},{"size":403,"mtime":1627748273258,"results":"64","hashOfConfig":"46"},{"size":82,"mtime":1627309175581,"results":"65","hashOfConfig":"46"},{"size":615,"mtime":1628148902617,"results":"66","hashOfConfig":"46"},{"size":82,"mtime":1627903529655,"results":"67","hashOfConfig":"46"},{"size":1355,"mtime":1628009713830,"results":"68","hashOfConfig":"46"},{"size":5847,"mtime":1645452942485,"results":"69","hashOfConfig":"46"},{"size":82,"mtime":1627309176792,"results":"70","hashOfConfig":"46"},{"size":814,"mtime":1628144770570,"results":"71","hashOfConfig":"46"},{"size":1027,"mtime":1638763742821,"results":"72","hashOfConfig":"46"},{"size":165,"mtime":1628141365646,"results":"73","hashOfConfig":"42"},{"size":160,"mtime":1628141361202,"results":"74","hashOfConfig":"46"},{"size":165,"mtime":1628141345189,"results":"75","hashOfConfig":"42"},{"size":145,"mtime":1628141369312,"results":"76","hashOfConfig":"46"},{"size":165,"mtime":1628141355489,"results":"77","hashOfConfig":"42"},{"size":832,"mtime":1628140805794,"results":"78","hashOfConfig":"42"},{"size":2961,"mtime":1645453532346,"results":"79","hashOfConfig":"46"},{"size":3455,"mtime":1635074996198,"results":"80","hashOfConfig":"46"},{"size":2277,"mtime":1628140803445,"results":"81","hashOfConfig":"46"},{"size":2402,"mtime":1628140798511,"results":"82","hashOfConfig":"42"},{"size":155,"mtime":1628141049978,"results":"83","hashOfConfig":"46"},{"filePath":"84","messages":"85","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"1ymvgtc",{"filePath":"86","messages":"87","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"88","messages":"89","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"90"},{"filePath":"91","messages":"92","errorCount":1,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},"17fi8co",{"filePath":"93","messages":"94","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"95"},{"filePath":"96","messages":"97","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"98"},{"filePath":"99","messages":"100","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"95"},{"filePath":"101","messages":"102","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"103","messages":"104","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"105","messages":"106","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"107"},{"filePath":"108","messages":"109","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"110"},{"filePath":"111","messages":"112","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"113"},{"filePath":"114","messages":"115","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"95"},{"filePath":"116","messages":"117","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"118"},{"filePath":"119","messages":"120","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"121","messages":"122","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"123","messages":"124","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"14ewkbc",{"filePath":"125","messages":"126","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"127","messages":"128","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"129"},{"filePath":"130","messages":"131","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"132","messages":"133","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"134","messages":"135","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"136","messages":"137","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"95"},{"filePath":"138","messages":"139","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"140","messages":"141","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"142","usedDeprecatedRules":"95"},{"filePath":"143","messages":"144","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"145","messages":"146","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"147","messages":"148","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"149"},{"filePath":"150","messages":"151","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"152","messages":"153","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"154"},{"filePath":"155","messages":"156","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"157","messages":"158","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"107"},{"filePath":"159","messages":"160","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"161","messages":"162","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"163","messages":"164","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"165","messages":"166","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"167","messages":"168","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"169","usedDeprecatedRules":"95"},{"filePath":"170","messages":"171","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"172"},{"filePath":"173","messages":"174","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"175","messages":"176","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"113"},"/Users/seoljaehyeok/hyeokflix/src/index.js",[],"/Users/seoljaehyeok/hyeokflix/src/Components/App.js",[],"/Users/seoljaehyeok/hyeokflix/src/components/App.js",[],["177","178"],"/Users/seoljaehyeok/hyeokflix/src/components/Router.js",["179"],"/Users/seoljaehyeok/hyeokflix/src/components/Search/SearchViewer.js",[],["180","181"],"/Users/seoljaehyeok/hyeokflix/src/components/Home/HomeViewer.js",[],["182","183"],"/Users/seoljaehyeok/hyeokflix/src/components/Detail/DetailViewer.js",[],"/Users/seoljaehyeok/hyeokflix/src/components/common/Header.js",[],"/Users/seoljaehyeok/hyeokflix/src/lib/api.js",[],"/Users/seoljaehyeok/hyeokflix/src/containers/Movie/MovieContainer.js",[],["184","185"],"/Users/seoljaehyeok/hyeokflix/src/components/Movie/MovieViewer.js",[],["186","187"],"/Users/seoljaehyeok/hyeokflix/src/components/common/Loader.js",[],["188","189"],"/Users/seoljaehyeok/hyeokflix/src/components/Tv/TvViewer.js",[],"/Users/seoljaehyeok/hyeokflix/src/containers/Movie/index.js",[],["190","191"],"/Users/seoljaehyeok/hyeokflix/src/containers/Tv/TvContainer.js",[],"/Users/seoljaehyeok/hyeokflix/src/containers/Detail/DetailContainer.js",["192"],"/Users/seoljaehyeok/hyeokflix/src/containers/Search/SearchContainer.js",[],"/Users/seoljaehyeok/hyeokflix/src/components/common/Section.js",[],"/Users/seoljaehyeok/hyeokflix/src/containers/Tv/index.js",[],["193","194"],"/Users/seoljaehyeok/hyeokflix/src/components/common/Poster.js",[],"/Users/seoljaehyeok/hyeokflix/src/components/common/Message.js",[],"/Users/seoljaehyeok/hyeokflix/src/containers/Search/index.js",[],"/Users/seoljaehyeok/hyeokflix/src/lib/GlobalStyles.js",[],"/Users/seoljaehyeok/hyeokflix/src/containers/Person/index.js",[],"/Users/seoljaehyeok/hyeokflix/src/containers/Person/PersonContainer.js",["195"],"import React, { useEffect, useState } from \"react\";\nimport { useParams } from \"react-router-dom\";\n\nimport PersonViewer from \"components/Person/PersonViewer\";\nimport { personApi } from \"lib/api\";\n\nconst PersonContainer = () => {\n  const params = useParams();\n  const parsedId = parseInt(params.id); // Person ID\n\n  const [result, setResults] = useState([]);\n  const [movieResults, setMovieResults] = useState([]);\n  const [showResults, setShowResults] = useState([]);\n  const [error, setError] = useState(null);\n  const [loading, setLoading] = useState(true);\n\n  const getPersonFromApi = async () => {\n    try {\n      const { data: result } = await personApi.personInformation(parsedId);\n      const { data: movieResults } = await personApi.personMovies(parsedId);\n      const { data: showResults } = await personApi.personShows(parsedId);\n      setResults(result);\n      setMovieResults(movieResults);\n      setShowResults(showResults);\n    } catch (e) {\n      setError(\"์ธ๋ฌผ ์ •๋ณด๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.\");\n      console.log(e);\n    } finally {\n      setLoading(false);\n    }\n  };\n\n  useEffect(() => {\n    getPersonFromApi();\n  }, []);\n\n  return (\n    <PersonViewer\n      result={result}\n      movieResults={movieResults}\n      showResults={showResults}\n      error={error}\n      loading={loading}\n    />\n  );\n};\n\nexport default PersonContainer;\n","/Users/seoljaehyeok/hyeokflix/src/components/Person/PersonViewer.js",[],"/Users/seoljaehyeok/hyeokflix/src/containers/Detail/index.js",[],"/Users/seoljaehyeok/hyeokflix/src/containers/Home/HomeContainer.js",[],["196","197"],"/Users/seoljaehyeok/hyeokflix/src/components/Detail/Video.js",[],"/Users/seoljaehyeok/hyeokflix/src/pages/PersonPage.js",[],["198","199"],"/Users/seoljaehyeok/hyeokflix/src/pages/MoviePage.js",[],"/Users/seoljaehyeok/hyeokflix/src/pages/SearchPage.js",[],"/Users/seoljaehyeok/hyeokflix/src/pages/TvPage.js",[],"/Users/seoljaehyeok/hyeokflix/src/pages/DetailPage.js",[],"/Users/seoljaehyeok/hyeokflix/src/components/Detail/Country.js",[],"/Users/seoljaehyeok/hyeokflix/src/components/common/PosterSlider.js",[],"/Users/seoljaehyeok/hyeokflix/src/components/Home/Background.js",["200"],"import React, { useEffect, useRef, useState } from \"react\";\nimport styled from \"styled-components\";\nimport YouTube from \"react-youtube\";\nimport { movieApi, tvApi } from \"lib/api\";\nimport { Link } from \"react-router-dom\";\nimport { HiVolumeUp, HiVolumeOff } from \"react-icons/hi\";\nimport { FaPause, FaPlayCircle } from \"react-icons/fa\";\nimport \"./background.css\";\n\nconst SLink = styled(Link)`\n  padding: 10px 20px;\n  width: fit-content;\n  border-radius: 5px;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  margin-top: 25px;\n  background: white;\n  color: black;\n  font-size: 20px;\n`;\n\nconst Button = styled.button`\n  margin: 1.3rem;\n  border-style: none;\n  border-bottom: 2px solid;\n  color: white;\n  transform: scale(1.5);\n  border-radius: 50%;\n  background-color: rgba(0, 0, 0, 0.1);\n`;\n\nconst Background = (trending) => {\n  const random = Math.floor(Math.random() * 20);\n\n  const [data, setData] = useState(\"\");\n  const [Play, setPlay] = useState(false);\n  const [Mute, setMute] = useState(true);\n\n  const playerRef = useRef(null);\n\n  const opts = {\n    height: \"100%\",\n    width: \"100%\",\n    playerVars: {\n      autoplay: 1,\n      mute: 1,\n      loop: 1,\n      playlist: data?.videos?.results[0]?.key,\n    },\n  };\n\n  const pauseVideo = () => {\n    playerRef?.current?.internalPlayer.pauseVideo();\n    setPlay(true);\n  };\n\n  const startVideo = () => {\n    playerRef?.current?.internalPlayer.playVideo();\n    setPlay(false);\n  };\n\n  const unmuteVideo = () => {\n    playerRef?.current?.internalPlayer.unMute();\n    setMute(false);\n  };\n\n  const muteVideo = () => {\n    playerRef?.current?.internalPlayer.mute();\n    setMute(true);\n  };\n  const getVideoFromApi = async () => {\n    let id = trending[random].id;\n    let isMovie = trending[random].media_type === \"movie\" ? true : false;\n    const parsedId = parseInt(id);\n    try {\n      if (isMovie) {\n        const { data: result } = await movieApi.movieDetail(parsedId);\n        setData(result);\n      } else {\n        const { data: result } = await tvApi.showDetail(parsedId);\n        setData(result);\n      }\n    } catch (e) {\n      console.log(e);\n    }\n  };\n\n  useEffect(() => {\n    getVideoFromApi();\n  }, [trending]);\n\n  return (\n    <>\n      <div className=\"video-background\">\n        <div className=\"video-foreground\">\n          <YouTube\n            id=\"yt_id\"\n            videoId={data?.videos?.results[0]?.key}\n            opts={opts}\n            ref={playerRef}\n          />\n        </div>\n      </div>\n      <div id=\"vidtop-content\">\n        <div className=\"vid-info\">\n          <h1>{data && data.title ? data.title : data.name}</h1>\n          <p>{data && data.overview}</p>\n          {data.original_title ? (\n            <SLink to={`/movie/${data.id}`}> ๋” ์•Œ์•„๋ณด๊ธฐ</SLink>\n          ) : (\n            <SLink to={`/show/${data.id}`}> ๋” ์•Œ์•„๋ณด๊ธฐ</SLink>\n          )}\n        </div>\n        <div className=\"vid-control\">\n          {Play ? (\n            <Button onClick={startVideo}>\n              <FaPlayCircle />\n            </Button>\n          ) : (\n            <Button onClick={pauseVideo}>\n              <FaPause />\n            </Button>\n          )}\n          {Mute ? (\n            <Button onClick={unmuteVideo}>\n              <HiVolumeOff />\n            </Button>\n          ) : (\n            <Button onClick={muteVideo}>\n              <HiVolumeUp />\n            </Button>\n          )}\n        </div>\n      </div>\n    </>\n  );\n};\n\nexport default Background;\n","/Users/seoljaehyeok/hyeokflix/src/components/Detail/Company.js",[],["201","202"],"/Users/seoljaehyeok/hyeokflix/src/components/Detail/Casting.js",[],"/Users/seoljaehyeok/hyeokflix/src/pages/HomePage.js",[],{"ruleId":"203","replacedBy":"204"},{"ruleId":"205","replacedBy":"206"},{"ruleId":null,"fatal":true,"severity":2,"message":"207","line":36,"column":7},{"ruleId":"203","replacedBy":"208"},{"ruleId":"205","replacedBy":"209"},{"ruleId":"203","replacedBy":"210"},{"ruleId":"205","replacedBy":"211"},{"ruleId":"203","replacedBy":"212"},{"ruleId":"205","replacedBy":"213"},{"ruleId":"203","replacedBy":"214"},{"ruleId":"205","replacedBy":"215"},{"ruleId":"203","replacedBy":"216"},{"ruleId":"205","replacedBy":"217"},{"ruleId":"203","replacedBy":"218"},{"ruleId":"205","replacedBy":"219"},{"ruleId":"220","severity":1,"message":"221","line":41,"column":6,"nodeType":"222","endLine":41,"endColumn":8,"suggestions":"223"},{"ruleId":"203","replacedBy":"224"},{"ruleId":"205","replacedBy":"225"},{"ruleId":"220","severity":1,"message":"226","line":35,"column":6,"nodeType":"222","endLine":35,"endColumn":8,"suggestions":"227"},{"ruleId":"203","replacedBy":"228"},{"ruleId":"205","replacedBy":"229"},{"ruleId":"203","replacedBy":"230"},{"ruleId":"205","replacedBy":"231"},{"ruleId":"220","severity":1,"message":"232","line":91,"column":6,"nodeType":"222","endLine":91,"endColumn":16,"suggestions":"233"},{"ruleId":"203","replacedBy":"234"},{"ruleId":"205","replacedBy":"235"},"no-native-reassign",["236"],"no-negated-in-lhs",["237"],"Parsing error: Expected corresponding JSX closing tag for <Switch>\n\n  34 |         <Route exact path=\"/person/:id\" component={Person} />\n  35 |         <Redirect from=\"*\" to=\"/\" />\n> 36 |       </Routes>\n     |       ^\n  37 |     </>\n  38 |   </Router>\n  39 | );",["236"],["237"],["236"],["237"],["236"],["237"],["236"],["237"],["236"],["237"],["236"],["237"],"react-hooks/exhaustive-deps","React Hook useEffect has a missing dependency: 'getDetailDataFromApi'. Either include it or remove the dependency array.","ArrayExpression",["238"],["236"],["237"],"React Hook useEffect has a missing dependency: 'getPersonFromApi'. Either include it or remove the dependency array.",["239"],["236"],["237"],["236"],["237"],"React Hook useEffect has a missing dependency: 'getVideoFromApi'. Either include it or remove the dependency array.",["240"],["236"],["237"],"no-global-assign","no-unsafe-negation",{"desc":"241","fix":"242"},{"desc":"243","fix":"244"},{"desc":"245","fix":"246"},"Update the dependencies array to be: [getDetailDataFromApi]",{"range":"247","text":"248"},"Update the dependencies array to be: [getPersonFromApi]",{"range":"249","text":"250"},"Update the dependencies array to be: [getVideoFromApi, trending]",{"range":"251","text":"252"},[1170,1172],"[getDetailDataFromApi]",[1116,1118],"[getPersonFromApi]",[2181,2191],"[getVideoFromApi, trending]"]