// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.30.0 // source: settings.sql package sqlc import ( "context" "github.com/jackc/pgx/v5/pgtype" ) const deleteSettingsByBotID = `-- name: DeleteSettingsByBotID :exec UPDATE bots SET max_context_load_time = 1440, max_context_tokens = 0, max_inbox_items = 50, language = 'auto', reasoning_enabled = false, reasoning_effort = 'medium', heartbeat_enabled = false, heartbeat_interval = 30, heartbeat_prompt = '', chat_model_id = NULL, heartbeat_model_id = NULL, search_provider_id = NULL, memory_provider_id = NULL, tts_model_id = NULL, browser_context_id = NULL, updated_at = now() WHERE id = $1 ` func (q *Queries) DeleteSettingsByBotID(ctx context.Context, id pgtype.UUID) error { _, err := q.db.Exec(ctx, deleteSettingsByBotID, id) return err } const getSettingsByBotID = `-- name: GetSettingsByBotID :one SELECT bots.id AS bot_id, bots.max_context_load_time, bots.max_context_tokens, bots.max_inbox_items, bots.language, bots.reasoning_enabled, bots.reasoning_effort, bots.heartbeat_enabled, bots.heartbeat_interval, bots.heartbeat_prompt, chat_models.id AS chat_model_id, heartbeat_models.id AS heartbeat_model_id, search_providers.id AS search_provider_id, memory_providers.id AS memory_provider_id, tts_models.id AS tts_model_id, browser_contexts.id AS browser_context_id FROM bots LEFT JOIN models AS chat_models ON chat_models.id = bots.chat_model_id LEFT JOIN models AS heartbeat_models ON heartbeat_models.id = bots.heartbeat_model_id LEFT JOIN search_providers ON search_providers.id = bots.search_provider_id LEFT JOIN memory_providers ON memory_providers.id = bots.memory_provider_id LEFT JOIN tts_models ON tts_models.id = bots.tts_model_id LEFT JOIN browser_contexts ON browser_contexts.id = bots.browser_context_id WHERE bots.id = $1 ` type GetSettingsByBotIDRow struct { BotID pgtype.UUID `json:"bot_id"` MaxContextLoadTime int32 `json:"max_context_load_time"` MaxContextTokens int32 `json:"max_context_tokens"` MaxInboxItems int32 `json:"max_inbox_items"` Language string `json:"language"` ReasoningEnabled bool `json:"reasoning_enabled"` ReasoningEffort string `json:"reasoning_effort"` HeartbeatEnabled bool `json:"heartbeat_enabled"` HeartbeatInterval int32 `json:"heartbeat_interval"` HeartbeatPrompt string `json:"heartbeat_prompt"` ChatModelID pgtype.UUID `json:"chat_model_id"` HeartbeatModelID pgtype.UUID `json:"heartbeat_model_id"` SearchProviderID pgtype.UUID `json:"search_provider_id"` MemoryProviderID pgtype.UUID `json:"memory_provider_id"` TtsModelID pgtype.UUID `json:"tts_model_id"` BrowserContextID pgtype.UUID `json:"browser_context_id"` } func (q *Queries) GetSettingsByBotID(ctx context.Context, id pgtype.UUID) (GetSettingsByBotIDRow, error) { row := q.db.QueryRow(ctx, getSettingsByBotID, id) var i GetSettingsByBotIDRow err := row.Scan( &i.BotID, &i.MaxContextLoadTime, &i.MaxContextTokens, &i.MaxInboxItems, &i.Language, &i.ReasoningEnabled, &i.ReasoningEffort, &i.HeartbeatEnabled, &i.HeartbeatInterval, &i.HeartbeatPrompt, &i.ChatModelID, &i.HeartbeatModelID, &i.SearchProviderID, &i.MemoryProviderID, &i.TtsModelID, &i.BrowserContextID, ) return i, err } const upsertBotSettings = `-- name: UpsertBotSettings :one WITH updated AS ( UPDATE bots SET max_context_load_time = $1, max_context_tokens = $2, max_inbox_items = $3, language = $4, reasoning_enabled = $5, reasoning_effort = $6, heartbeat_enabled = $7, heartbeat_interval = $8, heartbeat_prompt = $9, chat_model_id = COALESCE($10::uuid, bots.chat_model_id), heartbeat_model_id = COALESCE($11::uuid, bots.heartbeat_model_id), search_provider_id = COALESCE($12::uuid, bots.search_provider_id), memory_provider_id = COALESCE($13::uuid, bots.memory_provider_id), tts_model_id = COALESCE($14::uuid, bots.tts_model_id), browser_context_id = COALESCE($15::uuid, bots.browser_context_id), updated_at = now() WHERE bots.id = $16 RETURNING bots.id, bots.max_context_load_time, bots.max_context_tokens, bots.max_inbox_items, bots.language, bots.reasoning_enabled, bots.reasoning_effort, bots.heartbeat_enabled, bots.heartbeat_interval, bots.heartbeat_prompt, bots.chat_model_id, bots.heartbeat_model_id, bots.search_provider_id, bots.memory_provider_id, bots.tts_model_id, bots.browser_context_id ) SELECT updated.id AS bot_id, updated.max_context_load_time, updated.max_context_tokens, updated.max_inbox_items, updated.language, updated.reasoning_enabled, updated.reasoning_effort, updated.heartbeat_enabled, updated.heartbeat_interval, updated.heartbeat_prompt, chat_models.id AS chat_model_id, heartbeat_models.id AS heartbeat_model_id, search_providers.id AS search_provider_id, memory_providers.id AS memory_provider_id, tts_models.id AS tts_model_id, browser_contexts.id AS browser_context_id FROM updated LEFT JOIN models AS chat_models ON chat_models.id = updated.chat_model_id LEFT JOIN models AS heartbeat_models ON heartbeat_models.id = updated.heartbeat_model_id LEFT JOIN search_providers ON search_providers.id = updated.search_provider_id LEFT JOIN memory_providers ON memory_providers.id = updated.memory_provider_id LEFT JOIN tts_models ON tts_models.id = updated.tts_model_id LEFT JOIN browser_contexts ON browser_contexts.id = updated.browser_context_id ` type UpsertBotSettingsParams struct { MaxContextLoadTime int32 `json:"max_context_load_time"` MaxContextTokens int32 `json:"max_context_tokens"` MaxInboxItems int32 `json:"max_inbox_items"` Language string `json:"language"` ReasoningEnabled bool `json:"reasoning_enabled"` ReasoningEffort string `json:"reasoning_effort"` HeartbeatEnabled bool `json:"heartbeat_enabled"` HeartbeatInterval int32 `json:"heartbeat_interval"` HeartbeatPrompt string `json:"heartbeat_prompt"` ChatModelID pgtype.UUID `json:"chat_model_id"` HeartbeatModelID pgtype.UUID `json:"heartbeat_model_id"` SearchProviderID pgtype.UUID `json:"search_provider_id"` MemoryProviderID pgtype.UUID `json:"memory_provider_id"` TtsModelID pgtype.UUID `json:"tts_model_id"` BrowserContextID pgtype.UUID `json:"browser_context_id"` ID pgtype.UUID `json:"id"` } type UpsertBotSettingsRow struct { BotID pgtype.UUID `json:"bot_id"` MaxContextLoadTime int32 `json:"max_context_load_time"` MaxContextTokens int32 `json:"max_context_tokens"` MaxInboxItems int32 `json:"max_inbox_items"` Language string `json:"language"` ReasoningEnabled bool `json:"reasoning_enabled"` ReasoningEffort string `json:"reasoning_effort"` HeartbeatEnabled bool `json:"heartbeat_enabled"` HeartbeatInterval int32 `json:"heartbeat_interval"` HeartbeatPrompt string `json:"heartbeat_prompt"` ChatModelID pgtype.UUID `json:"chat_model_id"` HeartbeatModelID pgtype.UUID `json:"heartbeat_model_id"` SearchProviderID pgtype.UUID `json:"search_provider_id"` MemoryProviderID pgtype.UUID `json:"memory_provider_id"` TtsModelID pgtype.UUID `json:"tts_model_id"` BrowserContextID pgtype.UUID `json:"browser_context_id"` } func (q *Queries) UpsertBotSettings(ctx context.Context, arg UpsertBotSettingsParams) (UpsertBotSettingsRow, error) { row := q.db.QueryRow(ctx, upsertBotSettings, arg.MaxContextLoadTime, arg.MaxContextTokens, arg.MaxInboxItems, arg.Language, arg.ReasoningEnabled, arg.ReasoningEffort, arg.HeartbeatEnabled, arg.HeartbeatInterval, arg.HeartbeatPrompt, arg.ChatModelID, arg.HeartbeatModelID, arg.SearchProviderID, arg.MemoryProviderID, arg.TtsModelID, arg.BrowserContextID, arg.ID, ) var i UpsertBotSettingsRow err := row.Scan( &i.BotID, &i.MaxContextLoadTime, &i.MaxContextTokens, &i.MaxInboxItems, &i.Language, &i.ReasoningEnabled, &i.ReasoningEffort, &i.HeartbeatEnabled, &i.HeartbeatInterval, &i.HeartbeatPrompt, &i.ChatModelID, &i.HeartbeatModelID, &i.SearchProviderID, &i.MemoryProviderID, &i.TtsModelID, &i.BrowserContextID, ) return i, err }