mirror of
https://github.com/TriliumNext/Notes.git
synced 2025-08-10 10:22:29 +08:00
fix(note_language): crash if user entered invalid locale
This commit is contained in:
parent
bb42b5fb19
commit
b81fd69981
@ -16,6 +16,11 @@ const TPL = `\
|
|||||||
</div>
|
</div>
|
||||||
`;
|
`;
|
||||||
|
|
||||||
|
const DEFAULT_LOCALE: Locale = {
|
||||||
|
id: "",
|
||||||
|
name: t("note_language.not_set")
|
||||||
|
};
|
||||||
|
|
||||||
export default class NoteLanguageWidget extends NoteContextAwareWidget {
|
export default class NoteLanguageWidget extends NoteContextAwareWidget {
|
||||||
|
|
||||||
private dropdown!: Dropdown;
|
private dropdown!: Dropdown;
|
||||||
@ -27,10 +32,7 @@ export default class NoteLanguageWidget extends NoteContextAwareWidget {
|
|||||||
constructor() {
|
constructor() {
|
||||||
super();
|
super();
|
||||||
this.locales = [
|
this.locales = [
|
||||||
{
|
DEFAULT_LOCALE,
|
||||||
id: "",
|
|
||||||
name: t("note_language.not_set")
|
|
||||||
},
|
|
||||||
"---",
|
"---",
|
||||||
...getAvailableLocales()
|
...getAvailableLocales()
|
||||||
];
|
];
|
||||||
@ -81,7 +83,7 @@ export default class NoteLanguageWidget extends NoteContextAwareWidget {
|
|||||||
|
|
||||||
async refreshWithNote(note: FNote) {
|
async refreshWithNote(note: FNote) {
|
||||||
const languageId = note.getLabelValue("language") ?? "";
|
const languageId = note.getLabelValue("language") ?? "";
|
||||||
const language = this.locales.find((l) => (typeof l === "object" && l.id === languageId)) as Locale;
|
const language = (this.locales.find((l) => (typeof l === "object" && l.id === languageId)) as Locale | null) ?? DEFAULT_LOCALE;
|
||||||
this.$noteLanguageDesc.text(language.name);
|
this.$noteLanguageDesc.text(language.name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user