"use client";

// 최소 서비스워커 등록.
//   - production 빌드에서만 등록 — dev (next dev / HMR) 환경에선 SW 가 HMR 응답을
//     이상하게 가로채는 케이스가 있어 의도적으로 우회.
//   - 등록 실패는 silently 무시 (Safari private mode, http://0.0.0.0 같은 secure context
//     아닌 호스트, 브라우저 정책 거부 등). PWA install 자격만 못 갖출 뿐 앱 기능엔 영향 없음.

import { useEffect } from "react";

export function PwaRegister() {
  useEffect(() => {
    if (typeof window === "undefined") return;
    if (!("serviceWorker" in navigator)) return;
    if (process.env.NODE_ENV !== "production") return;
    navigator.serviceWorker.register("/sw.js").catch(() => {
      /* noop — 등록 실패 시 PWA 기능만 비활성. */
    });
  }, []);
  return null;
}
