* style: Enhance ControlCombobox with Carat Display, ClassName, and Disabled State
* refactor(ModelPanel): replace SelectDropdown with ControlCombobox for improved accessibility
* style: Adjust padding and positioning in ModelPanel for improved layout
* style(ControlCombobox): add containerClassName and iconSide props for enhanced customization
* style(ControlCombobox): add iconClassName prop for customizable icon styling
* refactor(AgentPanel): enhance layout with new button for creating agents and adjust structure for better alignment
* refactor(AgentSelect): replace SelectDropDown with ControlCombobox for improved accessibility and layout
* feat(translation): add new translation key for improved UI clarity
* style(AgentSwitcher, AssistantSwitcher): add iconClassName prop for customizable icon styling
* refactor(AgentPanelSkeleton): improve layout of skeleton components to match new visual structure
* style(AgentPanel, AgentPanelSkeleton): add margin to flex container for improved layout consistency
* a11y(AgentSelect, ControlCombobox): add selectId prop for preventing focus going to start to page after agent selection
* fix(AgentSelect): update SELECT_ID constant for improved clarity in component identification
* fix(GoogleClient): update type annotation, add abort handling for content generation requests, catch "uncaught" abort errors and GoogleGenerativeAI errors from `@google/generative-ai`
Ariakit Combobox was not working well with several virtualization libraries as automated focus management was conflicting with scrolling/styling required of other virtualization methods. The entire strategy was replaced using experimental ariakit virtualization component `SelectRenderer`
Performance of component was also improved as a result of latest ariakit lib changes
* feat: Google Model Parameters
* fix: dynamic input number value, previously coerced by zod schema
* refactor: support openrouter reasoning tokens and XML for thinking directive to conform to ollama
* fix: virtualize combobox to prevent performance drop on re-renders of long model/agent/assistant lists
* refactor: simplify Fork component by removing unnecessary chat context index
* fix: prevent rendering of Thinking component when children are null
* refactor: update Markdown component to replace <think> tags and simplify remarkPlugins configuration
* refactor: reorder remarkPlugins to improve plugin configuration in Markdown component
* refactor(DropdownPopup): set MenuButton `as` prop to `div` to prevent React warning: validateDOMNesting(...): <button> cannot appear as a descendant of <button>
* refactor: memoize ChatGroupItem and ControlCombobox components
* refactor(OpenAIClient): await stream process finish before finalCompletion event handling
* refactor: update useSSE.ts typing to handle null and undefined values in data properties
* refactor: set abort scroll to false on SSE connection open
* refactor: improve logger functionality with filter support
* refactor: update handleScroll typing in MessageContainer component
* refactor: update logger.dir call in useChatFunctions to log 'message_stream' tag format instead of the entire submission object as first arg
* refactor: fix null check for message object in Message component
* refactor: throttle handleScroll to help prevent auto-scrolling issues on new message requests; fix type issues within useMessageProcess
* refactor: add abortScrollByIndex logging effect
* refactor: update MessageIcon and Icon components to use React.memo for performance optimization
* refactor: memoize ConvoIconURL component for performance optimization
* chore: type issues
* chore: update package version to 0.7.414
* chore: Update @ariakit/react dependency to version 0.4.8
* refactor: Fix Combobox Android issue with radix-ui
* fix: Improve scrolling behavior by setting abort scroll state to false after scrolling to end
* wip: first pass switcher rewrite
* feat: Add button width calculation for ComboboxComponent
* refactor: Update ComboboxComponent styling for improved layout and appearance
* refactor: Update AssistantSwitcher component to handle null values for assistant names and avatar URLs
* refactor: Update ModelSwitcher component to use SimpleCombobox for improved functionality and styling
* refactor: Update Switcher Separator styling for improved layout and appearance
* refactor: Improve accessibility by adding aria-label to ComboboxComponent select items
* refactor: rename SimpleCombobox -> ControlCombobox