From 7e00b889a03ca241f6a09fa9f6b0ac419bba3818 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 11 Jan 2025 01:26:15 +0200 Subject: [PATCH] chore(client/ts): port api_log --- .../app/widgets/{api_log.js => api_log.ts} | 24 ++++++++++++------- 1 file changed, 15 insertions(+), 9 deletions(-) rename src/public/app/widgets/{api_log.js => api_log.ts} (77%) diff --git a/src/public/app/widgets/api_log.js b/src/public/app/widgets/api_log.ts similarity index 77% rename from src/public/app/widgets/api_log.js rename to src/public/app/widgets/api_log.ts index a3c7e41d3..d2b833a71 100644 --- a/src/public/app/widgets/api_log.js +++ b/src/public/app/widgets/api_log.ts @@ -1,3 +1,5 @@ +import type { EventData } from "../components/app_context.js"; +import type FNote from "../entities/fnote.js"; import { t } from "../services/i18n.js"; import NoteContextAwareWidget from "./note_context_aware_widget.js"; @@ -10,16 +12,16 @@ const TPL = ` max-height: 40%; position: relative; } - + .hidden-api-log { display: none; } - + .api-log-container { overflow: auto; height: 100%; } - + .close-api-log-button { padding: 5px; border: 1px solid var(--button-border-color); @@ -32,15 +34,19 @@ const TPL = ` cursor: pointer; } - +
- +
`; export default class ApiLogWidget extends NoteContextAwareWidget { + + private $logContainer!: JQuery; + private $closeButton!: JQuery; + isEnabled() { - return this.note && this.note.mime.startsWith("application/javascript;env=") && super.isEnabled(); + return !!this.note && this.note.mime.startsWith("application/javascript;env=") && super.isEnabled(); } doRender() { @@ -52,11 +58,11 @@ export default class ApiLogWidget extends NoteContextAwareWidget { this.$closeButton.on("click", () => this.toggle(false)); } - async refreshWithNote(note) { + async refreshWithNote(note: FNote) { this.$logContainer.empty(); } - apiLogMessagesEvent({ messages, noteId }) { + apiLogMessagesEvent({ messages, noteId }: EventData<"apiLogMessages">) { if (!this.isNote(noteId)) { return; } @@ -68,7 +74,7 @@ export default class ApiLogWidget extends NoteContextAwareWidget { } } - toggle(show) { + toggle(show: boolean) { this.$widget.toggleClass("hidden-api-log", !show); } }