title: update map of map in dart to firestore
body: <p>User can save his name and photo. Users can skip to upload a profile photo. So, I already store users' data inside my DB. So, I didn't want to set null into <code>photo.url</code>. How do I create a map for this?</p>
  <pre><code>Future&lt;void&gt; updateUser({String name, String uid, String url}) {
  
          Map&lt;String, dynamic&gt; _map = &lt;String, dynamic&gt;{
            'info': {
              'name': name
            },
          };
      
          if (url != null) {
            // if user upload profile photo I want to add url to inside `info.photo`
  
            // got an error when try like this
            // _map['info']['photo'] = {'url': url};
      
           // this way is replace info, it's mean 'name' key is removed
           //  _map['info'] = {
           //    'photo': {'url': url}
           //  };
          }
      
          return _db.collection('users').doc(uid).set(_map, SetOptions(merge: true));
  </code></pre>
  <p>The final map should be like this,</p>
  <pre><code>{
  'info':{
     'name':name,
     'photo':{ // if url is not null
       'url':url
     }
  }
  </code></pre>
  <p>}</p>