-
- Booking
+
+ Booking
-
+
+ {day.weekday}, {day.day} {day.month} · {time}
+
+
{drive.customer_name ?? "—"}
-
-
- {day.weekday} {day.day} {day.month}
- ·
- {time}
-
>
);
@@ -530,18 +490,6 @@ function StatusPill({ status, tone }: { status: string; tone: "booked" | "comple
);
}
-function RatingStars({ value }: { value: number }) {
- const v = Math.max(0, Math.min(5, Math.round(value)));
- return (
-
-
- {"★".repeat(v)}{"★".repeat(5 - v)}
-
- {v}/5
-
- );
-}
-
function colorSwatch(color: string): string {
const c = color.toLowerCase();
if (c.includes("red") || c.includes("tango")) return "#c62828";
diff --git a/src/components/variants/VariantB.tsx b/src/components/variants/VariantB.tsx
index 87d63dd..1763586 100644
--- a/src/components/variants/VariantB.tsx
+++ b/src/components/variants/VariantB.tsx
@@ -11,7 +11,7 @@ import {
ChevronLeft, ChevronRight, Search, ArrowUp, ArrowDown, X, RefreshCw,
CheckCircle2, LogOut, Sparkles, Car, ClipboardList, PhoneOutgoing,
CalendarCheck2, MessageSquareHeart, Trophy, ArrowLeft, ChevronDown, ChevronUp,
- Plus, PlayCircle, ExternalLink,
+ Plus, PlayCircle, ExternalLink, Inbox, Star, ThumbsUp, ThumbsDown, User, Hash,
} from "lucide-react";
import {
BarChart as RBarChart, Bar, XAxis, YAxis, Tooltip, CartesianGrid,
@@ -108,7 +108,7 @@ export default function VariantB() {
{/* Main — clean white canvas for data */}
-
+
{detailInstanceId && activeScreenId ? (
) : activeScreenId ? (
<>
-
-
- Test-drive lifecycle
-
-
- {activeNav?.label ?? "Dashboard"}
-
-
+
+ {activeNav?.label ?? "Dashboard"}
+

-
Sales Ops
+
AI Sales Ops
@@ -188,16 +186,23 @@ function Sidebar({
);
@@ -208,9 +213,9 @@ function Sidebar({
-
+
{initials}
@@ -257,11 +262,14 @@ function DashboardContent({
return (
{/* Navy structural accent in the corner of the primary red tile */}
@@ -272,20 +280,20 @@ function DashboardContent({
/>
)}
{t.title}
{rv.loading || rv.dataLoading
- ?
+ ?
: display}
-
@@ -303,12 +311,11 @@ function DashboardContent({
.map((r) => ({ name: String(r.dimension ?? "—"), value: Number(r.value ?? 0) }))
.filter((d) => d.name !== "—" && d.value > 0);
return (
-
+
Insight
-
{c.title}
-
Distribution across the pipeline
+
{c.title}
{rv.loading || rv.dataLoading ? (
-
+
) : data.length === 0 ? (
No data yet
) : (
@@ -392,13 +399,12 @@ function RecordTable({
const submitSearch = (e: React.FormEvent) => { e.preventDefault(); rv.setQuery((q) => ({ ...q, page: 1, search: searchInput })); };
return (
-
-
-
-
Data
-
All records
-
- {total_count} leads · showing {from}–{to}
+
+
+
+
All leads
+
+ {total_count} records · showing {from}–{to}
@@ -414,7 +420,7 @@ function RecordTable({
))}