website refactor
This commit is contained in:
@@ -6,12 +6,11 @@ import { BarChart3, Building2, ChevronDown, CreditCard, Handshake, LogOut, Megap
|
||||
import Link from 'next/link';
|
||||
import React, { useEffect, useMemo, useState } from 'react';
|
||||
|
||||
import DriverSummaryPill from '@/components/profile/DriverSummaryPill';
|
||||
import { CapabilityGate } from '@/components/shared/CapabilityGate';
|
||||
import { useEffectiveDriverId } from '@/hooks/useEffectiveDriverId';
|
||||
import type { DriverViewModel } from '@/lib/view-models/DriverViewModel';
|
||||
import { DriverViewModel as DriverViewModelClass } from '@/lib/view-models/DriverViewModel';
|
||||
import { useFindDriverById } from '@/hooks/driver/useFindDriverById';
|
||||
import { useEffectiveDriverId } from '@/lib/hooks/useEffectiveDriverId';
|
||||
import type { DriverViewModel } from '@/lib/view-models/view-models/DriverViewModel';
|
||||
import { DriverViewModel as DriverViewModelClass } from '@/lib/view-models/view-models/DriverViewModel';
|
||||
import { useFindDriverById } from '@/lib/hooks/driver/useFindDriverById';
|
||||
|
||||
// Hook to detect demo user mode based on session
|
||||
function useDemoUserMode(): { isDemo: boolean; demoRole: string | null } {
|
||||
@@ -27,8 +26,8 @@ function useDemoUserMode(): { isDemo: boolean; demoRole: string | null } {
|
||||
|
||||
const email = session.user.email?.toLowerCase() || '';
|
||||
const displayName = session.user.displayName?.toLowerCase() || '';
|
||||
const primaryDriverId = (session.user as any).primaryDriverId || '';
|
||||
const role = (session.user as any).role;
|
||||
const primaryDriverId = session.user.primaryDriverId || '';
|
||||
const role = 'role' in session.user ? (session.user as { role?: string }).role : undefined;
|
||||
|
||||
// Check if this is a demo user
|
||||
if (email.includes('demo') ||
|
||||
@@ -151,7 +150,7 @@ export default function UserPill() {
|
||||
// Transform DTO to ViewModel
|
||||
const driver = useMemo(() => {
|
||||
if (!driverDto) return null;
|
||||
return new DriverViewModelClass({ ...driverDto, avatarUrl: (driverDto as any).avatarUrl ?? null });
|
||||
return new DriverViewModelClass({ ...driverDto, avatarUrl: driverDto.avatarUrl ?? null });
|
||||
}, [driverDto]);
|
||||
|
||||
const data = useMemo(() => {
|
||||
|
||||
Reference in New Issue
Block a user