Merge changes I32a66a3b,I8995a8b8

* changes:
  Replace created() by constructor() (Polymer Legacy)
  Remove usages of this.toggleClass() (Polymer Legacy)
diff --git a/polygerrit-ui/app/elements/admin/gr-create-change-dialog/gr-create-change-dialog_test.ts b/polygerrit-ui/app/elements/admin/gr-create-change-dialog/gr-create-change-dialog_test.ts
index 198794e..8a4cbbe 100644
--- a/polygerrit-ui/app/elements/admin/gr-create-change-dialog/gr-create-change-dialog_test.ts
+++ b/polygerrit-ui/app/elements/admin/gr-create-change-dialog/gr-create-change-dialog_test.ts
@@ -15,8 +15,8 @@
  * limitations under the License.
  */
 
-import '../../../test/common-test-setup-karma.js';
-import './gr-create-change-dialog.js';
+import '../../../test/common-test-setup-karma';
+import './gr-create-change-dialog';
 import {GrCreateChangeDialog} from './gr-create-change-dialog';
 import {BranchName, GitRef, RepoName} from '../../../types/common';
 import {InheritedBooleanInfoConfiguredValue} from '../../../constants/constants';
diff --git a/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata_test.ts b/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata_test.ts
index c6e012d..6bfa240 100644
--- a/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata_test.ts
+++ b/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata_test.ts
@@ -63,7 +63,7 @@
 import {GrEditableLabel} from '../../shared/gr-editable-label/gr-editable-label';
 import {PluginApi} from '../../../api/plugin';
 import {GrEndpointDecorator} from '../../plugins/gr-endpoint-decorator/gr-endpoint-decorator';
-import {stubRestApi} from '../../../test/test-utils.js';
+import {stubRestApi} from '../../../test/test-utils';
 import {ParsedChangeInfo} from '../../../types/types';
 
 const basicFixture = fixtureFromElement('gr-change-metadata');
diff --git a/polygerrit-ui/app/elements/change/gr-message/gr-message_test.ts b/polygerrit-ui/app/elements/change/gr-message/gr-message_test.ts
index 3652be9..b8f3c73 100644
--- a/polygerrit-ui/app/elements/change/gr-message/gr-message_test.ts
+++ b/polygerrit-ui/app/elements/change/gr-message/gr-message_test.ts
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-import '../../../test/common-test-setup-karma.js';
+import '../../../test/common-test-setup-karma';
 import './gr-message';
 import {GerritNav} from '../../core/gr-navigation/gr-navigation';
 import {
@@ -41,14 +41,14 @@
   ReviewInputTag,
   Timestamp,
   UrlEncodedCommentId,
-} from '../../../types/common.js';
+} from '../../../types/common';
 import {tap} from '@polymer/iron-test-helpers/mock-interactions';
 import {
   ChangeMessageDeletedEventDetail,
   ReplyEventDetail,
-} from '../../../types/events.js';
-import {GrButton} from '../../shared/gr-button/gr-button.js';
-import {CommentSide} from '../../../constants/constants.js';
+} from '../../../types/events';
+import {GrButton} from '../../shared/gr-button/gr-button';
+import {CommentSide} from '../../../constants/constants';
 import {SinonStubbedMember} from 'sinon/pkg/sinon-esm';
 
 const basicFixture = fixtureFromElement('gr-message');
diff --git a/polygerrit-ui/app/elements/checks/gr-checks-results.ts b/polygerrit-ui/app/elements/checks/gr-checks-results.ts
index bf37e20..fb8a149 100644
--- a/polygerrit-ui/app/elements/checks/gr-checks-results.ts
+++ b/polygerrit-ui/app/elements/checks/gr-checks-results.ts
@@ -284,11 +284,11 @@
       <gr-endpoint-decorator name="check-result-expanded">
         <gr-endpoint-param
           name="run"
-          value="${this.result}"
+          .value="${this.result}"
         ></gr-endpoint-param>
         <gr-endpoint-param
           name="result"
-          value="${this.result}"
+          .value="${this.result}"
         ></gr-endpoint-param>
         <div class="message">
           ${this.result.message}
