feat(client): create an empty language switcher at note level

This commit is contained in:
Elian Doran
2025-03-04 17:27:00 +02:00
parent c0c85e96ce
commit 642b84ce6b
3 changed files with 51 additions and 3 deletions

View File

@@ -0,0 +1,30 @@
import { Dropdown } from "bootstrap";
import NoteContextAwareWidget from "./note_context_aware_widget.js";
const TPL = `\
<div class="dropdown note-language-widget">
<button type="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false" class="btn btn-sm dropdown-toggle select-button note-language-button">
<span class="note-language-desc"></span>
<span class="caret"></span>
</button>
<div class="note-language-dropdown dropdown-menu dropdown-menu-left tn-dropdown-list"></div>
</div>
`;
export default class NoteLanguageWidget extends NoteContextAwareWidget {
private dropdown!: Dropdown;
private $noteLanguageDropdown!: JQuery<HTMLElement>;
private $noteLanguageButton!: JQuery<HTMLElement>;
private $noteLanguageDesc!: JQuery<HTMLElement>;
doRender() {
this.$widget = $(TPL);
this.dropdown = Dropdown.getOrCreateInstance(this.$widget.find("[data-bs-toggle='dropdown']")[0]);
this.$noteLanguageDropdown = this.$widget.find(".note-language-dropdown")
this.$noteLanguageButton = this.$widget.find(".note-language-button");
this.$noteLanguageDesc = this.$widget.find(".note-language-desc");
}
}