mirror of
https://github.com/AutoMaker-Org/automaker.git
synced 2026-01-30 06:12:03 +00:00
resolving gemini errors and removing dupe code
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -15,4 +15,5 @@ dist/
|
|||||||
/.automaker/*
|
/.automaker/*
|
||||||
/.automaker/
|
/.automaker/
|
||||||
|
|
||||||
/logs
|
/logs
|
||||||
|
.claude/settings.local.json
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ import {
|
|||||||
ThinkingLevelSelector,
|
ThinkingLevelSelector,
|
||||||
ProfileQuickSelect,
|
ProfileQuickSelect,
|
||||||
TestingTabContent,
|
TestingTabContent,
|
||||||
|
PrioritySelector,
|
||||||
} from "../shared";
|
} from "../shared";
|
||||||
|
|
||||||
interface AddFeatureDialogProps {
|
interface AddFeatureDialogProps {
|
||||||
@@ -243,53 +244,13 @@ export function AddFeatureDialog({
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* Priority Selector */}
|
{/* Priority Selector */}
|
||||||
<div className="space-y-2">
|
<PrioritySelector
|
||||||
<Label>Priority</Label>
|
selectedPriority={newFeature.priority}
|
||||||
<div className="flex gap-2">
|
onPrioritySelect={(priority) =>
|
||||||
<button
|
setNewFeature({ ...newFeature, priority })
|
||||||
type="button"
|
}
|
||||||
onClick={() =>
|
testIdPrefix="priority"
|
||||||
setNewFeature({ ...newFeature, priority: 1 })
|
/>
|
||||||
}
|
|
||||||
className={`flex-1 px-3 py-2 rounded-md text-sm font-medium transition-colors ${
|
|
||||||
newFeature.priority === 1
|
|
||||||
? "bg-red-500/20 text-red-500 border-2 border-red-500/50"
|
|
||||||
: "bg-muted/50 text-muted-foreground border border-border hover:bg-muted"
|
|
||||||
}`}
|
|
||||||
data-testid="priority-high-button"
|
|
||||||
>
|
|
||||||
High
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
onClick={() =>
|
|
||||||
setNewFeature({ ...newFeature, priority: 2 })
|
|
||||||
}
|
|
||||||
className={`flex-1 px-3 py-2 rounded-md text-sm font-medium transition-colors ${
|
|
||||||
newFeature.priority === 2
|
|
||||||
? "bg-yellow-500/20 text-yellow-500 border-2 border-yellow-500/50"
|
|
||||||
: "bg-muted/50 text-muted-foreground border border-border hover:bg-muted"
|
|
||||||
}`}
|
|
||||||
data-testid="priority-medium-button"
|
|
||||||
>
|
|
||||||
Medium
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
onClick={() =>
|
|
||||||
setNewFeature({ ...newFeature, priority: 3 })
|
|
||||||
}
|
|
||||||
className={`flex-1 px-3 py-2 rounded-md text-sm font-medium transition-colors ${
|
|
||||||
newFeature.priority === 3
|
|
||||||
? "bg-blue-500/20 text-blue-500 border-2 border-blue-500/50"
|
|
||||||
: "bg-muted/50 text-muted-foreground border border-border hover:bg-muted"
|
|
||||||
}`}
|
|
||||||
data-testid="priority-low-button"
|
|
||||||
>
|
|
||||||
Low
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</TabsContent>
|
</TabsContent>
|
||||||
|
|
||||||
{/* Model Tab */}
|
{/* Model Tab */}
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ import {
|
|||||||
ThinkingLevelSelector,
|
ThinkingLevelSelector,
|
||||||
ProfileQuickSelect,
|
ProfileQuickSelect,
|
||||||
TestingTabContent,
|
TestingTabContent,
|
||||||
|
PrioritySelector,
|
||||||
} from "../shared";
|
} from "../shared";
|
||||||
import { DependencyTreeDialog } from "./dependency-tree-dialog";
|
import { DependencyTreeDialog } from "./dependency-tree-dialog";
|
||||||
|
|
||||||
@@ -222,62 +223,16 @@ export function EditFeatureDialog({
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* Priority Selector */}
|
{/* Priority Selector */}
|
||||||
<div className="space-y-2">
|
<PrioritySelector
|
||||||
<Label>Priority</Label>
|
selectedPriority={editingFeature.priority ?? 2}
|
||||||
<div className="flex gap-2">
|
onPrioritySelect={(priority) =>
|
||||||
<button
|
setEditingFeature({
|
||||||
type="button"
|
...editingFeature,
|
||||||
onClick={() =>
|
priority,
|
||||||
setEditingFeature({
|
})
|
||||||
...editingFeature,
|
}
|
||||||
priority: 1,
|
testIdPrefix="edit-priority"
|
||||||
})
|
/>
|
||||||
}
|
|
||||||
className={`flex-1 px-3 py-2 rounded-md text-sm font-medium transition-colors ${
|
|
||||||
(editingFeature.priority ?? 2) === 1
|
|
||||||
? "bg-red-500/20 text-red-500 border-2 border-red-500/50"
|
|
||||||
: "bg-muted/50 text-muted-foreground border border-border hover:bg-muted"
|
|
||||||
}`}
|
|
||||||
data-testid="edit-priority-high-button"
|
|
||||||
>
|
|
||||||
High
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
onClick={() =>
|
|
||||||
setEditingFeature({
|
|
||||||
...editingFeature,
|
|
||||||
priority: 2,
|
|
||||||
})
|
|
||||||
}
|
|
||||||
className={`flex-1 px-3 py-2 rounded-md text-sm font-medium transition-colors ${
|
|
||||||
(editingFeature.priority ?? 2) === 2
|
|
||||||
? "bg-yellow-500/20 text-yellow-500 border-2 border-yellow-500/50"
|
|
||||||
: "bg-muted/50 text-muted-foreground border border-border hover:bg-muted"
|
|
||||||
}`}
|
|
||||||
data-testid="edit-priority-medium-button"
|
|
||||||
>
|
|
||||||
Medium
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
onClick={() =>
|
|
||||||
setEditingFeature({
|
|
||||||
...editingFeature,
|
|
||||||
priority: 3,
|
|
||||||
})
|
|
||||||
}
|
|
||||||
className={`flex-1 px-3 py-2 rounded-md text-sm font-medium transition-colors ${
|
|
||||||
(editingFeature.priority ?? 2) === 3
|
|
||||||
? "bg-blue-500/20 text-blue-500 border-2 border-blue-500/50"
|
|
||||||
: "bg-muted/50 text-muted-foreground border border-border hover:bg-muted"
|
|
||||||
}`}
|
|
||||||
data-testid="edit-priority-low-button"
|
|
||||||
>
|
|
||||||
Low
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</TabsContent>
|
</TabsContent>
|
||||||
|
|
||||||
{/* Model Tab */}
|
{/* Model Tab */}
|
||||||
|
|||||||
@@ -3,3 +3,4 @@ export * from "./model-selector";
|
|||||||
export * from "./thinking-level-selector";
|
export * from "./thinking-level-selector";
|
||||||
export * from "./profile-quick-select";
|
export * from "./profile-quick-select";
|
||||||
export * from "./testing-tab-content";
|
export * from "./testing-tab-content";
|
||||||
|
export * from "./priority-selector";
|
||||||
|
|||||||
@@ -0,0 +1,63 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { Label } from "@/components/ui/label";
|
||||||
|
import { cn } from "@/lib/utils";
|
||||||
|
|
||||||
|
interface PrioritySelectorProps {
|
||||||
|
selectedPriority: number;
|
||||||
|
onPrioritySelect: (priority: number) => void;
|
||||||
|
testIdPrefix?: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export function PrioritySelector({
|
||||||
|
selectedPriority,
|
||||||
|
onPrioritySelect,
|
||||||
|
testIdPrefix = "priority",
|
||||||
|
}: PrioritySelectorProps) {
|
||||||
|
return (
|
||||||
|
<div className="space-y-2">
|
||||||
|
<Label>Priority</Label>
|
||||||
|
<div className="flex gap-2">
|
||||||
|
<button
|
||||||
|
type="button"
|
||||||
|
onClick={() => onPrioritySelect(1)}
|
||||||
|
className={cn(
|
||||||
|
"flex-1 px-3 py-2 rounded-md text-sm font-medium transition-colors",
|
||||||
|
selectedPriority === 1
|
||||||
|
? "bg-red-500/20 text-red-500 border-2 border-red-500/50"
|
||||||
|
: "bg-muted/50 text-muted-foreground border border-border hover:bg-muted"
|
||||||
|
)}
|
||||||
|
data-testid={`${testIdPrefix}-high-button`}
|
||||||
|
>
|
||||||
|
High
|
||||||
|
</button>
|
||||||
|
<button
|
||||||
|
type="button"
|
||||||
|
onClick={() => onPrioritySelect(2)}
|
||||||
|
className={cn(
|
||||||
|
"flex-1 px-3 py-2 rounded-md text-sm font-medium transition-colors",
|
||||||
|
selectedPriority === 2
|
||||||
|
? "bg-yellow-500/20 text-yellow-500 border-2 border-yellow-500/50"
|
||||||
|
: "bg-muted/50 text-muted-foreground border border-border hover:bg-muted"
|
||||||
|
)}
|
||||||
|
data-testid={`${testIdPrefix}-medium-button`}
|
||||||
|
>
|
||||||
|
Medium
|
||||||
|
</button>
|
||||||
|
<button
|
||||||
|
type="button"
|
||||||
|
onClick={() => onPrioritySelect(3)}
|
||||||
|
className={cn(
|
||||||
|
"flex-1 px-3 py-2 rounded-md text-sm font-medium transition-colors",
|
||||||
|
selectedPriority === 3
|
||||||
|
? "bg-blue-500/20 text-blue-500 border-2 border-blue-500/50"
|
||||||
|
: "bg-muted/50 text-muted-foreground border border-border hover:bg-muted"
|
||||||
|
)}
|
||||||
|
data-testid={`${testIdPrefix}-low-button`}
|
||||||
|
>
|
||||||
|
Low
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user