diff --git a/resources/css/components/chip.css b/resources/css/components/chip.css index 7779fa60..d780d1fd 100644 --- a/resources/css/components/chip.css +++ b/resources/css/components/chip.css @@ -195,22 +195,6 @@ pointer-events: none; } - /* A filter chip bound with `x-model` keeps a real, focusable `` under the - label for its native semantics and `:has(:checked)`, visually hidden the way `md-visually-hidden` - hides text — a hook, not a class, because a package view writes no class but the interaction - classes (plan step 36). */ - [data-md-chip-native] { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - margin: -1px; - overflow: hidden; - clip-path: inset(50%); - white-space: nowrap; - border-width: 0; - } - /* ---- Contents ------------------------------------------------------------------------------ */ [data-md-chip-label] { diff --git a/resources/css/components/field.css b/resources/css/components/field.css index 374c1991..c95ae66e 100644 --- a/resources/css/components/field.css +++ b/resources/css/components/field.css @@ -408,21 +408,6 @@ color: var(--md-sys-color-error); } - /* The counter's spoken form: the same visually-hidden clip the text classes give - `md-visually-hidden`, kept as a hook because a package view writes no class but the - interaction classes (plan step 36). */ - [data-md-field-live] { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - margin: -1px; - overflow: hidden; - clip-path: inset(50%); - white-space: nowrap; - border-width: 0; - } - /* ---- The filled text field ---------------------------------------------------------------- */ [data-md-field][data-md-variant='filled'] [data-md-field-box] { diff --git a/resources/css/components/search.css b/resources/css/components/search.css index 25d2e2bb..035b8bc4 100644 --- a/resources/css/components/search.css +++ b/resources/css/components/search.css @@ -304,19 +304,4 @@ letter-spacing: var(--md-sys-typescale-body-md-tracking); font-variation-settings: normal; } - - /* The result count's spoken form: the same visually-hidden clip the text classes give - `md-visually-hidden`, kept as a hook because a package view writes no class but the - interaction classes (plan step 36). */ - [data-md-search-status] { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - margin: -1px; - overflow: hidden; - clip-path: inset(50%); - white-space: nowrap; - border-width: 0; - } } diff --git a/resources/views/components/chip.blade.php b/resources/views/components/chip.blade.php index e1e63bcf..7c4d156c 100644 --- a/resources/views/components/chip.blade.php +++ b/resources/views/components/chip.blade.php @@ -152,7 +152,7 @@ 'value' => $value, 'checked' => $checked ? true : null, 'disabled' => $disabled ? true : null, - 'data-md-chip-native' => true, + 'class' => 'md-visually-hidden', ], fn ($attribute): bool => $attribute !== null)) : null; diff --git a/resources/views/components/field.blade.php b/resources/views/components/field.blade.php index 1a206442..c3e0c587 100644 --- a/resources/views/components/field.blade.php +++ b/resources/views/components/field.blade.php @@ -137,7 +137,7 @@ x-bind:data-md-over="used > max" > - + @endif diff --git a/resources/views/components/search.blade.php b/resources/views/components/search.blade.php index eb046389..742ba8af 100644 --- a/resources/views/components/search.blade.php +++ b/resources/views/components/search.blade.php @@ -149,5 +149,5 @@ @endif - + diff --git a/tests/Feature/Components/ChipTest.php b/tests/Feature/Components/ChipTest.php index b028c9dc..93dedfcb 100644 --- a/tests/Feature/Components/ChipTest.php +++ b/tests/Feature/Components/ChipTest.php @@ -123,7 +123,7 @@ it('makes a bound filter chip a native checkbox under the chip', function () { ->toContain('type="checkbox"') ->toContain('value="photos"') ->toContain('x-model="kinds"') - ->toContain('data-md-chip-native') + ->toContain('class="md-visually-hidden"') ->not->toContain('me-4') ->not->toContain('checked') ->and($html) diff --git a/tests/Feature/Components/FieldTest.php b/tests/Feature/Components/FieldTest.php index 379d3857..3c05987c 100644 --- a/tests/Feature/Components/FieldTest.php +++ b/tests/Feature/Components/FieldTest.php @@ -173,7 +173,7 @@ it('counts the characters of a field that has a maximum', function () { ->toContain('data-md-field-support-row') ->toContain('data-md-field-counter') ->toContain('x-bind:data-md-over="used > max"') - ->toContain('data-md-field-live') + ->toContain('') ->toContain('maxlength="60"') ->toContain('max: 60,') ->toContain('>0/60') diff --git a/tests/Feature/Components/SearchTest.php b/tests/Feature/Components/SearchTest.php index a62f557b..ba177aee 100644 --- a/tests/Feature/Components/SearchTest.php +++ b/tests/Feature/Components/SearchTest.php @@ -34,7 +34,7 @@ it('announces how many results there are, politely', function () { $html = (string) $this->blade(''); expect($html) - ->toContain('data-md-search-status') + ->toContain('data-md-search-status class="md-visually-hidden"') ->toContain('aria-live="polite"') ->toContain('aria-atomic="true"') ->toContain('No results')