✨ Features
- CMS: preview mode with signed URL (30 min) to view draft state of a page before publishing
- CMS: blocks can now be hidden/shown directly from the block header — hidden blocks are skipped in the front-end render (no HTML output)
🐛 Fixed
- Tests: eliminate all 57 skipped tests — add missing
uses(TestCase::class), convert Livewire auth-page tests to HTTP/model-level, remove obsolete browser tests, fix fragile assertions - CMS: reserved slug validation returns a form error instead of throwing an exception, with
Rule::notIn()on the slug field - Settings: increase PHP memory limit to 512M to prevent out-of-memory errors in Livewire tests rendering the full settings page
- Settings: add lazy loading to 7 tabs (SEO, Appearance, Content, Navigation, Analytics, Backup, AI Translation) to improve initial page load performance
- Blocks: remove test files accidentally included in wrong PR
- Blocks: override light mode background with theme dark color when
background_type_darkis "none" — fixes white background appearing in dark mode - Theme: add
background-coloron<main>so transparent blocks properly inherit the theme's default background
✨ Added
- Contact form: form card background and submit button colors are now configurable via the admin UI (Form Styling section) — leave empty for transparent/inherit
- Contact form: Alpine.js component migrated from
Alpine.data()registration to inlinex-data— fixes console errors in Filament CMS preview - Tests: feature tests for TagResource CRUD (create, read, update, delete)
- Tests: feature test for auto-save indicator on blog post create/edit pages
🔥 Removed
- Tests: remove 2 obsolete browser test files (replaced by feature tests)
- Tests: remove 3 tests that already exist in
tests/Localized/FrontendTranslationsTest