Commit graph

152 commits

Author SHA1 Message Date
1ad929e3ff Enable embed-ui feature by default to fix UI directory not found error
All checks were successful
BotUI CI / build (push) Successful in 5m59s
2026-02-05 13:42:52 -03:00
802219d8cd Bump version to 6.1.2 2026-02-05 11:20:06 -03:00
414d277ae1 Bump version to 6.1.1: Trigger CI rebuild with embed-ui fix 2026-02-05 10:30:12 -03:00
abdd2ff615 Fix UI directory detection: skip filesystem checks when embed-ui is enabled 2026-02-05 09:44:20 -03:00
77374ae638 Fix workflow trigger path: use .forgejo instead of .github
All checks were successful
BotUI CI / build (push) Successful in 3m50s
2026-02-05 09:20:40 -03:00
e0504f3703 Create dedicated BotUI CI workflow
- New workflow for botui-only builds and deployments
- Trigger only on botui/**, botlib/** changes
- Build only botui package with embed-ui feature
- Deploy only botui binary
- Restart only ui service
- Separate cache key to avoid conflicts with botserver
2026-02-05 08:45:20 -03:00
91a750127c Fix ServeDir import compilation error 2026-02-05 08:00:37 -03:00
5618ed4367 Update: UI files and add error-reporter.js 2026-02-04 13:54:26 -03:00
5e10222a94 Fix login redirect to use absolute URL
- Use window.location.origin for redirect to ensure it works from any path
- Redirects to chat (#chat) after successful authentication
- Maintains support for custom redirect parameter
2026-02-04 13:20:14 -03:00
375b457f48 Fix login redirect to chat after authentication
- Change default redirect from '/' to '/#chat' after successful login
- Ensures users go directly to chat interface instead of root
2026-02-04 12:52:47 -03:00
e135ebf2e6 Hide voice icon, use light theme, add cursor blink
- Hide voice input button in chat interface
- Change default theme from 'sentient' to 'light'
- Add blinking cursor animation to chat input field
2026-02-04 09:56:24 -03:00
b69ea06ad3 Fix logged-out user menu - show only Sign in button
Removed Profile, Settings, and Help & Support items from user menu
when user is not authenticated. Now only Sign in button is visible.
2026-02-04 08:57:31 -03:00
bd49ee3892 Add logged-out navigation menu component
- Simplified menu showing only Sign in button
- Uses HTMX for authentication redirect
- Follows existing UI component patterns
- Responsive design with CSS variables
2026-02-04 00:03:10 -03:00
34d55825bc feat: Hide omnibox and apps menu based on product configuration
- Hide omnibox search mechanism when search_enabled=false in product config
- Hide apps menu launcher when menu_launcher_enabled=false or when no apps are visible
- Check effectiveApps (after filtering by compiled features) to determine if menu should be shown
- Automatically hide the apps menu button when there are no apps to display

This provides UI controls that respect the new search_enabled and menu_launcher_enabled
directives added to the .product configuration.
2026-01-29 23:56:00 -03:00
27e839f22a Fix bot_id routing: Extract bot name from URL path
- Add bot_name field to WsQuery struct
- Extract bot_name from URL path (e.g., /edu, /chat/edu)
- Pass bot_name to backend WebSocket URL
- Use URL path for bot identification instead of relying on client message
2026-01-28 17:17:36 -03:00
db0f0c1178 fix(ui): Use absolute paths for CSS/JS assets in suite apps to resolve loading errors 2026-01-28 16:26:09 -03:00
f4dcae288a chore: Revert default log level to info 2026-01-27 18:44:22 -03:00
bb8b35d885 chore: Set default internal log level to trace 2026-01-27 18:37:21 -03:00
497d0dd18c fix(ui): add filesystem fallback for embedded mode
Some checks failed
GBCI / build (push) Failing after 11s
2026-01-26 14:53:32 -03:00
22fa29b3ec fix(ui): improve asset discovery and error logging
Some checks failed
GBCI / build (push) Failing after 11s
2026-01-26 14:50:27 -03:00
12c1e3210f feat(ui): implement embedded ui assets and robust path resolution
Some checks failed
GBCI / build (push) Failing after 12s
2026-01-26 11:44:47 -03:00
5657e33006 refactor(suite): clean up base layout and modularize app scripts 2026-01-25 13:33:03 -03:00
fee8b3d2a3 fix(clippy): resolve unused code warning 2026-01-25 10:29:56 -03:00
74a2122827 fix(ui): resolve clippy warnings and update dependencies 2026-01-25 08:42:35 -03:00
97b96faa89 Update UI 2026-01-24 22:06:22 -03:00
e3219d8a4f Refactor: Use workspace dependencies 2026-01-23 09:37:48 -03:00
55947a20b9 feat: add app feature flags and gate static routes 2026-01-22 21:23:41 -03:00
1435d1016f Update PROMPT.md and UI changes 2026-01-22 20:24:16 -03:00
e32e9b793a Update UI components and add drive-sentient.js 2026-01-16 11:29:47 -03:00
eb785b9a69 Fix UI button handlers and add missing JS modules
- Add admin-functions.js with 40+ button handlers
- Load admin scripts in main suite/index.html
- Fix slides.html gbSlides -> window.slidesApp
- Add canvas.js, dashboards.js, goals.js modules
- Export missing functions in drive.js, chat.js
2026-01-13 14:49:22 -03:00
e3b5929b99 fix(slides): remove duplicate cacheElements/bindEvents functions causing null error
The duplicate functions at lines 455-486 were redefining cacheElements and
bindEvents with wrong element IDs (kebab-case vs camelCase in HTML).
This caused 'Cannot read properties of null' error on slides app init.
2026-01-12 14:05:06 -03:00
08469ecbf6 fix(social): remove auto-loading API calls that cause 404 errors
- Remove hx-trigger='load' from social sidebar sections
- Replace loading placeholders with static empty state messages
- Add empty-state CSS styling
- Prevents page from breaking when backend APIs are not available
2026-01-12 00:25:31 -03:00
43be86bad4 fix(social): add social.css to index.html and clean up HTML formatting
- Add social.css to main index.html CSS includes
- Remove redundant link tag from social.html
- Clean up HTML formatting
2026-01-12 00:21:28 -03:00
a9dc598dd1 fix(docs): add data-app attribute and move CSS to index.html
- Add docs.css to main index.html CSS includes
- Remove redundant link tag from docs.html
- Add body data-app attribute in htmx-app.js when section changes
- Use body[data-app='docs'] selector for reliable CSS targeting
- Force light background on #main-content when docs is active
2026-01-12 00:11:28 -03:00
cc40ddb65f fix(docs): fix layout - AI panel on right, remove black strips, clean toolbar
- Remove editor-header/footer from default view (caused blue bar)
- Force light background (#f8f9fa) on all parent containers
- Fix chat-panel to be true flex child with order:2 for right side
- Simplify CSS with hardcoded colors instead of variables for reliability
- Set chat panel width to 280px with proper flex properties
- Hide header/footer by default, show only when content exists
- Clean up responsive breakpoints
2026-01-12 00:03:48 -03:00
7b2cf282ae fix(docs): respect PROMPT.md guidelines - replace emoji icons with SVG, fix layout issues
- Replace emoji icons (📄, 📝, 🌐, 📃, ✏️) in export modal with proper SVG icons
- Update CSS variables to use sentient bridge variables with fallbacks
- Fix docs-main flexbox layout to display canvas and chat panel side by side
- Add parent container overrides to prevent black strips from dark themes
- Fix chat panel width constraints and collapsed state transitions
- Update responsive breakpoints to use --header-height variable
- Add !important overrides on backgrounds to ensure proper light theme
2026-01-11 23:59:24 -03:00
9b39088e37 Fix theme cascade: use sentient variables directly in sheet/slides CSS
- Remove intermediate variable aliases in :root (they don't cascade)
- Replace --sheet-* and --slides-* with direct --sentient-* references
- Headers, borders, and cells now properly follow theme colors
- Dark themes will now paint dark backgrounds correctly
2026-01-11 21:08:43 -03:00
443f611289 Fix theme loading: add light.css and make default theme load it
- Created light.css with explicit sentient bridge hex values
- Updated theme-manager to always load a theme file (no null)
- Default and Light themes now both load light.css
- Sheet/Docs/Slides will now show white background with light themes
2026-01-11 20:58:11 -03:00
a389dc845e Add sentient-* bridge variables to ALL themes for Sheet/Docs/Slides support
- All 18 themes now include --sentient-* CSS variables
- Variables map theme HSL values to office suite apps
- Sheet, Docs, Slides will now respect all theme colors
- Includes: backgrounds, text, accents, borders, surfaces, inputs, status, shadows, radius
2026-01-11 20:53:44 -03:00
0662099ed1 Fix theme variables for Sheet/Docs/Slides in sentient theme
- Add complete sentient-* bridge variables inside [data-theme=sentient] block
- Variables now properly cascade to office suite apps
- Includes direct hex values for dark theme colors
2026-01-11 20:38:05 -03:00
91c54933f3 Fix theme support for Sheet/Docs/Slides
- Add complete sentient-* bridge variables in app.css
- Map all HSL theme variables to sentient-* naming
- Includes: backgrounds, text, accents, borders, surfaces, inputs, status colors, shadows, radius
- Rewrite 3dbevel theme to use CSS variables instead of !important overrides
- All themes now properly cascade to office suite apps
2026-01-11 20:28:11 -03:00
76627ae9f0 feat(suite): Enhanced UI for Sheet, Docs, and Slides editors 2026-01-11 12:01:59 -03:00
10299814b2 M365-like UI for Sheet, Docs, and Slides editors
- Clean editor experience without document list sidebars
- Theme-aware using --sentient-* CSS variables
- Modern toolbar design like Microsoft 365
- Sheet: Formula bar, spreadsheet grid, sheet tabs, zoom controls
- Docs: A4 page centered with shadow, formatting toolbar
- Slides: Thumbnails on left, canvas in center, properties panel
- AI chat panel (collapsible) for all editors
- Responsive design with mobile support
- Print styles for all editors
- Dark/light mode support via theme system
2026-01-11 09:56:44 -03:00
47abba8a99 chore: remove unused askama dependencies
- Removed askama and askama_axum from Cargo.toml
- Deleted askama.toml configuration file
- botui serves static HTML files directly, no template engine needed
2026-01-10 20:32:25 -03:00
69654f37d6 refactor(ui): extract inline CSS/JS to external files
Phase 2 of CSS/JS extraction - replace inline styles and scripts with
external file references for better maintainability and caching.

Files updated:
- home.html -> css/home.css, js/home.js
- tasks/tasks.html -> tasks/tasks.css, tasks/tasks.js
- admin/index.html -> admin/admin.css, admin/admin.js
- analytics/analytics.html -> analytics/analytics.css, analytics/analytics.js
- mail/mail.html -> mail/mail.css, mail/mail.js
- monitoring/monitoring.html -> monitoring/monitoring.css, monitoring/monitoring.js
- attendant/index.html -> attendant/attendant.css, attendant/attendant.js

All JS wrapped in IIFE pattern to prevent global namespace pollution.
Functions called from HTML onclick handlers exposed via window object.
HTMX reload handlers included for proper reinitialization.

Per PROMPT.md: no CDN links, HTMX-first approach, local assets only.
2026-01-10 20:12:48 -03:00
d4dc504d69 feat(auth): add security bootstrap and improve auth handling
- Add security-bootstrap.js for centralized auth token management
- Improve login flow with token persistence
- Update htmx-app.js auth integration
- Fix settings and tasks auth handling
2026-01-10 17:32:01 -03:00
c6fc5306c6 debug: add logging to htmx auth header 2026-01-10 14:22:31 -03:00
7bb230b59c fix(htmx): register auth header listener on document immediately
The listener was being registered on document.body inside initHTMX(),
but HTMX requests could start before body was ready.

Now register on document at script load time (immediately) to ensure
all HTMX requests get the Authorization header.
2026-01-10 14:19:22 -03:00
b5c75e650b fix(htmx): add Authorization header to all HTMX requests
- Include gb-access-token in Authorization header for all HTMX requests
- Add X-Session-ID header for session tracking
- Fix 401 errors on all HTMX-powered API calls
2026-01-10 14:00:43 -03:00
ab8c7ae02b feat(api-client): add centralized API client with auth token injection
- Create api-client.js for automatic auth token handling
- Include Authorization header in all API requests
- Support for localStorage/sessionStorage token persistence
- Handle 401/403 errors with global event dispatch
- Add file upload with progress tracking
- Update drive.js to use ApiClient
- Add api-client.js to index.html
2026-01-10 11:47:54 -03:00