Index: third_party/polymer/v0_8/components/polymer/src/lib/polymer-bootstrap.html |
diff --git a/third_party/polymer/v0_8/components/polymer/src/lib/polymer-bootstrap.html b/third_party/polymer/v0_8/components/polymer/src/lib/polymer-bootstrap.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..af542f153488dd9782c5b06ad6c63118e3756ca6 |
--- /dev/null |
+++ b/third_party/polymer/v0_8/components/polymer/src/lib/polymer-bootstrap.html |
@@ -0,0 +1,78 @@ |
+<!-- |
+@license |
+Copyright (c) 2014 The Polymer Project Authors. All rights reserved. |
+This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt |
+The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt |
+The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt |
+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 |
+--> |
+<script> |
+ |
+ // until ES6 modules become standard, we follow Occam and simply stake out |
+ // a global namespace |
+ |
+ // Polymer is a Function, but of course this is also an Object, so we |
+ // hang various other objects off of Polymer.* |
+ (function() { |
+ var userPolymer = window.Polymer; |
+ |
+ window.Polymer = function(prototype) { |
+ var ctor = desugar(prototype); |
+ // native Custom Elements treats 'undefined' extends property |
+ // as valued, the property must not exist to be ignored |
+ var options = { |
+ prototype: ctor.prototype |
+ }; |
+ if (prototype.extends) { |
+ options.extends = prototype.extends; |
+ } |
+ Polymer.telemetry._registrate(prototype); |
+ document.registerElement(prototype.is, options); |
+ return ctor; |
+ }; |
+ |
+ var desugar = function(prototype) { |
+ prototype = Polymer.Base.chainObject(prototype, Polymer.Base); |
+ prototype.registerCallback(); |
+ return prototype.constructor; |
+ }; |
+ |
+ window.Polymer = Polymer; |
+ |
+ if (userPolymer) { |
+ for (var i in userPolymer) { |
+ Polymer[i] = userPolymer[i]; |
+ } |
+ } |
+ |
+ Polymer.Class = desugar; |
+ |
+ })(); |
+ /* |
+ // Raw usage |
+ [ctor =] Polymer.Class(prototype); |
+ document.registerElement(name, ctor); |
+ |
+ // Simplified usage |
+ [ctor = ] Polymer(prototype); |
+ */ |
+ |
+ // telemetry: statistics, logging, and debug |
+ |
+ Polymer.telemetry = { |
+ registrations: [], |
+ _regLog: function(prototype) { |
+ console.log('[' + prototype.is + ']: registered') |
+ }, |
+ _registrate: function(prototype) { |
+ this.registrations.push(prototype); |
+ Polymer.log && this._regLog(prototype); |
+ }, |
+ dumpRegistrations: function() { |
+ this.registrations.forEach(this._regLog); |
+ } |
+ }; |
+ |
+</script> |
+ |