import React from "react"; import { faTwitter } from "@fortawesome/free-brands-svg-icons"; import { faShuffle } from "@fortawesome/free-solid-svg-icons"; import { faQuoteLeft } from "@fortawesome/free-solid-svg-icons"; import { faQuoteRight } from "@fortawesome/free-solid-svg-icons"; import { faCode } from "@fortawesome/free-solid-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import "./App.scss"; import { quotesAndAuthors } from "./quotes"; class App extends React.Component { constructor() { super(); this.state = { quotesAndAuthors: quotesAndAuthors, randomIndex: Math.floor(Math.random() * quotesAndAuthors.length), randomColorClass: `color-${Math.floor(Math.random() * 5) + 1}`, }; this.state.randomQuote = this.state.quotesAndAuthors[this.state.randomIndex].quote; this.state.randomAuthor = this.state.quotesAndAuthors[this.state.randomIndex].author; this.handleNewQuote = this.handleNewQuote.bind(this); this.state.randomBackgroundColorClass = `bg-${this.state.randomColorClass}`; } handleNewQuote() { this.setState((state) => ({ randomIndex: Math.floor(Math.random() * state.quotesAndAuthors.length), randomColorClass: `color-${Math.floor(Math.random() * 10) + 1}`, })); this.setState((state) => ({ randomQuote: state.quotesAndAuthors[state.randomIndex].quote, randomAuthor: state.quotesAndAuthors[state.randomIndex].author, randomBackgroundColorClass: `bg-${state.randomColorClass}`, })); } render() { return (