Skip to content

IssueRow

One issue on one line, as on the dashboard. Pick it for short lists such as "Assigned to me"; use IssueTable for long lists people sort.

  • IssueRow

PreviewLink to the section Preview

Live in all three themes. Everything here is interactive.

Light theme, IssueRow

Dark theme, IssueRow

High contrast theme, IssueRow

UsageLink to the section Usage

tsx
import { IssueRow } from '@skribly/ui/tracker'
tsx
<ul>{issues.map((issue) => (
  <IssueRow key={issue.key} elementType="li" issue={issue} labelsLabel={t('fields.labels')} unassignedLabel={t('issue.unassigned')} />
))}</ul>

Every label is a prop, so the app passes its own words in its own language. See no built-in text.

AccessibilityLink to the section Accessibility

  • The title is a link whose hit area covers the row, and the row draws its focus ring. isCurrent sets aria-current and adds an accent rule.
  • Overdue dates change their glyph and read overdueLabel.
  • In a narrow container the facts wrap under the title, so nothing scrolls sideways at 320px or 400% zoom.

This demo runs through axe in all three themes on every test run. See what the tests check.

Search this site

Arrows move through the results, Enter opens one, Esc closes. Ctrl K /