From df5a6201bdf8ff9edfc6429b918cf2fd2b245684 Mon Sep 17 00:00:00 2001 From: joonhoekim <26rote@gmail.com> Date: Mon, 3 Nov 2025 17:21:09 +0900 Subject: (김준회) Revert: 로그인 영상 관련 커밋 revert 처리 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/service-worker/register.ts | 118 ----------------------------------------- 1 file changed, 118 deletions(-) delete mode 100644 lib/service-worker/register.ts (limited to 'lib') diff --git a/lib/service-worker/register.ts b/lib/service-worker/register.ts deleted file mode 100644 index 8babf788..00000000 --- a/lib/service-worker/register.ts +++ /dev/null @@ -1,118 +0,0 @@ -/** - * Service Worker 등록 유틸리티 - * - * 클라이언트 측에서 Service Worker를 등록하고 - * 캐시 상태를 확인할 수 있는 헬퍼 함수들 - */ - -export interface CacheStatus { - total: number; - cached: number; - urls: Array<{ url: string; cached: boolean }>; -} - -/** - * Service Worker 등록 - */ -export async function registerServiceWorker(): Promise { - if (typeof window === 'undefined' || !('serviceWorker' in navigator)) { - console.log('Service Worker not supported (supports https or localhost only)'); - return null; - } - - try { - const registration = await navigator.serviceWorker.register('/service-worker.js', { - scope: '/', - }); - - console.log('Service Worker registered:', registration); - - // 업데이트 확인 - registration.addEventListener('updatefound', () => { - const newWorker = registration.installing; - console.log('Service Worker update found'); - - newWorker?.addEventListener('statechange', () => { - if (newWorker.state === 'installed' && navigator.serviceWorker.controller) { - console.log('New Service Worker available. Refresh to update.'); - // 필요시 사용자에게 알림 표시 가능 - } - }); - }); - - return registration; - } catch (error) { - console.error('Service Worker registration failed:', error); - return null; - } -} - -/** - * Service Worker 캐시 상태 확인 - */ -export async function getCacheStatus(): Promise { - if (typeof window === 'undefined' || !navigator.serviceWorker.controller) { - return null; - } - - return new Promise((resolve) => { - const messageChannel = new MessageChannel(); - - messageChannel.port1.onmessage = (event) => { - resolve(event.data); - }; - - navigator.serviceWorker.controller.postMessage( - { type: 'GET_CACHE_STATUS' }, - [messageChannel.port2] - ); - - // 타임아웃 설정 (3초) - setTimeout(() => resolve(null), 3000); - }); -} - -/** - * Service Worker 캐시 삭제 - */ -export async function clearCache(): Promise { - if (typeof window === 'undefined' || !navigator.serviceWorker.controller) { - return false; - } - - return new Promise((resolve) => { - const messageChannel = new MessageChannel(); - - messageChannel.port1.onmessage = (event) => { - resolve(event.data.success); - }; - - navigator.serviceWorker.controller.postMessage( - { type: 'CLEAR_CACHE' }, - [messageChannel.port2] - ); - - setTimeout(() => resolve(false), 3000); - }); -} - -/** - * Service Worker 등록 해제 - */ -export async function unregisterServiceWorker(): Promise { - if (typeof window === 'undefined' || !('serviceWorker' in navigator)) { - return false; - } - - try { - const registrations = await navigator.serviceWorker.getRegistrations(); - for (const registration of registrations) { - await registration.unregister(); - } - return true; - } catch (error) { - console.error('Service Worker unregistration failed:', error); - return false; - } -} - -- cgit v1.2.3