The paragraphs restate the material-3 guideline's rules beside the tokens they govern (plan step 28); the README's AI agents section names the second guideline and skill (step 30). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Qwx5USif3wFFmxtHg5U1g9
30 lines
2.0 KiB
PHP
30 lines
2.0 KiB
PHP
<section id="shape" class="scroll-mt-24 space-y-6">
|
|
<h2 class="type-headline-md">Shape</h2>
|
|
|
|
<p class="max-w-3xl type-body-md text-on-surface-variant">
|
|
The corner scale as <code>rounded-corner-*</code>, and M3 Expressive's shapes as <code><x-shape name="…" /></code>.
|
|
</p>
|
|
|
|
<p class="max-w-3xl type-body-md text-on-surface-variant" data-test="when-to-use">
|
|
When to use which: <code>full</code> for buttons, icon buttons, chips' avatars, badges, switches, sliders, the search bar and navigation indicators; <code>xs</code> for text fields, menus, snackbars and plain tooltips; <code>sm</code> for chips; <code>md</code> for cards and rich tooltips; <code>lg</code> for the FAB and a side sheet's inner corners; <code>xl</code> for dialogs, bottom sheets, pickers and carousel items; <code>xxl</code> for hero containers. A nested corner is the outer radius minus the padding. A press squares a round shape; nothing morphs on hover. The shapes below are decoration, never meaning.
|
|
</p>
|
|
|
|
<div class="grid grid-cols-2 gap-4 medium:grid-cols-5">
|
|
@foreach (['rounded-corner-none', 'rounded-corner-xs', 'rounded-corner-sm', 'rounded-corner-md', 'rounded-corner-lg', 'rounded-corner-lg-increased', 'rounded-corner-xl', 'rounded-corner-xl-increased', 'rounded-corner-xxl', 'rounded-corner-full'] as $corner)
|
|
<div class="space-y-2">
|
|
<div @class(['h-20 bg-primary-container', $corner])></div>
|
|
<code class="type-label-md text-on-surface-variant">{{ $corner }}</code>
|
|
</div>
|
|
@endforeach
|
|
</div>
|
|
|
|
<div class="grid grid-cols-3 gap-4 medium:grid-cols-5 expanded:grid-cols-7">
|
|
@foreach (\NoNameWeb\LivewireMaterial\Support\SvgFile::shapeNames() as $shape)
|
|
<div class="space-y-2 text-center">
|
|
<x-livewire-material::shape :name="$shape" class="mx-auto size-20 text-secondary-container" />
|
|
<code class="type-label-md text-on-surface-variant">{{ $shape }}</code>
|
|
</div>
|
|
@endforeach
|
|
</div>
|
|
</section>
|