Theme Integration:
- Added useTheme hook from @payloadcms/ui
- Replaced all hardcoded colors with CSS custom properties
- Created getThemeStyles() function for consistent theming
- Updated all UI elements to respect dark/light theme settings
- Added proper contrast for text, backgrounds, and borders
Navigation Enhancement:
- Made feature flag names clickable links
- Links navigate to /admin/collections/feature-flags/{id} for editing
- Added hover effects with underline on flag name links
- Used theme-aware link color (info blue)
The interface now properly adapts to Payload's admin panel theme,
supporting both dark and light modes seamlessly.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added null checks throughout filteredAndSortedFlags computation
- Filter out null/undefined entries before processing
- Added null checks in summary statistics calculations
- Enhanced API response filtering to remove invalid entries
- Added optional chaining for safer property access
- Improved error handling for malformed API responses
This resolves the "can't access property 'enabled', f is null" runtime error.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Complete rewrite of FeatureFlagsView component with table layout
- Added inline editing for enabled/disabled checkboxes
- Added inline editing for rollout percentages with validation (0-100)
- Implemented sortable columns (name, enabled, rollout %, last updated)
- Added real-time search functionality across name, description, and tags
- Added visual status indicators with color coding
- Implemented proper API integration with PATCH requests for updates
- Added loading states and success/error notifications
- Improved responsive design with sticky status column
- Added summary statistics at the bottom
The new interface provides a much more efficient way to manage multiple feature flags at once, similar to a spreadsheet application.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Removed custom endpoint handler and endpoints directory
- Removed enableApi configuration option from plugin
- Updated client hooks to use Payload's native collection API
- Updated documentation to reflect API changes
- Updated view component to handle Payload API response format
The plugin now uses Payload CMS's built-in REST API for the feature-flags collection, which provides standard query syntax, pagination, and automatic access control enforcement.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>