* fix: prevent smart card reuse between pages by adding stable keys in ServiceGroup
Previously ServiceGroup keyed components only by index, causing Vue to reuse the wrong smart-card instance when navigating between pages. Keys now include groupIndex and item identity to ensure components re-mount correctly.
* Fix duplicate Service cards by ensuring unique Vue keys
The search feature was causing some Service cards to duplicate when multiple items in a group shared the same `name` value. Vue reused DOM nodes because the generated `key` for <Service> was not always unique:
This caused instability during filtering and resulted in one of the cards being duplicated repeatedly until a full page reload.
Addresses issue #769 where background image url is referencing <ip_address>/resources/assets/themes/walkxcode (404) rather than <ip_address>/assets/themes/walkxcode where the images are stored
Adds --highlight-variant-inverted color definitions to both light and dark variants of the neon theme to improve text contrast against the bright neon green background.
Add support for Pi-hole v6 API while maintaining v5 compatibility. The component now
handles both API versions with proper session-based authentication for v6 and legacy
authentication for v5. Includes automated retries, session caching, and proper cleanup.
- Add new apiVersion config option (default: 5, accepts: 5,6)
- Implement session-based auth with caching for v6 API
- Add auto-retry mechanism with configurable attempts
- Add periodic status polling for v6 API
- Separate v5/v6 API handling logic for better maintenance
- Improve error handling and status display
- Update documentation with v6 API support details
Breaking changes: None. V5 remains default for backward compatibility.
V6 mode must be explicitly enabled by setting apiVersion: 6 in config.