<commit_before>import React from 'react';
import classNames from 'classnames';
import Icon from './../icon';
import NumberComponent from './../number';
import Dropdown from './../dropdown';
import Immutable from 'immutable';

/**
 * A Pager widget.
 *
 * == How to use a Pager in a component:
 *
 * In your file
 *
 *   import Pager from 'carbon/lib/components/pager';
 *
 * To render a Pager:
 *
 *   <Pager currentPage='1' numberOfRows='100' handlePageChange={ function(){} } />
 *
 * @class Pager
 */
class Pager extends React.Component {

  static propTypes = {
    currentPage: React.PropTypes.string.isRequired,
    numberOfRows: React.PropTypes.string.isRequired,
    handlePagerChange: React.PropTypes.func.isRequired,

    pageSize: React.PropTypes.string,
    showPageSizeSelection: React.PropTypes.bool,
    pageSizeSelectionOptions: React.PropTypes.object,
  }

  static defaultProps = {<commit_msg>pager propTypes comments<commit_after>import React from 'react';
import classNames from 'classnames';
import Icon from './../icon';
import NumberComponent from './../number';
import Dropdown from './../dropdown';
import Immutable from 'immutable';

/**
 * A Pager widget.
 *
 * == How to use a Pager in a component:
 *
 * In your file
 *
 *   import Pager from 'carbon/lib/components/pager';
 *
 * To render a Pager:
 *
 *   <Pager currentPage='1' numberOfRows='100' handlePageChange={ function(){} } />
 *
 * @class Pager
 */
class Pager extends React.Component {

  static propTypes = {

    /**
     * Current visible page
     *
     * @property currentPage
     * @type {String}
     */
    currentPage: React.PropTypes.string.isRequired,

    /**
     * Total number of rows 
     *
     * @property numberOfRows 
     * @type {String}
     */
    numberOfRows: React.PropTypes.string.isRequired,

    /**
     * Function called when any pager changes take place
     * PageSize, Current Page
     *
     * @property handlePagerChange
     * @type {Function}
     */
    handlePagerChange: React.PropTypes.func.isRequired,

    /**
     * Pagination page size 
     *
     * @property pageSize 
     * @type {String}
     */
    pageSize: React.PropTypes.string,

    /**
     * Should the page size selection dropdown be shown
     *
     * @property showPageSizeSelection 
     * @type {Boolean}
     */
    showPageSizeSelection: React.PropTypes.bool,

    /**
     * Set of page size options 
     *
     * @property pageSizeSelectionOptions 
     * @type {Object}
     */
    pageSizeSelectionOptions: React.PropTypes.object,
  }

  static defaultProps = {
{'fraction_non_alphanumeric': 0.12102404965089217, 'fraction_numerical': 0.0031031807602792862, 'mean_word_length': 2.8320950965824667, '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': '1980826', 'n_tokens_mistral': 783, 'n_tokens_neox': 758, 'n_words': 206}