@@ -52,7 +52,7 @@ export default function RecoveryPlanTab() {
{/* PASSENGER CARE */}
-
+
PASSENGER CARE
diff --git a/src/app/recoveryIncidents/tabs/SummaryTab.tsx b/src/app/recoveryIncidents/tabs/SummaryTab.tsx
index a5f186f..a99a89a 100644
--- a/src/app/recoveryIncidents/tabs/SummaryTab.tsx
+++ b/src/app/recoveryIncidents/tabs/SummaryTab.tsx
@@ -1,5 +1,5 @@
-import { Sparkle, User, ArrowRight } from '@phosphor-icons/react';
-import { CustomButton } from '../../../components/custom';
+import { SparkleIcon, UserIcon, ArrowRightIcon } from "@phosphor-icons/react";
+import { CustomButton } from "../../../components/custom";
export default function SummaryTab() {
return (
@@ -8,83 +8,110 @@ export default function SummaryTab() {
{/* Subtle decorative glow */}
-
+
-
-
AI STRATEGIC ASSESSMENT
+
+
+
+
+ AI STRATEGIC ASSESSMENT
+
-
+
- "Analysis of JOHN WICK's history and the flight disruption suggest this is a high-retention opportunity. Automated settlement is recommended to maintain NPS within the Platinum segment."
+ "Analysis of JOHN WICK's history and the flight disruption suggest
+ this is a high-retention opportunity. Automated settlement is
+ recommended to maintain NPS within the Platinum segment."
{/* Row of 3 Cards */}
-
{/* INCIDENT ROOT */}
-
INCIDENT ROOT
-
+
+ INCIDENT ROOT
+
+
- Recovery Source
- Simulation Engine
+
+ Recovery Source
+
+
+ Simulation Engine
+
-
+
- Policy Applied
- Standard Policy
+
+ Policy Applied
+
+
+ Standard Policy
+
-
+
- Jurisdiction
- EU261
+
+ Jurisdiction
+
+
+ EU261
+
{/* ASSIGNMENT */}
-
ASSIGNMENT
-
+
+ ASSIGNMENT
+
+
-
-
"Coming soon"
-
-
-
-
-
-
-
-
Emma Watson
-
Case Officer
-
+
+
+ "Coming soon"
+
+
+
+
+
+
-
}
- className="w-full !border-gray-200 !text-gray-600 !font-semibold hover:!bg-gray-50"
- >
- Change Assignee
-
-
+
+
Emma Watson
+
Case Officer
+
+
+
}
+ className="w-full !border-gray-200 !text-gray-600 !font-semibold hover:!bg-gray-50"
+ >
+ Change Assignee
+
+
{/* RECOVERY SCORE */}
-
RECOVERY SCORE
-
+
+ RECOVERY SCORE
+
+
- 75
+
+ 75
+
/ 100
-
+
- Manual review recommended. Aligns with standard EU261 recovery logic.
+ Manual review recommended. Aligns with standard EU261 recovery
+ logic.
-
);
diff --git a/src/app/recoveryIncidents/tabs/index.tsx b/src/app/recoveryIncidents/tabs/index.tsx
index af00601..462e8fc 100644
--- a/src/app/recoveryIncidents/tabs/index.tsx
+++ b/src/app/recoveryIncidents/tabs/index.tsx
@@ -1,11 +1,12 @@
import { useState } from 'react';
import { useParams } from 'react-router-dom';
-import { ArrowsClockwise, User, AirplaneTilt, Checks, X, ClockCounterClockwise, Sparkle, ArrowLeft } from '@phosphor-icons/react';
+import {User, Checks, X, ClockCounterClockwiseIcon, ArrowLeftIcon, ArrowsClockwiseIcon, AirplaneTiltIcon } from '@phosphor-icons/react';
import { CustomButton, CustomTabs, CustomBackButton, CustomStatus } from '../../../components/custom';
import SummaryTab from './SummaryTab';
import CaseDetailsTab from './CaseDetailsTab';
import RecoveryPlanTab from './RecoveryPlanTab';
import AuditTrailTab from './AuditTrailTab';
+import { SparkleIcon } from 'lucide-react';
export default function RecoveryIncidentTabs() {
const { id } = useParams();
@@ -48,11 +49,11 @@ export default function RecoveryIncidentTabs() {
}
className="!bg-[#1B9869] hover:!bg-[#14704E] !text-white !font-semibold !rounded-lg !px-5 !py-2.5"
>
RE-RUN ENGINE
@@ -104,7 +105,7 @@ export default function RecoveryIncidentTabs() {
{/* Sidebar Content */}
-
+
AI RECOMMENDATION
@@ -136,7 +137,7 @@ export default function RecoveryIncidentTabs() {
}
+ rightIcon={
}
className="w-full !py-3 !bg-[#1B9869]/50 !text-white !font-semibold !rounded-lg"
>
EXECUTE RECOMMENDATION
@@ -159,7 +160,7 @@ export default function RecoveryIncidentTabs() {
}
+ leftIcon={
}
className="!bg-[#FEF3C7] !text-[#B45309] !font-bold !rounded-lg !border !border-[#B45309] hover:!bg-[#FDE68A]"
>
MARK FOR REVIEW
diff --git a/src/layout/AppSidebar.tsx b/src/layout/AppSidebar.tsx
index 764fe67..0ab4fdc 100644
--- a/src/layout/AppSidebar.tsx
+++ b/src/layout/AppSidebar.tsx
@@ -1,27 +1,27 @@
-import { useState } from 'react';
-import { Link, useLocation } from 'react-router-dom';
+import { useState } from "react";
+import { Link, useLocation } from "react-router-dom";
import {
- ShieldCheck,
- Gear,
- ClockCounterClockwise,
- CaretDoubleRight,
- SquaresFour,
- Faders,
- ArrowsClockwise,
- UsersFour,
- CaretDoubleLeft,
- SignOut,
- Question
-} from '@phosphor-icons/react';
+ SquaresFourIcon,
+ FadersIcon,
+ ArrowsClockwiseIcon,
+ UsersFourIcon,
+ CaretDoubleLeftIcon,
+ QuestionIcon,
+ SignOutIcon,
+ GearIcon,
+ ClockCounterClockwiseIcon,
+ CaretDoubleRightIcon,
+} from "@phosphor-icons/react";
+import { ShieldCheckIcon } from "lucide-react";
const NAV_ITEMS = [
- { label: 'Dashboard', path: '/', icon: SquaresFour },
- { label: 'Simulation Engine', path: '/simulation', icon: Faders },
- { label: 'Recovery Incidents', path: '/recovery', icon: ArrowsClockwise },
- { label: 'Cohort Management', path: '/cohorts', icon: UsersFour },
- { label: 'Policy Engine', path: '/policy-engine', icon: ShieldCheck },
- { label: 'Configuration', path: '/config', icon: Gear },
- { label: 'Audit Logs', path: '/audit', icon: ClockCounterClockwise },
+ { label: "Dashboard", path: "/", icon: SquaresFourIcon },
+ { label: "Simulation Engine", path: "/simulation", icon: FadersIcon },
+ { label: "Recovery Incidents", path: "/recovery", icon: ArrowsClockwiseIcon },
+ { label: "Cohort Management", path: "/cohorts", icon: UsersFourIcon },
+ { label: "Policy Engine", path: "/policy-engine", icon: ShieldCheckIcon },
+ { label: "Configuration", path: "/config", icon: GearIcon },
+ { label: "Audit Logs", path: "/audit", icon: ClockCounterClockwiseIcon },
];
interface AppSidebarProps {
@@ -37,47 +37,70 @@ export default function AppSidebar({ isOpen, onClose }: AppSidebarProps) {
<>
{/* Mobile overlay */}
{isOpen && (
-
)}
-
-
{/* Logo Area */}
-
+
{!isCollapsed && (
-
Aero Resolve
+
+ Aero Resolve
+
)}
-
-
-
-
setIsCollapsed(!isCollapsed)}
- className={`hidden lg:block text-slate-400 hover:text-slate-600 transition-colors ${isCollapsed ? '' : 'ml-auto'}`}
+
- {isCollapsed ? : }
+
+
+ setIsCollapsed(!isCollapsed)}
+ className={`hidden lg:block text-slate-400 hover:text-slate-600 transition-colors ${isCollapsed ? "" : "ml-auto"}`}
+ >
+ {isCollapsed ? (
+
+ ) : (
+
+ )}
-
-
{/* Navigation */}
-
+
{NAV_ITEMS.map((item) => {
- const isActive = location.pathname === item.path || (item.path !== '/' && location.pathname.startsWith(item.path));
+ const isActive =
+ location.pathname === item.path ||
+ (item.path !== "/" && location.pathname.startsWith(item.path));
const Icon = item.icon;
-
+
return (
{
if (window.innerWidth < 1024) onClose();
}}
- className={`group flex items-center ${isCollapsed ? 'justify-center px-0 w-12 mx-auto' : 'gap-3 px-3.5'} py-[10px] rounded-[12px] text-[13px] transition-all duration-200 relative ${
+ className={`group flex items-center ${isCollapsed ? "justify-center px-0 w-12 mx-auto" : "gap-3 px-3.5"} py-[10px] rounded-[12px] text-[13px] transition-all duration-200 relative ${
isActive
- ? 'bg-gradient-to-b from-primary to-primary-dark text-white shadow-md shadow-primary/20 font-semibold'
- : 'text-[#475569] font-medium hover:bg-slate-200/40 hover:text-slate-900'
+ ? "bg-gradient-to-b from-primary to-primary-dark text-white shadow-md shadow-primary/20 font-semibold"
+ : "text-[#475569] font-medium hover:bg-slate-200/40 hover:text-slate-900"
}`}
>
-
-
+
{!isCollapsed && (
{item.label}
)}
@@ -107,26 +130,57 @@ export default function AppSidebar({ isOpen, onClose }: AppSidebarProps) {
{/* Bottom Section Card */}
-
+
{/* Soft decorative glow */}
- {!isCollapsed &&
}
-
-
-
-
- {!isCollapsed && Sign Out }
+ {!isCollapsed && (
+
+ )}
+
+
+
+
+ {!isCollapsed && (
+ Sign Out
+ )}
-
-
- {!isCollapsed && Help center }
+
+
+ {!isCollapsed && (
+ Help center
+ )}
-
-
+
+
{!isCollapsed && (
- Admin Demo
- System Administrator
+
+ Admin Demo
+
+
+ System Administrator
+
)}