Do not add trailing whitespace to new map keys (#16)

diff --git a/lib/src/map_mutations.dart b/lib/src/map_mutations.dart
index 5e40db7..9906a65 100644
--- a/lib/src/map_mutations.dart
+++ b/lib/src/map_mutations.dart
@@ -57,14 +57,7 @@
   final keyString = yamlEncodeFlowString(wrapAsYamlNode(key));
   final lineEnding = getLineEnding(yaml);
 
-  var valueString = yamlEncodeBlockString(newValue, newIndentation, lineEnding);
-  if (isCollection(newValue) &&
-      !isFlowYamlCollectionNode(newValue) &&
-      !isEmpty(newValue)) {
-    valueString = '$lineEnding$valueString';
-  }
-
-  var formattedValue = ' ' * getMapIndentation(yaml, map) + '$keyString: ';
+  var formattedValue = ' ' * getMapIndentation(yaml, map);
   var offset = map.span.end.offset;
 
   final insertionIndex = getMapInsertionIndex(map, keyString);
@@ -90,7 +83,14 @@
     }
   }
 
-  formattedValue += valueString + lineEnding;
+  var valueString = yamlEncodeBlockString(newValue, newIndentation, lineEnding);
+  if (isCollection(newValue) &&
+      !isFlowYamlCollectionNode(newValue) &&
+      !isEmpty(newValue)) {
+    formattedValue += '$keyString:' + lineEnding + valueString + lineEnding;
+  } else {
+    formattedValue += '$keyString: ' + valueString + lineEnding;
+  }
 
   return SourceEdit(offset, 0, formattedValue);
 }
diff --git a/test/update_test.dart b/test/update_test.dart
index 9b4928b..3e392e0 100644
--- a/test/update_test.dart
+++ b/test/update_test.dart
@@ -767,7 +767,7 @@
         expect(doc.toString(), equals('''
 a:
   aa: 1
-  bb: 
+  bb:
     aaa:
       dddd: c
     bbb:
@@ -806,7 +806,7 @@
         expect(doc.toString(), equals('''
 a:
   aa: 1
-  bb: 
+  bb:
     - 0
     - - 1
       - 2