2024-03-18 16:22:27 +03:00
|
|
|
'use client';
|
|
|
|
|
2024-03-20 15:27:32 +03:00
|
|
|
import { ErrorData } from '@/components/info/InfoError';
|
|
|
|
import ConstituentaMultiPicker from '@/components/select/ConstituentaMultiPicker';
|
|
|
|
import DataLoader from '@/components/wrap/DataLoader';
|
2024-03-20 15:03:53 +03:00
|
|
|
import { ConstituentaID, IRSForm } from '@/models/rsform';
|
|
|
|
import { prefixes } from '@/utils/constants';
|
2024-03-18 16:22:27 +03:00
|
|
|
|
|
|
|
interface ConstituentsTabProps {
|
|
|
|
schema?: IRSForm;
|
|
|
|
loading?: boolean;
|
2024-03-20 15:03:53 +03:00
|
|
|
error?: ErrorData;
|
|
|
|
selected: ConstituentaID[];
|
|
|
|
setSelected: React.Dispatch<ConstituentaID[]>;
|
2024-03-18 16:22:27 +03:00
|
|
|
}
|
|
|
|
|
2024-03-20 15:03:53 +03:00
|
|
|
function ConstituentsTab({ schema, error, loading, selected, setSelected }: ConstituentsTabProps) {
|
|
|
|
return (
|
|
|
|
<DataLoader id='dlg-constituents-tab' isLoading={loading} error={error} hasNoData={!schema}>
|
|
|
|
<ConstituentaMultiPicker
|
|
|
|
schema={schema}
|
2024-03-21 17:48:42 +03:00
|
|
|
rows={14}
|
2024-03-20 15:03:53 +03:00
|
|
|
prefixID={prefixes.cst_inline_synth_list}
|
|
|
|
selected={selected}
|
|
|
|
setSelected={setSelected}
|
|
|
|
/>
|
|
|
|
</DataLoader>
|
|
|
|
);
|
2024-03-18 16:22:27 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
export default ConstituentsTab;
|