Chromium Code Reviews| OLD | NEW |
|---|---|
| 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.build.common; | 6 library polymer.src.build.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 20 matching lines...) Expand all Loading... | |
| 31 logger.warning(e.message, span: e.span); | 31 logger.warning(e.message, span: e.span); |
| 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 List<String> entryPoints; | 39 List<String> entryPoints; |
| 40 | 40 |
| 41 TransformOptions([entryPoints]) | 41 /** |
| 42 * True to enable Content Security Policy. | |
| 43 * This means the HTML page will include *.dart.precompiled.js | |
| 44 * | |
| 45 * This flag has no effect unless [directlyIncludeJS] is enabled. | |
| 46 */ | |
| 47 bool contentSecurityPolicy; | |
| 48 | |
| 49 /** | |
| 50 * True to include the compiled JavaScript directly from the HTML page. | |
| 51 * If enabled this will remove "packages/browser/dart.js" and replace | |
| 52 * `type="application/dart"` scripts with equivalent *.dart.js files. | |
| 53 * | |
| 54 * If [contentSecurityPolicy] enabled, this will reference files | |
| 55 * named *.dart.precompiled.js. | |
| 56 */ | |
| 57 bool directlyIncludeJS; | |
|
Siggi Cherem (dart-lang)
2013/10/21 21:07:42
should we make any (or all) of these fields final?
Jennifer Messerly
2013/10/21 21:42:56
can't. it is set from elsewhere.
| |
| 58 | |
| 59 TransformOptions({entryPoints, this.contentSecurityPolicy: false, | |
| 60 this.directlyIncludeJS: true}) | |
| 42 : entryPoints = entryPoints == null ? null | 61 : entryPoints = entryPoints == null ? null |
| 43 : entryPoints.map(_systemToAssetPath).toList(); | 62 : entryPoints.map(_systemToAssetPath).toList(); |
| 44 | 63 |
| 45 /** Whether an asset with [id] is an entry point HTML file. */ | 64 /** Whether an asset with [id] is an entry point HTML file. */ |
| 46 bool isHtmlEntryPoint(AssetId id) { | 65 bool isHtmlEntryPoint(AssetId id) { |
| 47 if (id.extension != '.html') return false; | 66 if (id.extension != '.html') return false; |
| 48 | 67 |
| 49 // Note: [id.path] is a relative path from the root of a package. | 68 // Note: [id.path] is a relative path from the root of a package. |
| 50 if (entryPoints == null) { | 69 if (entryPoints == null) { |
| 51 return id.path.startsWith('web/') || id.path.startsWith('test/'); | 70 return id.path.startsWith('web/') || id.path.startsWith('test/'); |
| (...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 153 return builder.relative(builder.join('/', id.path), | 172 return builder.relative(builder.join('/', id.path), |
| 154 from: builder.join('/', builder.dirname(sourceId.path))); | 173 from: builder.join('/', builder.dirname(sourceId.path))); |
| 155 } | 174 } |
| 156 | 175 |
| 157 | 176 |
| 158 /** Convert system paths to asset paths (asset paths are posix style). */ | 177 /** Convert system paths to asset paths (asset paths are posix style). */ |
| 159 String _systemToAssetPath(String assetPath) { | 178 String _systemToAssetPath(String assetPath) { |
| 160 if (path.Style.platform != path.Style.windows) return assetPath; | 179 if (path.Style.platform != path.Style.windows) return assetPath; |
| 161 return path.posix.joinAll(path.split(assetPath)); | 180 return path.posix.joinAll(path.split(assetPath)); |
| 162 } | 181 } |
| OLD | NEW |