Skip to main content

Variable: menuItemMeta

const menuItemMeta: object

Defined in: composites/Menu/Menu.tsx:241

Formal semantic identity — a single menu action (Layer 1).

Entity = Action, structure controlnot root, and the reason is F-030. A composite sub-part reuses its host's data-scope (CONTRACT §5), so a MenuItem declaring root made [data-scope="menu"][data-part="root"] resolve the popover and every row: no selector could address either one. Nothing was mislabelled — the convention and the meta were each defensible alone — but the pair produced an unaddressable anatomy, which invariant #12 exists to forbid.

control is legal on Action and is the more accurate word besides: ADR-022 settled that control names the element the user operates, and a menu row is exactly that. So the fix needed no taxonomy change. It is a change to a published attribute, taken because the attribute it replaces is the ambiguous one.

Type Declaration

displayName

readonly displayName: "MenuItem" = 'MenuItem'

entity

readonly entity: "Action" = 'Action'

structure

readonly structure: "control" = 'control'