From d1d71ffdbbe639c309e1fe06d0c2db0bfcdbea09 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Thu, 17 Feb 2022 16:28:48 +1000 Subject: [PATCH] add back support for custom mount point in congrats screen This was inadvertently dropped in 478b3a53f1afb7614f8b5ede40fd09d81574aeb9, but AnkiWeb requires it. In the future we will need to give these index pages a bit more thought, as it's not very helpful to be exporting a creation function if we're automatically mounting as the module is imported. Dropping the automatic mounting would give us more flexibility, but currently that leads to a FOUC in night mode, as the webview is revealed prior to a subsequent web.eval() call being able to fire. --- ts/congrats/index.ts | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/ts/congrats/index.ts b/ts/congrats/index.ts index 446f394de..bdea5f60b 100644 --- a/ts/congrats/index.ts +++ b/ts/congrats/index.ts @@ -14,16 +14,21 @@ export async function setupCongrats(): Promise { checkNightMode(); await i18n; + const customMountPoint = document.getElementById("congrats"); const info = await scheduler.congratsInfo(empty); const page = new CongratsPage({ - target: document.body, + // use #congrats if it exists, otherwise entire body + target: customMountPoint ?? document.body, props: { info }, }); - setInterval(async () => { - const info = await scheduler.congratsInfo(empty); - page.$set({ info }); - }, 60000); + // refresh automatically if a custom area not provided + if (!customMountPoint) { + setInterval(async () => { + const info = await scheduler.congratsInfo(empty); + page.$set({ info }); + }, 60000); + } return page; }