<commit_before>import React, {Component, PropTypes} from 'react'
import Immutable from 'immutable'
import {RouteHandler} from 'react-router'
import DocumentTitle from 'react-document-title'
import {DragDropContext} from 'react-dnd'
import HTML5Backend from 'react-dnd/modules/backends/HTML5'

import studentStore from '../flux/student-store'
import Loading from '../components/loading'

import db from '../lib/db'

class GobbldygookApp extends Component {
	static displayName = 'GobbldygookApp'
	static propTypes = {
		passedRequirements: PropTypes.bool.isRequired,
		routerState: PropTypes.object.isRequired,
	}

	constructor() {
		super()
		this.state = {
			students: Immutable.Map(),
			studentsInitialized: false,
			allAreas: Immutable.List(),
		}

		this.onAreasChanged()
	}

	componentDidMount() {
		studentStore.emitter.on('change', this.onStudentsChanged)
		studentStore.emitter.on('area-refresh', this.onAreasRefreshed)
		studentStore.emitter.emit('change')
	}

	componentWillUnmount() {
		studentStore.emitter.off('change', this.onStudentsChanged)
		studentStore.emitter.off('area-refresh', this.onAreasRefreshed)
	}

	onStudentsChanged = () => {
		this.setState({
			students: studentStore.students,
			studentsInitialized: true,
		})
	}

	onAreasRefreshed = () => {
		db.stores.areas.all().then(areas => this.setState({
			allAreas: Immutable.List(areas),
		}))
	}

	render() {
		if (!this.state.studentsInitialized) {
			return <Loading>Loading Students…</Loading>
		}

		return (
			<DocumentTitle title='Gobbldygook'>
				<RouteHandler
					allAreas={this.state.allAreas}
					students={this.state.students}
					routerState={this.props.routerState} />
			</DocumentTitle>
		)
	}
}

export default DragDropContext(HTML5Backend)(GobbldygookApp)
<commit_msg>remove displayName from <Gobbldygook/><commit_after>import React, {Component, PropTypes} from 'react'
import Immutable from 'immutable'
import {RouteHandler} from 'react-router'
import DocumentTitle from 'react-document-title'
import {DragDropContext} from 'react-dnd'
import HTML5Backend from 'react-dnd/modules/backends/HTML5'

import studentStore from '../flux/student-store'
import Loading from '../components/loading'

import db from '../lib/db'

class GobbldygookApp extends Component {
	static propTypes = {
		passedRequirements: PropTypes.bool.isRequired,
		routerState: PropTypes.object.isRequired,
	}

	constructor() {
		super()
		this.state = {
			students: Immutable.Map(),
			studentsInitialized: false,
			allAreas: Immutable.List(),
		}

		this.onAreasChanged()
	}

	componentDidMount() {
		studentStore.emitter.on('change', this.onStudentsChanged)
		studentStore.emitter.on('area-refresh', this.onAreasRefreshed)
		studentStore.emitter.emit('change')
	}

	componentWillUnmount() {
		studentStore.emitter.off('change', this.onStudentsChanged)
		studentStore.emitter.off('area-refresh', this.onAreasRefreshed)
	}

	onStudentsChanged = () => {
		this.setState({
			students: studentStore.students,
			studentsInitialized: true,
		})
	}

	onAreasRefreshed = () => {
		db.stores.areas.all().then(areas => this.setState({
			allAreas: Immutable.List(areas),
		}))
	}

	render() {
		if (!this.state.studentsInitialized) {
			return <Loading>Loading Students…</Loading>
		}

		return (
			<DocumentTitle title='Gobbldygook'>
				<RouteHandler
					allAreas={this.state.allAreas}
					students={this.state.students}
					routerState={this.props.routerState} />
			</DocumentTitle>
		)
	}
}

export default DragDropContext(HTML5Backend)(GobbldygookApp)

{'fraction_non_alphanumeric': 0.13137032842582105, 'fraction_numerical': 0.0016987542468856172, 'mean_word_length': 4.698387096774193, 'pattern_counts': {'":': 0, '<': 14, '<?xml version=': 0, '>': 20, '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': '4482064', 'n_tokens_mistral': 1281, 'n_tokens_neox': 1160, 'n_words': 200}