import type { EventData } from "../components/app_context.js"; import type FNote from "../entities/fnote.js"; import { t } from "../services/i18n.js"; import protectedSessionService from "../services/protected_session.js"; import SwitchWidget from "./switch.js"; export default class ProtectedNoteSwitchWidget extends SwitchWidget { doRender() { super.doRender(); this.switchOnName = t("protect_note.toggle-on"); this.switchOnTooltip = t("protect_note.toggle-on-hint"); this.switchOffName = t("protect_note.toggle-off"); this.switchOffTooltip = t("protect_note.toggle-off-hint"); } switchOn() { if (this.noteId) { protectedSessionService.protectNote(this.noteId, true, false); } } switchOff() { if (this.noteId) { protectedSessionService.protectNote(this.noteId, false, false); } } async refreshWithNote(note: FNote) { this.isToggled = note.isProtected; } entitiesReloadedEvent({ loadResults }: EventData<"entitiesReloaded">) { if (loadResults.isNoteReloaded(this.noteId)) { this.refresh(); } } }