From 0a181ecf2e0c3cdc6fc86ea3a585dbc45d984f0d Mon Sep 17 00:00:00 2001 From: Jacobtread Date: Mon, 30 Mar 2026 10:18:33 +1300 Subject: [PATCH] refactor: move pickFileName to a static member pick on FileNamePromptModal --- src/export/pdf.ts | 4 ++-- src/views/file-name-prompt-modal.ts | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/export/pdf.ts b/src/export/pdf.ts index a6ebde9..e4c6eee 100644 --- a/src/export/pdf.ts +++ b/src/export/pdf.ts @@ -4,7 +4,7 @@ import { App, Notice, Platform } from "obsidian"; import { createPdfExport, createPdfExportBlob } from "@/components/pdf/renderer"; import { TimekeepSettings, PdfExportBehavior } from "@/settings"; import { Timekeep } from "@/timekeep/schema"; -import { pickFileName } from "@/views/file-name-prompt-modal"; +import { FileNamePromptModal } from "@/views/file-name-prompt-modal"; export async function exportPdf(app: App, timekeep: Timekeep, settings: TimekeepSettings) { if (Platform.isMobileApp) { @@ -18,7 +18,7 @@ async function exportPdfMobile(app: App, timekeep: Timekeep, settings: TimekeepS const currentTime = moment(); const blob = await createPdfExportBlob(timekeep, settings, currentTime); const buffer = await blob.arrayBuffer(); - const fileName = await pickFileName(app); + const fileName = await FileNamePromptModal.pick(app); if (!fileName) return; diff --git a/src/views/file-name-prompt-modal.ts b/src/views/file-name-prompt-modal.ts index 63b7fac..a8518e1 100644 --- a/src/views/file-name-prompt-modal.ts +++ b/src/views/file-name-prompt-modal.ts @@ -12,6 +12,12 @@ export class FileNamePromptModal extends Modal { this.callback = callback; } + static pick(app: App): Promise { + return new Promise((resolve) => { + new FileNamePromptModal(app, resolve).open(); + }); + } + onOpen(): void { const { contentEl } = this; contentEl.createEl("p", { text: "Enter name to save the exported PDF file as:" }); @@ -50,9 +56,3 @@ export class FileNamePromptModal extends Modal { } } } - -export async function pickFileName(app: App): Promise { - return new Promise((resolve) => { - new FileNamePromptModal(app, resolve).open(); - }); -}