| OLD | NEW |
| (Empty) |
| 1 /* | |
| 2 * Copyright (c) 2014 The Polymer Project Authors. All rights reserved. | |
| 3 * This code may only be used under the BSD style license found at http://polyme
r.github.io/LICENSE.txt | |
| 4 * The complete set of authors may be found at http://polymer.github.io/AUTHORS.
txt | |
| 5 * The complete set of contributors may be found at http://polymer.github.io/CON
TRIBUTORS.txt | |
| 6 * Code distributed by Google as part of the polymer project is also | |
| 7 * subject to an additional IP rights grant found at http://polymer.github.io/PA
TENTS.txt | |
| 8 */ | |
| 9 | |
| 10 (function(scope) { | |
| 11 | |
| 12 // inject style sheet | |
| 13 var style = document.createElement('style'); | |
| 14 style.textContent = 'template {display: none !important;} /* injected by platfor
m.js */'; | |
| 15 var head = document.querySelector('head'); | |
| 16 head.insertBefore(style, head.firstChild); | |
| 17 | |
| 18 // flush (with logging) | |
| 19 var flushing; | |
| 20 function flush() { | |
| 21 if (!flushing) { | |
| 22 flushing = true; | |
| 23 scope.endOfMicrotask(function() { | |
| 24 flushing = false; | |
| 25 logFlags.data && console.group('Platform.flush()'); | |
| 26 scope.performMicrotaskCheckpoint(); | |
| 27 logFlags.data && console.groupEnd(); | |
| 28 }); | |
| 29 } | |
| 30 }; | |
| 31 | |
| 32 // polling dirty checker | |
| 33 // flush periodically if platform does not have object observe. | |
| 34 if (!Observer.hasObjectObserve) { | |
| 35 var FLUSH_POLL_INTERVAL = 125; | |
| 36 window.addEventListener('WebComponentsReady', function() { | |
| 37 flush(); | |
| 38 scope.flushPoll = setInterval(flush, FLUSH_POLL_INTERVAL); | |
| 39 }); | |
| 40 } else { | |
| 41 // make flush a no-op when we have Object.observe | |
| 42 flush = function() {}; | |
| 43 } | |
| 44 | |
| 45 if (window.CustomElements && !CustomElements.useNative) { | |
| 46 var originalImportNode = Document.prototype.importNode; | |
| 47 Document.prototype.importNode = function(node, deep) { | |
| 48 var imported = originalImportNode.call(this, node, deep); | |
| 49 CustomElements.upgradeAll(imported); | |
| 50 return imported; | |
| 51 } | |
| 52 } | |
| 53 | |
| 54 // exports | |
| 55 scope.flush = flush; | |
| 56 | |
| 57 })(window.Platform); | |
| 58 | |
| OLD | NEW |