<commit_before>import React from 'react';
import Logo from '../components/Logo';
import WelcomeMessage from '../components/WelcomeMessage';
import LetterBox from '../components/LetterBox';
import Letters from '../utils/Letters';

/**
 * App Component containing all other elements.
 */
class App extends React.Component {
  constructor() {
    super();
    this.state = {
      count: 0,
    };
  }

  render() {
    var user = "Guest";
    var letters = Letters.Generate();
    return (
      <div>
        <Logo/>
        <WelcomeMessage username={user}/>
        <LetterBox letters={letters}/>
      </div>
    );
  }
}
export default App;<commit_msg>Added state to persist Letters chosen.<commit_after>import React from 'react';
import Logo from '../components/Logo';
import WelcomeMessage from '../components/WelcomeMessage';
import LetterBox from '../components/LetterBox';
import Letters from '../utils/Letters';

/**
 * App Component containing all other elements.
 */
class App extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      count: 0,
      round: {
        letters: Letters.Generate(),
        stage: 'guess',
      }
    };
  }

  componentDidMount() {
    this.timerID = setInterval(
      () => this.roundTick(),
      5000
    );
  }

  componentWillUnmount() {
    clearInterval(this.timerID);
  }

  roundTick() {
    // TODO: Change to Voting stage.
    this.setState({
      round: {
        letters: Letters.Generate(),
        stage: 'guess',
      }
    });
  }

  render() {
    var user = "Guest";
    return (
      <div>
        <Logo/>
        <WelcomeMessage username={user}/>
        <LetterBox letters={this.state.round.letters}/>
      </div>
    );
  }
}
export default App;
{'fraction_non_alphanumeric': 0.144, 'fraction_numerical': 0.0034285714285714284, 'mean_word_length': 2.4400785854616895, 'pattern_counts': {'":': 0, '<': 13, '<?xml version=': 0, '>': 14, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1838322', 'n_tokens_mistral': 533, 'n_tokens_neox': 503, 'n_words': 131}