diff --git a/server/private/routers/approvals/listApprovals.ts b/server/private/routers/approvals/listApprovals.ts index d518555f..e00d4ec8 100644 --- a/server/private/routers/approvals/listApprovals.ts +++ b/server/private/routers/approvals/listApprovals.ts @@ -85,6 +85,7 @@ async function queryApprovals( email: users.email }, clientName: clients.name, + niceId: clients.niceId, deviceModel: fingerprints.deviceModel, fingerprintPlatform: fingerprints.platform, fingerprintOsVersion: fingerprints.osVersion, @@ -165,7 +166,8 @@ async function queryApprovals( return { ...rest, deviceName, - fingerprint + fingerprint, + niceId: approval.niceId || null }; }); } diff --git a/src/components/ApprovalFeed.tsx b/src/components/ApprovalFeed.tsx index fdc3c1aa..c5d4528b 100644 --- a/src/components/ApprovalFeed.tsx +++ b/src/components/ApprovalFeed.tsx @@ -4,19 +4,18 @@ import { toast } from "@app/hooks/useToast"; import { createApiClient, formatAxiosError } from "@app/lib/api"; import { getUserDisplayName } from "@app/lib/getUserDisplayName"; import { cn } from "@app/lib/cn"; -import { formatFingerprintInfo, formatPlatform } from "@app/lib/formatDeviceFingerprint"; +import { formatFingerprintInfo } from "@app/lib/formatDeviceFingerprint"; import { approvalFiltersSchema, approvalQueries, type ApprovalItem } from "@app/lib/queries"; import { useQuery } from "@tanstack/react-query"; -import { ArrowRight, Ban, Check, Laptop, Smartphone, RefreshCw } from "lucide-react"; +import { ArrowRight, Ban, Check, LaptopMinimal, RefreshCw } from "lucide-react"; import { useTranslations } from "next-intl"; import Link from "next/link"; import { usePathname, useRouter, useSearchParams } from "next/navigation"; import { Fragment, useActionState } from "react"; -import type { LucideIcon } from "lucide-react"; import { Badge } from "./ui/badge"; import { Button } from "./ui/button"; import { Card, CardHeader } from "./ui/card"; @@ -200,19 +199,19 @@ function ApprovalRequest({ approval, orgId, onSuccess }: ApprovalRequestProps) {   {approval.type === "user_device" && ( - {approval.deviceName ? ( - <> - {t("requestingNewDeviceApproval")}:{" "} - {approval.clientId ? ( - - {approval.deviceName} - - ) : ( - {approval.deviceName} - )} + {approval.deviceName ? ( + <> + {t("requestingNewDeviceApproval")}:{" "} + {approval.niceId ? ( + + {approval.deviceName} + + ) : ( + {approval.deviceName} + )} {approval.fingerprint && (
@@ -265,21 +264,6 @@ function ApprovalRequest({ approval, orgId, onSuccess }: ApprovalRequestProps) { {approval.decision === "denied" && ( {t("denied")} )} - - {approval.clientId && ( - - )}
); diff --git a/src/lib/queries.ts b/src/lib/queries.ts index f471c5a2..874f7790 100644 --- a/src/lib/queries.ts +++ b/src/lib/queries.ts @@ -334,6 +334,7 @@ export type ApprovalItem = { approvalId: number; orgId: string; clientId: number | null; + niceId: string | null; decision: "pending" | "approved" | "denied"; type: "user_device"; user: {