- Updated AllNotesSidebar to render via portal for improved stacking context.
- Refactored sidebar styles and behavior for better user experience.
- Modified AppSidebarProvider to limit recent notes to 5 and sort by updated date.
- Improved editor page to handle document state updates and query invalidation on note creation.
- Added loading messages to translations for better user feedback during operations.
- Introduced a new AllNotesSidebar component for displaying all notes in a sidebar.
- Enhanced NavNotes to include a button for opening the All Notes sidebar.
- Updated translations to support new sidebar labels and error messages.
- Improved note deletion handling and loading states within the sidebar.
- Refactored AppSidebar to pass searchSpaceId to NavNotes for better context.
- Enhanced the editor to handle new note creation directly, initializing with an empty state.
- Updated save functionality to create a note first if it's new, followed by saving the content.
- Modified breadcrumb navigation to accommodate new notes and improve user experience.
- Removed the old note creation page to streamline the editing process.
- Added error handling and dynamic title updates for better feedback during note creation.
- Added dynamic title extraction from the first block of BlockNote documents for NOTE type.
- Updated editor routes to support new note creation with a BlockNote editor.
- Implemented unsaved changes dialog for better user experience when navigating away from the editor.
- Refactored BlockNoteEditor to ensure the first block is a heading when creating new notes.
- Removed the old note creation page in favor of the new streamlined editor experience.
- Introduced a new ENUM value 'NOTE' for document types in the database.
- Implemented backend routes for creating, listing, and deleting notes.
- Added a new frontend page for creating notes with a BlockNote editor.
- Updated sidebar to include recent notes and an option to add new notes.
- Enhanced API service for notes with validation and request/response schemas.
- Updated translations to support new note-related terms.
- Migrated llm-role-manager.tsx to use jotai atoms
- Fixed TypeScript errors in llm-role-manager.tsx
- Deleted unused use-llm-configs.ts file
- All LLM preferences now use centralized jotai + tanstack query atoms
- Removed unused import from model-config-manager.tsx
- Deleted useGlobalLLMConfigs hook (no longer used anywhere)
- All 5 components now using jotai + tanstack query pattern
- Full backward compatibility maintained
- Replace imperative useLLMConfigs hook with jotai atoms
- Use createLLMConfigMutationAtom for config creation
- Use deleteLLMConfigMutationAtom for config deletion
- Use llmConfigsAtom for fetching configs
- Update types from CreateLLMConfig to CreateLLMConfigRequest
- Add proper error handling with try-catch
- Fix TypeScript issues with is_global property check
- Maintain backward compatibility with existing callbacks
- Changed document links to point to the researcher page in the dashboard.
- Removed unused team and settings links from the dashboard layout.
- Redesigned settings page with a sidebar for navigation and improved layout for better user experience.
- Added delete confirmation dialog for model configurations in the settings manager.
- Updated card components for better visual consistency and responsiveness.
- Updated type definitions in DocumentsFilters to use DocumentTypeEnum
- Fixed type consistency across activeTypes and onToggleType props
- Final cleanup of DocumentsTable migration to React Query
- Replace useDocumentTypes hook with documentTypeCountsAtom in ChatInputGroup
- Replace useDocumentTypes hook with documentTypeCountsAtom in researcher page
- Delete obsolete use-document-types.ts hook
- Transform atom response to maintain backward compatibility
- Replace imperative authenticatedFetch with createDocumentMutationAtom
- Use mutation's isPending state instead of local isSubmitting state
- Maintain backward compatibility with existing UI behavior
- Keep all validation, error handling, and toast notifications
- Remove dependency on auth-utils for API calls
- Replace useDocumentByChunk hook with useQuery implementation
- Use descriptive variable names (isDocumentByChunkFetching, documentByChunkFetchingError)
- Integrate with centralized cache key management
- Update all loading and error state references
- Add 5-minute stale time for document queries
- Replace imperative fetch API with uploadDocumentMutationAtom in DocumentUploadTab
- Maintain backward compatibility with existing UI behavior
- Remove unused document query atoms from document-query.atoms.ts
- Use mutation state (isPending) for loading state management
- Preserve progress animation and error handling
- Remove useDocumentByChunk hook dependency
- Use useQuery with centralized cache keys and descriptive variable names
- Replace all document, loading, and error references with new implementation
- Remove manual fetch/clear effects as useQuery handles lifecycle automatically
- Replaced direct localStorage token access with a centralized `getBearerToken` function across various components and hooks to improve code maintainability and security.
- Updated API calls to use `authenticatedFetch` for consistent authentication handling.
- Enhanced user experience by ensuring proper redirection to login when authentication fails.
- Cleaned up unused imports and improved overall code structure for better readability.