Expand AITURK Turkish settings and desktop surfaces for beta 5
This commit is contained in:
1 parent
237d1e2060
commit
5e76f58637
108 files changed
+6675
-1034
No files matched your search
@@ -1,5 +1,6 @@
|
||||
import { useEffect, useReducer, useRef } from 'react'
|
||||
|
||||
import { normalizeLocale, useI18n } from '@/i18n'
|
||||
import {
|
||||
initialQuickComposerState,
|
||||
QUICK_TARGET_CURRENT,
|
||||
@@ -26,6 +27,8 @@ import {
|
||||
* the primary renderer's normal prompt-submit path.
|
||||
*/
|
||||
export function QuickEntryApp() {
|
||||
const { t, setLocale } = useI18n()
|
||||
const copy = t.surfaces.quickEntry
|
||||
const inputRef = useRef<HTMLInputElement>(null)
|
||||
|
||||
// The reducer returns { send, state }; this wrapper performs the side effect
|
||||
@@ -56,6 +59,7 @@ export function QuickEntryApp() {
|
||||
})
|
||||
|
||||
const offState = api?.onState(payload => {
|
||||
void setLocale(normalizeLocale(payload?.locale))
|
||||
dispatch({
|
||||
connected: payload?.connected === true,
|
||||
sessions: Array.isArray(payload?.sessions) ? payload.sessions : [],
|
||||
@@ -69,7 +73,7 @@ export function QuickEntryApp() {
|
||||
offShown?.()
|
||||
offState?.()
|
||||
}
|
||||
}, [])
|
||||
}, [setLocale])
|
||||
|
||||
return (
|
||||
<div
|
||||
@@ -110,7 +114,7 @@ export function QuickEntryApp() {
|
||||
›
|
||||
</span>
|
||||
<input
|
||||
aria-label="Quick Entry"
|
||||
aria-label={copy.title}
|
||||
autoCapitalize="off"
|
||||
autoComplete="off"
|
||||
autoCorrect="off"
|
||||
@@ -131,7 +135,7 @@ export function QuickEntryApp() {
|
||||
dispatch({ type: 'dismiss' })
|
||||
}
|
||||
}}
|
||||
placeholder={state.connected ? 'Ask Hermes…' : 'Not connected — open Hermes to reconnect'}
|
||||
placeholder={state.connected ? copy.ask : copy.disconnected}
|
||||
ref={inputRef}
|
||||
spellCheck={false}
|
||||
style={{
|
||||
@@ -158,10 +162,10 @@ export function QuickEntryApp() {
|
||||
userSelect: 'none'
|
||||
}}
|
||||
>
|
||||
Send to
|
||||
{copy.sendTo}
|
||||
</label>
|
||||
<select
|
||||
aria-label="Target session"
|
||||
aria-label={copy.target}
|
||||
disabled={!state.connected}
|
||||
id="quick-entry-target"
|
||||
onChange={event => dispatch({ target: event.target.value, type: 'target' })}
|
||||
@@ -182,8 +186,8 @@ export function QuickEntryApp() {
|
||||
}}
|
||||
value={state.target}
|
||||
>
|
||||
<option value={QUICK_TARGET_CURRENT}>Current chat</option>
|
||||
<option value={QUICK_TARGET_NEW}>New session</option>
|
||||
<option value={QUICK_TARGET_CURRENT}>{copy.current}</option>
|
||||
<option value={QUICK_TARGET_NEW}>{copy.newSession}</option>
|
||||
{state.sessions.map(session => (
|
||||
<option key={session.id} value={session.id}>
|
||||
{session.title}
|
||||
|
||||
Reference in new issue
Block a user