From 1134dbac0b5193fc1c328c27e13433b7446bdc5a Mon Sep 17 00:00:00 2001 From: Andreas Reinhold / reini Date: Mon, 14 Sep 2026 04:04:42 +0200 Subject: [PATCH] Show both symbol cuts in the showcase icon search MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The search draws its 4,135 symbols as CSS masks through the symbol route, so the route learned `?optical=20` — the 24 cut otherwise, as on — and the section got a checkbox that switches the cut and draws the grid at 20px, where the difference in stroke weight is the point. Plan step 10; finding C16. Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_01Qwx5USif3wFFmxtHg5U1g9 --- .../views/showcase/sections/icons.blade.php | 15 ++++++++++++--- .../Controllers/ShowcaseSymbolController.php | 9 +++++++-- tests/Feature/ShowcaseTest.php | 16 ++++++++++++++++ 3 files changed, 35 insertions(+), 5 deletions(-) diff --git a/resources/views/showcase/sections/icons.blade.php b/resources/views/showcase/sections/icons.blade.php index 7a0a2be2..aa7c51ed 100644 --- a/resources/views/showcase/sections/icons.blade.php +++ b/resources/views/showcase/sections/icons.blade.php @@ -5,6 +5,7 @@ names: [], query: '', filled: false, + optical20: false, async load() { this.names = await (await fetch('{{ route('livewire-material.symbols', [], false) }}')).json(); }, @@ -19,7 +20,9 @@

Icons

- Every Material Symbol (Rounded, 400, grade 0, 24px) as <x-icon name="…" />, outlined or filled. + Every Material Symbol (Rounded, 400, grade 0) as <x-icon name="…" />, outlined or filled, + drawn from the optical size 24 cut or — for an icon 20px or smaller, where 24's strokes would look thin — + the 20 cut: <x-icon name="…" optical="20" class="size-5" />.

@@ -32,15 +35,21 @@ Filled + +