Skip to content
Snippets Groups Projects
Commit 45fcb657 authored by Reiter, Christoph's avatar Reiter, Christoph :snake:
Browse files

Implement setter for the next language

parent 9ff1b333
No related branches found
No related tags found
No related merge requests found
...@@ -21,14 +21,22 @@ class LanguageSelect extends LitElement { ...@@ -21,14 +21,22 @@ class LanguageSelect extends LitElement {
i18n.t('en-action'); i18n.t('en-action');
} }
_getNextLanguage() { _getNextLanguage(lang) {
var index = this.languages.indexOf(this.lang); var index = this.languages.indexOf(lang);
var next = this.languages[index + 1]; var next = this.languages[index + 1];
if (typeof next === 'undefined') if (typeof next === 'undefined')
next = this.languages[0]; next = this.languages[0];
return next; return next;
} }
_getPreviousLanguage(lang) {
var index = this.languages.indexOf(lang);
var prev = this.languages[index - 1];
if (typeof prev === 'undefined')
prev = this.languages[this.languages.length - 1];
return prev;
}
static get properties() { static get properties() {
return { return {
lang: {type: String}, lang: {type: String},
...@@ -63,10 +71,11 @@ class LanguageSelect extends LitElement { ...@@ -63,10 +71,11 @@ class LanguageSelect extends LitElement {
} }
set next(value) { set next(value) {
this.lang = this._getPreviousLanguage(value);
} }
get next() { get next() {
return this._getNextLanguage(); return this._getNextLanguage(this.lang);
} }
static get styles() { static get styles() {
......
...@@ -34,6 +34,16 @@ describe('vpu-language-select basics', () => { ...@@ -34,6 +34,16 @@ describe('vpu-language-select basics', () => {
expect(node.next).to.equal('en'); expect(node.next).to.equal('en');
expect(events.length).to.equal(2); expect(events.length).to.equal(2);
}); });
it('change next', () => {
node.lang = 'en';
expect(node.next).to.equal('de');
expect(node.lang).to.equal('en');
node.next = 'en';
expect(node.next).to.equal('en');
expect(node.lang).to.equal('de');
expect(events.length).to.equal(2);
});
}); });
describe('vpu-language-select demo', () => { describe('vpu-language-select demo', () => {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment