From ee2d120c42f94c595d946743a650164abd7c906a Mon Sep 17 00:00:00 2001 From: Russell Bicknell Date: Wed, 13 Nov 2019 17:51:35 -0800 Subject: [PATCH 1/7] Fix a type generation error in ElementMixin. --- gen-tsd.json | 1 + lib/mixins/element-mixin.js | 9 +++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/gen-tsd.json b/gen-tsd.json index abb67b6cab..0b9e9713e7 100644 --- a/gen-tsd.json +++ b/gen-tsd.json @@ -8,6 +8,7 @@ "index.html" ], "excludeIdentifiers": [ + "ElementMixinPatchedBase", "templatizedBase" ], "removeReferences": [ diff --git a/lib/mixins/element-mixin.js b/lib/mixins/element-mixin.js index c41b0751ba..0efb190f99 100644 --- a/lib/mixins/element-mixin.js +++ b/lib/mixins/element-mixin.js @@ -104,8 +104,13 @@ export const ElementMixin = dedupingMixin(base => { // Optimizations for ShadyDOM's on-demand patching that pre-patches // elements to work with ShadyDOM. if (window.ShadyDOM && window.ShadyDOM.patchOnDemand) { - base = class extends base {}; - ShadyDOM.patchElementProto(base.prototype); + // `ElementMixinPatchedBase` is explicitly ignored in `gen-tsd.json` so + // that it doesn't attempt to export a type for it: the type generator + // attempts to declare it as extending `base` but no type is generated for + // `base`. + class ElementMixinPatchedBase extends base {}; + ShadyDOM.patchElementProto(ElementMixinPatchedBase.prototype); + base = ElementMixinPatchedBase; } /** From 1fb240d704f73c8d6e40b5b37c626ef842304b4a Mon Sep 17 00:00:00 2001 From: Russell Bicknell Date: Wed, 13 Nov 2019 18:04:44 -0800 Subject: [PATCH 2/7] Update polyfills. --- package-lock.json | 12 ++++++------ package.json | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 566c38215c..41ffb4d01a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1300,14 +1300,14 @@ } }, "@webcomponents/shadycss": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@webcomponents/shadycss/-/shadycss-1.9.1.tgz", - "integrity": "sha512-IaZOnWOKXHghqk/WfPNDRIgDBi3RsVPY2IFAw6tYiL9UBGvQRy5R6uC+Fk7qTZsReTJ0xh5MTT8yAcb3MUR4mQ==" + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@webcomponents/shadycss/-/shadycss-1.9.3.tgz", + "integrity": "sha512-fRuET+UGrH84hG0UF4iHbFqWZKUoan4/ki+iCOJ/vnKltPSHv/ZVbcA6sT/pRreznt8aKEGqN2KdHvgRxn4xjA==" }, "@webcomponents/webcomponentsjs": { - "version": "2.2.10", - "resolved": "https://registry.npmjs.org/@webcomponents/webcomponentsjs/-/webcomponentsjs-2.2.10.tgz", - "integrity": "sha512-5dzhUhP+h0qMiK0IWb7VNb0OGBoXO3AuI6Qi8t9PoKT50s5L1jv0xnwnLq+cFgPuTB8FLTNP8xIDmyoOsKBy9Q==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@webcomponents/webcomponentsjs/-/webcomponentsjs-2.4.0.tgz", + "integrity": "sha512-kEClEz2nu9/i6SvyBJTV4pCc6CyCzMhK7zEeJ6QhiJoulBp4YZ06Zfj2E2HUXfWfHJIjtKriJYMtfhettKEjEg==", "dev": true }, "abbrev": { diff --git a/package.json b/package.json index a30c075a50..f0a676029a 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "@polymer/gen-typescript-declarations": "^1.5.1", "@polymer/iron-component-page": "^3.0.0-pre.12", "@polymer/test-fixture": "^3.0.0-pre.12", - "@webcomponents/webcomponentsjs": "^2.2.10", + "@webcomponents/webcomponentsjs": "^2.4.0", "babel-eslint": "^7.2.3", "babel-preset-minify": "^0.2.0", "del": "^3.0.0", @@ -65,7 +65,7 @@ "type-detect": "1.0.0" }, "dependencies": { - "@webcomponents/shadycss": "^1.9.1" + "@webcomponents/shadycss": "^1.9.3" }, "files": [ "externs", From a92c47e02b390f5ffc20576611fc35e31c295967 Mon Sep 17 00:00:00 2001 From: Russell Bicknell Date: Wed, 13 Nov 2019 18:17:19 -0800 Subject: [PATCH 3/7] Fix lint errors. --- lib/mixins/element-mixin.js | 2 +- lib/utils/settings.js | 2 +- test/unit/lazy-define.html | 3 +-- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/lib/mixins/element-mixin.js b/lib/mixins/element-mixin.js index 0efb190f99..efb82a552c 100644 --- a/lib/mixins/element-mixin.js +++ b/lib/mixins/element-mixin.js @@ -108,7 +108,7 @@ export const ElementMixin = dedupingMixin(base => { // that it doesn't attempt to export a type for it: the type generator // attempts to declare it as extending `base` but no type is generated for // `base`. - class ElementMixinPatchedBase extends base {}; + class ElementMixinPatchedBase extends base {} ShadyDOM.patchElementProto(ElementMixinPatchedBase.prototype); base = ElementMixinPatchedBase; } diff --git a/lib/utils/settings.js b/lib/utils/settings.js index 582327e392..21a1e9cf43 100644 --- a/lib/utils/settings.js +++ b/lib/utils/settings.js @@ -312,7 +312,7 @@ export let lazyDefine = */ export const setLazyDefine = function(useLazyDefine) { lazyDefine = useLazyDefine; -} +}; /** * Setting to disable `dom-change` and `rendered-item-count` events from diff --git a/test/unit/lazy-define.html b/test/unit/lazy-define.html index 168d280565..664241193b 100644 --- a/test/unit/lazy-define.html +++ b/test/unit/lazy-define.html @@ -66,7 +66,6 @@