ConceptPortal-public/rsconcept/frontend/src/components/Shared/ConstituentaBadge.tsx
2023-11-26 02:24:16 +03:00

42 lines
1.4 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { IConstituenta } from '../../models/rsform';
import { isMockCst } from '../../models/rsformAPI';
import { colorfgCstStatus,IColorTheme } from '../../utils/color';
import { describeExpressionStatus } from '../../utils/labels';
import ConceptTooltip from '../common/ConceptTooltip';
import ConstituentaTooltip from '../Help/ConstituentaTooltip';
interface ConstituentaBadgeProps {
prefixID?: string
shortTooltip?: boolean
value: IConstituenta
theme: IColorTheme
}
function ConstituentaBadge({ value, prefixID, shortTooltip, theme }: ConstituentaBadgeProps) {
return (<div className='w-fit'>
<div
id={`${prefixID}${value.alias}`}
className='min-w-[3.1rem] max-w-[3.1rem] px-1 text-center rounded-md whitespace-nowrap'
style={{
borderWidth: '1px',
borderColor: colorfgCstStatus(value.status, theme),
color: colorfgCstStatus(value.status, theme),
backgroundColor: isMockCst(value) ? theme.bgWarning : theme.bgInput,
fontWeight: 600
}}
>
{value.alias}
</div>
{ !shortTooltip && <ConstituentaTooltip data={value} anchor={`#${prefixID}${value.alias}`} />}
{ shortTooltip &&
<ConceptTooltip
anchorSelect={`#${prefixID}${value.alias}`}
place='right'
>
<p><span className='font-semibold'>Статус</span>: {describeExpressionStatus(value.status)}</p>
</ConceptTooltip>}
</div>);
}
export default ConstituentaBadge;