OLD | NEW |
| (Empty) |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | |
2 // for details. All rights reserved. Use of this source code is governed by a | |
3 // BSD-style license that can be found in the LICENSE file. | |
4 | |
5 /// Transformer that removes any sourcemap comments from javascript files. | |
6 library code_transformers.src.remove_sourcemap_comment; | |
7 | |
8 import 'package:barback/barback.dart'; | |
9 | |
10 /// Transformer that removes any sourcemap comments from javascript files. | |
11 /// Comments should be on their own line in the form: //# sourceMappingURL=*.map | |
12 class RemoveSourcemapComment extends Transformer { | |
13 BarbackSettings settings; | |
14 | |
15 RemoveSourcemapComment.asPlugin(this.settings); | |
16 | |
17 /// Only apply to files in release mode. | |
18 isPrimary(_) => settings.mode == BarbackMode.RELEASE; | |
19 | |
20 apply(Transform transform) { | |
21 var id = transform.primaryInput.id; | |
22 return transform.readInputAsString(id).then((file) { | |
23 if (file.contains(_SOURCE_MAP_COMMENT)) { | |
24 transform.addOutput( | |
25 new Asset.fromString(id, file.replaceAll(_SOURCE_MAP_COMMENT, ''))); | |
26 } | |
27 }); | |
28 } | |
29 } | |
30 | |
31 final RegExp _SOURCE_MAP_COMMENT = new RegExp(r'\n\s*\/\/# sourceMappingURL.*'); | |
OLD | NEW |