mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 18:36:30 +01:00 
			
		
		
		
	feat(client): display list of languages
This commit is contained in:
		| @@ -1,5 +1,6 @@ | ||||
| import { Dropdown } from "bootstrap"; | ||||
| import NoteContextAwareWidget from "./note_context_aware_widget.js"; | ||||
| import { getAvailableLocales, type Locale } from "../services/i18n.js"; | ||||
|  | ||||
| const TPL = `\ | ||||
| <div class="dropdown note-language-widget"> | ||||
| @@ -21,10 +22,28 @@ export default class NoteLanguageWidget extends NoteContextAwareWidget { | ||||
|     doRender() { | ||||
|         this.$widget = $(TPL); | ||||
|         this.dropdown = Dropdown.getOrCreateInstance(this.$widget.find("[data-bs-toggle='dropdown']")[0]); | ||||
|         this.$widget.on("show.bs.dropdown", () => this.renderDropdown()); | ||||
|  | ||||
|         this.$noteLanguageDropdown = this.$widget.find(".note-language-dropdown") | ||||
|         this.$noteLanguageButton = this.$widget.find(".note-language-button"); | ||||
|         this.$noteLanguageDesc = this.$widget.find(".note-language-desc"); | ||||
|     } | ||||
|  | ||||
|     renderDropdown() { | ||||
|         this.$noteLanguageDropdown.empty(); | ||||
|  | ||||
|         if (!this.note) { | ||||
|             return; | ||||
|         } | ||||
|  | ||||
|         for (const locale of getAvailableLocales()) { | ||||
|             const $title = $("<span>").text(locale.name); | ||||
|             const $link = $('<a class="dropdown-item">') | ||||
|                 .attr("data-language", locale.id) | ||||
|                 .append('<span class="check">✓</span> ') | ||||
|                 .append($title); | ||||
|             this.$noteLanguageDropdown.append($link); | ||||
|         } | ||||
|     } | ||||
|  | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user