From d9e9b78495346270db7d30f0f64dd0878f5151d5 Mon Sep 17 00:00:00 2001 From: AshDyson Date: Thu, 11 Feb 2021 12:36:36 +0000 Subject: [PATCH 01/37] Frontend linting --- admin/src/components/Login.js | 28 +- admin/src/page/Setup.js | 227 +- admin/src/page/settings/general.js | 93 +- frontend/.editorconfig | 19 +- frontend/.eslintcache | 2 +- frontend/.eslintrc.json | 19 + frontend/package-lock.json | 5952 +++++++----------- frontend/package.json | 7 + frontend/src/App.js | 64 +- frontend/src/components/Carousel.js | 60 +- frontend/src/components/History.js | 29 +- frontend/src/components/Issues.js | 72 +- frontend/src/components/MovieShowOverview.js | 172 +- frontend/src/components/MovieShowTop.js | 32 +- frontend/src/components/PersonCard.js | 12 +- frontend/src/components/Popular.js | 30 +- frontend/src/components/RequestCard.js | 159 +- frontend/src/components/ReviewsLists.js | 47 +- frontend/src/components/Sidebar.js | 68 +- frontend/src/data/Api/actions.js | 2 +- frontend/src/data/Api/api.js | 2 +- frontend/src/data/Api/reducer.js | 370 +- frontend/src/pages/Actor.js | 2 +- frontend/src/pages/Company.js | 31 +- frontend/src/pages/Genre.js | 36 +- frontend/src/pages/Movie.js | 74 +- frontend/src/pages/Movies.js | 10 +- frontend/src/pages/Networks.js | 25 +- frontend/src/pages/Profile.js | 258 +- frontend/src/pages/Requests.js | 40 +- frontend/src/pages/Search.js | 33 +- frontend/src/pages/Season.js | 74 +- frontend/src/pages/Series.js | 135 +- frontend/src/pages/Shows.js | 6 +- frontend/yarn.lock | 296 +- 35 files changed, 3996 insertions(+), 4490 deletions(-) create mode 100644 frontend/.eslintrc.json diff --git a/admin/src/components/Login.js b/admin/src/components/Login.js index 4a88859e4..745e1f2e1 100644 --- a/admin/src/components/Login.js +++ b/admin/src/components/Login.js @@ -87,25 +87,43 @@ class Login extends React.Component {

Log in with your Plex username / password

Username

- +

Password

- +
- +

FANART.TV

- +
-

Petio Admin build (alpha) {pjson.version}

+

+ Petio Admin build (alpha) {pjson.version} +

) : (
diff --git a/admin/src/page/Setup.js b/admin/src/page/Setup.js index de7255de2..6058e8188 100644 --- a/admin/src/page/Setup.js +++ b/admin/src/page/Setup.js @@ -16,15 +16,36 @@ import pjson from "../../package.json"; /* eslint-disable */ const popupCenter = (url, title, w, h) => { // Fixes dual-screen position Most browsers Firefox - var dualScreenLeft = window.screenLeft != undefined ? window.screenLeft : window.screenX; - var dualScreenTop = window.screenTop != undefined ? window.screenTop : window.screenY; + var dualScreenLeft = + window.screenLeft != undefined ? window.screenLeft : window.screenX; + var dualScreenTop = + window.screenTop != undefined ? window.screenTop : window.screenY; - var width = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ? document.documentElement.clientWidth : screen.width; - var height = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : screen.height; + var width = window.innerWidth + ? window.innerWidth + : document.documentElement.clientWidth + ? document.documentElement.clientWidth + : screen.width; + var height = window.innerHeight + ? window.innerHeight + : document.documentElement.clientHeight + ? document.documentElement.clientHeight + : screen.height; var left = width / 2 - w / 2 + dualScreenLeft; var top = height / 2 - h / 2 + dualScreenTop; - var newWindow = window.open(url, title, "scrollbars=yes, width=" + w + ", height=" + h + ", top=" + top + ", left=" + left); + var newWindow = window.open( + url, + title, + "scrollbars=yes, width=" + + w + + ", height=" + + h + + ", top=" + + top + + ", left=" + + left + ); if (window.focus) newWindow.focus(); return newWindow; @@ -176,7 +197,9 @@ class Setup extends React.Component { }, 10000); }) .catch((err) => { - alert("Setup failed, check API is running and no errors, if this persists please contact the dev team."); + alert( + "Setup failed, check API is running and no errors, if this persists please contact the dev team." + ); window.location.reload(false); }); } @@ -230,7 +253,10 @@ class Setup extends React.Component { changeMongoType() { this.setState({ - mongoType: this.state.mongoType === "mongodb+srv://" ? "mongodb://" : "mongodb+srv://", + mongoType: + this.state.mongoType === "mongodb+srv://" + ? "mongodb://" + : "mongodb+srv://", mongoStatus: "", }); } @@ -245,21 +271,52 @@ class Setup extends React.Component { return (
-
1 ? "complete" : ""} ${this.state.step === 1 ? "active" : ""}`}>1
+
1 ? "complete" : ""} ${ + this.state.step === 1 ? "active" : "" + }`} + > + 1 +
-
2 ? "complete" : ""} ${this.state.step === 2 ? "active" : ""}`}>2
+
2 ? "complete" : ""} ${ + this.state.step === 2 ? "active" : "" + }`} + > + 2 +
-
3 ? "complete" : ""} ${this.state.step === 3 ? "active" : ""}`}>3
+
3 ? "complete" : ""} ${ + this.state.step === 3 ? "active" : "" + }`} + > + 3 +
-
4 ? "complete" : ""} ${this.state.step === 4 ? "active" : ""}`}>4
+
4 ? "complete" : ""} ${ + this.state.step === 4 ? "active" : "" + }`} + > + 4 +
-
5
+
+ 5 +

