-- ============================================================================ -- Phase V2-O: Expo Push Token 저장 -- 모바일 앱 로그인 시 Expo push token을 등록. 서버에서 토큰으로 notification 발송. -- ============================================================================ CREATE TABLE public.push_tokens ( id uuid PRIMARY KEY DEFAULT gen_random_uuid(), user_id uuid NOT NULL REFERENCES auth.users(id) ON DELETE CASCADE, token text NOT NULL UNIQUE, platform text NOT NULL CHECK (platform IN ('ios', 'android', 'web')), device_name text, created_at timestamptz NOT NULL DEFAULT now(), updated_at timestamptz NOT NULL DEFAULT now() ); CREATE INDEX idx_push_tokens_user_id ON public.push_tokens(user_id); ALTER TABLE public.push_tokens ENABLE ROW LEVEL SECURITY; CREATE POLICY "push_tokens_own" ON public.push_tokens FOR ALL USING (user_id = auth.uid()) WITH CHECK (user_id = auth.uid()); CREATE TRIGGER set_updated_at_push_tokens BEFORE UPDATE ON public.push_tokens FOR EACH ROW EXECUTE FUNCTION public.moddatetime();