ConnectSection.config.tsx53 lines · main
1import { Box, Cable, Database, KeyRound, Sparkles } from 'lucide-react'
2import type { ReactNode } from 'react'
3
4import type { ConnectMode } from '../ConnectSheet/Connect.types'
5
6export type ConnectAction = {
7 id: ConnectMode | 'api_keys'
8 heading: string
9 subheading: string
10 icon: ReactNode
11 mode?: ConnectMode
12 href?: string
13 requiresActiveProject?: boolean
14}
15
16export const CONNECT_ACTIONS: ConnectAction[] = [
17 {
18 id: 'framework',
19 mode: 'framework',
20 heading: 'Framework',
21 subheading: 'Use a client library',
22 icon: <Box size={16} strokeWidth={1.5} />,
23 },
24 {
25 id: 'direct',
26 mode: 'direct',
27 heading: 'Direct',
28 subheading: 'Connection string',
29 icon: <Database size={16} strokeWidth={1.5} />,
30 },
31 {
32 id: 'orm',
33 mode: 'orm',
34 heading: 'ORM',
35 subheading: 'Third-party library',
36 icon: <Cable size={16} strokeWidth={1.5} />,
37 },
38 {
39 id: 'mcp',
40 mode: 'mcp',
41 heading: 'MCP',
42 subheading: 'Connect your agent',
43 icon: <Sparkles size={16} strokeWidth={1.5} />,
44 },
45 {
46 id: 'api_keys',
47 heading: 'API Keys',
48 subheading: 'Manage project keys',
49 icon: <KeyRound size={16} strokeWidth={1.5} />,
50 href: '/project/[ref]/settings/api-keys',
51 requiresActiveProject: false,
52 },
53]