| Index: packages/web_components/lib/webcomponents.js
|
| diff --git a/packages/web_components/lib/webcomponents.js b/packages/web_components/lib/webcomponents.js
|
| old mode 100644
|
| new mode 100755
|
| index 8e9feb24c2ae1323c05ac9b2175988e786bdff94..d30e911294c4fb917c883b56f7700c79449033d9
|
| --- a/packages/web_components/lib/webcomponents.js
|
| +++ b/packages/web_components/lib/webcomponents.js
|
| @@ -7,7 +7,7 @@
|
| * Code distributed by Google as part of the polymer project is also
|
| * subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
|
| */
|
| -// @version 0.7.21
|
| +// @version 0.7.23
|
| (function() {
|
| window.WebComponents = window.WebComponents || {
|
| flags: {}
|
| @@ -211,6 +211,9 @@ if (WebComponents.flags.shadow) {
|
| }
|
| function getDescriptor(source, name) {
|
| try {
|
| + if (source === window && name === "showModalDialog") {
|
| + return dummyDescriptor;
|
| + }
|
| return Object.getOwnPropertyDescriptor(source, name);
|
| } catch (ex) {
|
| return dummyDescriptor;
|
| @@ -4656,7 +4659,7 @@ if (WebComponents.flags.shadow) {
|
| if (cssRules) {
|
| Array.prototype.forEach.call(cssRules, function(rule) {
|
| if (rule.selectorText && (rule.style && rule.style.cssText !== undefined)) {
|
| - cssText += this.scopeSelector(rule.selectorText, scopeSelector, this.strictStyling) + " {\n ";
|
| + cssText += this.scopeSelector(rule.selectorText, scopeSelector, this.strictStyling) + " {\n\t";
|
| cssText += this.propertiesFromRule(rule) + "\n}\n\n";
|
| } else if (rule.type === CSSRule.MEDIA_RULE) {
|
| cssText += "@media " + rule.media.mediaText + " {\n";
|
| @@ -4775,7 +4778,7 @@ if (WebComponents.flags.shadow) {
|
| }
|
| };
|
| var selectorRe = /([^{]*)({[\s\S]*?})/gim, cssCommentRe = /\/\*[^*]*\*+([^\/*][^*]*\*+)*\//gim, cssCommentNextSelectorRe = /\/\*\s*@polyfill ([^*]*\*+([^\/*][^*]*\*+)*\/)([^{]*?){/gim, cssContentNextSelectorRe = /polyfill-next-selector[^}]*content\:[\s]*?['"](.*?)['"][;\s]*}([^{]*?){/gim, cssCommentRuleRe = /\/\*\s@polyfill-rule([^*]*\*+([^\/*][^*]*\*+)*)\//gim, cssContentRuleRe = /(polyfill-rule)[^}]*(content\:[\s]*['"](.*?)['"])[;\s]*[^}]*}/gim, cssCommentUnscopedRuleRe = /\/\*\s@polyfill-unscoped-rule([^*]*\*+([^\/*][^*]*\*+)*)\//gim, cssContentUnscopedRuleRe = /(polyfill-unscoped-rule)[^}]*(content\:[\s]*['"](.*?)['"])[;\s]*[^}]*}/gim, cssPseudoRe = /::(x-[^\s{,(]*)/gim, cssPartRe = /::part\(([^)]*)\)/gim, polyfillHost = "-shadowcsshost", polyfillHostContext = "-shadowcsscontext", parenSuffix = ")(?:\\((" + "(?:\\([^)(]*\\)|[^)(]*)+?" + ")\\))?([^,{]*)";
|
| - var cssColonHostRe = new RegExp("(" + polyfillHost + parenSuffix, "gim"), cssColonHostContextRe = new RegExp("(" + polyfillHostContext + parenSuffix, "gim"), selectorReSuffix = "([>\\s~+[.,{:][\\s\\S]*)?$", colonHostRe = /\:host/gim, colonHostContextRe = /\:host-context/gim, polyfillHostNoCombinator = polyfillHost + "-no-combinator", polyfillHostRe = new RegExp(polyfillHost, "gim"), polyfillHostContextRe = new RegExp(polyfillHostContext, "gim"), shadowDOMSelectorsRe = [ />>>/g, /::shadow/g, /::content/g, /\/deep\//g, /\/shadow\//g, /\/shadow-deep\//g, /\^\^/g, /\^/g ];
|
| + var cssColonHostRe = new RegExp("(" + polyfillHost + parenSuffix, "gim"), cssColonHostContextRe = new RegExp("(" + polyfillHostContext + parenSuffix, "gim"), selectorReSuffix = "([>\\s~+[.,{:][\\s\\S]*)?$", colonHostRe = /\:host/gim, colonHostContextRe = /\:host-context/gim, polyfillHostNoCombinator = polyfillHost + "-no-combinator", polyfillHostRe = new RegExp(polyfillHost, "gim"), polyfillHostContextRe = new RegExp(polyfillHostContext, "gim"), shadowDOMSelectorsRe = [ />>>/g, /::shadow/g, /::content/g, /\/deep\//g, /\/shadow\//g, /\/shadow-deep\//g, /\^\^/g, /\^(?!=)/g ];
|
| function stylesToCssText(styles, preserveComments) {
|
| var cssText = "";
|
| Array.prototype.forEach.call(styles, function(s) {
|
| @@ -5055,7 +5058,7 @@ if (WebComponents.flags.shadow) {
|
| this._fragment = "#";
|
| state = "fragment";
|
| } else {
|
| - if (EOF != c && " " != c && "\n" != c && "\r" != c) {
|
| + if (EOF != c && "\t" != c && "\n" != c && "\r" != c) {
|
| this._schemeData += percentEscape(c);
|
| }
|
| }
|
| @@ -5186,7 +5189,7 @@ if (WebComponents.flags.shadow) {
|
| seenAt = true;
|
| for (var i = 0; i < buffer.length; i++) {
|
| var cp = buffer[i];
|
| - if (" " == cp || "\n" == cp || "\r" == cp) {
|
| + if ("\t" == cp || "\n" == cp || "\r" == cp) {
|
| err("Invalid whitespace in authority.");
|
| continue;
|
| }
|
| @@ -5220,7 +5223,7 @@ if (WebComponents.flags.shadow) {
|
| state = "relative path start";
|
| }
|
| continue;
|
| - } else if (" " == c || "\n" == c || "\r" == c) {
|
| + } else if ("\t" == c || "\n" == c || "\r" == c) {
|
| err("Invalid whitespace in file host.");
|
| } else {
|
| buffer += c;
|
| @@ -5244,7 +5247,7 @@ if (WebComponents.flags.shadow) {
|
| break loop;
|
| }
|
| continue;
|
| - } else if (" " != c && "\n" != c && "\r" != c) {
|
| + } else if ("\t" != c && "\n" != c && "\r" != c) {
|
| if ("[" == c) {
|
| seenBracket = true;
|
| } else if ("]" == c) {
|
| @@ -5272,7 +5275,7 @@ if (WebComponents.flags.shadow) {
|
| }
|
| state = "relative path start";
|
| continue;
|
| - } else if (" " == c || "\n" == c || "\r" == c) {
|
| + } else if ("\t" == c || "\n" == c || "\r" == c) {
|
| err("Invalid code point in port: " + c);
|
| } else {
|
| invalid.call(this);
|
| @@ -5317,7 +5320,7 @@ if (WebComponents.flags.shadow) {
|
| this._fragment = "#";
|
| state = "fragment";
|
| }
|
| - } else if (" " != c && "\n" != c && "\r" != c) {
|
| + } else if ("\t" != c && "\n" != c && "\r" != c) {
|
| buffer += percentEscape(c);
|
| }
|
| break;
|
| @@ -5326,13 +5329,13 @@ if (WebComponents.flags.shadow) {
|
| if (!stateOverride && "#" == c) {
|
| this._fragment = "#";
|
| state = "fragment";
|
| - } else if (EOF != c && " " != c && "\n" != c && "\r" != c) {
|
| + } else if (EOF != c && "\t" != c && "\n" != c && "\r" != c) {
|
| this._query += percentEscapeQuery(c);
|
| }
|
| break;
|
|
|
| case "fragment":
|
| - if (EOF != c && " " != c && "\n" != c && "\r" != c) {
|
| + if (EOF != c && "\t" != c && "\n" != c && "\r" != c) {
|
| this._fragment += c;
|
| }
|
| break;
|
| @@ -5768,7 +5771,7 @@ if (WebComponents.flags.shadow) {
|
|
|
| (function(scope) {
|
| "use strict";
|
| - if (!window.performance) {
|
| + if (!(window.performance && window.performance.now)) {
|
| var start = Date.now();
|
| window.performance = {
|
| now: function() {
|
| @@ -6930,6 +6933,9 @@ window.CustomElements.addModule(function(scope) {
|
| definition.prototype = Object.create(HTMLElement.prototype);
|
| }
|
| definition.__name = name.toLowerCase();
|
| + if (definition.extends) {
|
| + definition.extends = definition.extends.toLowerCase();
|
| + }
|
| definition.lifecycle = definition.lifecycle || {};
|
| definition.ancestry = ancestry(definition.extends);
|
| resolveTagName(definition);
|
| @@ -7102,21 +7108,6 @@ window.CustomElements.addModule(function(scope) {
|
| }
|
| wrapDomMethodToForceUpgrade(Node.prototype, "cloneNode");
|
| wrapDomMethodToForceUpgrade(document, "importNode");
|
| - if (isIE) {
|
| - (function() {
|
| - var importNode = document.importNode;
|
| - document.importNode = function() {
|
| - var n = importNode.apply(document, arguments);
|
| - if (n.nodeType == n.DOCUMENT_FRAGMENT_NODE) {
|
| - var f = document.createDocumentFragment();
|
| - f.appendChild(n);
|
| - return f;
|
| - } else {
|
| - return n;
|
| - }
|
| - };
|
| - })();
|
| - }
|
| document.registerElement = register;
|
| document.createElement = createElement;
|
| document.createElementNS = createElementNS;
|
|
|