bublejs / buble

https://buble.surge.sh
MIT License
869 stars 67 forks source link

Forget to add a closing parenthesis in nested spread operators with a key variable #212

Closed Ayc0 closed 4 years ago

Ayc0 commented 5 years ago
Software version
buble 0.19.8

Input:

setState(previousState => ({
    ...previousState,
    field: {
        ...previousState.field,
      [field]: true
    }
}))

Output:

setState(function (previousState) {
    var obj;

    return (Object.assign({}, previousState,
    {field: Object.assign({}, previousState.field,
      ( obj = {}, obj[field] = true, obj )}));
})

Desired output:

setState(function (previousState) {
    var obj;

    return (Object.assign({}, previousState,
    {field: Object.assign({}, previousState.field,
      ( obj = {}, obj[field] = true, obj ))}));
//                                        ^
})
mourner commented 5 years ago

Related: #163