"use client"; import { isSafeUrlForLink } from "@app/lib/launcherResourceAccess"; import Link from "next/link"; import { LauncherCopyIcon } from "./LauncherCopyIcon"; type LauncherResourceAccessProps = { accessDisplay: string; accessCopyValue: string; accessUrl?: string | null; variant: "grid" | "list"; }; export function LauncherResourceAccess({ accessDisplay, accessCopyValue, accessUrl, variant }: LauncherResourceAccessProps) { if (!accessDisplay) { return null; } const href = accessUrl ?? undefined; const canLink = href && isSafeUrlForLink(href); const copyValue = canLink ? href : accessCopyValue; if (variant === "list") { return (
{canLink ? ( {accessDisplay} ) : ( {accessDisplay} )}
); } return (
{canLink ? ( {accessDisplay} ) : ( {accessDisplay} )}
); }