text: /**
   * Copyright 2013-present, Facebook, Inc.
   * All rights reserved.
   *
   * This source code is licensed under the BSD-style license found in the
   * LICENSE file in the root directory of this source tree. An additional grant
   * of patent rights can be found in the PATENTS file in the same directory.
   *
   * @providesModule isTextInputElement
   * @flow
   */
  
  'use strict';
  
  /**
   * @see http://www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#input-type-attr-summary
   */
  var supportedInputTypes: {[key: string]: true | void} = {
    'color': true,
    'date': true,
    'datetime': true,
    'datetime-local': true,
    'email': true,
    'month': true,
    'number': true,
    'password': true,
    'range': true,
    'search': true,
    'tel': true,
    'text': true,
    'time': true,
    'url': true,
    'week': true,
  };
  
  function isTextInputElement(elem: ?HTMLElement): boolean {
    var nodeName = elem && elem.nodeName && elem.nodeName.toLowerCase();
  
    if (nodeName === 'input') {
      return !!supportedInputTypes[((elem: any): HTMLInputElement).type];
    }
  
    if (nodeName === 'textarea') {
      return true;
    }
  
    return false;
  }
  
  module.exports = isTextInputElement;
  