From b29a155eddcddf1ca379fb9526f5baba45d8b4fa Mon Sep 17 00:00:00 2001 From: Mario See Date: Fri, 7 Dec 2018 14:54:00 -0500 Subject: [PATCH] Fix lint (#1282) --- app/javascript/chat/githubRepo.jsx | 210 ++++++++++++++++++----------- 1 file changed, 130 insertions(+), 80 deletions(-) diff --git a/app/javascript/chat/githubRepo.jsx b/app/javascript/chat/githubRepo.jsx index f956223cc..d25a0d871 100644 --- a/app/javascript/chat/githubRepo.jsx +++ b/app/javascript/chat/githubRepo.jsx @@ -1,10 +1,9 @@ import { h, Component } from 'preact'; import PropTypes from 'prop-types'; -import { getJSONContents } from './actions'; import marked from 'marked'; +import { getJSONContents } from './actions'; export default class GithubRepo extends Component { - constructor(props) { super(props); this.state = { @@ -14,115 +13,166 @@ export default class GithubRepo extends Component { readme: null, content: null, token: props.githubToken, - path: null - } + path: null, + }; } - componentDidMount(){ + componentDidMount() { if (this.state.token) { - getJSONContents(`https://api.github.com/repos/${this.props.resource.args}/contents?access_token=`+this.state.token, - this.loadContent, - this.loadFailure) - getJSONContents(`https://api.github.com/repos/${this.props.resource.args}/readme?access_token=`+this.state.token, - this.loadContent, - this.loadFailure) + getJSONContents( + `https://api.github.com/repos/${ + this.props.resource.args + }/contents?access_token=${ this.state.token}`, + this.loadContent, + this.loadFailure, + ); + getJSONContents( + `https://api.github.com/repos/${ + this.props.resource.args + }/readme?access_token=${ this.state.token}`, + this.loadContent, + this.loadFailure, + ); } - this.setState({path: this.props.resource.args}) + this.setState({ path: this.props.resource.args }); } handleItemClick = e => { e.preventDefault(); - getJSONContents(`${e.target.dataset.apiUrl}&access_token=`+this.state.token, - this.loadContent, - this.loadFailure) + getJSONContents( + `${e.target.dataset.apiUrl}&access_token=${ this.state.token}`, + this.loadContent, + this.loadFailure, + ); this.setState({ root: false, - path: e.target.dataset.path - }) - } + path: e.target.dataset.path, + }); + }; loadContent = response => { - let files = []; - let directories = []; - console.log(response) + const files = []; + const directories = []; if (response.message === 'Not Found') { - this.setState({path: 'Repo not found (misspelled or private?)'}) + this.setState({ path: 'Repo not found (misspelled or private?)' }); } else if (Array.isArray(response)) { - response.forEach( item => { + response.forEach(item => { if (item.type === 'file') { - files.push(item) + files.push(item); } else { - directories.push(item) + directories.push(item); } - }) - this.setState({files: files, - directories: directories, - response: response}) - } else if (response.path === "README.md") { + }); this.setState({ - readme: window.atob(response.content) - }) + files, + directories, + response, + }); + } else if (response.path === 'README.md') { + this.setState({ + readme: window.atob(response.content), + }); } else if (response.content) { this.setState({ content: window.atob(response.content), - response: response - }) + response, + }); } - } + }; loadFailure = response => { - this.setState({path: response.message}) - } + this.setState({ path: response.message }); + }; render() { if (!this.state.token || this.state.token.length === 0) { - return
-
Authentication required
-

- You must authenticate with GitHub to use this feature. -

-
- } else if (this.state.content) { - return
-
{this.state.path}
-
-                  {this.state.content}
-                
-
- } else { - const directories = this.state.directories.map( item => { - return
- 📁 {item.name} + return ( +
+
+ Authentication required
- }); - const files = this.state.files.map( item => { - return
- {item.name} +

+ You must + {' '} + + authenticate with GitHub + + {' '} + to use this feature. +

+
+ ); + } if (this.state.content) { + return ( +
+
+ {this.state.path}
- }); - let readme = '' +
{this.state.content}
+
+ ); + } + const directories = this.state.directories.map(item => ( +
+ + 📁 + {' '} + {item.name} + +
+ )); + const files = this.state.files.map(item => ( +
+ + {item.name} + +
+ )); + let readme = ''; if (this.state.readme) { - readme =
+ readme = ( +
+ ); } if (this.state.root) { - return
-
{this.state.path}
-
- {directories} - {files} -
- {readme} -
- } else { - return
-
{this.state.path}
- - } - } + ); + } + return ( +
+
+ {this.state.path} +
+
+ {directories} + {files} +
+
+ ); + + } - -} \ No newline at end of file +}