diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8411c74..af62d94 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+## 0.10.8
+
+* Preserve source-map extensions in `SingleMapping`. Extensions are keys in the
+  json map that start with `"x_"`.
+
 ## 0.10.7
 
 * Set max SDK version to `<3.0.0`, and adjust other dependencies.
diff --git a/lib/parser.dart b/lib/parser.dart
index a500b13..7fe4565 100644
--- a/lib/parser.dart
+++ b/lib/parser.dart
@@ -278,8 +278,11 @@
 
   final Uri _mapUrl;
 
+  final Map<String, dynamic> extensions;
+
   SingleMapping._(this.targetUrl, this.files, this.urls, this.names, this.lines)
-      : _mapUrl = null;
+      : _mapUrl = null,
+        extensions = {};
 
   factory SingleMapping.fromEntries(Iterable<builder.Entry> entries,
       [String fileUrl]) {
@@ -341,7 +344,8 @@
         files = new List(map['sources'].length),
         sourceRoot = map['sourceRoot'],
         lines = <TargetLineEntry>[],
-        _mapUrl = mapUrl is String ? Uri.parse(mapUrl) : mapUrl {
+        _mapUrl = mapUrl is String ? Uri.parse(mapUrl) : mapUrl,
+        extensions = {} {
     var sourcesContent = map['sourcesContent'] == null
         ? const []
         : new List<String>.from(map['sourcesContent']);
@@ -414,6 +418,10 @@
     if (!entries.isEmpty) {
       lines.add(new TargetLineEntry(line, entries));
     }
+
+    map.forEach((name, value) {
+      if (name.startsWith("x_")) extensions[name] = value;
+    });
   }
 
   /// Encodes the Mapping mappings as a json map.
@@ -471,6 +479,7 @@
     if (includeSourceContents) {
       result['sourcesContent'] = files.map((file) => file?.getText(0)).toList();
     }
+    extensions.forEach((name, value) => result[name] = value);
 
     return result;
   }
diff --git a/pubspec.yaml b/pubspec.yaml
index 0f4980e..49ab53d 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,5 +1,5 @@
 name: source_maps
-version: 0.10.7
+version: 0.10.8
 
 description: Library to programmatically manipulate source map files.
 author: Dart Team <misc@dartlang.org>
