-
Notifications
You must be signed in to change notification settings - Fork 1
/
.eslintcache
1 lines (1 loc) · 38.3 KB
/
.eslintcache
1
[{"/Users/adamyee/Desktop/charitiesforgood/src/index.js":"1","/Users/adamyee/Desktop/charitiesforgood/src/reportWebVitals.js":"2","/Users/adamyee/Desktop/charitiesforgood/src/App.js":"3","/Users/adamyee/Desktop/charitiesforgood/src/Components/SignUp.js":"4","/Users/adamyee/Desktop/charitiesforgood/src/screens/SetupScreen.js":"5","/Users/adamyee/Desktop/charitiesforgood/src/Components/Profile.js":"6","/Users/adamyee/Desktop/charitiesforgood/src/screens/HomeScreen.js":"7","/Users/adamyee/Desktop/charitiesforgood/src/screens/ConfirmationScreen.js":"8","/Users/adamyee/Desktop/charitiesforgood/src/Components/CharityInfo.js":"9"},{"size":500,"mtime":1607186556996,"results":"10","hashOfConfig":"11"},{"size":362,"mtime":1607186557002,"results":"12","hashOfConfig":"11"},{"size":1796,"mtime":1607285362705,"results":"13","hashOfConfig":"11"},{"size":8281,"mtime":1607282300107,"results":"14","hashOfConfig":"11"},{"size":14867,"mtime":1607287103707,"results":"15","hashOfConfig":"11"},{"size":15055,"mtime":1607287241149,"results":"16","hashOfConfig":"11"},{"size":5728,"mtime":1607274503854,"results":"17","hashOfConfig":"11"},{"size":5016,"mtime":1607287184214,"results":"18","hashOfConfig":"11"},{"size":10284,"mtime":1607282260313,"results":"19","hashOfConfig":"11"},{"filePath":"20","messages":"21","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"22"},"6pnnk",{"filePath":"23","messages":"24","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"22"},{"filePath":"25","messages":"26","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"27","messages":"28","errorCount":0,"warningCount":8,"fixableErrorCount":0,"fixableWarningCount":0,"source":"29","usedDeprecatedRules":"22"},{"filePath":"30","messages":"31","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"32","messages":"33","errorCount":0,"warningCount":7,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"34","messages":"35","errorCount":0,"warningCount":5,"fixableErrorCount":0,"fixableWarningCount":0,"source":"36","usedDeprecatedRules":"22"},{"filePath":"37","messages":"38","errorCount":0,"warningCount":16,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"39","messages":"40","errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"41","usedDeprecatedRules":"22"},"/Users/adamyee/Desktop/charitiesforgood/src/index.js",[],["42","43"],"/Users/adamyee/Desktop/charitiesforgood/src/reportWebVitals.js",[],"/Users/adamyee/Desktop/charitiesforgood/src/App.js",["44","45"],"/Users/adamyee/Desktop/charitiesforgood/src/Components/SignUp.js",["46","47","48","49","50","51","52","53"],"import React from 'react';\nimport Avatar from '@material-ui/core/Avatar';\nimport Button from '@material-ui/core/Button';\nimport CssBaseline from '@material-ui/core/CssBaseline';\nimport TextField from '@material-ui/core/TextField';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport Link from '@material-ui/core/Link';\nimport Grid from '@material-ui/core/Grid';\nimport Box from '@material-ui/core/Box';\nimport LockOutlinedIcon from '@material-ui/icons/LockOutlined';\nimport Typography from '@material-ui/core/Typography';\nimport {makeStyles} from '@material-ui/core/styles'\nimport Container from '@material-ui/core/Container';\nimport { BrowserRouter} from 'react-router-dom';\nimport { withStyles } from '@material-ui/styles';\nimport classes from '../App.css';\nimport firebase from 'firebase/app';\nimport \"firebase/auth\";\n\n// function SignUp(props) {\n// this.state = {\n// count: 0\n// }\n// this.handleSubmit = this.handleSubmit.bind(this);\n// }\n\nclass Copyright extends React.Component {\n render() {\n return (\n <Typography variant=\"body2\" color=\"textSecondary\" align=\"center\">\n {'Copyright © '}\n Charitable\n {' '}\n {new Date().getFullYear()}\n {'.'}\n </Typography>\n );\n }\n}\n\n\n\nclass SignUp extends React.Component {\n \n\n constructor(props) {\n super(props);\n // Don't call this.setState() here!\n this.state = { \n firstName: \"\",\n lastName: \"\",\n email: \"\",\n password: \"\",\n emailError: false,\n passwordError: false,\n firstNameError: false,\n lastNameError: false,\n };\n this.handleSubmit = this.handleSubmit.bind(this);\n this.firstName = this.firstName.bind(this);\n this.lastName = this.lastName.bind(this);\n this.password = this.password.bind(this);\n this.email = this.email.bind(this);\n }\n \n handleSubmit = (e) => {\n if (this.state.firstName === \"\" || this.state.lastName === \"\") {\n this.setState({ firstNameError: true, lastNameError: true, emailError: false, passwordError: false })\n alert(\"Please fill out name\")\n return\n }\n\n const db = firebase.firestore();\n firebase.auth().createUserWithEmailAndPassword(this.state.email, this.state.password)\n .then((user) => {\n console.log(user)\n db.collection(\"users\").doc(user.user.uid).set({\n firstName: this.state.firstName,\n lastName: this.state.lastName,\n email: this.state.email,\n charities: [],\n preferences: [],\n })\n .then(function() {\n console.log(\"Document successfully written!\");\n window.location.href = '/setup'\n })\n .catch(function(error) {\n console.error(\"Error writing document: \", error);\n });\n })\n .catch((error) => {\n var errorCode = error.code;\n var errorMessage = error.message;\n if (errorCode === \"auth/invalid-email\" || errorCode === \"auth/email-already-in-use\") {\n this.setState({ firstNameError: false, lastNameError: false, emailError: true, passwordError: false })\n }\n else if (errorCode === \"auth/weak-password\") {\n this.setState({ firstNameError: false, lastNameError: false, emailError: false, passwordError: true })\n }\n else {\n this.setState({ firstNameError: false, lastNameError: false, emailError: true, passwordError: true })\n }\n alert(errorMessage)\n });\n }\n\n firstName(e) {\n this.setState({firstName: e.target.value});\n }\n\n lastName(e) {\n this.setState({lastName: e.target.value});\n }\n\n password(e){\n this.setState({password: e.target.value});\n }\n\n email(e){\n this.setState({email: e.target.value});\n }\n\n render() {\n // const classes = this.props;\n return (\n <Container component=\"main\" maxWidth=\"xs\">\n <CssBaseline />\n <div style={{marginTop: 80, display: 'flex', flexDirection: 'column', alignItems: 'center'}}>\n <Avatar style={{margin:10}}>\n <img style={{height: 40, width: 40}} src=\"https://www.cardiacscience.co.uk/wp-content/uploads/2019/02/412862.002_Blog-images_13_NHAwarenessMonth_N1.png\"/>\n </Avatar>\n <Typography component=\"h1\" variant=\"h5\">\n Sign up\n </Typography>\n <form noValidate style={{width: \"100%\", marginTop: 30}} >\n <Grid container spacing={2}>\n <Grid item xs={12} sm={6}>\n <TextField\n autoComplete=\"fname\"\n name=\"firstName\"\n variant=\"outlined\"\n required\n fullWidth\n id=\"firstName\"\n label=\"First Name\"\n onChange={this.firstName}\n error={this.state.firstNameError}\n autoFocus\n />\n </Grid>\n <Grid item xs={12} sm={6}>\n <TextField\n variant=\"outlined\"\n required\n fullWidth\n id=\"lastName\"\n label=\"Last Name\"\n name=\"lastName\"\n onChange={this.lastName}\n error={this.state.lastNameError}\n autoComplete=\"lname\"\n />\n </Grid>\n <Grid item xs={12}>\n <TextField\n variant=\"outlined\"\n required\n fullWidth\n id=\"email\"\n label=\"Email Address\"\n name=\"email\"\n onChange={this.email}\n error={this.state.emailError}\n autoComplete=\"email\"\n />\n </Grid>\n <Grid item xs={12}>\n <TextField\n variant=\"outlined\"\n required\n fullWidth\n name=\"password\"\n label=\"Password\"\n type=\"password\"\n id=\"password\"\n onChange={this.password}\n error={this.state.passwordError}\n autoComplete=\"current-password\"\n />\n </Grid>\n <Grid item xs={12}>\n {/* <FormControlLabel\n control={<Checkbox value=\"allowExtraEmails\" color=\"primary\" />}\n label=\"I want to receive inspiration, marketing promotions and updates via email.\"\n /> */}\n </Grid>\n </Grid>\n <Button\n \n fullWidth\n variant=\"contained\"\n color=\"primary\"\n style = {{marginTop: 30, marginBottom: 20}}\n onClick = {this.handleSubmit}\n >\n Sign Up\n </Button>\n <Grid container justify=\"flex-end\">\n <Grid item>\n <Link href=\"/home\" variant=\"body2\">\n Already have an account? Sign in\n </Link>\n </Grid>\n </Grid>\n </form>\n </div>\n <Box mt={5}>\n <Copyright />\n </Box>\n </Container>\n );\n }\n}\n\nexport default SignUp;\n// Object.setPrototypeOf(SignUp.prototype, React.Component.prototype);","/Users/adamyee/Desktop/charitiesforgood/src/screens/SetupScreen.js",["54","55","56","57","58","59","60","61","62","63","64"],"/Users/adamyee/Desktop/charitiesforgood/src/Components/Profile.js",["65","66","67","68","69","70","71"],"/Users/adamyee/Desktop/charitiesforgood/src/screens/HomeScreen.js",["72","73","74","75","76"],"import React from 'react';\nimport Avatar from '@material-ui/core/Avatar';\nimport Button from '@material-ui/core/Button';\nimport CssBaseline from '@material-ui/core/CssBaseline';\nimport TextField from '@material-ui/core/TextField';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport Link from '@material-ui/core/Link';\nimport Paper from '@material-ui/core/Paper';\nimport Box from '@material-ui/core/Box';\nimport Grid from '@material-ui/core/Grid';\nimport LockOutlinedIcon from '@material-ui/icons/LockOutlined';\nimport Typography from '@material-ui/core/Typography';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { BrowserRouter } from 'react-router-dom';\nimport { classes } from \"../App.css\"\nimport firebase from 'firebase/app';\nimport \"firebase/auth\";\n\nclass Copyright extends React.Component {\n render(){\n return (\n <Typography variant=\"body2\" color=\"textSecondary\" align=\"center\">\n {'Copyright © '}\n \n Charitable\n {' '}\n {new Date().getFullYear()}\n {'.'}\n </Typography>\n );\n }\n}\n\n\nclass HomeScreen extends React.Component {\n constructor(props) {\n super(props);\n // Don't call this.setState() here!\n this.state = { \n email: \"\",\n password: \"\",\n emailError: false,\n passwordError: false,\n };\n this.handleSubmit = this.handleSubmit.bind(this);\n this.password = this.password.bind(this);\n this.email = this.email.bind(this);\n }\n \n handleSubmit(e) {\n firebase.auth().signInWithEmailAndPassword(this.state.email, this.state.password)\n .then((user) => {\n this.props.history.push('/profile')\n })\n .catch((error) => {\n var errorCode = error.code;\n var errorMessage = error.message;\n if (errorCode === \"auth/invalid-email\") {\n this.setState({ emailError: true, passwordError: false })\n }\n else if (errorCode === \"auth/wrong-password\") {\n this.setState({ emailError: false, passwordError: true })\n }\n else {\n this.setState({ emailError: true, passwordError: true })\n }\n alert(errorMessage)\n });\n }\n\n password(e){\n this.setState({password: e.target.value});\n }\n\n email(e){\n this.setState({email: e.target.value});\n }\n\n render() {\n return (\n <Grid container component=\"main\" style = {{\"height\": \"100vh\"}}>\n <CssBaseline />\n <Grid item xs={false} sm={4} md={7} style = {{\"backgroundSize\": \"cover\", \"backgroundPosition\": \"center\", \"backgroundImage\": 'url(https://img.jakpost.net/c/2019/01/23/2019_01_23_63773_1548218091._large.jpg)'}}/>\n <Grid item xs={12} sm={8} md={5} component={Paper} elevation={6} square>\n <div style = {{\"display\": \"flex\",\"flexDirection\": \"column\", \"alignItems\":\"center\", \"marginLeft\": 80, \"marginRight\": 40}}>\n <Avatar style = {{\"margin\": 10, \"marginTop\": 100}}>\n <img style={{height: 40, width: 40}} src=\"https://www.cardiacscience.co.uk/wp-content/uploads/2019/02/412862.002_Blog-images_13_NHAwarenessMonth_N1.png\"/>\n </Avatar>\n <Typography component=\"h1\" variant=\"h5\">\n Sign in\n </Typography>\n <form style = {{\"width\": \"100%\", \"marginTop\": 10}} noValidate>\n <TextField\n variant=\"outlined\"\n margin=\"normal\"\n required\n fullWidth\n id=\"email\"\n label=\"Email Address\"\n name=\"email\"\n autoComplete=\"email\"\n onChange = {this.email}\n error = {this.state.emailError}\n autoFocus\n />\n <TextField\n variant=\"outlined\"\n margin=\"normal\"\n required\n fullWidth\n name=\"password\"\n label=\"Password\"\n type=\"password\"\n id=\"password\"\n autoComplete=\"current-password\"\n onChange = {this.password}\n error = {this.state.passwordError}\n />\n <FormControlLabel\n control={<Checkbox value=\"remember\" color=\"primary\" />}\n label=\"Remember me\"\n />\n <Button\n onClick = {this.handleSubmit}\n fullWidth\n variant=\"contained\"\n color=\"primary\"\n style = {{marginTop: 30, marginBottom: 20}}\n >\n Sign In\n </Button>\n <Grid container>\n <Grid item xs>\n <Link href=\"#\" variant=\"body2\">\n Forgot password?\n </Link>\n </Grid>\n <Grid item>\n <Link href=\"/signUp\" variant=\"body2\">\n {\"Don't have an account? Sign Up\"}\n </Link>\n </Grid>\n </Grid>\n <Box mt={5}>\n <Copyright />\n </Box>\n </form>\n </div>\n </Grid>\n </Grid>\n );\n }\n}\n\nexport default HomeScreen;","/Users/adamyee/Desktop/charitiesforgood/src/screens/ConfirmationScreen.js",["77","78","79","80","81","82","83","84","85","86","87","88","89","90","91","92"],"/Users/adamyee/Desktop/charitiesforgood/src/Components/CharityInfo.js",["93","94","95"],"import React from 'react';\nimport AppBar from '@material-ui/core/AppBar';\nimport Button from '@material-ui/core/Button';\nimport CameraIcon from '@material-ui/icons/Favorite';\nimport Card from '@material-ui/core/Card';\nimport CardActions from '@material-ui/core/CardActions';\nimport CardContent from '@material-ui/core/CardContent';\nimport CardHeader from '@material-ui/core/CardHeader';\nimport CssBaseline from '@material-ui/core/CssBaseline';\nimport Grid from '@material-ui/core/Grid';\nimport StarIcon from '@material-ui/icons/StarBorder';\nimport Toolbar from '@material-ui/core/Toolbar';\nimport Typography from '@material-ui/core/Typography';\nimport Link from '@material-ui/core/Link';\nimport { makeStyles } from '@material-ui/core/styles';\nimport Container from '@material-ui/core/Container';\nimport Box from '@material-ui/core/Box';\nimport firebase from 'firebase';\nimport 'firebase/firestore';\n\nfunction Copyright() {\n return (\n <Typography variant=\"body2\" color=\"textSecondary\" align=\"center\">\n {'Copyright © '}\n <Link color=\"inherit\" href=\"https://material-ui.com/\">\n Charitable\n </Link>{' '}\n {new Date().getFullYear()}\n {'.'}\n </Typography>\n );\n}\n\n<<<<<<< HEAD\nconst tiers = [\n {\n title: 'Expenses',\n // price: '0',\n description: [\n 'Program: [program_exp]', \n // 'Administration: ' + this.state.admin_exp_p.toString(),\n 'Fundraising: [fund_exp]'],\n buttonText: 'Finances',\n buttonVariant: 'outlined',\n },\n {\n title: 'The Essentials',\n // subheader: 'about us',\n // price: '15',\n description: [\n 'Size: [size]',\n 'Total revenue: [tot_rev]',\n 'Headquarters: [state]',\n 'Motto: [motto]',\n ],\n buttonText: 'Website',\n buttonVariant: 'contained',\n },\n {\n title: 'Details',\n // price: '30',\n description: [\n 'Fundraising efficiency: [fund_eff]',\n 'Leader compensation: [leader_comp]',\n 'EIN: [ein]',\n ],\n buttonText: 'Donate',\n buttonVariant: 'outlined',\n },\n];\n=======\n>>>>>>> master\nconst footers = [\n {\n title: 'Company',\n description: ['Team', 'History', 'Contact us', 'Locations'],\n },\n {\n title: 'Features',\n description: ['Cool stuff', 'Random feature', 'Team feature', 'Developer stuff', 'Another one'],\n },\n {\n title: 'Resources',\n description: ['Resource', 'Resource name', 'Another resource', 'Final resource'],\n },\n {\n title: 'Legal',\n description: ['Privacy policy', 'Terms of use'],\n },\n];\n\nconst useStyles = makeStyles((theme) => ({\n '@global': {\n ul: {\n margin: 0,\n padding: 0,\n listStyle: 'none',\n },\n },\n appBar: {\n borderBottom: `1px solid ${theme.palette.divider}`,\n },\n toolbar: {\n flexWrap: 'wrap',\n },\n toolbarTitle: {\n flexGrow: 1,\n },\n link: {\n margin: theme.spacing(1, 1.5),\n },\n heroContent: {\n padding: theme.spacing(8, 0, 6),\n },\n cardHeader: {\n backgroundColor:\n theme.palette.type === 'light' ? theme.palette.grey[200] : theme.palette.grey[700],\n },\n cardPricing: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'baseline',\n marginBottom: theme.spacing(2),\n },\n footer: {\n borderTop: `1px solid ${theme.palette.divider}`,\n marginTop: theme.spacing(8),\n paddingTop: theme.spacing(3),\n paddingBottom: theme.spacing(3),\n [theme.breakpoints.up('sm')]: {\n paddingTop: theme.spacing(6),\n paddingBottom: theme.spacing(6),\n },\n },\n}));\n\n// const classes = useStyles();\n\nclass CharityInfo extends React.Component {\n\n constructor(props) {\n super(props);\n // Don't call this.setState() here!\n var url = window.location.href;\n var parts = url.split(\"/\");\n var id = parts[parts.length - 1];\n\n this.state = { \n tiers: [],\n footers: [],\n charity: {\n admin_exp_p: 0,\n category: \"\",\n description: \"\",\n ein: \"\",\n fund_eff: 0,\n fund_exp_p: 0,\n leader_comp: 0,\n motto: \"\",\n name: \"\",\n program_exp_p: 0,\n size: \"\",\n state: \"\",\n subcategory: \"\",\n tot_rev: \"\",\n },\n id: id,\n };\n this.state.tiers = [\n {\n title: 'Expenses',\n // price: '0',\n description: ['Financial score: ' + this.state.charity.fscore, 'Program: ' + this.state.charity.program_exp_p, 'Administration: ' + this.state.charity.admin_exp_p, 'Fundraising: ' + this.state.charity.fund_exp_p],\n buttonText: 'Finances',\n buttonVariant: 'outlined',\n },\n {\n title: 'The Essentials',\n // subheader: 'about us',\n // price: '15',\n description: [\n 'Size: ' + this.state.charity.size,\n 'Total revenue: ' + this.state.charity.tot_rev,\n 'Headquarters: ' + this.state.charity.state,\n 'Motto: ' + this.state.charity.motto,\n ],\n buttonText: 'Website',\n buttonVariant: 'contained',\n },\n {\n title: 'Details',\n // price: '30',\n description: [\n 'Fundraising efficiency: ' + this.state.charity.fund_eff,\n 'Leader compensation: ' + this.state.charity.leader_comp,\n 'EIN: ' + this.state.charity.ein,\n ],\n buttonText: 'Donate',\n buttonVariant: 'outlined',\n },\n ]\n\n }\n\n componentDidMount(){\n const db = firebase.firestore();\n db.collection(\"charities\").doc(this.state.id).get().then(doc => {\n if (doc.exists) {\n let data = doc.data()\n this.setState({charity: data}, function() {\n this.setState({ tiers: [\n {\n title: 'Expenses',\n // price: '0',\n description: ['Financial score: ' + this.state.charity.fscore, 'Program: ' + this.state.charity.program_exp_p, 'Administration: ' + this.state.charity.admin_exp_p, 'Fundraising: ' + this.state.charity.fund_exp_p],\n buttonText: 'Finances',\n buttonVariant: 'outlined',\n },\n {\n title: 'The Essentials',\n // subheader: 'about us',\n // price: '15',\n description: [\n 'Size: ' + this.state.charity.size,\n 'Total revenue: $' + this.state.charity.tot_rev,\n 'Headquarters: ' + this.state.charity.state,\n 'Motto: ' + this.state.charity.motto,\n ],\n buttonText: 'Website',\n buttonVariant: 'contained',\n },\n {\n title: 'Details',\n // price: '30',\n description: [\n 'Fundraising efficiency: ' + this.state.charity.fund_eff,\n 'Leader compensation: $' + this.state.charity.leader_comp,\n 'EIN: ' + this.state.charity.ein,\n ],\n buttonText: 'Donate',\n buttonVariant: 'outlined',\n },\n ]})\n })\n }\n else {\n console.log(\"doesnt exist\")\n }\n }).catch(function(err) {\n console.log(err)\n })\n }\n\n render(){\n return (\n <React.Fragment>\n <CssBaseline />\n <AppBar position=\"static\" color=\"default\" elevation={0}>\n <Toolbar style={{flexWrap: 'wrap'}}>\n <CameraIcon style={{marginRight: 20}}/>\n <Typography variant=\"h6\" color=\"inherit\" noWrap style={{flexGrow: 1}}>\n Charitable\n </Typography>\n <nav>\n <Link variant=\"button\" color=\"textPrimary\" href=\"#\" style={{marginTop: 10, marginBottom: 10, marginLeft: 15, marginRight: 15}}>\n Return to My Profile\n </Link>\n {/* <Link variant=\"button\" color=\"textPrimary\" href=\"#\" className={classes.link}>\n Enterprise\n </Link> */}\n {/* <Link variant=\"button\" color=\"textPrimary\" href=\"#\" className={classes.link}>\n Support\n </Link> */}\n </nav>\n <Button href=\"#\" color=\"primary\" variant=\"outlined\" style={{marginTop: 10, marginBottom: 10, marginLeft: 15, marginRight: 15}}>\n Logout\n </Button>\n </Toolbar>\n </AppBar>\n {/* Hero unit */}\n <Container maxWidth=\"lg\" component=\"main\" style={{paddingTop: 80, paddingBottom: 60}}>\n <Typography component=\"h1\" variant=\"h2\" align=\"center\" color=\"textPrimary\" gutterBottom>\n {this.state.charity.name}\n </Typography>\n <Typography variant=\"h5\" align=\"center\" color=\"textSecondary\" component=\"p\">\n <i>{this.state.charity.category}</i>\n </Typography> <br />\n <Typography variant=\"h6\" align=\"center\" color=\"textSecondary\" component=\"p\">\n {this.state.charity.description}\n </Typography>\n </Container>\n {/* End hero unit */}\n <Container maxWidth=\"md\" component=\"main\">\n <Grid container spacing={5} alignItems=\"flex-end\">\n {this.state.tiers.map((tier) => (\n // Enterprise card is full width at sm breakpoint\n <Grid item key={tier.title} xs={12} sm={tier.title === 'Enterprise' ? 12 : 6} md={4}>\n <Card>\n <CardHeader\n title={tier.title}\n subheader={tier.subheader}\n titleTypographyProps={{ align: 'center' }}\n subheaderTypographyProps={{ align: 'center' }}\n action={tier.title === 'Pro' ? <StarIcon /> : null}\n />\n <CardContent>\n <div style={{display: 'flex', justifyContent: 'center', alignItems: 'baseline', marginBottom: 20}}>\n <Typography component=\"h2\" variant=\"h3\" color=\"textPrimary\">\n {tier.price}\n </Typography>\n {/* <Typography variant=\"h6\" color=\"textSecondary\">\n /mo\n </Typography> */}\n </div>\n <ul>\n {tier.description.map((line) => (\n <Typography component=\"li\" variant=\"subtitle1\" align=\"center\" key={line}>\n {line}\n </Typography>\n ))}\n </ul>\n </CardContent>\n <CardActions>\n <Button fullWidth variant={tier.buttonVariant} color=\"primary\">\n {tier.buttonText}\n </Button>\n </CardActions>\n </Card>\n </Grid>\n ))}\n </Grid>\n </Container>\n {/* Footer */}\n <footer style={{padding: 60}}>\n <Typography variant=\"h6\" align=\"center\" gutterBottom>\n </Typography>\n <Typography variant=\"subtitle1\" align=\"center\" color=\"textSecondary\" component=\"p\">\n Heart to Heart; Giving made easy\n </Typography>\n <Copyright />\n </footer>\n {/* End footer */}\n </React.Fragment>\n );\n }\n}\n\nexport default CharityInfo;",{"ruleId":"96","replacedBy":"97"},{"ruleId":"98","replacedBy":"99"},{"ruleId":"100","severity":1,"message":"101","line":3,"column":50,"nodeType":"102","messageId":"103","endLine":3,"endColumn":58},{"ruleId":"100","severity":1,"message":"104","line":3,"column":60,"nodeType":"102","messageId":"103","endLine":3,"endColumn":64},{"ruleId":"100","severity":1,"message":"105","line":6,"column":8,"nodeType":"102","messageId":"103","endLine":6,"endColumn":24},{"ruleId":"100","severity":1,"message":"106","line":7,"column":8,"nodeType":"102","messageId":"103","endLine":7,"endColumn":16},{"ruleId":"100","severity":1,"message":"107","line":11,"column":8,"nodeType":"102","messageId":"103","endLine":11,"endColumn":24},{"ruleId":"100","severity":1,"message":"108","line":13,"column":9,"nodeType":"102","messageId":"103","endLine":13,"endColumn":19},{"ruleId":"100","severity":1,"message":"109","line":15,"column":10,"nodeType":"102","messageId":"103","endLine":15,"endColumn":23},{"ruleId":"100","severity":1,"message":"110","line":16,"column":10,"nodeType":"102","messageId":"103","endLine":16,"endColumn":20},{"ruleId":"100","severity":1,"message":"111","line":17,"column":8,"nodeType":"102","messageId":"103","endLine":17,"endColumn":15},{"ruleId":"112","severity":1,"message":"113","line":132,"column":17,"nodeType":"114","endLine":132,"endColumn":171},{"ruleId":"100","severity":1,"message":"108","line":2,"column":10,"nodeType":"102","messageId":"103","endLine":2,"endColumn":20},{"ruleId":"100","severity":1,"message":"115","line":6,"column":8,"nodeType":"102","messageId":"103","endLine":6,"endColumn":21},{"ruleId":"100","severity":1,"message":"116","line":8,"column":8,"nodeType":"102","messageId":"103","endLine":8,"endColumn":16},{"ruleId":"100","severity":1,"message":"117","line":9,"column":8,"nodeType":"102","messageId":"103","endLine":9,"endColumn":12},{"ruleId":"100","severity":1,"message":"118","line":12,"column":8,"nodeType":"102","messageId":"103","endLine":12,"endColumn":12},{"ruleId":"100","severity":1,"message":"119","line":17,"column":8,"nodeType":"102","messageId":"103","endLine":17,"endColumn":17},{"ruleId":"100","severity":1,"message":"107","line":22,"column":8,"nodeType":"102","messageId":"103","endLine":22,"endColumn":24},{"ruleId":"100","severity":1,"message":"104","line":23,"column":8,"nodeType":"102","messageId":"103","endLine":23,"endColumn":12},{"ruleId":"120","severity":1,"message":"121","line":153,"column":50,"nodeType":"122","messageId":"123","endLine":153,"endColumn":52},{"ruleId":"124","severity":1,"message":"125","line":190,"column":21,"nodeType":"102","messageId":"126","endLine":190,"endColumn":27},{"ruleId":"124","severity":1,"message":"125","line":201,"column":21,"nodeType":"102","messageId":"126","endLine":201,"endColumn":27},{"ruleId":"100","severity":1,"message":"127","line":1,"column":17,"nodeType":"102","messageId":"103","endLine":1,"endColumn":26},{"ruleId":"100","severity":1,"message":"128","line":35,"column":7,"nodeType":"102","messageId":"103","endLine":35,"endColumn":16},{"ruleId":"100","severity":1,"message":"129","line":73,"column":7,"nodeType":"102","messageId":"103","endLine":73,"endColumn":10},{"ruleId":"100","severity":1,"message":"130","line":107,"column":13,"nodeType":"102","messageId":"103","endLine":107,"endColumn":22},{"ruleId":"100","severity":1,"message":"131","line":108,"column":13,"nodeType":"102","messageId":"103","endLine":108,"endColumn":20},{"ruleId":"120","severity":1,"message":"121","line":142,"column":32,"nodeType":"122","messageId":"123","endLine":142,"endColumn":34},{"ruleId":"100","severity":1,"message":"132","line":150,"column":25,"nodeType":"102","messageId":"103","endLine":150,"endColumn":32},{"ruleId":"100","severity":1,"message":"107","line":12,"column":8,"nodeType":"102","messageId":"103","endLine":12,"endColumn":24},{"ruleId":"100","severity":1,"message":"108","line":14,"column":10,"nodeType":"102","messageId":"103","endLine":14,"endColumn":20},{"ruleId":"100","severity":1,"message":"109","line":15,"column":10,"nodeType":"102","messageId":"103","endLine":15,"endColumn":23},{"ruleId":"100","severity":1,"message":"111","line":16,"column":10,"nodeType":"102","messageId":"103","endLine":16,"endColumn":17},{"ruleId":"112","severity":1,"message":"113","line":88,"column":21,"nodeType":"114","endLine":88,"endColumn":175},{"ruleId":"100","severity":1,"message":"133","line":1,"column":17,"nodeType":"102","messageId":"103","endLine":1,"endColumn":25},{"ruleId":"100","severity":1,"message":"134","line":3,"column":8,"nodeType":"102","messageId":"103","endLine":3,"endColumn":14},{"ruleId":"100","severity":1,"message":"135","line":4,"column":16,"nodeType":"102","messageId":"103","endLine":4,"endColumn":20},{"ruleId":"100","severity":1,"message":"136","line":6,"column":8,"nodeType":"102","messageId":"103","endLine":6,"endColumn":17},{"ruleId":"100","severity":1,"message":"137","line":9,"column":8,"nodeType":"102","messageId":"103","endLine":9,"endColumn":21},{"ruleId":"100","severity":1,"message":"138","line":10,"column":8,"nodeType":"102","messageId":"103","endLine":10,"endColumn":17},{"ruleId":"100","severity":1,"message":"139","line":11,"column":8,"nodeType":"102","messageId":"103","endLine":11,"endColumn":18},{"ruleId":"100","severity":1,"message":"140","line":23,"column":3,"nodeType":"102","messageId":"103","endLine":23,"endColumn":14},{"ruleId":"100","severity":1,"message":"141","line":24,"column":3,"nodeType":"102","messageId":"103","endLine":24,"endColumn":17},{"ruleId":"100","severity":1,"message":"119","line":25,"column":3,"nodeType":"102","messageId":"103","endLine":25,"endColumn":12},{"ruleId":"100","severity":1,"message":"142","line":26,"column":3,"nodeType":"102","messageId":"103","endLine":26,"endColumn":10},{"ruleId":"100","severity":1,"message":"143","line":30,"column":8,"nodeType":"102","messageId":"103","endLine":30,"endColumn":16},{"ruleId":"100","severity":1,"message":"144","line":31,"column":10,"nodeType":"102","messageId":"103","endLine":31,"endColumn":20},{"ruleId":"145","severity":1,"message":"146","line":142,"column":74,"nodeType":"147","endLine":142,"endColumn":89},{"ruleId":"148","severity":1,"message":"149","line":144,"column":34,"nodeType":"150","messageId":"151","endLine":144,"endColumn":35,"suggestions":"152"},{"ruleId":"148","severity":1,"message":"149","line":151,"column":51,"nodeType":"150","messageId":"151","endLine":151,"endColumn":52,"suggestions":"153"},{"ruleId":"100","severity":1,"message":"154","line":17,"column":8,"nodeType":"102","messageId":"103","endLine":17,"endColumn":11},{"ruleId":"100","severity":1,"message":"155","line":34,"column":7,"nodeType":"102","messageId":"103","endLine":34,"endColumn":14},{"ruleId":"100","severity":1,"message":"128","line":53,"column":7,"nodeType":"102","messageId":"103","endLine":53,"endColumn":16},"no-native-reassign",["156"],"no-negated-in-lhs",["157"],"no-unused-vars","'Redirect' is defined but never used.","Identifier","unusedVar","'Link' is defined but never used.","'FormControlLabel' is defined but never used.","'Checkbox' is defined but never used.","'LockOutlinedIcon' is defined but never used.","'makeStyles' is defined but never used.","'BrowserRouter' is defined but never used.","'withStyles' is defined but never used.","'classes' is defined 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","'ListSubheader' is defined but never used.","'InfoIcon' is defined but never used.","'arts' is defined but never used.","'Form' is defined but never used.","'TextField' is defined but never used.","eqeqeq","Expected '===' and instead saw '=='.","BinaryExpression","unexpected","no-redeclare","'query2' is already defined.","redeclared","'useEffect' is defined but never used.","'useStyles' is assigned a value but never used.","'num' is assigned a value but never used.","'charities' is assigned a value but never used.","'display' is assigned a value but never used.","'counter' is assigned a value but never used.","'useState' is defined but never used.","'moment' is defined but never used.","'uuid' is defined but never used.","'PropTypes' is defined but never used.","'LaptopMacIcon' is defined but never used.","'PhoneIcon' is defined but never used.","'TabletIcon' is defined but never used.","'TableFooter' is defined but never used.","'TableSortLabel' is defined but never used.","'Tooltip' is defined but never used.","'firebase' is defined but never used.","'typography' is defined 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","no-useless-escape","Unnecessary escape character: \\$.","TemplateElement","unnecessaryEscape",["158","159"],["160","161"],"'Box' is defined but never used.","'footers' is assigned a value but never used.","no-global-assign","no-unsafe-negation",{"messageId":"162","fix":"163","desc":"164"},{"messageId":"165","fix":"166","desc":"167"},{"messageId":"162","fix":"168","desc":"164"},{"messageId":"165","fix":"169","desc":"167"},"removeEscape",{"range":"170","text":"171"},"Remove the `\\`. This maintains the current functionality.","escapeBackslash",{"range":"172","text":"173"},"Replace the `\\` with `\\\\` to include the actual backslash character.",{"range":"174","text":"171"},{"range":"175","text":"173"},[4246,4247],"",[4246,4246],"\\",[4569,4570],[4569,4569]]