← back to Norma

components/api-registry/ApiRegistryButton.tsx

25 lines

'use client';

import { useState } from 'react';
import { KeyRound } from 'lucide-react';
import ApiRegistryModal from './ApiRegistryModal';

// Single button + modal entry point. Drop anywhere admin-visible.
export default function ApiRegistryButton({ variant = 'primary' }: { variant?: 'primary' | 'secondary' | 'ghost' }) {
  const [open, setOpen] = useState(false);
  return (
    <>
      <button
        onClick={() => setOpen(true)}
        className={`btn btn-${variant}`}
        style={{ display: 'inline-flex', alignItems: 'center', gap: 6 }}
        title="View every API, token, and MCP server Norma uses — with step-by-step instructions for each"
      >
        <KeyRound size={14} />
        APIs &amp; Tokens
      </button>
      {open && <ApiRegistryModal onClose={() => setOpen(false)} />}
    </>
  );
}