ES6ify /gr-account-dropdown/*
Bug: Issue 6179
Change-Id: Ibe19aabeb6cdfe750a01ca2b31beca84f41f265d
diff --git a/polygerrit-ui/app/elements/core/gr-account-dropdown/gr-account-dropdown.js b/polygerrit-ui/app/elements/core/gr-account-dropdown/gr-account-dropdown.js
index 65c99c0..cbd0e19 100644
--- a/polygerrit-ui/app/elements/core/gr-account-dropdown/gr-account-dropdown.js
+++ b/polygerrit-ui/app/elements/core/gr-account-dropdown/gr-account-dropdown.js
@@ -14,7 +14,7 @@
(function() {
'use strict';
- var INTERPOLATE_URL_PATTERN = /\$\{([\w]+)\}/g;
+ const INTERPOLATE_URL_PATTERN = /\$\{([\w]+)\}/g;
Polymer({
is: 'gr-account-dropdown',
@@ -37,35 +37,35 @@
_switchAccountUrl: String,
},
- attached: function() {
+ attached() {
this._handleLocationChange();
this.listen(window, 'location-change', '_handleLocationChange');
- this.$.restAPI.getConfig().then(function(cfg) {
+ this.$.restAPI.getConfig().then(cfg => {
if (cfg && cfg.auth && cfg.auth.switch_account_url) {
this._switchAccountUrl = cfg.auth.switch_account_url;
} else {
this._switchAccountUrl = null;
}
this._hasAvatars = !!(cfg && cfg.plugin && cfg.plugin.has_avatars);
- }.bind(this));
+ });
},
- detached: function() {
+ detached() {
this.unlisten(window, 'location-change', '_handleLocationChange');
},
- _getLinks: function(switchAccountUrl, path) {
- var links = [{name: 'Settings', url: '/settings'}];
+ _getLinks(switchAccountUrl, path) {
+ const links = [{name: 'Settings', url: '/settings'}];
if (switchAccountUrl) {
- var replacements = {path: path};
- var url = this._interpolateUrl(switchAccountUrl, replacements);
- links.push({name: 'Switch account', url: url});
+ const replacements = {path};
+ const url = this._interpolateUrl(switchAccountUrl, replacements);
+ links.push({name: 'Switch account', url});
}
links.push({name: 'Sign out', url: '/logout'});
return links;
},
- _getTopContent: function(account) {
+ _getTopContent(account) {
// if (!account) { return []; }
return [
{text: account.name, bold: true},
@@ -73,15 +73,15 @@
];
},
- _handleLocationChange: function() {
+ _handleLocationChange() {
this._path =
window.location.pathname +
window.location.search +
window.location.hash;
},
- _interpolateUrl: function(url, replacements) {
- return url.replace(INTERPOLATE_URL_PATTERN, function(match, p1) {
+ _interpolateUrl(url, replacements) {
+ return url.replace(INTERPOLATE_URL_PATTERN, (match, p1) => {
return replacements[p1] || '';
});
},
diff --git a/polygerrit-ui/app/elements/core/gr-account-dropdown/gr-account-dropdown_test.html b/polygerrit-ui/app/elements/core/gr-account-dropdown/gr-account-dropdown_test.html
index 3e109a8..0d1a295 100644
--- a/polygerrit-ui/app/elements/core/gr-account-dropdown/gr-account-dropdown_test.html
+++ b/polygerrit-ui/app/elements/core/gr-account-dropdown/gr-account-dropdown_test.html
@@ -33,28 +33,28 @@
</test-fixture>
<script>
- suite('gr-account-dropdown tests', function() {
- var element;
+ suite('gr-account-dropdown tests', () => {
+ let element;
- setup(function() {
+ setup(() => {
stub('gr-rest-api-interface', {
- getConfig: function() { return Promise.resolve({}); },
+ getConfig() { return Promise.resolve({}); },
});
element = fixture('basic');
});
- test('account information', function() {
+ test('account information', () => {
element.account = {name: 'John Doe', email: 'john@doe.com'};
assert.deepEqual(element.topContent,
[{text: 'John Doe', bold: true}, {text: 'john@doe.com'}]);
});
- test('switch account', function() {
+ test('switch account', () => {
// No switch account link.
assert.equal(element._getLinks(null).length, 2);
// Unparameterized switch account link.
- var links = element._getLinks('/switch-account');
+ let links = element._getLinks('/switch-account');
assert.equal(links.length, 3);
assert.deepEqual(links[1],
{name: 'Switch account', url: '/switch-account'});
@@ -66,12 +66,12 @@
{name: 'Switch account', url: '/switch-account/c/123'});
});
- test('_interpolateUrl', function() {
- var replacements = {
- 'foo': 'bar',
- 'test': 'TEST',
+ test('_interpolateUrl', () => {
+ const replacements = {
+ foo: 'bar',
+ test: 'TEST',
};
- var interpolate = function(url) {
+ const interpolate = function(url) {
return element._interpolateUrl(url, replacements);
};