/**
 * List footer component.
 * @class ApListFooter
 */

'use strict'

import React, {PropTypes as types} from 'react'
import classnames from 'classnames'
import {ApSpinner} from 'apeman-react-spinner'

/** @lends ApListFooter */
const ApListFooter = React.createClass({

  // --------------------
  // Specs
  // --------------------

  propTypes: {
    /** Show spinner */
    spinning: types.bool,
    /** Spinner theme */
    spinner: types.string
  },

  mixins: [],

  statics: {},

  getInitialState () {
    return {}
  },

  getDefaultProps () {
    return {
      spinning: false,
      spinner: ApSpinner.DEFAULT_THEME
    }
  },

  render () {
    const s = this
    let { state, props } = s

    return (
      <div className={ classnames('ap-list-footer', props.className) }
           style={ Object.assign({}, props.style) }>
        <ApSpinner enabled={ props.spinning }
                   className="ap-list-footer-spinner"
        />
        { props.children }
      </div>
    )
  }

  // --------------------
  // Lifecycle
  // --------------------

  // ------------------
  // Custom
  // ------------------

  // ------------------
  // Private
  // ------------------
})

export default ApListFooter
