Commit graph

5014 commits

Author SHA1 Message Date
SohamBhattacharjee2003
15560f297f perf: implement dynamic imports for settings dialog tabs (#1141)
- Replace 6 static imports in user-settings-dialog with dynamic imports
- Replace 8 static imports in search-space-settings-dialog with dynamic imports
- Each settings tab loads content only when selected
- Reduces initial settings dialog bundle size
- All tab functionality preserved
2026-04-08 06:48:51 +05:30
SohamBhattacharjee2003
2b02ecaa6f perf: implement dynamic imports for connector configs and forms (#1142)
- Replace 23 static connector config imports with dynamic imports
- Replace 10 static connect form imports with dynamic imports
- Add component caching to avoid recreating dynamic components
- Significantly reduces connector popup chunk size
- Only selected connector components load on demand
2026-04-08 06:47:31 +05:30
SohamBhattacharjee2003
d5f46dd7de perf: implement dynamic locale loading and remove unused zod import
Replace static imports of all 5 locale JSON files with dynamic imports.
Only English is bundled by default, other locales (es, hi, pt, zh) load
on demand when the user switches languages.

Also removes unused 'set' import from zod (line 5) that was dragging
Zod surface into this module unnecessarily.

Changes:
- Removed static imports for es, hi, pt, zh locale files
- Removed unused zod import
- Added loadMessages() function for dynamic locale loading
- Updated setLocale() to load messages asynchronously
- Added useEffect to load non-English locale on mount if stored

Benefits:
- Only active locale's JSON in initial bundle (English default)
- 80% reduction in locale data in initial bundle
- Other locale files load on demand (~50-100KB each)
- Removed unnecessary zod dependency from module
- Locale switching still works seamlessly
- Faster initial page load

Fixes #1143
2026-04-08 06:39:37 +05:30
SohamBhattacharjee2003
d114d43fef refactor: remove unused drizzle-orm import from markdown-viewer
Remove unused 'is' import from drizzle-orm in markdown-viewer.tsx (line 5).
This import was never used in the file and unnecessarily dragged ORM code
into the UI component's bundle chunk.

Benefits:
- Removes drizzle-orm from markdown-viewer bundle chunk
- Reduces bundle size for components using MarkdownViewer
- Cleaner imports with no unused dependencies
- Markdown viewer functionality unchanged

Fixes #1144
2026-04-08 06:36:50 +05:30
SohamBhattacharjee2003
ac554974f6 perf: lazy load video presentation in public chat
Convert GenerateVideoPresentationToolUI from static import to dynamic import
with ssr: false in public-thread.tsx. This prevents Remotion and @babel/standalone
from being bundled in the public chat page.

The main app's assistant-message.tsx already correctly lazy-loads this component,
but the public thread was still using a static import, unnecessarily increasing
the bundle size for public shared chats.

Benefits:
- Removes Remotion and @babel/standalone from public chat bundle
- Reduces initial bundle size for public shared chats
- Video presentations still render correctly when present
- Faster page load for users viewing public chats

Fixes #1145
2026-04-08 06:32:05 +05:30
SohamBhattacharjee2003
7c4500c707 perf: lazy load mobile panels with dynamic imports
Convert MobileEditorPanel, MobileHitlEditPanel, and MobileReportPanel from
static imports to dynamic imports with ssr: false. These panels pull in heavy
dependencies (PlateEditor, MarkdownViewer) that are only needed when users
interact with them on mobile.

Benefits:
- Reduces initial bundle size for chat page
- Mobile panels load only when opened by user
- Faster initial page load and Time to Interactive
- Heavy editor dependencies are code-split into separate chunks

Fixes #1146
2026-04-08 06:26:27 +05:30
DESKTOP-RTLN3BA\$punk
0af6b3882a refactor: replace button with div for improved accessibility in DocumentUploadTab
- Changed the button element to a div with role="button" to enhance keyboard accessibility.
- Updated event handling for click and keydown events to ensure consistent behavior across devices.
- Maintained existing styling and functionality while improving semantic structure.
2026-04-07 17:23:46 -07:00
DESKTOP-RTLN3BA\$punk
b6b8f9dc7b Merge branch 'dev' of https://github.com/MODSetter/SurfSense into dev 2026-04-07 17:14:11 -07:00
DESKTOP-RTLN3BA\$punk
4e3aae44f6 feat: update README files with new GIFs and content
- Replaced outdated GIF links with new ones for various features in all language-specific README files.
- Added new sections for desktop app functionalities, including General Assist, Quick Assist, and Extreme Assist.
- Enhanced visual content to improve user engagement and clarity of features.
2026-04-07 17:14:03 -07:00
Soham Bhattacharjee
e404b05b11
Merge branch 'dev' into fix/replace-transition-all-with-specific-transitions 2026-04-08 05:38:30 +05:30
SohamBhattacharjee2003
4a5af63715 fix: replace transition-all with specific transition properties for better performance
- Replace transition-all with transition-[width] in Sidebar.tsx for width animations
- Replace transition-all with specific properties in animated-tabs.tsx for hover/active indicators
- Replace transition-all with transition-[background-color,border-color,box-shadow] in navbar.tsx
- Replace transition-all with transition-[width] in audio.tsx volume bar
- Replace transition-all with transition-[background-color,border-color,color] in thread.tsx
- Replace transition-all with transition-[box-shadow] in all tool-ui status cards (28+ files)

This reduces unnecessary browser layout/paint work by only animating the specific
properties that change, avoiding expensive recalculations for properties like
width, height, margin, and padding that don't need animation.

Fixes #1147
2026-04-08 05:36:19 +05:30
Soham Bhattacharjee
a273c93ad9
Merge branch 'dev' into fix/use-transform-for-sidebar-animation 2026-04-08 05:28:19 +05:30
Rohan Verma
f87a2efcaf
Merge pull request #1164 from AnishSarkar22/feat/azure-ocr
feat: add Azure Document Intelligence as accelerator for LlamaCloud & some UX fixes
2026-04-07 16:58:19 -07:00
SohamBhattacharjee2003
63855e0757 fix: use transform animation for sidebar slide-out panel
- Replace width animation with translateX for GPU acceleration
- Set fixed width on panel and animate x position instead
- Prevents layout recalculation on every animation frame
- Runs on compositor thread without triggering reflow
2026-04-08 05:26:18 +05:30
DESKTOP-RTLN3BA\$punk
1a6251eaaa feat: add desktop app section to README files
- Introduced a new section in the README files for the Desktop App, highlighting its features: General Assist, Quick Assist, and Extreme Assist.
- Updated all language-specific README files to include details about the desktop app's capabilities and download instructions.
2026-04-07 16:56:08 -07:00
Soham Bhattacharjee
50ffb94cab
Merge branch 'dev' into fix/optimize-dom-queries-in-thread 2026-04-08 05:23:22 +05:30
SohamBhattacharjee2003
c7dfbcd95a fix: optimize DOM queries in thread component
- Store viewport element in ref instead of repeated querySelector calls
- Move getBoundingClientRect calls from render to useLayoutEffect
- Use ResizeObserver to update picker positions reactively
- Eliminates 120+ querySelector calls during message submit polling
- Prevents forced layout during React render phase
2026-04-08 05:21:39 +05:30
Anish Sarkar
8455451ce1 chore: ran linting 2026-04-08 05:20:03 +05:30
Soham Bhattacharjee
b82a4fb921
Merge branch 'dev' into fix/remove-forcemount-from-user-dropdown 2026-04-08 05:15:12 +05:30
Anish Sarkar
d072ca60bb test: enhance file classification tests for Azure DI configuration 2026-04-08 05:13:17 +05:30
SohamBhattacharjee2003
693284c419 fix: remove forceMount from UserDropdown to reduce DOM nodes
- Remove forceMount prop from DropdownMenuContent
- Allows Radix to mount content only when dropdown is open
- Reduces unnecessary DOM nodes when dropdown is closed
- Improves performance by using default Radix behavior
2026-04-08 05:12:41 +05:30
DESKTOP-RTLN3BA\$punk
f20540f60c Merge branch 'dev' of https://github.com/MODSetter/SurfSense into dev 2026-04-07 16:41:10 -07:00
DESKTOP-RTLN3BA\$punk
417dc92926 feat: enhance hero section
- Updated TAB_ITEMS to include new features: General Assist, Quick Assist, Extreme Assist, and Video & Presentations.
- Removed outdated features: Connect & Sync and Upload Documents.
- Introduced a DownloadButton component that detects user OS for tailored download options.
- Removed the old DownloadApp component for a cleaner implementation.
2026-04-07 16:41:02 -07:00
Soham Bhattacharjee
a323f2e2c3
Merge branch 'dev' into fix/debounce-logs-message-filter 2026-04-08 05:08:25 +05:30
SohamBhattacharjee2003
c8ff3d7e76 fix: debounce logs message filter to prevent UI jank
- Add local state for message filter input with 300ms debounce
- Use useDebouncedValue hook to delay table filter updates
- Prevents full filtering pipeline from running on every keystroke
- Improves responsiveness for large log datasets
2026-04-08 05:06:22 +05:30
Anish Sarkar
6038f6dfc0 Merge remote-tracking branch 'upstream/dev' into feat/azure-ocr 2026-04-08 05:00:32 +05:30
Soham Bhattacharjee
8025c5bcda
Merge branch 'dev' into fix/add-autocomplete-attributes 2026-04-08 04:59:52 +05:30
SohamBhattacharjee2003
36391acfd0 fix: add autoComplete attributes to form inputs for better UX
- Add autoComplete="username" and "current-password" to login form
- Add autoComplete="email" and "new-password" to register form inputs
- Add autoComplete="name" to profile display name input
- Add autoComplete="off" to connector search input
- Enables browser password managers and autofill functionality
2026-04-08 04:58:14 +05:30
Anish Sarkar
d264aec57d refactor: update button styling for better user experience in ConnectToolsBanner and enhance document type icon visibility in DocumentNode 2026-04-08 04:48:16 +05:30
Soham Bhattacharjee
e11b67e6eb
Merge branch 'dev' into fix/remove-unnecessary-use-client-directives 2026-04-08 04:42:49 +05:30
Anish Sarkar
b7c9077fb2 feat: enhance folder watching experience by adding initial folder selection and updating state management in DocumentsSidebar and FolderWatchDialog 2026-04-08 04:42:07 +05:30
SohamBhattacharjee2003
4066cbc6f0 fix: remove unnecessary 'use client' directives to reduce client bundle
- Remove 'use client' from connector-document-mapping.ts (only exports constants and pure functions)
- Remove 'use client' from sidebar-separator.tsx (purely presentational component)
- Remove 'use client' and Framer Motion from logs/loading.tsx, replace with Tailwind animations
- Reduces client bundle size by moving server-compatible code to server components
2026-04-08 04:39:39 +05:30
SohamBhattacharjee2003
baada1457a fix: replace window.location with Next.js router for client-side navigation
- Replace window.location.href with router.push() + router.refresh() in UserDropdown logout
- Replace window.location.href with router.push() in CreateSearchSpaceDialog
- Replace window.location.reload() with router.refresh() in login page retry action
- Prevents full page reloads and preserves React state during in-app navigation
2026-04-08 04:28:41 +05:30
Rohan Verma
65c05008e0
Merge pull request #1163 from CREDO23/feat/vision-autocomplete
[Feat] Dynamic vision model list from OpenRouter with combobox selector
2026-04-07 15:51:45 -07:00
Anish Sarkar
3832bdbb91 refactor: replace FolderOpen icon with FolderClock in DocumentsSidebar and update button text in FolderWatchDialog 2026-04-08 04:12:54 +05:30
Anish Sarkar
078f735e3a feat: improve folder watching functionality with UI dialog for selecting and managing watched folders 2026-04-08 04:11:49 +05:30
DESKTOP-RTLN3BA\$punk
526057022d chore: update dependencies in desktop release workflow
- Upgraded actions/checkout from v4 to v5.
- Upgraded pnpm/action-setup from v4 to v5.
- Upgraded actions/setup-node from v4 to v5 and changed node version from 20 to 22.
2026-04-07 15:25:48 -07:00
DESKTOP-RTLN3BA\$punk
b9b567fe30 chore: update desktop release workflow and configuration
- Changed shell to bash in the desktop release workflow for consistency.
- Updated the hosted frontend URL in the .env file to point to the new domain.
- Enhanced package.json with homepage and author details for better project metadata.
2026-04-07 15:13:26 -07:00
DESKTOP-RTLN3BA\$punk
9ac062ad7e ci: add workflow_dispatch to desktop release for manual testing
Some checks are pending
Build and Push Docker Images / tag_release (push) Waiting to run
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Blocked by required conditions
2026-04-07 15:03:33 -07:00
DESKTOP-RTLN3BA\$punk
a38ec3f5dc fix: desktop release
TODO: Move to monorepo here
2026-04-07 14:59:40 -07:00
Anish Sarkar
20fa93f0ba refactor: make Azure Document Intelligence an internal LLAMACLOUD accelerator instead of a standalone ETL service 2026-04-08 03:26:24 +05:30
CREDO23
936bac21e9 Merge remote-tracking branch 'upstream/dev' into feat/vision-autocomplete 2026-04-07 23:48:02 +02:00
CREDO23
26bffbcc47 Add dynamic vision model list from OpenRouter with combobox selector 2026-04-07 23:39:52 +02:00
Rohan Verma
e827a3906d
Merge pull request #1162 from CREDO23/feat/vision-autocomplete
[Feat] Multi-suggestion autocomplete, Vision LLM config & Desktop analytics
2026-04-07 14:01:44 -07:00
CREDO23
4dd1b6c64f Add posthog-node and node-machine-id dependencies for desktop analytics 2026-04-07 22:15:35 +02:00
DESKTOP-RTLN3BA\$punk
00ee7974f6 fix(desktop): pasteback issues in quick ask
- Updated the quick ask window URL to include a query parameter for quick assist mode.
- Introduced a constant to detect quick assist mode based on the URL parameter in the assistant message component.
- Simplified state management for quick assist detection, improving component performance and clarity.
2026-04-07 13:13:16 -07:00
CREDO23
36b8a84b0b Add vision LLM config examples to global_llm_config.example.yaml 2026-04-07 21:55:58 +02:00
Anish Sarkar
1fa8d1220b feat: add support for Azure Document Intelligence in ETL pipeline 2026-04-08 00:59:12 +05:30
CREDO23
087b149843 Add setup prompt in overlay when vision model not configured 2026-04-07 21:06:11 +02:00
CREDO23
13625acdd5 Add vision model tab to chat page model selector 2026-04-07 20:47:17 +02:00