From 2957e9d4b8f2814feb0830e29567eb7c32b5fe34 Mon Sep 17 00:00:00 2001 From: Tim van der Lippe Date: Tue, 14 Aug 2018 12:44:33 +0200 Subject: [PATCH] Move version to ElementMixin prototype --- lib/mixins/element-mixin.js | 14 ++++++++++++++ polymer-element.js | 7 +------ test/unit/polymer.element.html | 3 +++ 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/lib/mixins/element-mixin.js b/lib/mixins/element-mixin.js index 861d1b120f..77a140a8fd 100644 --- a/lib/mixins/element-mixin.js +++ b/lib/mixins/element-mixin.js @@ -17,6 +17,12 @@ import { DomModule } from '../elements/dom-module.js'; import { PropertyEffects } from './property-effects.js'; import { PropertiesMixin } from './properties-mixin.js'; +/** + * Current Polymer version in Semver notation. + * @type {string} Semver notation of the current version of Polymer. + */ +export const version = '3.0.5'; + /** * Element class mixin that provides the core API for Polymer's meta-programming * features including template stamping, data-binding, attribute deserialization, @@ -278,6 +284,14 @@ export const ElementMixin = dedupingMixin(base => { */ class PolymerElement extends polymerElementBase { + /** + * Current Polymer version in Semver notation. + * @type {string} Semver notation of the current version of Polymer. + */ + static get polymerElementVersion() { + return version; + } + /** * Override of PropertiesMixin _finalizeClass to create observers and * find the template. diff --git a/polymer-element.js b/polymer-element.js index 8cb6e5ccd2..0b9dd241d3 100644 --- a/polymer-element.js +++ b/polymer-element.js @@ -9,6 +9,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN */ import { ElementMixin } from './lib/mixins/element-mixin.js'; +export { version } from './lib/mixins/element-mixin.js'; export { html } from './lib/utils/html-tag.js'; /** @@ -27,9 +28,3 @@ export { html } from './lib/utils/html-tag.js'; * attribute deserialization, and property change observation */ export const PolymerElement = ElementMixin(HTMLElement); - -/** - * Current Polymer version in Semver notation. - * @type {String} Semver notation of the current version of Polymer. - */ -export const version = '3.0.5'; diff --git a/test/unit/polymer.element.html b/test/unit/polymer.element.html index b81d21e090..c20cfa8e7c 100644 --- a/test/unit/polymer.element.html +++ b/test/unit/polymer.element.html @@ -397,6 +397,9 @@

Sub template

assert.equal(fixtureEl.getAttribute('prop'), 'propValue'); }); + test('version', function() { + assert.isOk(el.constructor.polymerElementVersion); + }); }); suite('subclass', function() {