<commit_before>import React, { PropTypes } from 'react';
import purebem from 'purebem';


const block = purebem.of('textbox');

const Textbox = React.createClass({

    propTypes: {
        name: PropTypes.string,
        onChange: PropTypes.func,
        stretched: PropTypes.bool,
        type: PropTypes.oneOf([
            'text', 'password'
        ]),
        value: PropTypes.string
    },

    getDefaultProps() {
        return {
            stretched: false,
            type: 'text'
        };
    },

    handleChange(evt) {
        this.props.onChange(evt.target.value);
    },

    render() {
        const { stretched } = this.props;

        return (
            <input
                className={ block({ stretched }) }
                name={ this.props.name }
                type={ this.props.type }
                value={ this.props.value }
                onChange={ this.handleChange } />
        );
    }
<commit_msg>add placeholder to textbox component<commit_after>import React, { PropTypes } from 'react';
import purebem from 'purebem';


const block = purebem.of('textbox');

const Textbox = React.createClass({

    propTypes: {
        name: PropTypes.string,
        onChange: PropTypes.func,
        placeholder: PropTypes.string,
        stretched: PropTypes.bool,
        type: PropTypes.oneOf([
            'text', 'password'
        ]),
        value: PropTypes.string
    },

    getDefaultProps() {
        return {
            placeholder: '',
            stretched: false,
            type: 'text'
        };
    },

    handleChange(evt) {
        this.props.onChange(evt.target.value);
    },

    render() {
        const { stretched } = this.props;

        return (
            <input
                className={ block({ stretched }) }
                name={ this.props.name }
                onChange={ this.handleChange }
                placeholder={ this.props.placeholder }
                type={ this.props.type }
                value={ this.props.value } />
        );
    }

{'fraction_non_alphanumeric': 0.1203155818540434, 'fraction_numerical': 0.0, 'mean_word_length': 1.6046213093709885, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, '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': '7538145', 'n_tokens_mistral': 556, 'n_tokens_neox': 553, 'n_words': 115}