repositories
loading repo index
repositories
loading repo index
repository
loading code, commits, and activity
public Clawd ADK gateway launch mirror
stars
latest
clone command
git clone gitlawb://did:key:z6Mkq5mY...iFZ5/my-project-publ...git clone gitlawb://did:key:z6Mkq5mY.../my-project-publ...2fa351d6docs: add automaton and perps launch sources16d ago| #1 | import React from "react"; |
| #2 | import { BiEdit } from "react-icons/bi"; |
| #3 | import Image from "next/image"; |
| #4 | |
| #5 | export const Icon = ({ source }: { source: string }) => { |
| #6 | return ( |
| #7 | <div className="w-4 h-4 rounded-full bg-zinc-700 flex items-center justify-center overflow-hidden -mr-1"> |
| #8 | <Image src={source} alt={source} width={40} height={40} /> |
| #9 | </div> |
| #10 | ); |
| #11 | }; |
| #12 | |
| #13 | export const constants = { |
| #14 | claude: { |
| #15 | name: "Claude", |
| #16 | icon: <Icon source="/images/claude.webp" />, |
| #17 | iconImage: "/images/claude.webp", |
| #18 | }, |
| #19 | openmemory: { |
| #20 | name: "OpenMemory", |
| #21 | icon: <Icon source="/images/open-memory.svg" />, |
| #22 | iconImage: "/images/open-memory.svg", |
| #23 | }, |
| #24 | cursor: { |
| #25 | name: "Cursor", |
| #26 | icon: <Icon source="/images/cursor.png" />, |
| #27 | iconImage: "/images/cursor.png", |
| #28 | }, |
| #29 | cline: { |
| #30 | name: "Cline", |
| #31 | icon: <Icon source="/images/cline.png" />, |
| #32 | iconImage: "/images/cline.png", |
| #33 | }, |
| #34 | roocline: { |
| #35 | name: "Roo Cline", |
| #36 | icon: <Icon source="/images/roocline.png" />, |
| #37 | iconImage: "/images/roocline.png", |
| #38 | }, |
| #39 | windsurf: { |
| #40 | name: "Windsurf", |
| #41 | icon: <Icon source="/images/windsurf.png" />, |
| #42 | iconImage: "/images/windsurf.png", |
| #43 | }, |
| #44 | witsy: { |
| #45 | name: "Witsy", |
| #46 | icon: <Icon source="/images/witsy.png" />, |
| #47 | iconImage: "/images/witsy.png", |
| #48 | }, |
| #49 | enconvo: { |
| #50 | name: "Enconvo", |
| #51 | icon: <Icon source="/images/enconvo.png" />, |
| #52 | iconImage: "/images/enconvo.png", |
| #53 | }, |
| #54 | augment: { |
| #55 | name: "Augment", |
| #56 | icon: <Icon source="/images/augment.png" />, |
| #57 | iconImage: "/images/augment.png", |
| #58 | }, |
| #59 | default: { |
| #60 | name: "Default", |
| #61 | icon: <BiEdit size={18} className="ml-1" />, |
| #62 | iconImage: "/images/default.png", |
| #63 | }, |
| #64 | }; |
| #65 | |
| #66 | const SourceApp = ({ source }: { source: string }) => { |
| #67 | if (!constants[source as keyof typeof constants]) { |
| #68 | return ( |
| #69 | <div> |
| #70 | <BiEdit /> |
| #71 | <span className="text-sm font-semibold">{source}</span> |
| #72 | </div> |
| #73 | ); |
| #74 | } |
| #75 | return ( |
| #76 | <div className="flex items-center gap-2"> |
| #77 | {constants[source as keyof typeof constants].icon} |
| #78 | <span className="text-sm font-semibold"> |
| #79 | {constants[source as keyof typeof constants].name} |
| #80 | </span> |
| #81 | </div> |
| #82 | ); |
| #83 | }; |
| #84 | |
| #85 | export default SourceApp; |
| #86 |