Added an AI platform selector for settings

This commit is contained in:
Jan Böhmer 2026-04-26 01:10:00 +02:00
parent c9d2044949
commit 18bf07b19f
4 changed files with 72 additions and 10 deletions

View file

@ -25,8 +25,10 @@ namespace App\Services\AI;
use App\Settings\AISettings\LMStudioSettings;
use App\Settings\AISettings\OpenRouterSettings;
use Symfony\Contracts\Translation\TranslatableInterface;
use Symfony\Contracts\Translation\TranslatorInterface;
enum AIPlatforms: string
enum AIPlatforms: string implements TranslatableInterface
{
case OPENROUTER = 'openrouter';
case LMSTUDIO = 'lmstudio';
@ -54,4 +56,11 @@ enum AIPlatforms: string
default => throw new \InvalidArgumentException(sprintf('No settings class defined for AI platform "%s".', $this->name)),
};
}
public function trans(TranslatorInterface $translator, ?string $locale = null): string
{
$key = 'settings.ai.' . $this->value;
return $translator->trans($key, locale: $locale);
}
}