diff options
| author | MohamedBassem <me@mbassem.com> | 2024-03-05 19:38:34 +0000 |
|---|---|---|
| committer | MohamedBassem <me@mbassem.com> | 2024-03-05 19:38:34 +0000 |
| commit | 2413f0efee2dcb4cd4c9389f5a496d4b3f71335c (patch) | |
| tree | 4ebc862412cb4f31cd94a7190cb610975210c461 /packages/web/lib | |
| parent | ed9874f4d0b327a09aaed28717d98be787f0ebf6 (diff) | |
| download | karakeep-2413f0efee2dcb4cd4c9389f5a496d4b3f71335c.tar.zst | |
fix: Show loading indicators in the bookmark preview page
Diffstat (limited to 'packages/web/lib')
| -rw-r--r-- | packages/web/lib/bookmarkUtils.tsx | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/packages/web/lib/bookmarkUtils.tsx b/packages/web/lib/bookmarkUtils.tsx new file mode 100644 index 00000000..a2828c29 --- /dev/null +++ b/packages/web/lib/bookmarkUtils.tsx @@ -0,0 +1,22 @@ +import { ZBookmark } from "@hoarder/trpc/types/bookmarks"; + +const MAX_LOADING_MSEC = 30 * 1000; + +export function isBookmarkStillCrawling(bookmark: ZBookmark) { + return ( + bookmark.content.type == "link" && + !bookmark.content.crawledAt && + Date.now().valueOf() - bookmark.createdAt.valueOf() < MAX_LOADING_MSEC + ); +} + +export function isBookmarkStillTagging(bookmark: ZBookmark) { + return ( + bookmark.taggingStatus == "pending" && + Date.now().valueOf() - bookmark.createdAt.valueOf() < MAX_LOADING_MSEC + ); +} + +export function isBookmarkStillLoading(bookmark: ZBookmark) { + return isBookmarkStillTagging(bookmark) || isBookmarkStillCrawling(bookmark); +} |
