mirror of
https://github.com/sourcebot-dev/sourcebot.git
synced 2025-12-12 04:15:30 +00:00
nit: format
This commit is contained in:
parent
463477c85e
commit
bfb9352d24
1 changed files with 67 additions and 67 deletions
|
|
@ -83,88 +83,88 @@ export const AgenticSearch = ({
|
|||
</div>
|
||||
|
||||
{demoExamples && (
|
||||
<div className="w-full mt-8 grid grid-cols-1 lg:grid-cols-2 gap-8 px-4 max-w-[1200px]">
|
||||
{/* Example Searches Column */}
|
||||
<div className="space-y-4">
|
||||
<div className="flex items-center gap-2 mb-6">
|
||||
<Search className="h-5 w-5 text-muted-foreground" />
|
||||
<h3 className="text-lg font-semibold">Example Searches</h3>
|
||||
</div>
|
||||
<div className="space-y-3">
|
||||
{demoExamples.searchExamples.map((example) => (
|
||||
<Card
|
||||
key={example.id}
|
||||
className="cursor-pointer transition-all duration-200 hover:shadow-md hover:border-primary/50 group"
|
||||
onClick={() => handleExampleClick(example)}
|
||||
>
|
||||
<CardContent className="p-4">
|
||||
<div className="flex items-start gap-3">
|
||||
<div className="flex-shrink-0 p-2 rounded-lg bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors">
|
||||
{example.icon}
|
||||
</div>
|
||||
<div className="flex-1 min-w-0">
|
||||
<h4 className="font-medium text-sm mb-1 group-hover:text-primary transition-colors">
|
||||
{example.title}
|
||||
</h4>
|
||||
<p className="text-xs text-muted-foreground mb-2">{example.description}</p>
|
||||
<Badge className="text-xs">
|
||||
{example.category}
|
||||
</Badge>
|
||||
</div>
|
||||
</div>
|
||||
</CardContent>
|
||||
</Card>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{/* Search Contexts Column */}
|
||||
<div className="space-y-4">
|
||||
<div className="flex items-center gap-2 mb-6">
|
||||
<Layers className="h-5 w-5 text-muted-foreground" />
|
||||
<h3 className="text-lg font-semibold">Search Contexts</h3>
|
||||
</div>
|
||||
<div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-1 xl:grid-cols-2 gap-3">
|
||||
{demoExamples.searchContextExamples.map((context) => {
|
||||
const searchContext = searchContexts.find((item) => item.name === context.name);
|
||||
if (!searchContext) return null;
|
||||
const isSelected = false; //selectedItems.some((item) => item.id === context.id)
|
||||
|
||||
const numRepos = searchContext.repoNames.length;
|
||||
return (
|
||||
<div className="w-full mt-8 grid grid-cols-1 lg:grid-cols-2 gap-8 px-4 max-w-[1200px]">
|
||||
{/* Example Searches Column */}
|
||||
<div className="space-y-4">
|
||||
<div className="flex items-center gap-2 mb-6">
|
||||
<Search className="h-5 w-5 text-muted-foreground" />
|
||||
<h3 className="text-lg font-semibold">Example Searches</h3>
|
||||
</div>
|
||||
<div className="space-y-3">
|
||||
{demoExamples.searchExamples.map((example) => (
|
||||
<Card
|
||||
key={context.id}
|
||||
className={`cursor-pointer transition-all duration-200 hover:shadow-md group ${isSelected ? "border-primary bg-primary/5 shadow-sm" : "hover:border-primary/50"
|
||||
}`}
|
||||
onClick={() => handleContextClick(context)}
|
||||
key={example.id}
|
||||
className="cursor-pointer transition-all duration-200 hover:shadow-md hover:border-primary/50 group"
|
||||
onClick={() => handleExampleClick(example)}
|
||||
>
|
||||
<CardContent className="p-4">
|
||||
<div className="flex items-start gap-3">
|
||||
<div
|
||||
className={`flex-shrink-0 p-2 rounded-lg ${context.color} transition-transform group-hover:scale-105`}
|
||||
>
|
||||
{context.icon}
|
||||
<div className="flex-shrink-0 p-2 rounded-lg bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors">
|
||||
{example.icon}
|
||||
</div>
|
||||
<div className="flex-1 min-w-0">
|
||||
<h4
|
||||
className={`font-medium text-sm mb-1 transition-colors ${isSelected ? "text-primary" : "group-hover:text-primary"
|
||||
}`}
|
||||
>
|
||||
{context.displayName}
|
||||
<h4 className="font-medium text-sm mb-1 group-hover:text-primary transition-colors">
|
||||
{example.title}
|
||||
</h4>
|
||||
<p className="text-xs text-muted-foreground mb-2">{context.description}</p>
|
||||
<p className="text-xs text-muted-foreground mb-2">{example.description}</p>
|
||||
<Badge className="text-xs">
|
||||
{numRepos} repos
|
||||
{example.category}
|
||||
</Badge>
|
||||
</div>
|
||||
</div>
|
||||
</CardContent>
|
||||
</Card>
|
||||
)
|
||||
})}
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{/* Search Contexts Column */}
|
||||
<div className="space-y-4">
|
||||
<div className="flex items-center gap-2 mb-6">
|
||||
<Layers className="h-5 w-5 text-muted-foreground" />
|
||||
<h3 className="text-lg font-semibold">Search Contexts</h3>
|
||||
</div>
|
||||
<div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-1 xl:grid-cols-2 gap-3">
|
||||
{demoExamples.searchContextExamples.map((context) => {
|
||||
const searchContext = searchContexts.find((item) => item.name === context.name);
|
||||
if (!searchContext) return null;
|
||||
const isSelected = false; //selectedItems.some((item) => item.id === context.id)
|
||||
|
||||
const numRepos = searchContext.repoNames.length;
|
||||
return (
|
||||
<Card
|
||||
key={context.id}
|
||||
className={`cursor-pointer transition-all duration-200 hover:shadow-md group ${isSelected ? "border-primary bg-primary/5 shadow-sm" : "hover:border-primary/50"
|
||||
}`}
|
||||
onClick={() => handleContextClick(context)}
|
||||
>
|
||||
<CardContent className="p-4">
|
||||
<div className="flex items-start gap-3">
|
||||
<div
|
||||
className={`flex-shrink-0 p-2 rounded-lg ${context.color} transition-transform group-hover:scale-105`}
|
||||
>
|
||||
{context.icon}
|
||||
</div>
|
||||
<div className="flex-1 min-w-0">
|
||||
<h4
|
||||
className={`font-medium text-sm mb-1 transition-colors ${isSelected ? "text-primary" : "group-hover:text-primary"
|
||||
}`}
|
||||
>
|
||||
{context.displayName}
|
||||
</h4>
|
||||
<p className="text-xs text-muted-foreground mb-2">{context.description}</p>
|
||||
<Badge className="text-xs">
|
||||
{numRepos} repos
|
||||
</Badge>
|
||||
</div>
|
||||
</div>
|
||||
</CardContent>
|
||||
</Card>
|
||||
)
|
||||
})}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
</div >
|
||||
)
|
||||
|
|
|
|||
Loading…
Reference in a new issue