| Index: polymer_1.2.3/bower_components/webcomponentsjs/HTMLImports.js
|
| diff --git a/polymer_1.0.4/bower_components/webcomponentsjs/HTMLImports.js b/polymer_1.2.3/bower_components/webcomponentsjs/HTMLImports.js
|
| similarity index 91%
|
| copy from polymer_1.0.4/bower_components/webcomponentsjs/HTMLImports.js
|
| copy to polymer_1.2.3/bower_components/webcomponentsjs/HTMLImports.js
|
| index e9f03ecf81873552c6d8ad81c86950c317999743..53859cc83e6572ebf63eabf1f0134cf8f8a23711 100644
|
| --- a/polymer_1.0.4/bower_components/webcomponentsjs/HTMLImports.js
|
| +++ b/polymer_1.2.3/bower_components/webcomponentsjs/HTMLImports.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.5
|
| +// @version 0.7.20
|
| if (typeof WeakMap === "undefined") {
|
| (function() {
|
| var defineProperty = Object.defineProperty;
|
| @@ -45,6 +45,9 @@ if (typeof WeakMap === "undefined") {
|
| }
|
|
|
| (function(global) {
|
| + if (global.JsMutationObserver) {
|
| + return;
|
| + }
|
| var registrationsTable = new WeakMap();
|
| var setImmediate;
|
| if (/Trident|Edge/.test(navigator.userAgent)) {
|
| @@ -340,8 +343,83 @@ if (typeof WeakMap === "undefined") {
|
| }
|
| };
|
| global.JsMutationObserver = JsMutationObserver;
|
| - if (!global.MutationObserver) global.MutationObserver = JsMutationObserver;
|
| -})(this);
|
| + if (!global.MutationObserver) {
|
| + global.MutationObserver = JsMutationObserver;
|
| + JsMutationObserver._isPolyfilled = true;
|
| + }
|
| +})(self);
|
| +
|
| +(function(scope) {
|
| + "use strict";
|
| + if (!window.performance) {
|
| + var start = Date.now();
|
| + window.performance = {
|
| + now: function() {
|
| + return Date.now() - start;
|
| + }
|
| + };
|
| + }
|
| + if (!window.requestAnimationFrame) {
|
| + window.requestAnimationFrame = function() {
|
| + var nativeRaf = window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame;
|
| + return nativeRaf ? function(callback) {
|
| + return nativeRaf(function() {
|
| + callback(performance.now());
|
| + });
|
| + } : function(callback) {
|
| + return window.setTimeout(callback, 1e3 / 60);
|
| + };
|
| + }();
|
| + }
|
| + if (!window.cancelAnimationFrame) {
|
| + window.cancelAnimationFrame = function() {
|
| + return window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || function(id) {
|
| + clearTimeout(id);
|
| + };
|
| + }();
|
| + }
|
| + var workingDefaultPrevented = function() {
|
| + var e = document.createEvent("Event");
|
| + e.initEvent("foo", true, true);
|
| + e.preventDefault();
|
| + return e.defaultPrevented;
|
| + }();
|
| + if (!workingDefaultPrevented) {
|
| + var origPreventDefault = Event.prototype.preventDefault;
|
| + Event.prototype.preventDefault = function() {
|
| + if (!this.cancelable) {
|
| + return;
|
| + }
|
| + origPreventDefault.call(this);
|
| + Object.defineProperty(this, "defaultPrevented", {
|
| + get: function() {
|
| + return true;
|
| + },
|
| + configurable: true
|
| + });
|
| + };
|
| + }
|
| + var isIE = /Trident/.test(navigator.userAgent);
|
| + if (!window.CustomEvent || isIE && typeof window.CustomEvent !== "function") {
|
| + window.CustomEvent = function(inType, params) {
|
| + params = params || {};
|
| + var e = document.createEvent("CustomEvent");
|
| + e.initCustomEvent(inType, Boolean(params.bubbles), Boolean(params.cancelable), params.detail);
|
| + return e;
|
| + };
|
| + window.CustomEvent.prototype = window.Event.prototype;
|
| + }
|
| + if (!window.Event || isIE && typeof window.Event !== "function") {
|
| + var origEvent = window.Event;
|
| + window.Event = function(inType, params) {
|
| + params = params || {};
|
| + var e = document.createEvent("Event");
|
| + e.initEvent(inType, Boolean(params.bubbles), Boolean(params.cancelable));
|
| + return e;
|
| + };
|
| + window.Event.prototype = origEvent.prototype;
|
| + }
|
| +})(window.WebComponents);
|
|
|
| window.HTMLImports = window.HTMLImports || {
|
| flags: {}
|
| @@ -418,6 +496,7 @@ window.HTMLImports = window.HTMLImports || {
|
| if (importCount) {
|
| for (var i = 0, imp; i < importCount && (imp = imports[i]); i++) {
|
| if (isImportLoaded(imp)) {
|
| + newImports.push(this);
|
| parsedCount++;
|
| checkDone();
|
| } else {
|
| @@ -544,10 +623,14 @@ window.HTMLImports.addModule(function(scope) {
|
| request.open("GET", url, xhr.async);
|
| request.addEventListener("readystatechange", function(e) {
|
| if (request.readyState === 4) {
|
| - var locationHeader = request.getResponseHeader("Location");
|
| var redirectedUrl = null;
|
| - if (locationHeader) {
|
| - var redirectedUrl = locationHeader.substr(0, 1) === "/" ? location.origin + locationHeader : locationHeader;
|
| + try {
|
| + var locationHeader = request.getResponseHeader("Location");
|
| + if (locationHeader) {
|
| + redirectedUrl = locationHeader.substr(0, 1) === "/" ? location.origin + locationHeader : locationHeader;
|
| + }
|
| + } catch (e) {
|
| + console.error(e.message);
|
| }
|
| next.call(nextContext, !xhr.ok(request) && request, request.response || request.responseText, redirectedUrl);
|
| }
|
| @@ -697,7 +780,7 @@ window.HTMLImports.addModule(function(scope) {
|
| var IMPORT_SELECTOR = "link[rel=" + IMPORT_LINK_TYPE + "]";
|
| var importParser = {
|
| documentSelectors: IMPORT_SELECTOR,
|
| - importsSelectors: [ IMPORT_SELECTOR, "link[rel=stylesheet]", "style", "script:not([type])", 'script[type="application/javascript"]', 'script[type="text/javascript"]' ].join(","),
|
| + importsSelectors: [ IMPORT_SELECTOR, "link[rel=stylesheet]:not([type])", "style:not([type])", "script:not([type])", 'script[type="application/javascript"]', 'script[type="text/javascript"]' ].join(","),
|
| map: {
|
| link: "parseLink",
|
| script: "parseScript",
|
| @@ -748,6 +831,7 @@ window.HTMLImports.addModule(function(scope) {
|
| }
|
| },
|
| parseImport: function(elt) {
|
| + elt.import = elt.__doc;
|
| if (window.HTMLImports.__importsParsingHook) {
|
| window.HTMLImports.__importsParsingHook(elt);
|
| }
|
| @@ -810,6 +894,8 @@ window.HTMLImports.addModule(function(scope) {
|
| trackElement: function(elt, callback) {
|
| var self = this;
|
| var done = function(e) {
|
| + elt.removeEventListener("load", done);
|
| + elt.removeEventListener("error", done);
|
| if (callback) {
|
| callback(e);
|
| }
|
| @@ -847,7 +933,9 @@ window.HTMLImports.addModule(function(scope) {
|
| script.src = scriptElt.src ? scriptElt.src : generateScriptDataUrl(scriptElt);
|
| scope.currentScript = scriptElt;
|
| this.trackElement(script, function(e) {
|
| - script.parentNode.removeChild(script);
|
| + if (script.parentNode) {
|
| + script.parentNode.removeChild(script);
|
| + }
|
| scope.currentScript = null;
|
| });
|
| this.addElementToDocument(script);
|
| @@ -863,7 +951,7 @@ window.HTMLImports.addModule(function(scope) {
|
| for (var i = 0, l = nodes.length, p = 0, n; i < l && (n = nodes[i]); i++) {
|
| if (!this.isParsed(n)) {
|
| if (this.hasResource(n)) {
|
| - return nodeIsImport(n) ? this.nextToParseInDoc(n.import, n) : n;
|
| + return nodeIsImport(n) ? this.nextToParseInDoc(n.__doc, n) : n;
|
| } else {
|
| return;
|
| }
|
| @@ -886,7 +974,7 @@ window.HTMLImports.addModule(function(scope) {
|
| return this.dynamicElements.indexOf(elt) >= 0;
|
| },
|
| hasResource: function(node) {
|
| - if (nodeIsImport(node) && node.import === undefined) {
|
| + if (nodeIsImport(node) && node.__doc === undefined) {
|
| return false;
|
| }
|
| return true;
|
| @@ -960,7 +1048,7 @@ window.HTMLImports.addModule(function(scope) {
|
| }
|
| this.documents[url] = doc;
|
| }
|
| - elt.import = doc;
|
| + elt.__doc = doc;
|
| }
|
| parser.parseNext();
|
| },
|
| @@ -1056,22 +1144,6 @@ window.HTMLImports.addModule(function(scope) {
|
| if (scope.useNative) {
|
| return;
|
| }
|
| - if (isIE && typeof window.CustomEvent !== "function") {
|
| - window.CustomEvent = function(inType, params) {
|
| - params = params || {};
|
| - var e = document.createEvent("CustomEvent");
|
| - e.initCustomEvent(inType, Boolean(params.bubbles), Boolean(params.cancelable), params.detail);
|
| - e.preventDefault = function() {
|
| - Object.defineProperty(this, "defaultPrevented", {
|
| - get: function() {
|
| - return true;
|
| - }
|
| - });
|
| - };
|
| - return e;
|
| - };
|
| - window.CustomEvent.prototype = window.Event.prototype;
|
| - }
|
| initializeModules();
|
| var rootDocument = scope.rootDocument;
|
| function bootstrap() {
|
|
|