diff --git a/polygerrit-ui/app/elements/core/gr-key-binding-display/gr-key-binding-display_test.ts b/polygerrit-ui/app/elements/core/gr-key-binding-display/gr-key-binding-display_test.ts
index 875cde8..dd023cb 100644
--- a/polygerrit-ui/app/elements/core/gr-key-binding-display/gr-key-binding-display_test.ts
+++ b/polygerrit-ui/app/elements/core/gr-key-binding-display/gr-key-binding-display_test.ts
@@ -15,9 +15,9 @@
  * limitations under the License.
  */
 
-import '../../../test/common-test-setup-karma.js';
-import './gr-key-binding-display.js';
-import {GrKeyBindingDisplay} from './gr-key-binding-display.js';
+import '../../../test/common-test-setup-karma';
+import './gr-key-binding-display';
+import {GrKeyBindingDisplay} from './gr-key-binding-display';
 
 const basicFixture = fixtureFromElement('gr-key-binding-display');
 
diff --git a/polygerrit-ui/app/elements/plugins/gr-checks-api/gr-checks-api_test.ts b/polygerrit-ui/app/elements/plugins/gr-checks-api/gr-checks-api_test.ts
index 3ab3efb..e1ec158 100644
--- a/polygerrit-ui/app/elements/plugins/gr-checks-api/gr-checks-api_test.ts
+++ b/polygerrit-ui/app/elements/plugins/gr-checks-api/gr-checks-api_test.ts
@@ -15,9 +15,9 @@
  * limitations under the License.
  */
 
-import '../../../test/common-test-setup-karma.js';
-import {getPluginLoader} from '../../shared/gr-js-api-interface/gr-plugin-loader.js';
-import {_testOnly_initGerritPluginApi} from '../../shared/gr-js-api-interface/gr-gerrit.js';
+import '../../../test/common-test-setup-karma';
+import {getPluginLoader} from '../../shared/gr-js-api-interface/gr-plugin-loader';
+import {_testOnly_initGerritPluginApi} from '../../shared/gr-js-api-interface/gr-gerrit';
 import {PluginApi} from '../../../api/plugin';
 import {ChecksPluginApi} from '../../../api/checks';
 
diff --git a/polygerrit-ui/app/elements/settings/gr-email-editor/gr-email-editor_test.ts b/polygerrit-ui/app/elements/settings/gr-email-editor/gr-email-editor_test.ts
index bc4a4d2..e4c1584 100644
--- a/polygerrit-ui/app/elements/settings/gr-email-editor/gr-email-editor_test.ts
+++ b/polygerrit-ui/app/elements/settings/gr-email-editor/gr-email-editor_test.ts
@@ -15,8 +15,8 @@
  * limitations under the License.
  */
 
-import '../../../test/common-test-setup-karma.js';
-import './gr-email-editor.js';
+import '../../../test/common-test-setup-karma';
+import './gr-email-editor';
 import {GrEmailEditor} from './gr-email-editor';
 import {spyRestApi, stubRestApi} from '../../../test/test-utils';
 
diff --git a/polygerrit-ui/app/elements/shared/gr-button/gr-button_test.ts b/polygerrit-ui/app/elements/shared/gr-button/gr-button_test.ts
index 86ae2d1..f0f122a 100644
--- a/polygerrit-ui/app/elements/shared/gr-button/gr-button_test.ts
+++ b/polygerrit-ui/app/elements/shared/gr-button/gr-button_test.ts
@@ -16,12 +16,12 @@
  */
 
 import * as MockInteractions from '@polymer/iron-test-helpers/mock-interactions';
-import '../../../test/common-test-setup-karma.js';
-import {addListener} from '@polymer/polymer/lib/utils/gestures.js';
-import {appContext} from '../../../services/app-context.js';
-import {html} from '@polymer/polymer/lib/utils/html-tag.js';
-import {GrButton} from './gr-button.js';
-import {queryAndAssert} from '../../../test/test-utils.js';
+import '../../../test/common-test-setup-karma';
+import {addListener} from '@polymer/polymer/lib/utils/gestures';
+import {appContext} from '../../../services/app-context';
+import {html} from '@polymer/polymer/lib/utils/html-tag';
+import {GrButton} from './gr-button';
+import {queryAndAssert} from '../../../test/test-utils';
 import {PaperButtonElement} from '@polymer/paper-button';
 
 const basicFixture = fixtureFromElement('gr-button');
