ConceptPortal-public/rsconcept/frontend/src/dialogs/DlgDeleteCst/ConstituentsList.tsx

32 lines
812 B
TypeScript
Raw Normal View History

import clsx from 'clsx';
import { IConstituenta } from '@/models/rsform';
import { labelConstituenta } from '@/utils/labels';
2023-12-07 01:21:27 +03:00
interface ConstituentsListProps {
2023-12-28 14:04:44 +03:00
list: number[];
items: IConstituenta[];
prefix: string;
title?: string;
2023-12-07 01:21:27 +03:00
}
function ConstituentsList({ list, items, title, prefix }: ConstituentsListProps) {
return (
2023-12-28 14:04:44 +03:00
<div>
{title ? (
<p className='pb-1'>
{title}: <b>{list.length}</b>
</p>
) : null}
<div className={clsx('h-[9rem]', 'px-3', 'overflow-y-auto', 'border', 'whitespace-nowrap')}>
{list.map(id => {
const cst = items.find(cst => cst.id === id);
return cst ? <p key={`${prefix}${cst.id}`}>{labelConstituenta(cst)}</p> : null;
})}
</div>
2023-12-07 01:21:27 +03:00
</div>
2023-12-28 14:04:44 +03:00
);
2023-12-07 01:21:27 +03:00
}
2023-12-28 14:04:44 +03:00
export default ConstituentsList;