The below object is action.data has a nested object address
action.data
address
{ name: \'Ben\', address: { country: \'Australia\',
No, shallow copy of Unchanged properties.Changed properties will be anyway new values, so no question of type of copy. In code we achieve it like this return {...prevState}
return {...prevState}