snappymail/dev/View/Popup/Languages.js

30 lines
665 B
JavaScript
Raw Normal View History

import ko from 'ko';
2016-06-30 08:02:45 +08:00
import { convertLangName } from 'Common/Translator';
2016-06-30 08:02:45 +08:00
import { AbstractViewPopup } from 'Knoin/AbstractViews';
2016-06-30 08:02:45 +08:00
2022-02-24 21:01:41 +08:00
export class LanguagesPopupView extends AbstractViewPopup {
constructor() {
super('Languages');
this.fLang = null;
this.languages = ko.observableArray();
}
2016-06-30 08:02:45 +08:00
onShow(fLanguage, langs, userLanguage) {
this.fLang = fLanguage;
this.languages(langs.map(language => ({
key: language,
user: userLanguage === language,
selected: fLanguage?.() === language,
fullName: convertLangName(language),
title: convertLangName(language, true)
})));
}
2016-06-30 08:02:45 +08:00
changeLanguage(lang) {
2022-09-02 17:52:07 +08:00
this.fLang?.(lang);
this.close();
2016-06-30 08:02:45 +08:00
}
}