Skip to content

Commit 8c4c540

Browse files
committed
docs(glimmer-attribute-behavior): rewrite from verified empirical data
Replaces the prior tables (which mixed verified data with extrapolations marked "(assumed)") with strictly-verified per-attribute tables. Every cell populated from rendering and IDL inspection in ember-source 6.12. Structure: - One "Reference table" section, five per-attribute sub-tables (muted, disabled, aria-hidden, tabindex, autocomplete) - One "To reproduce the reference table" section with the exact template and JS console snippet, inline (no separate fixture file) - Cross-attribute observations summarizing the rules the data reveals Findings the new tables make explicit: - Bare-mustache falsy set is {{false}}/{{null}}/{{undefined}}/{{0}} for boolean-coerced attrs (boolean HTML, ARIA, numeric); {{""}} is kept as attr="". - Bare-mustache string literals never coerce — attr={{"false"}} renders as attr="false". - Concat-mustache for boolean HTML attrs sets the IDL property to true regardless of the literal value inside (verified for both reflecting and non-reflecting attrs). - Concat-mustache for ARIA/string attrs renders the stringified value literally — no boolean coercion. aria-hidden="{{false}}" is visible. - Plain string attrs (autocomplete) skip Glimmer's boolean coercion entirely; autocomplete={{false}} renders as autocomplete="false". The video.muted snapshot reads IDL muted=false for static attribute forms (m1-m4, m7-m8, m11) because the test runs before media load — the doc explains how defaultMuted reflects to muted at load time, so the rule's "At play time" column is the lint-truth column rule authors should use.
1 parent 6052bae commit 8c4c540

1 file changed

Lines changed: 261 additions & 219 deletions

File tree

0 commit comments

Comments
 (0)