'use client';
import { useRouter } from 'next/navigation';
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card';
import { FileText, Layout, Upload, BookOpen, Fuel } from 'lucide-react';
import Image from 'next/image';
import { useKindeBrowserClient } from "@kinde-oss/kinde-auth-nextjs";
interface AppTile {
id: string;
title: string;
description: string;
icon: React.ReactNode;
href: string;
color: string;
}
export default function DashboardPage() {
const router = useRouter();
const { isAuthenticated, accessToken } = useKindeBrowserClient();
const roles = accessToken?.roles || [];
const permissions = accessToken?.permissions || [];
// Extract role keys for easier checking
const roleKeys = roles.map(role => role.key);
// Check if user has admin role
const hasAdminRole = isAuthenticated && roleKeys.includes('admin');
// Check if user has customer role and cintas_access permission
const hasCustomerRole = isAuthenticated && roleKeys.includes('customer');
const hasCintasAccess = permissions.includes('cintas_access');
// Check if user can access Cintas summary
const canAccessCintasSummary = hasAdminRole || (hasCustomerRole && hasCintasAccess);
const allApps: AppTile[] = [
{
id: 'files',
title: 'Files',
description: 'Manage and organize your uploaded files',
icon:
Select an application to get started
Click on any application to access its features