{# Empty state fragment — canonical renderer (cycle 240). Contract: ~/.claude/skills/ux-architect/components/empty-state.md (UX-043) Single source of truth for every "no data" state across the template set. Before cycle 240, 14 distinct region templates had drifted into 7 different empty-state patterns (4 used this include, 10 inlined their own ad-hoc `

` tags). This fragment is the only blessed rendering path; every list/grid/region template now includes it. Context expected (all optional): empty_message : str — headline copy from DSL `empty:` or compiler default entity_name : str — e.g. "task", used for fallback copy and CTA create_url : str — when set, renders the Create-first CTA button. The compiler only populates this when the current persona has permission to create, so this gate is the single persona-correctness control for empty-state CTAs (cycle 234 VERIFIED_FALSE_POSITIVE on EX-011/030/037). #} {%- set _label = (entity_name | default("items")) | lower -%} {%- set _create_label = (entity_name | default("item")) | lower -%}

{{ empty_message or ("No " ~ _label ~ " found.") }}

{% if create_url %} Create first {{ _create_label }} {% endif %}