ConnectSection.config.tsx53 lines · main
| 1 | import { Box, Cable, Database, KeyRound, Sparkles } from 'lucide-react' |
| 2 | import type { ReactNode } from 'react' |
| 3 | |
| 4 | import type { ConnectMode } from '../ConnectSheet/Connect.types' |
| 5 | |
| 6 | export 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 | |
| 16 | export 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 | ] |