fix(auth): enable sync on login/logout + fix data copy + wire page-view tracking

This commit is contained in:
saravanakumardb1 2026-02-28 02:33:19 -08:00
parent 9d50a196bc
commit 1f18c53b76
3 changed files with 15 additions and 2 deletions

View File

@ -1,14 +1,23 @@
'use client';
import { useEffect } from 'react';
import { usePathname } from 'next/navigation';
import { AuthProvider } from '@/lib/auth-context';
import { initTelemetry } from '@/lib/telemetry';
import { initTelemetry, trackPageView } from '@/lib/telemetry';
import type { ReactNode } from 'react';
export function Providers({ children }: { children: ReactNode }) {
const pathname = usePathname();
useEffect(() => {
initTelemetry();
}, []);
useEffect(() => {
if (pathname) {
trackPageView(pathname);
}
}, [pathname]);
return <AuthProvider>{children}</AuthProvider>;
}

View File

@ -349,7 +349,7 @@ export default function SettingsPage() {
</button>
</div>
<p className="text-xs mt-3" style={{ color: 'var(--cm-text-tertiary)' }}>
All data is stored locally in your browser. No data is sent to any server.
Timer data is stored locally in your browser. Anonymous usage analytics are sent to improve the app.
See our <Link href="/privacy" style={{ color: 'var(--cm-accent)' }}>Privacy Policy</Link>.
</p>
</div>

View File

@ -10,6 +10,7 @@ import {
registerUser,
getMe,
setAuthToken,
setSyncEnabled,
isAuthenticated as checkAuth,
type AuthUser,
} from './platform-sync';
@ -56,6 +57,7 @@ export function AuthProvider({ children }: { children: ReactNode }) {
try {
const result = await loginUser(email, password);
setAuthToken(result.accessToken);
setSyncEnabled(true);
setUser(result.user);
return true;
} catch (err) {
@ -70,6 +72,7 @@ export function AuthProvider({ children }: { children: ReactNode }) {
try {
const result = await registerUser(email, password, displayName);
setAuthToken(result.accessToken);
setSyncEnabled(true);
setUser(result.user);
return true;
} catch (err) {
@ -82,6 +85,7 @@ export function AuthProvider({ children }: { children: ReactNode }) {
const logout = useCallback(() => {
setAuthToken(null);
setSyncEnabled(false);
setUser(null);
}, []);