Expand AITURK Turkish settings and desktop surfaces for beta 5

This commit is contained in:
yilsem committed 2026-09-06 05:03:32 +03:00
1 parent 237d1e2060
commit 5e76f58637
108 files changed
+6675 -1034

No files matched your search

+18
View File
@@ -1,5 +1,7 @@
import { atom } from 'nanostores'
import { DEFAULT_LOCALE } from '@/i18n/languages'
import type { Locale } from '@/i18n/types'
import { persistBoolean, persistString, storedBoolean, storedString } from '@/lib/storage'
import { $petActivity, $petInfo, $petUnread, clearPetUnread, type PetActivity, type PetInfo } from '@/store/pet'
import { $awaitingResponse, $busy } from '@/store/session'
@@ -40,6 +42,7 @@ export interface PetOverlayOpenRequest {
/** Everything the overlay needs to reproduce the live mascot. */
export interface PetOverlayStatePayload {
locale?: Locale
info: PetInfo
activity: PetActivity
busy: boolean
@@ -135,6 +138,20 @@ export function overlayWindowSize(frameW: number, frameH: number, scale: number)
}
let stateUnsubs: Array<() => void> = []
let overlayLocale: Locale = DEFAULT_LOCALE
/** The primary renderer owns the overlay's display language, just like its live state. */
export function setPetOverlayLocale(locale: Locale): void {
if (locale === overlayLocale) {
return
}
overlayLocale = locale
if ($petOverlayActive.get()) {
pushNow()
}
}
let controlUnsub: (() => void) | null = null
let submitHandler: ((text: string) => void) | null = null
let openAppHandler: (() => void) | null = null
@@ -142,6 +159,7 @@ let scaleHandler: ((scale: number) => void) | null = null
function currentPayload(): PetOverlayStatePayload {
return {
locale: overlayLocale,
info: $petInfo.get(),
activity: $petActivity.get(),
busy: $busy.get(),
+3
View File
@@ -17,6 +17,8 @@
import { atom } from 'nanostores'
import type { Locale } from '@/i18n/types'
export interface QuickEntryState {
enabled: boolean
/** null before the first read; the settings row shows a skeleton until then. */
@@ -118,6 +120,7 @@ export const QUICK_TARGET_NEW = 'new'
*/
export interface QuickEntryStatePush {
connected: boolean
locale?: Locale
sessions: QuickEntrySessionOption[]
}