StatusIcon
Displays a Tracker issue status icon. Each status type has its own icon and color. Unknown status values don't cause an error — the component displays an icon with a question mark.
Usage
import {StatusIcon} from '@weavix/tracker-components';
<StatusIcon statusType="new" />
<StatusIcon statusType="inProgress" />
<StatusIcon statusType="done" />
Supported statuses
new · inProgress · paused · done · cancelled · unknown · arbitrary string (displays with a question mark)
From Tracker API
Requires the "tracker:issues:read" permission in the plugin's manifest.json:
{
"permissions": {
"data": ["tracker:issues:read"]
}
}
import {StatusIcon} from '@weavix/tracker-components';
const status = await trackerApi.v3.get['/issues/{id}/{field}']({
pathParams: {
id: 'ISSUEKEY-1',
field: 'status',
},
});
<StatusIcon
statusType={status.data.key}
title={status.data.display}
/>
Example — status next to the issue name
import {StatusIcon} from '@weavix/tracker-components';
export const IssueRow = ({issue}: {issue: {statusType: string; summary: string}}) => (
<div style={{display: 'flex', alignItems: 'center', gap: 8}}>
<StatusIcon statusType={issue.statusType} size={16} />
<span>{issue.summary}</span>
</div>
);
Props
| Prop | Type | Default | Description |
|---|---|---|---|
statusType |
string |
— | Issue status type. Supported values are listed above |
size |
number |
16 |
Icon size in pixels |
title |
string |
— | Human-readable status name for screen readers. If not provided, the icon is marked as decorative (aria-hidden) |
className |
string |
— | Additional CSS class for the icon |
containerClassName |
string |
— | Additional CSS class for the outer container |
Was the article helpful?
Previous