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,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(),
|
||||
|
||||
@@ -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[]
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user