Files
scrying-pool/templates/participant-card.hbs
T
uberwald 7918792f4e Fix Story 2.3 code review findings: remove duplicate ParticipantCard.js, fix lint in ScryingPoolStrip.js
- Delete src/ui/shared/ParticipantCard.js (duplicate of boardUtils.js with conflicting implementations)
- Delete tests/unit/ui/shared/ParticipantCard.test.js (tests for deleted file)
- Add directorsBoard to global declarations in ScryingPoolStrip.js to fix lint errors

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-23 11:31:01 +02:00

28 lines
964 B
Handlebars

{{!-- Participant Card — single participant tile in the Director's Board --}}
<div class="scrying-pool participant-card sp-state-{{state}}{{#if hasPendingOp}} sp-state-pending{{/if}}"
role="listitem"
aria-label="{{cardAriaLabel}}"
data-user-id="{{userId}}"
tabindex="0">
{{!-- Avatar (48px rounded) --}}
<div class="participant-card__avatar">
<img src="{{avatarSrc}}" alt="Avatar of {{name}}" />
</div>
{{!-- Name (12px, 2-line truncate) --}}
<p class="participant-card__name">{{name}}</p>
{{!-- Toggle overlay — revealed on hover; independently keyboard-focusable --}}
<button class="participant-card__toggle"
type="button"
data-action="toggle-participant"
data-user-id="{{userId}}"
role="button"
aria-label="{{toggleAriaLabel}}"
tabindex="-1">
<i class="fas {{#if isHidden}}fa-eye{{else}}fa-eye-slash{{/if}}" aria-hidden="true"></i>
</button>
</div>