Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(72)

Unified Diff: pkg/polymer/lib/src/transform/script_compactor.dart

Issue 23452010: Add a polymer validator: a linter/analysis that will replace the old (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/polymer/lib/src/transform/script_compactor.dart
diff --git a/pkg/polymer/lib/src/transform/script_compactor.dart b/pkg/polymer/lib/src/transform/script_compactor.dart
index 335f818e1b106bbcb18c5cc669bd46e2c6f2ff46..39a31477d1a944b79e94a56512a4d5f009db2a41 100644
--- a/pkg/polymer/lib/src/transform/script_compactor.dart
+++ b/pkg/polymer/lib/src/transform/script_compactor.dart
@@ -29,14 +29,13 @@ import 'common.dart';
*/
class ScriptCompactor extends Transformer {
/** Only run on entry point .html files. */
- Future<bool> isPrimary(Asset input) => isPrimaryHtml(input.id);
+ Future<bool> isPrimary(Asset input) =>
+ new Future.value(isPrimaryHtml(input.id));
Future apply(Transform transform) {
var id = transform.primaryInput.id;
var logger = transform.logger;
- return transform.primaryInput.readAsString().then((content) {
- var document = parseHtml(content, id.path, logger,
- checkDocType: false);
+ return readPrimaryAsHtml(transform).then((document) {
var libraries = [];
bool changed = false;
var dartLoaderTag = null;
@@ -69,7 +68,7 @@ class ScriptCompactor extends Transformer {
}
if (!changed) {
- transform.addOutput(new Asset.fromString(id, content));
+ transform.addOutput(transform.primaryInput);
return;
}
@@ -88,7 +87,8 @@ class ScriptCompactor extends Transformer {
document.body.insertBefore(bootstrapScript, dartLoaderTag);
}
- var urls = libraries.map((id) => importUrlFor(id, bootstrapId, logger))
+ var urls = libraries.map((id) => assetUrlFor(id, bootstrapId, logger,
+ allowAssetUrl: false))
.where((url) => url != null).toList();
var buffer = new StringBuffer()..write(_header);
for (int i = 0; i < urls.length; i++) {
@@ -102,27 +102,6 @@ class ScriptCompactor extends Transformer {
transform.addOutput(new Asset.fromString(id, document.outerHtml));
});
}
-
- /**
- * Generate the import url for a file described by [id], referenced by a file
- * with [sourceId].
- */
- String importUrlFor(AssetId id, AssetId sourceId, TransformLogger logger) {
- // use package: urls if possible
- if (id.path.startsWith('lib/')) {
- return 'package:${id.package}/${id.path.substring(4)}';
- }
-
- // Use relative urls only if it's possible.
- if (id.package != sourceId.package) {
- logger.error("don't know how to import $id from $sourceId");
- return null;
- }
-
- var builder = path.url;
- return builder.relative(builder.join('/', id.path),
- from: builder.join('/', builder.dirname(sourceId.path)));
- }
}
const _header = """

Powered by Google App Engine
This is Rietveld 408576698