From 1c5077ab45dff0fff462b536d884e019b1dc4137 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 9ed42d2bac89819ed908267ca32d021653bc11c0, 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; }