Increase ROFL visibility with higher opacity, background, and console logging for troubleshooting
Make ROFL letters smaller and position conservatively in bottom right with all effects intact
Use CSS primary color with dynamic modifications for all error effects (ROFL, ripple, borders)
Make ROFL letters highly visible with increased opacity, size, z-index, and debug logging
Add playful ROFL letter animations on password error for lighthearted user feedback
Replace cartoonish effects with elegant ripple, premium border transitions, and refined haptics
Add particle burst, haptic feedback, and warning icon to password error animation
Resolve ESLint prefer-const errors in Department and JobTitle managers - Changed roleIds from let to const using ternary operator - Eliminates reassignment by using conditional spread operator - Fixes build failure: 'roleIds' is never reassigned. Use 'const' instead - Maintains same functionality while satisfying ESLint rules
Add tooltip to Security Role save button with validation requirements - Added Tooltip component to Save Role button - Shows 'Please enter a role name to continue' when title is empty - Shows 'Ready to save security role' when validation passes - Uses span wrapper to enable tooltip on disabled buttons - Consistent with Department and Job Title tooltips for better UX
Add tooltips to save buttons with validation requirements - Added Tooltip components to Save Department and Save Job Title buttons - Shows 'Please enter a [name] to continue' when title is empty - Shows 'Ready to save [item]' when validation passes - Uses span wrapper to enable tooltip on disabled buttons - Improves UX by informing users what's required before saving
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
Use isAllowDelete field to enforce protected roles - Added isAllowDelete to SecurityRole interface - Changed from checking role title to checking isAllowDelete field - More robust and matches SecurityRoleManager approach - Prevents modification of any protected role, not just Everyone - Handles future protected roles automatically
Add backend validation to block Everyone role modifications
- Added protection check in updateRole endpoint - Added protection check in deleteRole endpoint - Returns 403 Forbidden when attempting to modify protected role...
Protect Everyone role from modifications in UI
- Edit button shows 'Protected' and is disabled for Everyone role - Delete button is disabled and grayed out for Everyone role - Both buttons have reduced opaci...
Add 3-letter day names to all date displays
- Main display: 'Mon 10/15/25 6:00PM' (was '10/15/25 6:00PM') - Your Time in tooltip: 'Monday, October 15, 2025' (full day name) - Other timezones: All include ...
Add full month name display under Your Time in tooltip
- Added full date with month name (e.g., 'October 15, 2025') - Positioned between compact time and timezone abbreviation - Slightly larger font size (0.75rem) f...
Use compact date format without leading zeros (m/d/yy h:mmAM/PM)
- Changed from 'Oct 15, 2025, 6:00 PM' to '10/15/25 6:00PM' - Removed leading zeros from single-digit months, days, and hours - Compact AM/PM without space (6:0...
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 ...
Make elapsed timer truly live and add elegant hover transformation
- Timer now updates every second for recent timestamps (truly live) - Hover over date transforms it to elapsed time (1M 18S, 27D 4H, etc) - Smooth animated tran...
Add live animated elapsed time timer to DateTimeDisplay tooltip
- Real-time updating timer showing time elapsed since timestamp - Smart formatting based on scale (1M 18S, 27D 4H, 2M 7D, etc) - Updates every second for recent...
Apply sophisticated nav bar gradient styling to DateTimeDisplay
- Tooltip background uses same gradient as NavPri (primary color mix with black) - Header and footer use subtle primary color gradients - Hover effects with pri...
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...
Add sophisticated DateTimeDisplay component with timezone support and global time tooltip
- Created reusable DateTimeDisplay component - Displays dates in user's timezone from *** session - Beautiful glassmorphic tooltip showing 8 relevant global tim...
Add timezone to *** session data and user info endpoint
Add timezone field to User entity with GMT default
Enhance password error animation with modern spring physics and multi-axis effects
Add modern form validation to all three settings tabs
- Added inline validation with error states and helper text - Required field validation with minimum/maximum length checks - Real-time error clearing as user ty...
Complete Department and JobTitle managers with full rights management system
Update controllers to handle direct rights for departments and job titles
Add direct rights management support for Departments and JobTitles
Complete Department and JobTitle managers with full CRUD and role association
Add DepartmentController and JobTitleController with full CRUD endpoints
Add DTOs and services for Department and JobTitle with role associations
Use request-level caching with existing KSessionService instead of SessionUtilityService
Remove SessionUtilityService to avoid duplicating Redis infrastructure
Make SessionUtilityService Redis connection configurable via Spring properties
Like what you see shipping?
All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.
