diff --git a/src/lib/style-transformer.html b/src/lib/style-transformer.html index a8832f7a..419c38d6 100644 --- a/src/lib/style-transformer.html +++ b/src/lib/style-transformer.html @@ -159,7 +159,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN var stop = false; var hostContext = false; var self = this; - selector = selector.replace(/^(::content)/, ':host $1'); + selector = selector.replace(CONTENT_START, HOST + ' $1'); selector = selector.replace(SIMPLE_SELECTOR_SEP, function(m, c, s) { if (!stop) { var info = self._transformCompoundSelector(s, c, scope, hostScope); @@ -255,7 +255,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN // NOTE: this supports 1 nested () pair for things like // :host(:not([selected]), more general support requires // parsing which seems like overkill - var HOST_PAREN = /(\:host)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))/g; + var HOST_PAREN = /(:host)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))/g; var HOST_CONTEXT = ':host-context'; var HOST_CONTEXT_PAREN = /(.*)(?::host-context)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))(.*)/; var CONTENT = '::content'; @@ -265,6 +265,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN var CSS_ATTR_SUFFIX = ']'; var PSEUDO_PREFIX = ':'; var CLASS = 'class'; + var CONTENT_START = new RegExp('^(' + CONTENT + ')'); // exports return api;