| 1234567891011121314151617181920212223242526272829 |
- /** Busy-Enter preference stored in the Host user-settings document. */
- import z from '@deepseek-ai/schemastery'
- /** Settings namespace owned by the conversation plugin. */
- export const CONVERSATION_SETTINGS_NAMESPACE = 'ui-conversation'
- /** Field carrying the delivery mode for plain Enter while an agent is busy. */
- export const BUSY_ENTER_FIELD = 'busyEnter'
- /** Busy-Enter behaviors accepted at settings and input boundaries. */
- export const BUSY_ENTER_BEHAVIORS = ['queue', 'steer'] as const
- /** Configurable meaning of plain Enter while the addressed agent is busy. */
- export type BusyEnterBehavior = typeof BUSY_ENTER_BEHAVIORS[number]
- /** Default preserves Enter-as-Queue for running conversations. */
- export const DEFAULT_BUSY_ENTER_BEHAVIOR: BusyEnterBehavior = 'queue'
- /** Durable conversation section shared by the Host schema and the browser scope. */
- export interface ConversationSettings {
- /** Delivery mode for plain Enter while the addressed agent is busy. */
- busyEnter: BusyEnterBehavior
- }
- /** Durable conversation schema; also the wire envelope the browser scope validates against. */
- export const ConversationSettingsSchema: z<ConversationSettings> = z.object({
- [BUSY_ENTER_FIELD]: z.union([...BUSY_ENTER_BEHAVIORS]).default(DEFAULT_BUSY_ENTER_BEHAVIOR),
- })
|