   'React: render(component, container, [callback])':
     'prefix': 'rrc'
     'body': """
-    React.render(${1:<$2 />}, ${3:document.body}${4:, ${5:callback}})
+    React.render(${1:<$2 />}, ${3:document.body}${4:, ${5:callback}});
     """
 
 ########################

    });
    """

  # Gulp
  'Gulp Task':
    'prefix': 'task'
    'body': """
    gulp.task('${1}', [${2}], function () {
      ${3}
    });
    """

  # React
  'React: componentDidMount: fn() { ... }':
    'prefix' : 'cdm'
    'body' : """
    componentDidMount : function () {
      ${1}
    }
    """

  'React: componentDidUpdate: fn(pp, ps) { ... }':
    'prefix': 'cdup'
    'body': """
    componentDidUpdate : function (prevProps, prevState) {
      ${1}
    }
    """

  'React: componentWillMount: fn() { ... }':
    'prefix': 'cwm'
    'body': """
    componentWillMount : function () {
      ${1}
    }
    """

  'React: componentWillReceiveProps: fn(np) { ... }':
    'prefix': 'cwr'
    'body': """
    componentWillReceiveProps : function (nextProps) {
      ${1}
    }
    """

  'React: componentWillUnmount: fn() { ... }':
    'prefix': 'cwun'
    'body': """
    componentWillUnmount : function() {
      ${1}
    }
    """

  'React: componentWillUpdate: fn(np, ns) { ... }':
    'prefix': 'cwu'
    'body': """
    componentWillUpdate : function (nextProps, nextState) {
      ${1}
    }
    """

  'React: cx({ ... })':
    'prefix': 'cx'
    'body': """
    cx({
      $1 : $2
    });
    """

  'React: forceUpdate(...)':
    'prefix': 'fup'
    'body': """
    forceUpdate(${1:callback});
    """

  'React: getDefaultProps: fn() { return {...} } ':
    'prefix': 'gdp'
    'body': """
    getDefaultProps : function () {
      return {${1};
    }
    """

  'React: getInitialState: fn() { return {...} } ':
    'prefix': 'gis'
    'body': """
    getInitialState : function() {
      return {
        ${1} : ${2}
      };
    }
    """

  'React: isMounted()':
    'prefix': 'ism'
    'body': """
    isMounted()
    """

  'React: propTypes { ... }':
    'prefix': 'pt'
    'body': """
    propTypes: {
      ${1} : React.PropTypes.${2:string}
    }
    """

  'React: render: fn() { return ... }':
    'prefix': 'ren'
    'body': """
    render : function () {
      return (
        ${1:<div />}
      );
    }
    """

  'React: setState({ ... })':
    'prefix': 'sst'
    'body': """
    this.setState({
      ${1} : ${2}
    });
    """

  'React: shouldComponentUpdate (np, ns) { ... }':
    'prefix': 'scu'
    'body': """
    shouldComponentUpdate (nextProps, nextState) {
      ${1}
    }
    """
