| Index: third_party/polymer/v1_0/components-chromium/polymer/polymer-micro-extracted.js
|
| diff --git a/third_party/polymer/v1_0/components-chromium/polymer/polymer-micro-extracted.js b/third_party/polymer/v1_0/components-chromium/polymer/polymer-micro-extracted.js
|
| index d7766c59f713ece8212576b5d79b45f4328338c6..40fa73f7a2af5bec74cb67cc843df3421b729bd6 100644
|
| --- a/third_party/polymer/v1_0/components-chromium/polymer/polymer-micro-extracted.js
|
| +++ b/third_party/polymer/v1_0/components-chromium/polymer/polymer-micro-extracted.js
|
| @@ -32,6 +32,7 @@ settings.useNativeShadow = settings.useShadow && settings.nativeShadow;
|
| settings.usePolyfillProto = !settings.useNativeCustomElements && !Object.__proto__;
|
| settings.hasNativeCSSProperties = !navigator.userAgent.match('AppleWebKit/601') && window.CSS && CSS.supports && CSS.supports('box-shadow', '0 0 0 var(--foo)');
|
| settings.useNativeCSSProperties = settings.hasNativeCSSProperties && settings.lazyRegister && settings.useNativeCSSProperties;
|
| +settings.isIE = navigator.userAgent.match('Trident');
|
| return settings;
|
| }()
|
| };(function () {
|
| @@ -43,15 +44,15 @@ prototype = prototype.prototype;
|
| if (!prototype) {
|
| prototype = {};
|
| }
|
| -var factory = desugar(prototype);
|
| -prototype = factory.prototype;
|
| +prototype = desugar(prototype);
|
| +var customCtor = prototype === prototype.constructor.prototype ? prototype.constructor : null;
|
| var options = { prototype: prototype };
|
| if (prototype.extends) {
|
| options.extends = prototype.extends;
|
| }
|
| Polymer.telemetry._registrate(prototype);
|
| -document.registerElement(prototype.is, options);
|
| -return factory;
|
| +var ctor = document.registerElement(prototype.is, options);
|
| +return customCtor || ctor;
|
| };
|
| var desugar = function (prototype) {
|
| var base = Polymer.Base;
|
| @@ -60,14 +61,20 @@ base = Polymer.Base._getExtendedPrototype(prototype.extends);
|
| }
|
| prototype = Polymer.Base.chainObject(prototype, base);
|
| prototype.registerCallback();
|
| -return prototype.constructor;
|
| +return prototype;
|
| };
|
| if (userPolymer) {
|
| for (var i in userPolymer) {
|
| Polymer[i] = userPolymer[i];
|
| }
|
| }
|
| -Polymer.Class = desugar;
|
| +Polymer.Class = function (prototype) {
|
| +if (!prototype.factoryImpl) {
|
| +prototype.factoryImpl = function () {
|
| +};
|
| +}
|
| +return desugar(prototype).constructor;
|
| +};
|
| }());
|
| Polymer.telemetry = {
|
| registrations: [],
|
| @@ -85,7 +92,7 @@ this.registrations.forEach(this._regLog);
|
| enumerable: true,
|
| configurable: true,
|
| get: function () {
|
| -return (document._currentScript || document.currentScript).ownerDocument;
|
| +return (document._currentScript || document.currentScript || {}).ownerDocument;
|
| }
|
| });Polymer.RenderStatus = {
|
| _ready: false,
|
| @@ -164,7 +171,7 @@ var settings = Polymer.Settings;
|
| Polymer.Base = {
|
| __isPolymerInstance__: true,
|
| _addFeature: function (feature) {
|
| -this.extend(this, feature);
|
| +this.mixin(this, feature);
|
| },
|
| registerCallback: function () {
|
| if (settings.lazyRegister === 'max') {
|
| @@ -173,7 +180,15 @@ this.beforeRegister();
|
| }
|
| } else {
|
| this._desugarBehaviors();
|
| -this._doBehavior('beforeRegister');
|
| +for (var i = 0, b; i < this.behaviors.length; i++) {
|
| +b = this.behaviors[i];
|
| +if (b.beforeRegister) {
|
| +b.beforeRegister.call(this);
|
| +}
|
| +}
|
| +if (this.beforeRegister) {
|
| +this.beforeRegister();
|
| +}
|
| }
|
| this._registerFeatures();
|
| if (!settings.lazyRegister) {
|
| @@ -181,12 +196,33 @@ this.ensureRegisterFinished();
|
| }
|
| },
|
| createdCallback: function () {
|
| +if (settings.disableUpgradeEnabled) {
|
| +if (this.hasAttribute('disable-upgrade')) {
|
| +this._propertySetter = disableUpgradePropertySetter;
|
| +this._configValue = null;
|
| +this.__data__ = {};
|
| +return;
|
| +} else {
|
| +this.__hasInitialized = true;
|
| +}
|
| +}
|
| +this.__initialize();
|
| +},
|
| +__initialize: function () {
|
| if (!this.__hasRegisterFinished) {
|
| this._ensureRegisterFinished(this.__proto__);
|
| }
|
| Polymer.telemetry.instanceCount++;
|
| this.root = this;
|
| -this._doBehavior('created');
|
| +for (var i = 0, b; i < this.behaviors.length; i++) {
|
| +b = this.behaviors[i];
|
| +if (b.created) {
|
| +b.created.call(this);
|
| +}
|
| +}
|
| +if (this.created) {
|
| +this.created();
|
| +}
|
| this._initFeatures();
|
| },
|
| ensureRegisterFinished: function () {
|
| @@ -196,13 +232,26 @@ _ensureRegisterFinished: function (proto) {
|
| if (proto.__hasRegisterFinished !== proto.is || !proto.is) {
|
| if (settings.lazyRegister === 'max') {
|
| proto._desugarBehaviors();
|
| -proto._doBehaviorOnly('beforeRegister');
|
| +for (var i = 0, b; i < proto.behaviors.length; i++) {
|
| +b = proto.behaviors[i];
|
| +if (b.beforeRegister) {
|
| +b.beforeRegister.call(proto);
|
| +}
|
| +}
|
| }
|
| proto.__hasRegisterFinished = proto.is;
|
| if (proto._finishRegisterFeatures) {
|
| proto._finishRegisterFeatures();
|
| }
|
| -proto._doBehavior('registered');
|
| +for (var j = 0, pb; j < proto.behaviors.length; j++) {
|
| +pb = proto.behaviors[j];
|
| +if (pb.registered) {
|
| +pb.registered.call(proto);
|
| +}
|
| +}
|
| +if (proto.registered) {
|
| +proto.registered();
|
| +}
|
| if (settings.usePolyfillProto && proto !== this) {
|
| proto.extend(this, proto);
|
| }
|
| @@ -212,23 +261,43 @@ attachedCallback: function () {
|
| var self = this;
|
| Polymer.RenderStatus.whenReady(function () {
|
| self.isAttached = true;
|
| -self._doBehavior('attached');
|
| +for (var i = 0, b; i < self.behaviors.length; i++) {
|
| +b = self.behaviors[i];
|
| +if (b.attached) {
|
| +b.attached.call(self);
|
| +}
|
| +}
|
| +if (self.attached) {
|
| +self.attached();
|
| +}
|
| });
|
| },
|
| detachedCallback: function () {
|
| var self = this;
|
| Polymer.RenderStatus.whenReady(function () {
|
| self.isAttached = false;
|
| -self._doBehavior('detached');
|
| +for (var i = 0, b; i < self.behaviors.length; i++) {
|
| +b = self.behaviors[i];
|
| +if (b.detached) {
|
| +b.detached.call(self);
|
| +}
|
| +}
|
| +if (self.detached) {
|
| +self.detached();
|
| +}
|
| });
|
| },
|
| attributeChangedCallback: function (name, oldValue, newValue) {
|
| this._attributeChangedImpl(name);
|
| -this._doBehavior('attributeChanged', [
|
| -name,
|
| -oldValue,
|
| -newValue
|
| -]);
|
| +for (var i = 0, b; i < this.behaviors.length; i++) {
|
| +b = this.behaviors[i];
|
| +if (b.attributeChanged) {
|
| +b.attributeChanged.call(this, name, oldValue, newValue);
|
| +}
|
| +}
|
| +if (this.attributeChanged) {
|
| +this.attributeChanged(name, oldValue, newValue);
|
| +}
|
| },
|
| _attributeChangedImpl: function (name) {
|
| this._setAttributeToProperty(this, name);
|
| @@ -299,6 +368,23 @@ object.__proto__ = inherited;
|
| return object;
|
| };
|
| Polymer.Base = Polymer.Base.chainObject(Polymer.Base, HTMLElement.prototype);
|
| +Polymer.BaseDescriptors = {};
|
| +var disableUpgradePropertySetter;
|
| +if (settings.disableUpgradeEnabled) {
|
| +disableUpgradePropertySetter = function (property, value) {
|
| +this.__data__[property] = value;
|
| +};
|
| +var origAttributeChangedCallback = Polymer.Base.attributeChangedCallback;
|
| +Polymer.Base.attributeChangedCallback = function (name, oldValue, newValue) {
|
| +if (!this.__hasInitialized && name === 'disable-upgrade') {
|
| +this.__hasInitialized = true;
|
| +this._propertySetter = Polymer.Bind._modelApi._propertySetter;
|
| +this._configValue = Polymer.Base._configValue;
|
| +this.__initialize();
|
| +}
|
| +origAttributeChangedCallback.call(this, name, oldValue, newValue);
|
| +};
|
| +}
|
| if (window.CustomElements) {
|
| Polymer.instanceof = CustomElements.instanceof;
|
| } else {
|
| @@ -320,8 +406,7 @@ var DomModule = function () {
|
| return document.createElement('dom-module');
|
| };
|
| DomModule.prototype = Object.create(HTMLElement.prototype);
|
| -Polymer.Base.extend(DomModule.prototype, {
|
| -constructor: DomModule,
|
| +Polymer.Base.mixin(DomModule.prototype, {
|
| createdCallback: function () {
|
| this.register();
|
| },
|
| @@ -347,6 +432,11 @@ return m;
|
| }
|
| }
|
| });
|
| +Object.defineProperty(DomModule.prototype, 'constructor', {
|
| +value: DomModule,
|
| +configurable: true,
|
| +writable: true
|
| +});
|
| var cePolyfill = window.CustomElements && !CustomElements.useNative;
|
| document.registerElement('dom-module', DomModule);
|
| function forceDomModulesUpgrade() {
|
| @@ -411,11 +501,16 @@ return flat;
|
| },
|
| _mixinBehavior: function (b) {
|
| var n$ = Object.getOwnPropertyNames(b);
|
| +var useAssignment = b._noAccessors;
|
| for (var i = 0, n; i < n$.length && (n = n$[i]); i++) {
|
| if (!Polymer.Base._behaviorProperties[n] && !this.hasOwnProperty(n)) {
|
| +if (useAssignment) {
|
| +this[n] = b[n];
|
| +} else {
|
| this.copyOwnProperty(n, b, this);
|
| }
|
| }
|
| +}
|
| },
|
| _prepBehaviors: function () {
|
| this._prepFlattenedBehaviors(this.behaviors);
|
| @@ -426,23 +521,6 @@ this._prepBehavior(behaviors[i]);
|
| }
|
| this._prepBehavior(this);
|
| },
|
| -_doBehavior: function (name, args) {
|
| -for (var i = 0; i < this.behaviors.length; i++) {
|
| -this._invokeBehavior(this.behaviors[i], name, args);
|
| -}
|
| -this._invokeBehavior(this, name, args);
|
| -},
|
| -_doBehaviorOnly: function (name, args) {
|
| -for (var i = 0; i < this.behaviors.length; i++) {
|
| -this._invokeBehavior(this.behaviors[i], name, args);
|
| -}
|
| -},
|
| -_invokeBehavior: function (b, name, args) {
|
| -var fn = b[name];
|
| -if (fn) {
|
| -fn.apply(this, args || Polymer.nar);
|
| -}
|
| -},
|
| _marshalBehaviors: function () {
|
| for (var i = 0; i < this.behaviors.length; i++) {
|
| this._marshalBehavior(this.behaviors[i]);
|
| @@ -461,7 +539,8 @@ created: true,
|
| attached: true,
|
| detached: true,
|
| attributeChanged: true,
|
| -ready: true
|
| +ready: true,
|
| +_noAccessors: true
|
| };Polymer.Base._addFeature({
|
| _getExtendedPrototype: function (tag) {
|
| return this._getExtendedNativePrototype(tag);
|
| @@ -470,8 +549,14 @@ _nativePrototypes: {},
|
| _getExtendedNativePrototype: function (tag) {
|
| var p = this._nativePrototypes[tag];
|
| if (!p) {
|
| -var np = this.getNativePrototype(tag);
|
| -p = this.extend(Object.create(np), Polymer.Base);
|
| +p = Object.create(this.getNativePrototype(tag));
|
| +var p$ = Object.getOwnPropertyNames(Polymer.Base);
|
| +for (var i = 0, n; i < p$.length && (n = p$[i]); i++) {
|
| +if (!Polymer.BaseDescriptors[n]) {
|
| +p[n] = Polymer.Base[n];
|
| +}
|
| +}
|
| +Object.defineProperties(p, Polymer.BaseDescriptors);
|
| this._nativePrototypes[tag] = p;
|
| }
|
| return p;
|
| @@ -507,7 +592,6 @@ return elt;
|
| }
|
| });Polymer.nob = Object.create(null);
|
| Polymer.Base._addFeature({
|
| -properties: {},
|
| getPropertyInfo: function (property) {
|
| var info = this._getPropertyInfo(property, this.properties);
|
| if (!info) {
|
| @@ -564,7 +648,17 @@ t.readOnly = s.readOnly;
|
| }
|
| }
|
| }
|
| -});Polymer.CaseMap = {
|
| +});
|
| +(function () {
|
| +var propertiesDesc = {
|
| +configurable: true,
|
| +writable: true,
|
| +enumerable: true,
|
| +value: {}
|
| +};
|
| +Polymer.BaseDescriptors.properties = propertiesDesc;
|
| +Object.defineProperty(Polymer.Base, 'properties', propertiesDesc);
|
| +}());Polymer.CaseMap = {
|
| _caseMap: {},
|
| _rx: {
|
| dashToCamel: /-[a-z]/g,
|
| @@ -688,7 +782,7 @@ default:
|
| return value != null ? value : undefined;
|
| }
|
| }
|
| -});Polymer.version = "1.6.1";Polymer.Base._addFeature({
|
| +});Polymer.version = "1.8.1";Polymer.Base._addFeature({
|
| _registerFeatures: function () {
|
| this._prepIs();
|
| this._prepBehaviors();
|
|
|