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

Side by Side Diff: pkg/polymer/lib/src/transform/common.dart

Issue 24126002: Latest attempt to polymer-build scripts in fix windows (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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 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. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 /** Common methods used by transfomers. */ 5 /** Common methods used by transfomers. */
6 library polymer.src.transform.common; 6 library polymer.src.transform.common;
7 7
8 import 'dart:async'; 8 import 'dart:async';
9 9
10 import 'package:barback/barback.dart'; 10 import 'package:barback/barback.dart';
(...skipping 21 matching lines...) Expand all
32 } 32 }
33 } 33 }
34 return document; 34 return document;
35 } 35 }
36 36
37 /** Additional options used by polymer transformers */ 37 /** Additional options used by polymer transformers */
38 class TransformOptions { 38 class TransformOptions {
39 String currentPackage; 39 String currentPackage;
40 List<String> entryPoints; 40 List<String> entryPoints;
41 41
42 TransformOptions([this.currentPackage, this.entryPoints]); 42 TransformOptions([this.currentPackage, entryPoints])
43 : entryPoints = entryPoints == null ? null
44 : entryPoints.map(_systemToAssetPath).toList();
43 45
44 /** Whether an asset with [id] is an entry point HTML file. */ 46 /** Whether an asset with [id] is an entry point HTML file. */
45 bool isHtmlEntryPoint(AssetId id) { 47 bool isHtmlEntryPoint(AssetId id) {
46 if (id.extension != '.html') return false; 48 if (id.extension != '.html') return false;
47 49
48 // Note: [id.path] is a relative path from the root of a package. 50 // Note: [id.path] is a relative path from the root of a package.
49 if (!id.path.startsWith('web/') && 51 if (currentPackage == null || entryPoints == null) {
Siggi Cherem (dart-lang) 2013/09/12 22:11:29 this change is not needed, but I think it's better
50 !id.path.startsWith('test/')) return false; 52 return id.path.startsWith('web/') || id.path.startsWith('test/');
53 }
51 54
52 if (currentPackage == null || entryPoints == null) return true;
53 return id.package == currentPackage && entryPoints.contains(id.path); 55 return id.package == currentPackage && entryPoints.contains(id.path);
54 } 56 }
55 } 57 }
56 58
57 /** Mixin for polymer transformers. */ 59 /** Mixin for polymer transformers. */
58 abstract class PolymerTransformer { 60 abstract class PolymerTransformer {
59 TransformOptions get options; 61 TransformOptions get options;
60 62
61 Future<Document> readPrimaryAsHtml(Transform transform) { 63 Future<Document> readPrimaryAsHtml(Transform transform) {
62 var asset = transform.primaryInput; 64 var asset = transform.primaryInput;
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
141 // Use relative urls only if it's possible. 143 // Use relative urls only if it's possible.
142 if (id.package != sourceId.package) { 144 if (id.package != sourceId.package) {
143 logger.error("don't know how to refer to $id from $sourceId"); 145 logger.error("don't know how to refer to $id from $sourceId");
144 return null; 146 return null;
145 } 147 }
146 148
147 var builder = path.url; 149 var builder = path.url;
148 return builder.relative(builder.join('/', id.path), 150 return builder.relative(builder.join('/', id.path),
149 from: builder.join('/', builder.dirname(sourceId.path))); 151 from: builder.join('/', builder.dirname(sourceId.path)));
150 } 152 }
153
154
155 /** Convert system paths to asset paths (asset paths are posix style). */
156 String _systemToAssetPath(String assetPath) {
157 if (path.Style.platform != path.Style.windows) return assetPath;
158 return path.posix.joinAll(path.split(assetPath));
159 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698