diff --git a/polygerrit-ui/app/elements/shared/gr-comment-thread/gr-comment-thread_test.ts b/polygerrit-ui/app/elements/shared/gr-comment-thread/gr-comment-thread_test.ts
index f2df89d..8b15203 100644
--- a/polygerrit-ui/app/elements/shared/gr-comment-thread/gr-comment-thread_test.ts
+++ b/polygerrit-ui/app/elements/shared/gr-comment-thread/gr-comment-thread_test.ts
@@ -15,18 +15,18 @@
  * limitations under the License.
  */
 
-import '../../../test/common-test-setup-karma.js';
-import './gr-comment-thread.js';
-import {GerritNav} from '../../core/gr-navigation/gr-navigation.js';
-import {SpecialFilePath, Side} from '../../../constants/constants.js';
+import '../../../test/common-test-setup-karma';
+import './gr-comment-thread';
+import {GerritNav} from '../../core/gr-navigation/gr-navigation';
+import {SpecialFilePath, Side} from '../../../constants/constants';
 import {
   sortComments,
   UIComment,
   UIRobot,
   isDraft,
   UIDraft,
-} from '../../../utils/comment-util.js';
-import {GrCommentThread} from './gr-comment-thread.js';
+} from '../../../utils/comment-util';
+import {GrCommentThread} from './gr-comment-thread';
 import {
   PatchSetNum,
   NumericChangeId,
@@ -37,14 +37,14 @@
   RepoName,
   ConfigInfo,
   EmailAddress,
-} from '../../../types/common.js';
-import {GrComment} from '../gr-comment/gr-comment.js';
-import {LineNumber} from '../../diff/gr-diff/gr-diff-line.js';
+} from '../../../types/common';
+import {GrComment} from '../gr-comment/gr-comment';
+import {LineNumber} from '../../diff/gr-diff/gr-diff-line';
 import {
   tap,
   pressAndReleaseKeyOn,
 } from '@polymer/iron-test-helpers/mock-interactions';
-import {html} from '@polymer/polymer/lib/utils/html-tag.js';
+import {html} from '@polymer/polymer/lib/utils/html-tag';
 import {stubRestApi} from '../../../test/test-utils';
 
 const basicFixture = fixtureFromElement('gr-comment-thread');
diff --git a/polygerrit-ui/app/utils/comment-util_test.ts b/polygerrit-ui/app/utils/comment-util_test.ts
index 27742cbe..3c8f26d 100644
--- a/polygerrit-ui/app/utils/comment-util_test.ts
+++ b/polygerrit-ui/app/utils/comment-util_test.ts
@@ -15,18 +15,15 @@
  * limitations under the License.
  */
 
-import '../test/common-test-setup-karma.js';
+import '../test/common-test-setup-karma';
 import {
   isUnresolved,
   getPatchRangeForCommentUrl,
   createCommentThreads,
   sortComments,
-} from './comment-util.js';
-import {
-  createComment,
-  createCommentThread,
-} from '../test/test-data-generators.js';
-import {CommentSide, Side} from '../constants/constants.js';
+} from './comment-util';
+import {createComment, createCommentThread} from '../test/test-data-generators';
+import {CommentSide, Side} from '../constants/constants';
 import {
   BasePatchSetNum,
   ParentPatchSetNum,
@@ -34,7 +31,7 @@
   RevisionPatchSetNum,
   Timestamp,
   UrlEncodedCommentId,
-} from '../types/common.js';
+} from '../types/common';
 
 suite('comment-util', () => {
   test('isUnresolved', () => {
diff --git a/polygerrit-ui/app/utils/string-util_test.ts b/polygerrit-ui/app/utils/string-util_test.ts
index 9297d90..2eef50f 100644
--- a/polygerrit-ui/app/utils/string-util_test.ts
+++ b/polygerrit-ui/app/utils/string-util_test.ts
@@ -15,8 +15,8 @@
  * limitations under the License.
  */
 
-import '../test/common-test-setup-karma.js';
-import {pluralize} from './string-util.js';
+import '../test/common-test-setup-karma';
+import {pluralize} from './string-util';
 
 suite('formatter util tests', () => {
   test('pluralize', () => {