feat(frontend): English UI + 'Datamart Builder with Human In The Loop' tagline
The interface is now fully English regardless of the chat language (session titles stay in whatever language the user typed). Changed the right-rail subtitle to 'Datamart Builder with Human In The Loop'. Translated all chrome: new-question/settings dialogs, workflow phase strip (F1-F8), session rail, steer input, widgets (select/multiselect/freetext/fallback/reserved controls) and viewers (SQL, results, schema linking). Test matchers updated in lockstep. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -23,7 +23,7 @@ export function NewSessionDialog({ onCreated }: Props) {
|
||||
e.preventDefault();
|
||||
setError(null);
|
||||
if (!question.trim()) {
|
||||
setError("La domanda non può essere vuota.");
|
||||
setError("The question cannot be empty.");
|
||||
return;
|
||||
}
|
||||
setBusy(true);
|
||||
@@ -33,7 +33,7 @@ export function NewSessionDialog({ onCreated }: Props) {
|
||||
setQuestion("");
|
||||
onCreated(id);
|
||||
} catch (err) {
|
||||
setError(err instanceof Error ? err.message : "Errore nella creazione della sessione.");
|
||||
setError(err instanceof Error ? err.message : "Failed to create the session.");
|
||||
} finally {
|
||||
setBusy(false);
|
||||
}
|
||||
@@ -47,16 +47,16 @@ export function NewSessionDialog({ onCreated }: Props) {
|
||||
className="w-full"
|
||||
onClick={() => setOpen(true)}
|
||||
>
|
||||
Nuova domanda
|
||||
New question
|
||||
</Button>
|
||||
<DialogContent showCloseButton={false}>
|
||||
<DialogHeader>
|
||||
<DialogTitle>Nuova sessione</DialogTitle>
|
||||
<DialogTitle>New session</DialogTitle>
|
||||
</DialogHeader>
|
||||
<form onSubmit={handleSubmit} className="flex flex-col gap-3">
|
||||
<div>
|
||||
<label className="mb-1.5 block text-xs font-medium text-muted-foreground" htmlFor="nsd-question">
|
||||
Domanda
|
||||
Question
|
||||
</label>
|
||||
<textarea
|
||||
id="nsd-question"
|
||||
@@ -64,7 +64,7 @@ export function NewSessionDialog({ onCreated }: Props) {
|
||||
onChange={(e) => setQuestion(e.target.value)}
|
||||
rows={3}
|
||||
className="w-full resize-none rounded-lg border border-input bg-card px-3 py-2 text-sm outline-none transition-colors placeholder:text-muted-foreground focus:border-primary/50 focus:ring-3 focus:ring-ring/15"
|
||||
placeholder="Inserisci la tua domanda…"
|
||||
placeholder="Enter your question…"
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -81,10 +81,10 @@ export function NewSessionDialog({ onCreated }: Props) {
|
||||
size="sm"
|
||||
onClick={() => setOpen(false)}
|
||||
>
|
||||
Annulla
|
||||
Cancel
|
||||
</Button>
|
||||
<Button type="submit" size="sm" disabled={busy}>
|
||||
{busy ? "Creazione…" : "Crea"}
|
||||
{busy ? "Creating…" : "Create"}
|
||||
</Button>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
Reference in New Issue
Block a user