"use client";

/**
 * NspdVerifyLink — tertiary-link «Проверить на НСПД» / «Открыть на ПКК».
 *
 * Issue #97 — кнопка-верификация: открывает официальный бесплатный госсервис
 * (НСПД / ПКК Росреестра) по кадастровому номеру в новой вкладке, чтобы
 * пользователь мог сверить данные Site Finder с первоисточником одним кликом.
 *
 * Tertiary CTA (ui-conventions): text-only link с иконкой, токены, без hex.
 */

import { ExternalLink } from "lucide-react";

import { nspdMapUrl, pkkSearchUrl } from "@/lib/nspdLinks";

interface Props {
  cadNum: string;
  /** Какой источник открывать. nspd — карта-вьюер НСПД, pkk — ПКК Росреестра. */
  source?: "nspd" | "pkk";
  /** Переопределить подпись (по умолчанию зависит от source). */
  label?: string;
}

export function NspdVerifyLink({ cadNum, source = "nspd", label }: Props) {
  if (!cadNum) return null;

  const href = source === "pkk" ? pkkSearchUrl(cadNum) : nspdMapUrl(cadNum);
  const text =
    label ?? (source === "pkk" ? "Открыть на ПКК" : "Проверить на НСПД");

  return (
    <a
      href={href}
      target="_blank"
      rel="noopener noreferrer"
      style={{
        display: "inline-flex",
        alignItems: "center",
        gap: 4,
        fontSize: 12,
        fontWeight: 500,
        color: "var(--accent)",
        textDecoration: "none",
        whiteSpace: "nowrap",
      }}
      title={`Сверить данные с официальным источником: ${cadNum}`}
    >
      <ExternalLink size={14} strokeWidth={1.5} />
      {text}
    </a>
  );
}
