/**
 * LangForm component
 *
 * Generated by coz on 8/15/2016,
 * from a template provided by apeman-asset-templates.
 *
 * @function LangForm
 */
'use strict'

import React from 'react'
import defineDebug from 'debug'
import {
  ApForm,
  ApList, ApListItem
} from 'apeman-react-basic'
import loc from 'ore-fol-loc'
import { IconClasses } from 'ore-fol-enums'
import { asLocaled, combine } from '../../wrappers'

const { CHECK_ICON } = IconClasses
const debug = defineDebug('project:fragment:lang-form')

/** @lends LangForm */
const LangForm = ({
  l,
  values,
  onSubmit,
  id
}) => (
  <ApForm id={ id }
          className='lang-form'>
    <ApList>
      {
        Object.keys(loc).map((lang) => (
          <ApListItem key={ lang }
                      title={ l(`langs.${String(lang).toUpperCase()}`)}
                      icon={ values.lang === lang ? CHECK_ICON : null }
                      onTap={ () => onSubmit({ lang })}
          />
        ))
      }
    </ApList>
  </ApForm>
)

export default combine(
  asLocaled.proxy()
)(LangForm)
