title: spread operator not working in javascript object notation
body: <p>I am learning to use es6 in one of my react project and apply new spread operator <strong><code>...</code></strong>  this is working fine when using array <code>[]</code> ( as spread operator) syntax but failed when using inside object  <code>{}</code> ( as rest properties) i.e. not assigning value just modifying.</p>
  <p>Are these both are two completely different things?  here are my system detail</p>
  <ul>
  <li>node v 6.11.4</li>
  <li>babel-core v 6.26.0</li>
  <li>macOS Sierra v 10.12.6</li>
  <li>Sublime Text 3 build 3143</li>
  </ul>
  <hr />
  <pre><code>/*eslint no-unused-vars:0 */
  
  let alpha = ['a','b','c', {first: 'first'}];
  let beta = ['be', 'ta', { first: 'second'}];
  
  let more = {text:'more', date: new Date()};
  
  const gamma = [...alpha, more]; // this is working fine 
  
  console.log(gamma, alpha);
  
  let todos = [{id: 1, completed: false}, {id:2, completed: true}];
  
  const noCurlyFatArrow = () =&gt; {
                              return todos.map(todo =&gt;
                                  (todo.id === action.index)
                                  ? {...todo, completed: !todo.completed }
                                  : todo
                              )
                      };
  noCurlyFatArrow();
  </code></pre>
  <hr />
  <p>and run the JS Build System in the sublime text (<code>⌘ + B</code>) and it gives following error in the console</p>
  <pre><code>  /opt/rqt/src/react-only/spread.js:1
  
    ? {...todo, completed: !todo.completed }  
  
       ^^^ 
  
    SyntaxError: Unexpected token ...
  </code></pre>
  <p>Also made few changes in <em>.babelrc</em> filr from this <a href="https://github.com/babel/babel-loader/issues/170" rel="nofollow noreferrer">issue dicussion</a> but no luck.</p>
  <h3>.babelrc</h3>
  <pre><code>{
      &quot;presets&quot;: [&quot;es2015&quot;, &quot;stage-3&quot;, &quot;react&quot;], //
      &quot;plugins&quot;: [&quot;transform-es2015-destructuring&quot;, &quot;transform-object-rest-spread&quot;]
  }
  </code></pre>
  <p>tried without &quot;stage&quot; and with <code>&quot;stage-0&quot;</code> as well.</p>
  <h3><strong>package.json</strong></h3>
  <pre><code>{
    &quot;name&quot;: &quot;rqt&quot;,
    &quot;version&quot;: &quot;0.1.0&quot;,
    &quot;private&quot;: true,
    &quot;dependencies&quot;: {
      &quot;jquery&quot;: &quot;^3.2.1&quot;,
      &quot;react&quot;: &quot;^16.0.0&quot;,
      &quot;react-dom&quot;: &quot;^16.0.0&quot;,
      &quot;react-redux&quot;: &quot;^5.0.6&quot;,
      &quot;react-scripts&quot;: &quot;1.0.14&quot;,
      &quot;redux&quot;: &quot;^3.7.2&quot;
    },
    &quot;scripts&quot;: {
      &quot;start&quot;: &quot;react-scripts start&quot;,
      &quot;build&quot;: &quot;react-scripts build&quot;,
      &quot;test&quot;: &quot;react-scripts test --env=jsdom&quot;,
      &quot;eject&quot;: &quot;react-scripts eject&quot;
    },
    &quot;devDependencies&quot;: {
      &quot;babel-eslint&quot;: &quot;^7.2.3&quot;,
      &quot;babel-plugin-transform-es2015-destructuring&quot;: &quot;^6.23.0&quot;,
      &quot;babel-plugin-transform-object-rest-spread&quot;: &quot;^6.26.0&quot;,
      &quot;eslint&quot;: &quot;^4.10.0&quot;,
      &quot;eslint-config-airbnb&quot;: &quot;^16.0.0&quot;,
      &quot;eslint-config-react-app&quot;: &quot;^2.0.1&quot;,
      &quot;eslint-plugin-flowtype&quot;: &quot;^2.39.1&quot;,
      &quot;eslint-plugin-html&quot;: &quot;^4.0.0-alpha.1&quot;,
      &quot;eslint-plugin-import&quot;: &quot;^2.8.0&quot;,
      &quot;eslint-plugin-jsx-a11y&quot;: &quot;^5.1.1&quot;,
      &quot;eslint-plugin-react&quot;: &quot;^7.4.0&quot;
    }
  }
  </code></pre>