Setup

{this.state.step === 1 ? (
-

Welcome to Petio, firstly lets log in to Plex to get all of your user and server info

+

+ Welcome to Petio, firstly lets log in to Plex to get all of your + user and server info +

@@ -267,13 +324,32 @@ class Setup extends React.Component { ) : null} {this.state.step === 2 ? (
-

This is your Petio admin user details, we will use your Plex Username / Email, but a custom password just for Petio can be used.

+

+ This is your Petio admin user details, we will use your Plex + Username / Email, but a custom password just for Petio can be + used. +

Petio Admin Username

- +

Petio Admin Email

- +

Petio Admin Password

- + @@ -283,32 +359,51 @@ class Setup extends React.Component {

Please select your server

{Object.keys(this.props.plex.servers).length === 0 ? ( -

You don't own any servers. Only the server owner can setup a Petio instance.

+

+ You don't own any servers. Only the server owner can setup a + Petio instance. +

) : ( Object.keys(this.props.plex.servers).map((key) => { let server = this.props.plex.servers[key]; return (
-
{this.serverIcon(server.platform)}
+
+ {this.serverIcon(server.platform)} +

{server.name}

{`${server.protocol}://${server.host}:${server.port}`}

-
+
-
+
-
+
@@ -318,15 +413,28 @@ class Setup extends React.Component { ); }) )} -
) : null} {this.state.step === 4 ? (
-

Mongo Database path, if using docker leave as default, otherwise specify your db path.

-

To switch between local / cloud db clusters click on the prefix to switch between the two.

+

+ Mongo Database path, if using docker leave as default, otherwise + specify your db path. +

+

+ To switch between local / cloud db clusters click on the prefix + to switch between the two. +

@@ -335,28 +443,62 @@ class Setup extends React.Component {
{this.state.mongoType}
- +
-
+
-
+
-
+
- -
@@ -371,23 +513,36 @@ class Setup extends React.Component { ) : null}
-

Petio Admin build (alpha) {pjson.version}

+

+ Petio Admin build (alpha) {pjson.version} +

); } } function SetupContainer(props) { - return ; + return ( + + ); } const mapStateToProps = function (state) { diff --git a/admin/src/page/settings/general.js b/admin/src/page/settings/general.js index 633c258a0..669c79731 100644 --- a/admin/src/page/settings/general.js +++ b/admin/src/page/settings/general.js @@ -190,38 +190,92 @@ class General extends React.Component {

Plex

If connection has been lost to Plex re-authenticate here.

-

Email

- + - + - + - +
- +

Use Secure (For port 587 or 25 use false)

- +

Enabled

- Using Gmail? Make sure to allow "less secure apps" to allow Petio to send emails on your behalf. You can change this setting{" "} - + Using Gmail? Make sure to allow "less secure apps" to allow Petio to + send emails on your behalf. You can change this setting{" "} + here

- @@ -232,12 +286,23 @@ class General extends React.Component {

Base path

- A base path can be applied to serve petio from a subdirectory. Any specified base must not include a trailing slash and will be applied to the end of the access URL. For example{" "} - /petio would become localhost:7777/petio + A base path can be applied to serve petio from a subdirectory. Any + specified base must not include a trailing slash and will be applied + to the end of the access URL. For example /petio would + become localhost:7777/petio

- Warning! This will require a restart of Petio to take effect. + + Warning! This will require a restart of Petio to take effect. +

- + diff --git a/frontend/.editorconfig b/frontend/.editorconfig index 1014ba788..ec9c9a016 100644 --- a/frontend/.editorconfig +++ b/frontend/.editorconfig @@ -1,12 +1,25 @@ root = true [*] -charset = utf-8 -end_of_line = lf -insert_final_newline = true indent_style = space indent_size = 2 + +end_of_line = lf +charset = utf-8 trim_trailing_whitespace = true +insert_final_newline = true [*.md] trim_trailing_whitespace = false + +[{package,bower}.json] +indent_style = space +indent_size = 2 + +[{.eslintrc,.scss-lint.yml}] +indent_style = space +indent_size = 2 + +[*.{scss,sass}] +indent_style = space +indent_size = 2 diff --git a/frontend/.eslintcache b/frontend/.eslintcache index 4784da9e5..31f0a355f 100644 --- a/frontend/.eslintcache +++ b/frontend/.eslintcache @@ -1 +1 @@ -[{"/Users/ashleydyson/Documents/Petio/petio/frontend/src/index.js":"1","/Users/ashleydyson/Documents/Petio/petio/frontend/src/serviceWorker.js":"2","/Users/ashleydyson/Documents/Petio/petio/frontend/src/App.js":"3","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/store.js":"4","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/auth/index.js":"5","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/Issues.js":"6","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/Sidebar.js":"7","/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Season.js":"8","/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Profile.js":"9","/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Search.js":"10","/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Movie.js":"11","/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Series.js":"12","/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Actor.js":"13","/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Movies.js":"14","/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Shows.js":"15","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/reducers.js":"16","/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Requests.js":"17","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Plex/index.js":"18","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/User/index.js":"19","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Api/index.js":"20","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/actionTypes.js":"21","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/Review.js":"22","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/MovieShowTop.js":"23","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/MovieShowOverview.js":"24","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/MovieCard.js":"25","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/History.js":"26","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/PersonCard.js":"27","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/CarouselLoading.js":"28","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/Carousel.js":"29","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/TvCard.js":"30","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/CarouselLoadingPerson.js":"31","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/MovieShowLoading.js":"32","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/ReviewsLists.js":"33","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/RequestCard.js":"34","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/User/reducer.js":"35","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Plex/reducer.js":"36","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Api/reducer.js":"37","/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/Popular.js":"38","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/User/actions.js":"39","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Api/actions.js":"40","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Plex/actions.js":"41","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/User/api.js":"42","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Api/api.js":"43","/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Plex/api.js":"44","/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Genre.js":"45","/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Networks.js":"46","/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Company.js":"47"},{"size":595,"mtime":1607428895092,"results":"48","hashOfConfig":"49"},{"size":5086,"mtime":1607428895094,"results":"50","hashOfConfig":"49"},{"size":10044,"mtime":1612792130617,"results":"51","hashOfConfig":"49"},{"size":376,"mtime":1607428895090,"results":"52","hashOfConfig":"49"},{"size":756,"mtime":1612790599482,"results":"53","hashOfConfig":"49"},{"size":5368,"mtime":1612296254159,"results":"54","hashOfConfig":"49"},{"size":4417,"mtime":1612790599482,"results":"55","hashOfConfig":"49"},{"size":10080,"mtime":1612792629980,"results":"56","hashOfConfig":"49"},{"size":4291,"mtime":1607428895093,"results":"57","hashOfConfig":"49"},{"size":5688,"mtime":1612293639578,"results":"58","hashOfConfig":"49"},{"size":7603,"mtime":1612354776676,"results":"59","hashOfConfig":"49"},{"size":11606,"mtime":1612358999610,"results":"60","hashOfConfig":"49"},{"size":7818,"mtime":1612957573187,"results":"61","hashOfConfig":"49"},{"size":1490,"mtime":1612293456553,"results":"62","hashOfConfig":"49"},{"size":1467,"mtime":1612293756845,"results":"63","hashOfConfig":"49"},{"size":236,"mtime":1607428895090,"results":"64","hashOfConfig":"49"},{"size":5915,"mtime":1612297794466,"results":"65","hashOfConfig":"49"},{"size":70,"mtime":1607428895090,"results":"66","hashOfConfig":"49"},{"size":246,"mtime":1610555633173,"results":"67","hashOfConfig":"49"},{"size":389,"mtime":1612198360509,"results":"68","hashOfConfig":"49"},{"size":1196,"mtime":1611342092511,"results":"69","hashOfConfig":"49"},{"size":2183,"mtime":1612296506385,"results":"70","hashOfConfig":"49"},{"size":3320,"mtime":1612383635719,"results":"71","hashOfConfig":"49"},{"size":15471,"mtime":1612955140465,"results":"72","hashOfConfig":"49"},{"size":4641,"mtime":1612293335694,"results":"73","hashOfConfig":"49"},{"size":4396,"mtime":1612295274868,"results":"74","hashOfConfig":"49"},{"size":1478,"mtime":1608589555436,"results":"75","hashOfConfig":"49"},{"size":1744,"mtime":1607428895086,"results":"76","hashOfConfig":"49"},{"size":3642,"mtime":1612296012482,"results":"77","hashOfConfig":"49"},{"size":4543,"mtime":1612293285999,"results":"78","hashOfConfig":"49"},{"size":1780,"mtime":1607428895086,"results":"79","hashOfConfig":"49"},{"size":3071,"mtime":1610625569142,"results":"80","hashOfConfig":"49"},{"size":4151,"mtime":1612367983535,"results":"81","hashOfConfig":"49"},{"size":2257,"mtime":1607428895088,"results":"82","hashOfConfig":"49"},{"size":1566,"mtime":1611342092510,"results":"83","hashOfConfig":"49"},{"size":251,"mtime":1607428895090,"results":"84","hashOfConfig":"49"},{"size":3414,"mtime":1608570299658,"results":"85","hashOfConfig":"49"},{"size":3517,"mtime":1612295268170,"results":"86","hashOfConfig":"49"},{"size":2967,"mtime":1611342092510,"results":"87","hashOfConfig":"49"},{"size":5347,"mtime":1612198322704,"results":"88","hashOfConfig":"49"},{"size":3421,"mtime":1607428895089,"results":"89","hashOfConfig":"49"},{"size":1860,"mtime":1612866436878,"results":"90","hashOfConfig":"49"},{"size":3017,"mtime":1612198348634,"results":"91","hashOfConfig":"49"},{"size":892,"mtime":1607428895090,"results":"92","hashOfConfig":"49"},{"size":8297,"mtime":1612357932377,"results":"93","hashOfConfig":"49"},{"size":3078,"mtime":1612293526526,"results":"94","hashOfConfig":"49"},{"size":3086,"mtime":1612286268816,"results":"95","hashOfConfig":"49"},{"filePath":"96","messages":"97","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"1rfh7vx",{"filePath":"98","messages":"99","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"100","messages":"101","errorCount":0,"warningCount":7,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"102","messages":"103","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"104","messages":"105","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"106","messages":"107","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"108","messages":"109","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"110","messages":"111","errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"112","messages":"113","errorCount":0,"warningCount":8,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"114","messages":"115","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"116","messages":"117","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"118","messages":"119","errorCount":0,"warningCount":12,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"120","messages":"121","errorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"122","messages":"123","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"124","messages":"125","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"126","messages":"127","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"128","messages":"129","errorCount":0,"warningCount":5,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"130","messages":"131","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"132","messages":"133","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"134","messages":"135","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"136","messages":"137","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"138","messages":"139","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"140","messages":"141","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"142","messages":"143","errorCount":0,"warningCount":10,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"144","messages":"145","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"146","messages":"147","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"148","messages":"149","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"150","messages":"151","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"152","messages":"153","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"154","messages":"155","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"156","messages":"157","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"158","messages":"159","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"160","messages":"161","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"162","messages":"163","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"164","messages":"165","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"166","messages":"167","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"168","messages":"169","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"170","messages":"171","errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"172","messages":"173","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"174","messages":"175","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"176","messages":"177","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"178","messages":"179","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"180","messages":"181","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"182","messages":"183","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"184","messages":"185","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"186","messages":"187","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"188","messages":"189","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},"/Users/ashleydyson/Documents/Petio/petio/frontend/src/index.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/serviceWorker.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/App.js",["190","191","192","193","194","195","196"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/store.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/auth/index.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/Issues.js",["197"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/Sidebar.js",["198"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Season.js",["199","200","201"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Profile.js",["202","203","204","205","206","207","208","209"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Search.js",["210"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Movie.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Series.js",["211","212","213","214","215","216","217","218","219","220","221","222"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Actor.js",["223","224","225","226"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Movies.js",["227"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Shows.js",["228"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/reducers.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Requests.js",["229","230","231","232","233"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Plex/index.js",["234"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/User/index.js",["235"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Api/index.js",["236"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/actionTypes.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/Review.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/MovieShowTop.js",["237","238"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/MovieShowOverview.js",["239","240","241","242","243","244","245","246","247","248"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/MovieCard.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/History.js",["249"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/PersonCard.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/CarouselLoading.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/Carousel.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/TvCard.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/CarouselLoadingPerson.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/MovieShowLoading.js",["250","251"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/ReviewsLists.js",["252"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/RequestCard.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/User/reducer.js",["253"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Plex/reducer.js",["254"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Api/reducer.js",["255"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/components/Popular.js",["256","257","258"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/User/actions.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Api/actions.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Plex/actions.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/User/api.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Api/api.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/data/Plex/api.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Genre.js",[],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Networks.js",["259","260"],"/Users/ashleydyson/Documents/Petio/petio/frontend/src/pages/Company.js",["261","262"],{"ruleId":"263","severity":1,"message":"264","line":2,"column":37,"nodeType":"265","messageId":"266","endLine":2,"endColumn":41},{"ruleId":"263","severity":1,"message":"267","line":2,"column":43,"nodeType":"265","messageId":"266","endLine":2,"endColumn":53},{"ruleId":"263","severity":1,"message":"268","line":2,"column":55,"nodeType":"265","messageId":"266","endLine":2,"endColumn":65},{"ruleId":"263","severity":1,"message":"269","line":4,"column":8,"nodeType":"265","messageId":"266","endLine":4,"endColumn":12},{"ruleId":"263","severity":1,"message":"270","line":211,"column":9,"nodeType":"265","messageId":"266","endLine":211,"endColumn":13},{"ruleId":"271","severity":1,"message":"272","line":231,"column":46,"nodeType":"273","endLine":231,"endColumn":61},{"ruleId":"271","severity":1,"message":"272","line":236,"column":55,"nodeType":"273","endLine":236,"endColumn":70},{"ruleId":"263","severity":1,"message":"264","line":2,"column":22,"nodeType":"265","messageId":"266","endLine":2,"endColumn":26},{"ruleId":"263","severity":1,"message":"274","line":2,"column":28,"nodeType":"265","messageId":"266","endLine":2,"endColumn":34},{"ruleId":"263","severity":1,"message":"275","line":7,"column":8,"nodeType":"265","messageId":"266","endLine":7,"endColumn":25},{"ruleId":"263","severity":1,"message":"276","line":33,"column":9,"nodeType":"265","messageId":"266","endLine":33,"endColumn":15},{"ruleId":"277","severity":1,"message":"278","line":190,"column":25,"nodeType":"279","endLine":190,"endColumn":140},{"ruleId":"263","severity":1,"message":"264","line":2,"column":22,"nodeType":"265","messageId":"266","endLine":2,"endColumn":26},{"ruleId":"263","severity":1,"message":"280","line":4,"column":8,"nodeType":"265","messageId":"266","endLine":4,"endColumn":12},{"ruleId":"263","severity":1,"message":"281","line":6,"column":28,"nodeType":"265","messageId":"266","endLine":6,"endColumn":37},{"ruleId":"263","severity":1,"message":"282","line":7,"column":28,"nodeType":"265","messageId":"266","endLine":7,"endColumn":38},{"ruleId":"263","severity":1,"message":"283","line":8,"column":28,"nodeType":"265","messageId":"266","endLine":8,"endColumn":38},{"ruleId":"284","severity":1,"message":"285","line":65,"column":8,"nodeType":"279","endLine":65,"endColumn":60},{"ruleId":"286","severity":1,"message":"287","line":85,"column":8,"nodeType":"279","endLine":96,"endColumn":9},{"ruleId":"271","severity":1,"message":"272","line":87,"column":9,"nodeType":"273","endLine":87,"endColumn":24},{"ruleId":"263","severity":1,"message":"264","line":2,"column":22,"nodeType":"265","messageId":"266","endLine":2,"endColumn":26},{"ruleId":"263","severity":1,"message":"288","line":8,"column":28,"nodeType":"265","messageId":"266","endLine":8,"endColumn":39},{"ruleId":"263","severity":1,"message":"289","line":9,"column":28,"nodeType":"265","messageId":"266","endLine":9,"endColumn":38},{"ruleId":"263","severity":1,"message":"290","line":10,"column":28,"nodeType":"265","messageId":"266","endLine":10,"endColumn":37},{"ruleId":"263","severity":1,"message":"291","line":11,"column":28,"nodeType":"265","messageId":"266","endLine":11,"endColumn":37},{"ruleId":"263","severity":1,"message":"292","line":13,"column":28,"nodeType":"265","messageId":"266","endLine":13,"endColumn":39},{"ruleId":"263","severity":1,"message":"293","line":14,"column":28,"nodeType":"265","messageId":"266","endLine":14,"endColumn":44},{"ruleId":"263","severity":1,"message":"294","line":15,"column":10,"nodeType":"265","messageId":"266","endLine":15,"endColumn":23},{"ruleId":"295","severity":1,"message":"296","line":233,"column":75,"nodeType":"297","messageId":"298","endLine":233,"endColumn":77},{"ruleId":"263","severity":1,"message":"299","line":238,"column":9,"nodeType":"265","messageId":"266","endLine":238,"endColumn":18},{"ruleId":"300","severity":1,"message":"301","line":266,"column":84,"nodeType":"302","messageId":"303","endLine":266,"endColumn":86},{"ruleId":"263","severity":1,"message":"304","line":270,"column":11,"nodeType":"265","messageId":"266","endLine":270,"endColumn":21},{"ruleId":"263","severity":1,"message":"305","line":273,"column":11,"nodeType":"265","messageId":"266","endLine":273,"endColumn":24},{"ruleId":"263","severity":1,"message":"264","line":2,"column":22,"nodeType":"265","messageId":"266","endLine":2,"endColumn":26},{"ruleId":"306","severity":1,"message":"307","line":74,"column":35,"nodeType":"308","messageId":"309","endLine":74,"endColumn":46},{"ruleId":"306","severity":1,"message":"307","line":82,"column":41,"nodeType":"308","messageId":"309","endLine":82,"endColumn":52},{"ruleId":"277","severity":1,"message":"278","line":185,"column":19,"nodeType":"279","endLine":187,"endColumn":21},{"ruleId":"263","severity":1,"message":"264","line":2,"column":22,"nodeType":"265","messageId":"266","endLine":2,"endColumn":26},{"ruleId":"263","severity":1,"message":"264","line":2,"column":22,"nodeType":"265","messageId":"266","endLine":2,"endColumn":26},{"ruleId":"263","severity":1,"message":"264","line":2,"column":22,"nodeType":"265","messageId":"266","endLine":2,"endColumn":26},{"ruleId":"263","severity":1,"message":"310","line":9,"column":8,"nodeType":"265","messageId":"266","endLine":9,"endColumn":17},{"ruleId":"300","severity":1,"message":"301","line":61,"column":37,"nodeType":"302","messageId":"303","endLine":61,"endColumn":39},{"ruleId":"300","severity":1,"message":"301","line":82,"column":38,"nodeType":"302","messageId":"303","endLine":82,"endColumn":40},{"ruleId":"263","severity":1,"message":"311","line":121,"column":9,"nodeType":"265","messageId":"266","endLine":121,"endColumn":16},{"ruleId":"312","severity":1,"message":"313","line":3,"column":1,"nodeType":"314","endLine":5,"endColumn":3},{"ruleId":"312","severity":1,"message":"313","line":12,"column":1,"nodeType":"314","endLine":21,"endColumn":3},{"ruleId":"312","severity":1,"message":"313","line":3,"column":1,"nodeType":"314","endLine":18,"endColumn":3},{"ruleId":"271","severity":1,"message":"272","line":12,"column":9,"nodeType":"273","endLine":12,"endColumn":24},{"ruleId":"284","severity":1,"message":"285","line":44,"column":15,"nodeType":"279","endLine":49,"endColumn":16},{"ruleId":"271","severity":1,"message":"272","line":151,"column":11,"nodeType":"273","endLine":151,"endColumn":26},{"ruleId":"271","severity":1,"message":"272","line":160,"column":11,"nodeType":"273","endLine":160,"endColumn":26},{"ruleId":"295","severity":1,"message":"296","line":194,"column":77,"nodeType":"297","messageId":"298","endLine":194,"endColumn":79},{"ruleId":"300","severity":1,"message":"301","line":199,"column":86,"nodeType":"302","messageId":"303","endLine":199,"endColumn":88},{"ruleId":"300","severity":1,"message":"301","line":207,"column":46,"nodeType":"302","messageId":"303","endLine":207,"endColumn":48},{"ruleId":"300","severity":1,"message":"315","line":306,"column":74,"nodeType":"302","messageId":"316","endLine":306,"endColumn":76},{"ruleId":"300","severity":1,"message":"301","line":327,"column":44,"nodeType":"317","messageId":"318","endLine":327,"endColumn":51},{"ruleId":"277","severity":1,"message":"278","line":331,"column":31,"nodeType":"279","endLine":331,"endColumn":93},{"ruleId":"300","severity":1,"message":"301","line":343,"column":49,"nodeType":"317","messageId":"318","endLine":343,"endColumn":56},{"ruleId":"277","severity":1,"message":"278","line":347,"column":31,"nodeType":"279","endLine":347,"endColumn":98},{"ruleId":"263","severity":1,"message":"264","line":2,"column":22,"nodeType":"265","messageId":"266","endLine":2,"endColumn":26},{"ruleId":"319","severity":1,"message":"320","line":63,"column":13,"nodeType":"279","endLine":63,"endColumn":62},{"ruleId":"319","severity":1,"message":"320","line":67,"column":13,"nodeType":"279","endLine":67,"endColumn":62},{"ruleId":"263","severity":1,"message":"280","line":3,"column":8,"nodeType":"265","messageId":"266","endLine":3,"endColumn":12},{"ruleId":"312","severity":1,"message":"321","line":3,"column":1,"nodeType":"314","endLine":85,"endColumn":2},{"ruleId":"312","severity":1,"message":"321","line":3,"column":1,"nodeType":"314","endLine":19,"endColumn":2},{"ruleId":"312","severity":1,"message":"321","line":3,"column":1,"nodeType":"314","endLine":192,"endColumn":2},{"ruleId":"263","severity":1,"message":"264","line":2,"column":22,"nodeType":"265","messageId":"266","endLine":2,"endColumn":26},{"ruleId":"263","severity":1,"message":"269","line":4,"column":8,"nodeType":"265","messageId":"266","endLine":4,"endColumn":12},{"ruleId":"322","severity":1,"message":"323","line":68,"column":23,"nodeType":"273","endLine":68,"endColumn":63},{"ruleId":"263","severity":1,"message":"324","line":85,"column":9,"nodeType":"265","messageId":"266","endLine":85,"endColumn":11},{"ruleId":"277","severity":1,"message":"278","line":90,"column":35,"nodeType":"279","endLine":90,"endColumn":145},{"ruleId":"263","severity":1,"message":"324","line":85,"column":9,"nodeType":"265","messageId":"266","endLine":85,"endColumn":11},{"ruleId":"277","severity":1,"message":"278","line":90,"column":35,"nodeType":"279","endLine":90,"endColumn":145},"no-unused-vars","'Link' is defined but never used.","Identifier","unusedVar","'withRouter' is defined but never used.","'useHistory' is defined but never used.","'Plex' is defined but never used.","'user' is assigned a value but never used.","react/jsx-no-target-blank","Using target=\"_blank\" without rel=\"noreferrer\" is a security risk: see https://html.spec.whatwg.org/multipage/links.html#link-type-noopener","JSXAttribute","'Router' is defined but never used.","'MovieShowOverview' is defined but never used.","'season' is assigned a value but never used.","jsx-a11y/alt-text","img elements must have an alt prop, either with meaningful text, or an empty string for decorative images.","JSXOpeningElement","'User' is defined but never used.","'ResIconHd' is defined but never used.","'ResIconFHd' is defined but never used.","'ResIconUHd' is defined but never used.","jsx-a11y/iframe-has-title","