Build And Push Image / docker (push) Successful in 1m54sDetails
- Install @tailwindcss/postcss package for v4 compatibility
- Update PostCSS configuration to use new package structure
- Fix nuxt.config.ts PostCSS plugin configuration
- Resolves Docker build failures
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Failing after 1m11sDetails
- Add Tailwind CSS configuration with bright glass utilities
- Create glass components (Sidebar, StatCard, DuesCard) with Lucide icons
- Implement new dashboard with limited dues display (4 cards max vs 30+)
- Use translucent white glass effects with Monaco red accents
- Improve visual hierarchy and reduce UI clutter
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m0sDetails
- Changed ID display from "DB ID: pending" to "ID Pending" for cleaner UI
- Moved Mark Paid button from Dues column to Actions column for better organization
- Increased Actions column width to accommodate the Mark Paid button
- Simplified the dues status display to just show the chip
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 1m58sDetails
- Removed all notification bell buttons from admin, board, and member layouts
- Removed notification menu items from profile dropdowns across all layouts
- Removed terminal/console button and command palette from admin dashboard
- Removed non-existent admin navigation links that were causing 404 errors:
- Roles & Permissions, Import/Export Members, Stripe Dashboard
- Financial Reports, Email/Security Settings, System Logs
- Backup & Restore, Analytics & Insights, Admin Profile
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m0sDetails
- Sort dues management cards alphabetically by last name
- Change 'Invalid Date' display to 'N/A' in formatDate functions
- Add new refined member management view with modern UI design
- Glassmorphism effects and gradient accents
- Enhanced stat cards with progress indicators
- Improved search and filter interface
- Better card and table layouts
- Smooth animations and transitions
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m11sDetails
- Added background-color: #fafafa to v-app element in both layouts
- Added solid background-color fallback to .glass-main class before gradients
- Ensures Edge and other browsers show light background even without gradient support
- Fixes transparent rgba gradient rendering issues in Edge
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 1m53sDetails
- Added background-color fallback for browsers without gradient support
- Split background property for better cross-browser compatibility
- Ensures Edge and other browsers display light background correctly
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 1m52sDetails
- Added board-dashboard class wrapper to Board pages (Governance, Meetings, Members)
- Added member-dashboard class wrapper to Member pages (Events, Profile, Resources)
- All pages now properly display the light gradient background matching admin dashboard
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 1m52sDetails
- Changed to display actual member_id field value
- Show 'Pending' when member_id is not set instead of generating MUSA-ID format
- Ensures consistency with actual database member IDs
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Has been cancelledDetails
- Added proper background color (#f5f5f5) to admin dashboard
- Set min-height to ensure full viewport coverage
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m0sDetails
- Added profile picture between welcome message and title
- Removed Events and Members boxes from dashboard
- Added distinct borders and icon to Dues Management card
- Moved hamburger menu to the right side of app bar
- Removed notification bell icon from app bar
- Enhanced profile card appearance in sidebar with gradient background
- Fixed Mark as Paid button alignment to be inline with other action buttons
- Added support for displaying multiple nationality flags in dues cards
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m18sDetails
- Create MultipleCountryFlags component to display multiple country flags
- Support comma-separated nationality values (e.g., 'FR,MC,US')
- Update admin members page to use MultipleCountryFlags in both list and grid views
- Update board members page to display nationalities with flags
- Add nationality column to board members table
- Update member forms to support multiple nationality selection
- Display flags with slight overlap for space efficiency, expand on hover
- Maintain backward compatibility with single nationality values
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m20sDetails
- Fix dues payment logic to automatically calculate payment_due_date as 1 year from payment date
- Remove redundant dues_paid_until field and replace with payment_due_date throughout
- Implement member ID generation system with format MUSA-YYYY-XXXX
- Create migration endpoints for generating member IDs and fixing payment dates
- Update admin members page to display actual member_id from database
- Ensure ProfileAvatar components use correct member_id field
- Add support for profile images in list and grid views with initials fallback
- Fix countries export alias for backward compatibility
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m13sDetails
The ViewMemberDialog component was importing 'countries' (lowercase) but the file only exported 'COUNTRIES' (uppercase). Added an export alias to maintain backward compatibility.
Build And Push Image / docker (push) Failing after 1m34sDetails
- Add dual view modes (list and grid) with toggle functionality
- Enhance list view with profile avatars, nationality flags, and dues status
- Implement responsive grid view with member cards
- Add inline 'Mark as Paid' functionality in both views
- Redesign ViewMemberDialog with modern hero header and tabbed interface
- Add payment history, activity timeline, and notes management tabs
- Integrate profile avatars throughout the application
- Make all member entries clickable to open detailed modal
- Clean up console.log statements and remove unused code
- Improve overall design consistency with glass morphism effects
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Failing after 1m18sDetails
- Updated imports to use new design-system-v2.scss
- Fixed build error caused by deleted design-mockups directory
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Failing after 1m14sDetails
- Created new design-system-v2.scss with modern design tokens
- Enhanced Vuetify theme configuration with refined colors
- Added professional dashboard styles component
- Improved typography, spacing, and visual hierarchy
- Implemented glass morphism effects with better contrast
- Added smooth animations and micro-interactions
- Improved responsive design for mobile devices
- Enhanced stat cards, data tables, and navigation
- Fixed color contrast issues identified in audit
- Added professional gradients and shadows
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m2sDetails
- Changed board dashboard from 'dashboard' layout to 'board' layout
- This fixes the missing hamburger menu and sidebar toggle functionality
- Removed debug console.log statements from board layout
- Board dashboard now has same sidebar behavior as admin and member dashboards
The issue was that board/dashboard/index.vue was using the old 'dashboard'
layout instead of the proper 'board' layout that has rail mode support.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 1m57sDetails
- Added debug logging to track toggleDrawer function calls
- Added explicit CSS to ensure hamburger button is visible
- Added mounted hook logging to verify initial state
- Ensured button has proper z-index and display properties
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 1m47sDetails
- Removed CSS that was hiding all hamburger menu buttons
- This was preventing the sidebar toggle button from appearing
- Now all dashboards (admin, board, member) have working toggle buttons
- Board dashboard now has same functionality as admin and member views
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 1m48sDetails
- Increased collapsed sidebar width from 80px to 100px for better icon visibility
- Updated rail-width prop to 100 in all three layouts (admin, board, member)
- Fixed profile section avatar sizing - now uses size 32 in collapsed mode
- Simplified menu button to always show vertical dots icon
- Improved spacing and alignment in profile section for both states
- Removed conditional button variants for cleaner, consistent design
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m3sDetails
- Added collapsed mode icons for Members and Events sections
- Members and Events groups now show as single icons with tooltips when sidebar is collapsed
- Maintains badge for pending applications in collapsed mode
- Ensures consistent navigation experience across all dashboard layouts
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Has been cancelledDetails
- Increased rail mode width from 56px to 80px to properly fit icons
- Updated rail-width prop in all three layout files (admin, board, member)
- Redesigned profile section with improved layout and positioning
- Added horizontal layout in expanded mode with avatar, info, and menu button
- Implemented responsive design that switches to vertical layout in collapsed mode
- Enhanced menu with colorful icons and hover effects
- Added role badges (Admin, Board, Member) for better visual identification
- Improved glass morphism effects on profile card and menu
- Added smooth transitions and hover animations
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 1m54sDetails
- Modified main.scss to respect Vuetify 3 rail mode
- Removed !important width overrides that blocked collapse
- Added conditional CSS: 280px when expanded, 56px when in rail mode
- Sidebar now properly collapses/expands when toggle button is clicked
- Preserves glass morphism effects and smooth transitions
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m7sDetails
- Changed from fixed width to dynamic width based on miniVariant state
- Replaced v-show with v-if for list groups to properly hide when collapsed
- Added proper template conditionals for logo section
- Added tooltips for all single navigation items when in rail mode
- Fixed badge display to use dot when collapsed
- Ensured proper title binding with undefined when collapsed
This fixes the sidebar collapse issue across admin, board, and member layouts.
Build And Push Image / docker (push) Successful in 2m1sDetails
- Removed 'app' prop from v-navigation-drawer in all layouts
- Removed 'app' prop from v-app-bar in all layouts
- The 'app' prop is deprecated in Vuetify 3 and was preventing rail mode
- This was the root cause of sidebar not collapsing
Vuetify 3 automatically handles layout participation without the app prop.
The presence of this deprecated prop was causing Vuetify to ignore the
rail prop entirely, preventing the sidebar from collapsing.
Build And Push Image / docker (push) Successful in 1m56sDetails
- Remove manual width control that was conflicting with rail prop
- Use fixed width and rail-width props for proper Vuetify 3 behavior
- Simplify toggleDrawer function to just toggle miniVariant
- Add v-show directive to hide list groups in rail mode
- Applied fixes to admin.vue, member.vue, and board.vue layouts
The sidebar now properly collapses to 56px rail mode showing only icons,
and expands to 280px full width showing complete navigation items.
Build And Push Image / docker (push) Successful in 1m56sDetails
- Replace deprecated createUserWithRoleRegistration with createUserWithGroupAssignment
- Update comments to reflect group-based system instead of role-based
- Resolves registration error when creating new users
Build And Push Image / docker (push) Successful in 2m2sDetails
- Change from :mini-variant to :rail for Vue 3/Vuetify 3 compatibility
- Fix width prop to use numbers instead of strings
- Add missing loading ref in board members page
- Ensure consistent collapse behavior across admin, member, and board layouts
Build And Push Image / docker (push) Successful in 2m11sDetails
- Updated member-list.vue to sort by last name with new sort options
- Changed default sort to lastname-asc
- Added Last Name and First Name sort options in dropdown
- Updated board/members/index.vue to include name field and sort by last name
- Updated admin/members/index.vue to include name field and sort by last name
- All member lists now consistently sort alphabetically by last name
Build And Push Image / docker (push) Successful in 1m57sDetails
- Added three-state sidebar (closed, mini, full) across all layouts
- Positioned collapse toggle button in app bar
- Made logo and text responsive to collapsed state
- Added proper tooltips for mini mode navigation
- Consistent implementation across board, admin, and member portals
Build And Push Image / docker (push) Successful in 1m56sDetails
- Admin members page now loads real member data from NocoDB API
- Admin users page fetches actual users from Keycloak with tier determination
- Board members page uses real member data with proper transformations
- Admin payments page generates payment records from dues tracking data
- Created new /api/admin/users endpoint for Keycloak user management
- All stats cards now calculate from real data instead of hardcoded values
- Removed all mock/placeholder data arrays from production pages
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m13sDetails
- Added getUserCount() method to Keycloak admin for real user statistics
- Replaced hardcoded userCount (25) with live Keycloak data in admin stats
- Fixed board meeting API to query real events, removed Jan 15 2025 fallback
- Updated board stats to count real events instead of hardcoded 3
- Created member-tiers service for proper tier determination
- Created dues-calculator service for accurate dues tracking
- Updated auth callback to use member-tiers service
- Updated overdue-count API to use dues-calculator
- Added data quality tracking with confidence levels
- Added proper error handling - returns null/0 instead of fake data
- Included source tracking for all data (live/calculated/fallback)
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m6sDetails
- Replace all hardcoded avatars with ProfileAvatar component
- Update admin and board layouts to use ProfileAvatar
- Update DuesActionCard and DuesOverdueBanner components
- Update admin users list to use ProfileAvatar
- Ensure consistent display of profile pictures with initials fallback
- All avatars now show either user's profile picture or initials
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Successful in 2m0sDetails
- Added browser compatibility fallbacks with @supports for backdrop-filter
- Fixed SCSS syntax errors with mixins and !important
- Added global production overrides for glass morphism effects
- Enhanced Bento grid implementation with proper specificity
- Improved mobile responsiveness for small screens
- Added fallback colors for browsers without backdrop-filter support
- Fixed inset property for wider browser compatibility
- Ensured sidebar fixed width and removed hamburger menus globally
- Added animation classes and keyframes globally
Build And Push Image / docker (push) Successful in 1m54sDetails
- Removed rotate(5deg) from icon buttons hover state
- Removed rotate(5deg) from FAB buttons hover state
- Removed icon-hover-rotate mixin from nav items
- Keep scale animations but remove tilt/rotation effects
Buttons now scale without rotating for cleaner interaction
Build And Push Image / docker (push) Successful in 1m51sDetails
- Fixed v-col and v-row closing tag mismatches in board dashboard
- Added missing SCSS import for enhanced-glass mixin in admin dashboard
- Verified build passes successfully with all changes
- Comprehensive audit completed to prevent future syntax errors
All Vue templates now properly structured with correct closing tags
Build tested locally and passes without errors
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Failing after 1m0sDetails
- Enhanced member dashboard with glass morphism effects (30px blur)
- Implemented Bento grid layout on member dashboard
- Added comprehensive animation system:
- Shimmer animations for logos and badges
- Pulse animations for notifications
- Float animations for dashboard elements
- Modal enter/leave transitions
- Applied glass effects to all form inputs with floating labels
- Created glass morphism styles for dialogs and modals
- Standardized all buttons with Monaco gradient styles
- Added hover effects and animations throughout
- Established consistent design patterns across all dashboards
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Build And Push Image / docker (push) Failing after 1m1sDetails
- Implemented enhanced glass morphism effects with 30px blur
- Added Bento grid layout system (12-column grid)
- Created gradient text effects for dashboard titles
- Added animated entrance effects for all cards
- Implemented stat cards with gradient values
- Added responsive breakpoints for mobile/tablet
- Unified button styles with hover animations
- Removed basic elevation cards in favor of glass cards
Build And Push Image / docker (push) Successful in 2m6sDetails
- Removed hamburger menu buttons from all layouts (member, admin, board, dashboard)
- Updated all sidebars to fixed 280px width (non-collapsible)
- Enhanced glass morphism effects with 30px blur
- Implemented vertical profile card with small avatar
- Added consistent animations and hover effects
- Updated design documentation with new specifications