← К списку компонентов

StatusIcon

Отображает иконку статуса задачи Трекера. Каждому типу статуса соответствует отдельная иконка и цвет. Неизвестные значения статуса не вызывают ошибку — компонент отображает иконку со знаком вопроса.

Использование

import {StatusIcon} from '@weavix/tracker-components';

<StatusIcon statusType="new" />
<StatusIcon statusType="inProgress" />
<StatusIcon statusType="done" />

Поддерживаемые статусы

new · inProgress · paused · done · cancelled · unknown · произвольная строка (отображается со знаком вопроса)

Из Tracker API

Требует разрешение "tracker:issues:read" в 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}
/>

Пример — статус рядом с названием задачи

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>
);

Свойства

Свойство Тип По умолчанию Описание
statusType string Тип статуса задачи. Поддерживаемые значения перечислены выше
size number 16 Размер иконки в пикселях
title string Читаемое название статуса для скринридеров. Если не передан — иконка помечается как декоративная (aria-hidden)
className string Дополнительный CSS-класс иконки
containerClassName string Дополнительный CSS-класс внешнего контейнера