Add default value for usagePercent comparison in SystemDiagnostics
Add default value for usagePercent to handle undefined
- Changed usagePercent > 80 to (usagePercent || 0) > 80 - Prevents TypeScript error when usagePercent is possibly undefined - Defaults to 0 if undefined, showin...
Remove remaining Grid tags causing syntax error
- Fixed lines 518-527 that still had Grid container/item tags - Replaced with Box + CSS Grid for 2-column layout - All Grid references now removed from SystemDi...
Replace all MUI Grid components with Box and CSS Grid
- Removed Grid2 import (module doesn't exist in this MUI version) - Replaced all Grid containers with Box + CSS Grid layout - Used gridTemplateColumns with resp...
Use Grid2 for proper MUI Grid component support
- Changed Grid import to use @mui/material/Unstable_Grid2 - Fixes TypeScript error: Grid item prop not recognized - Grid2 properly supports item, xs, md, lg pro...
Replace any types with proper interfaces in SystemDiagnostics
- Replaced all 'any' types with detailed TypeScript interfaces - Removed unused WarningIcon import - Removed unused getStatusColor and getStatusIcon helper func...
Correct Redis ping() method call in DiagnosticsController
- Changed **************** to connection.ping() - RedisConnection.ping() is the correct API method - Fixes compilation error on lines 302 and 473 Resolves buil...
Pass re*** build args in Forgejo workflow
- Added build-args to docker/build-push-action with re*** site key - NEXT_PUBLIC_* env vars now properly baked into JavaScript bundle - This enables re*** funct...
Add build args support for NEXT_PUBLIC environment variables
- Added ARG declarations for NEXT_PUBLIC_RE***_SITE_KEY and related vars - Converted ARGs to ENV vars for Next.js build process - Created BUILD_ARGS_REQUIRED.md...
Escape apostrophe in Register link text - Resolves ESLint build error
Add parent-child domain concatenation to OrganizationRepository
- Updated findByDomain query to handle subdomain + parent concatenation - Now supports both direct matches (localhost) and hierarchical matches (login.kamocrm.c...
Forward X-Forwarded-Host header to SecurityService providers endpoint
- Added X-Forwarded-Host header when calling /api/security/providers - SecurityService requires this header to determine which organization to fetch providers f...
Restore white text color on Welcome Back section
- Added explicit color styling (sx={{ color: '#ffffff' }}) to Typography components - Material-UI was overriding the text-white class with default colors - Ensu...
Correct timestamp field names in ExternalAuthProviderDTO
- Changed getCreatedAt() to getDateCreated() - Changed getUpdatedAt() to getDateUpdated() - Changed from LocalDateTime to Date to match EmbRecordState - EmbReco...
Prevent member list from triggering logout - skip fetch on validate/logout pages and add cookie check with delay
Replace fake member data with real API call in MemberListProvider to show actual organization members
Correct EmbNameFull field access and remove phone extension (method conflict with custom getter)
Use logoFull variant and flexible sizing to eliminate empty space around full logos on loading screens
Use organization theme colors instead of hardcoded green on welcome/success screen
Remove intermediate status messages in logout flow and redirect immediately to prevent double loading display
Make Create Organization card always visible regardless of other orgs in network
Properly extract base URL using regex to avoid including path portions
Use current site's theme hostname with org-specific paths to avoid SSL certificate errors
Improve org logo URL generation by stripping subdomain aliases and extracting base domain
Replace Grid with GridLegacy in page.tsx for MUI v7 compatibility
Use GridLegacy for MUI v7 compatibility - Grid2 not available, GridLegacy has the legacy API with item/xs props
Replace Grid with Grid2 for MUI v7 compatibility in network page
Resolve ESLint errors blocking build - escape unescaped entities and replace any types with strict typing
Panels now close when clicking empty areas of NavPri sidebar - Fixed useEffect logic to close panels when activePanel is null - Previously only closed when activePanel was a different panel ID - Now correctly closes when activePanel is null (sidebar background clicked)
Add click-outside detection to primary navigation panels - Added backdrop overlay to NavPriItemWithPanel component - Click or touch outside panel now closes it - Increased z-index to ensure backdrop is visible above NavTop bar - Matches behavior of NavTopPanel for consistent UX
Make ROFL letters highly visible with increased opacity, size, z-index, and debug logging
Restore text field editing by targeting pointerEvents more specifically - Changed pointerEvents from FormControlLabel to only target the label element - Prevents disabling text input fields while still protecting Everyone role - Uses MUI selector to target only the label, not the entire form control
Use case-insensitive contains check for Everyone role - Changed from exact title match to **************** - Handles variations like 'Everyone (Applies To All)' - More robust role detection for Everyone role protection - Applied to all role checks: checkbox state, toggle prevention, save enforcement, and edit loading
Prevent cell width adjustment by using fixed 180px width
- Outer container now has fixed width: 180px - Removed minWidth in favor of fixed width - Inner flex container handles content layout - No more width adjustment...
Make timer update every second and add 'ago' suffix to elapsed time
- Timer now updates EVERY SECOND regardless of age (truly live) - calculateTimeAgo() uses currentTime state for real-time calculation - Added ' ago' suffix to a...
Make timer truly live with constant recalculation and stabilize hover area
- Timer now recalculates on every render (truly live, no lag) - State updates trigger re-renders at smart intervals (1s to 1hr) - Fixed glitchy hover by adding ...
Store and retrieve timezone from localStorage instead of API calls
- Updated validate route to fetch timezone from Redis session data - Store timezone in localStorage during validation - DateTimeDisplay now reads from localStor...
Make SessionUtilityService Redis connection configurable via Spring properties
Replace try-with-resources with manual close for OtkValidator
Like what you see shipping?
Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.