From ebfc2501ab2daa4a9b9825e37f6f027806aa3a3a Mon Sep 17 00:00:00 2001 From: Chen Asraf Date: Tue, 30 May 2023 10:02:29 +0300 Subject: [PATCH] feat: show progress text on page load --- src/fp_features.ts | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/fp_features.ts b/src/fp_features.ts index 6fab525..94b924d 100644 --- a/src/fp_features.ts +++ b/src/fp_features.ts @@ -28,6 +28,9 @@ export function lastPlayedFeature(target: HTMLElement) { handled = document.location.pathname const vidId = getVideoId() const vidKey = `lastPlayedMap.${vidId}` + + updatePostDateProgress(undefined) + chrome.storage.sync.get( [vidKey, 'saveInterval', 'returnToLastTime'], ({ returnToLastTime, saveInterval = 5000, ...result }) => { @@ -49,7 +52,7 @@ export function lastPlayedFeature(target: HTMLElement) { } } -function updatePostDateProgress(progress: number) { +function updatePostDateProgress(progress: number | undefined) { const postDate = document.querySelector('.post-date') let postDateProgress: HTMLElement | undefined @@ -62,11 +65,16 @@ function updatePostDateProgress(progress: number) { postDateProgress = postDate.querySelector('.fp-max-post-date-progress') as HTMLElement } - postDateProgress.innerHTML = ` • Watched ${Intl.NumberFormat(undefined, { - style: 'percent', - maximumFractionDigits: 0, - minimumFractionDigits: 0, - }).format(progress)}` + const percent = + progress !== undefined + ? Intl.NumberFormat(undefined, { + style: 'percent', + maximumFractionDigits: 0, + minimumFractionDigits: 0, + }).format(progress) + : '?%' + + postDateProgress.innerHTML = ` • Watched ${percent}` } export function showCompletionFeature(target: HTMLElement) {