mirror of
https://github.com/MacRimi/ProxMenux.git
synced 2026-04-18 18:12:15 +00:00
Update notification-settings.tsx
This commit is contained in:
@@ -1698,32 +1698,7 @@ export function NotificationSettings() {
|
||||
)}
|
||||
</div>
|
||||
|
||||
{/* Language selector */}
|
||||
<div className="space-y-2">
|
||||
<div className="flex items-center gap-2">
|
||||
<Globe className="h-4 w-4 text-green-400" />
|
||||
<Label className="text-xs sm:text-sm text-foreground/80">Language</Label>
|
||||
</div>
|
||||
<Select
|
||||
value={config.ai_language || "en"}
|
||||
onValueChange={v => updateConfig(p => ({ ...p, ai_language: v }))}
|
||||
disabled={!editMode}
|
||||
>
|
||||
<SelectTrigger className="h-9 text-sm">
|
||||
<SelectValue placeholder="Select language">
|
||||
{AI_LANGUAGES.find(l => l.value === (config.ai_language || "en"))?.label || "English"}
|
||||
</SelectValue>
|
||||
</SelectTrigger>
|
||||
<SelectContent>
|
||||
{AI_LANGUAGES.map(l => (
|
||||
<SelectItem key={l.value} value={l.value}>{l.label}</SelectItem>
|
||||
))}
|
||||
</SelectContent>
|
||||
</Select>
|
||||
</div>
|
||||
|
||||
{/* Prompt Mode section */}
|
||||
<div className="space-y-3 pt-3 border-t border-border/50">
|
||||
<div className="space-y-2">
|
||||
<div className="flex items-center gap-2">
|
||||
<MessageSquareText className="h-4 w-4 text-amber-400" />
|
||||
@@ -1750,8 +1725,34 @@ export function NotificationSettings() {
|
||||
</Select>
|
||||
</div>
|
||||
|
||||
{/* Default mode: Detail Level per Channel */}
|
||||
{/* Default mode options: Language and Detail Level per Channel */}
|
||||
{(config.ai_prompt_mode || "default") === "default" && (
|
||||
<div className="space-y-3 pt-3 border-t border-border/50">
|
||||
{/* Language selector - only for default mode */}
|
||||
<div className="space-y-2">
|
||||
<div className="flex items-center gap-2">
|
||||
<Globe className="h-4 w-4 text-green-400" />
|
||||
<Label className="text-xs sm:text-sm text-foreground/80">Language</Label>
|
||||
</div>
|
||||
<Select
|
||||
value={config.ai_language || "en"}
|
||||
onValueChange={v => updateConfig(p => ({ ...p, ai_language: v }))}
|
||||
disabled={!editMode}
|
||||
>
|
||||
<SelectTrigger className="h-9 text-sm">
|
||||
<SelectValue placeholder="Select language">
|
||||
{AI_LANGUAGES.find(l => l.value === (config.ai_language || "en"))?.label || "English"}
|
||||
</SelectValue>
|
||||
</SelectTrigger>
|
||||
<SelectContent>
|
||||
{AI_LANGUAGES.map(l => (
|
||||
<SelectItem key={l.value} value={l.value}>{l.label}</SelectItem>
|
||||
))}
|
||||
</SelectContent>
|
||||
</Select>
|
||||
</div>
|
||||
|
||||
{/* Detail Level per Channel */}
|
||||
<div className="space-y-3">
|
||||
<Label className="text-xs sm:text-sm text-foreground/80">Detail Level per Channel</Label>
|
||||
<div className="grid grid-cols-2 gap-3">
|
||||
@@ -1791,7 +1792,7 @@ export function NotificationSettings() {
|
||||
|
||||
{/* Custom mode: Editable prompt textarea */}
|
||||
{config.ai_prompt_mode === "custom" && (
|
||||
<div className="space-y-3">
|
||||
<div className="space-y-3 pt-3 border-t border-border/50">
|
||||
<div className="space-y-2">
|
||||
<div className="flex items-center justify-between">
|
||||
<Label className="text-xs sm:text-sm text-foreground/80">Custom Prompt</Label>
|
||||
@@ -1898,7 +1899,6 @@ export function NotificationSettings() {
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
</div>
|
||||
|
||||
{/* Test Connection button - moved to end */}
|
||||
<div className="space-y-3 pt-3 border-t border-border/50">
|
||||
@@ -2136,6 +2136,10 @@ export function NotificationSettings() {
|
||||
<span className="text-purple-400 mt-0.5">3.</span>
|
||||
<span>The prompt receives raw Proxmox event data as input</span>
|
||||
</li>
|
||||
<li className="flex items-start gap-2">
|
||||
<span className="text-purple-400 mt-0.5">4.</span>
|
||||
<span>Define the output language in your prompt (the Language selector only applies to Default mode)</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user