Skip to content

Commit c1bcebc

Browse files
committed
Update PARITY.md to reflect :where() usage on all element selectors
1 parent d65257f commit c1bcebc

1 file changed

Lines changed: 13 additions & 13 deletions

File tree

renderers/react/visual-parity/PARITY.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -229,25 +229,25 @@ Each Lit component with `static styles` needs a corresponding entry in `componen
229229
| **Card** | `card.ts` | `:host`, `section`, `::slotted(*)` | Uses `> section` child combinator |
230230
| **Text** | `text.ts` | `:host`, `h1-h5` (uses `:where()`) | Paragraph margin reset added |
231231
| **Divider** | `divider.ts` | `:host`, `hr` | Added margin to match browser default |
232-
| **TextField** | `text-field.ts` | `:host`, `input`, `label`, `textarea` | Multiline support added |
232+
| **TextField** | `text-field.ts` | `:host`, `input`, `label`, `textarea` | Uses `:where()` for element selectors. Multiline support added |
233233
| **Button** | `button.ts` | `:host` | Simple display/flex |
234234
| **Icon** | `icon.ts` | `:host` | Simple display/flex |
235235
| **Column** | `column.ts` | `:host`, `section`, attribute selectors | Uses `data-alignment` and `data-distribution` |
236236
| **Row** | `row.ts` | `:host`, `section`, attribute selectors | Uses `data-alignment` and `data-distribution` |
237237
| **List** | `list.ts` | `:host`, `section`, `::slotted(*)` | All fixtures pass 0% including cards inside lists |
238-
| **Image** | `image.ts` | `:host`, `img` | All usage hints pass 0% |
239-
| **Slider** | `slider.ts` | `:host`, `input[type="range"]` | Basic slider passes 0% |
238+
| **Image** | `image.ts` | `:host`, `img` | Uses `:where()` for `img`. All usage hints pass 0% |
239+
| **Slider** | `slider.ts` | `:host`, `input[type="range"]` | Uses `:where()` for `input`. Basic slider passes 0% |
240240
| **Tabs** | `tabs.ts` | `:host`, `section`, `button` | All fixtures pass 0% |
241-
| **CheckBox** | `checkbox.ts` | `:host`, `input` | Works via path binding |
242-
| **DateTimeInput** | `datetime-input.ts` | `:host`, `input` | React uses HTML5 inputs directly |
241+
| **CheckBox** | `checkbox.ts` | `:host`, `input` | Uses `:where()` for `input`. Works via path binding |
242+
| **DateTimeInput** | `datetime-input.ts` | `:host`, `input` | Uses `:where()` for `input`. React uses HTML5 inputs directly |
243243

244244
### 🔄 Need Investigation
245245

246246
| Component | Lit File | Styles | Issue |
247247
|-----------|----------|--------|-------|
248-
| **Modal** | `modal.ts` | `:host`, `dialog`, `#controls`, `button` | No test fixtures yet |
249-
| **Video** | `video.ts` | `:host`, `video` | No test fixtures yet |
250-
| **AudioPlayer** | `audio.ts` | `:host`, `audio` | No test fixtures yet |
248+
| **Modal** | `modal.ts` | `:host`, `dialog`, `#controls`, `button` | Uses `:where()` for `dialog`. No test fixtures yet |
249+
| **Video** | `video.ts` | `:host`, `video` | Uses `:where()` for `video`. No test fixtures yet |
250+
| **AudioPlayer** | `audio.ts` | `:host`, `audio` | Uses `:where()` for `audio`. No test fixtures yet |
251251

252252
### ⚠️ Lit Renderer Issues
253253

@@ -294,8 +294,8 @@ Pass CSS variables via inline style:
294294
```
295295

296296
```css
297-
/* componentSpecificStyles */
298-
.a2ui-surface .a2ui-image img {
297+
/* componentSpecificStyles — use :where() so utility classes (e.g. layout-el-cv) can override */
298+
:where(.a2ui-surface .a2ui-image) img {
299299
object-fit: var(--object-fit, fill);
300300
}
301301
```
@@ -314,11 +314,11 @@ dialog section #controls button { ... }
314314

315315
### Form Elements
316316

317-
Form inputs already have some shared styles. Component-specific overrides should be scoped:
317+
Form inputs already have some shared styles. Component-specific overrides use `:where()` so theme utility classes can override them:
318318

319319
```css
320-
/* DateTimeInput specific */
321-
.a2ui-surface .a2ui-datetime-input input {
320+
/* DateTimeInput specific — :where() keeps specificity at (0,0,1) to match Lit's bare `input` selector */
321+
:where(.a2ui-surface .a2ui-datetime-input) input {
322322
border-radius: 8px;
323323
padding: 8px;
324324
border: 1px solid #ccc;

0 commit comments

Comments
 (0)