From bbf24c0c671670594f622c99a6ff1bb6b08e1fca Mon Sep 17 00:00:00 2001 From: Peter Burns Date: Fri, 9 Nov 2018 17:13:30 -0800 Subject: [PATCH] Get typescript compiling again. --- gen-tsd.json | 6 +++++- interfaces.d.ts | 9 +++++++++ lib/mixins/property-effects.js | 2 +- lib/utils/templatize.js | 12 ++++++------ 4 files changed, 21 insertions(+), 8 deletions(-) diff --git a/gen-tsd.json b/gen-tsd.json index c974686179..abb67b6cab 100644 --- a/gen-tsd.json +++ b/gen-tsd.json @@ -7,6 +7,9 @@ "util/**", "index.html" ], + "excludeIdentifiers": [ + "templatizedBase" + ], "removeReferences": [ "../shadycss/apply-shim.d.ts", "../shadycss/custom-style-interface.d.ts" @@ -32,7 +35,8 @@ "Binding", "AsyncInterface", "GestureRecognizer", - "IdleDeadline" + "IdleDeadline", + "PolymerElementConstructor" ], "./lib/utils/debounce.js": [ "Debouncer" diff --git a/interfaces.d.ts b/interfaces.d.ts index 61e0a2d37c..5c04d71619 100644 --- a/interfaces.d.ts +++ b/interfaces.d.ts @@ -191,3 +191,12 @@ export interface IdleDeadline { didTimeout: boolean; timeRemaining(): number; } + +export interface PolymerElementConstructor { + new (): HTMLElement; + is?: string; + extends?: string; + properties?: PolymerElementProperties; + observers?: string[]; + template?: string|HTMLTemplateElement|null; +} diff --git a/lib/mixins/property-effects.js b/lib/mixins/property-effects.js index 33a2d17d30..63bae5dfed 100644 --- a/lib/mixins/property-effects.js +++ b/lib/mixins/property-effects.js @@ -1161,7 +1161,7 @@ export const PropertyEffects = dedupingMixin(superClass => { * the prototype on the instance. * * @override - * @param {Object} props Properties to initialize on the prototype + * @param {!Object} props Properties to initialize on the prototype * @return {void} */ _initializeProtoProperties(props) { diff --git a/lib/utils/templatize.js b/lib/utils/templatize.js index f3f4a6cf93..533dd7b546 100644 --- a/lib/utils/templatize.js +++ b/lib/utils/templatize.js @@ -100,7 +100,7 @@ function upgradeTemplate(template, constructor) { * @implements {Polymer_PropertyEffects} * @private */ -const base = PropertyEffects(class {}); +const templateInstanceBase = PropertyEffects(class {}); /** * @polymer @@ -108,7 +108,7 @@ const base = PropertyEffects(class {}); * @appliesMixin PropertyEffects * @unrestricted */ -class TemplateInstanceBase extends base { +class TemplateInstanceBase extends templateInstanceBase { constructor(props) { super(); this._configureProperties(props); @@ -335,14 +335,14 @@ function createTemplatizerClass(template, templateInfo, options) { * @constructor * @extends {TemplateInstanceBase} */ - let base = options.mutableData ? + let templatizerBase = options.mutableData ? MutableTemplateInstanceBase : TemplateInstanceBase; /** * Anonymous class created by the templatize * @constructor * @private */ - let klass = class extends base { }; + let klass = class extends templatizerBase { }; /** @override */ klass.prototype.__templatizeOptions = options; klass.prototype._bindTemplate(template); @@ -363,10 +363,10 @@ function addPropagateEffects(template, templateInfo, options) { * @constructor * @extends {DataTemplate} */ - let base = options.mutableData ? MutableDataTemplate : DataTemplate; + let templatizedBase = options.mutableData ? MutableDataTemplate : DataTemplate; /** @private */ klass = templateInfo.templatizeTemplateClass = - class TemplatizedTemplate extends base {}; + class TemplatizedTemplate extends templatizedBase {}; // Add template - >instances effects // and host <- template effects let hostProps = templateInfo.hostProps;