diff options
Diffstat (limited to 'apps/files/src/services/PreviewService.ts')
-rw-r--r-- | apps/files/src/services/PreviewService.ts | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/apps/files/src/services/PreviewService.ts b/apps/files/src/services/PreviewService.ts new file mode 100644 index 00000000000..6dbb67f30b6 --- /dev/null +++ b/apps/files/src/services/PreviewService.ts @@ -0,0 +1,21 @@ +/** + * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ + +// The preview service worker cache name (see webpack config) +const SWCacheName = 'previews' + +/** + * Check if the preview is already cached by the service worker + * @param previewUrl URL to check + */ +export async function isCachedPreview(previewUrl: string): Promise<boolean> { + if (!window?.caches?.open) { + return false + } + + const cache = await window.caches.open(SWCacheName) + const response = await cache.match(previewUrl) + return response !== undefined +} |