Files
encoach_frontend/src/components/ApprovalWorkflows/WorkflowStepSelects.tsx
Joao Correia a0936cb1a4 Prevent same input on selects from the same step.
Change behaviour of initial step to allow multiple assignees
2025-01-23 15:10:14 +00:00

50 lines
1.5 KiB
TypeScript

import Option from "@/interfaces/option";
import Select from "../Low/Select";
interface Props {
teachers: Option[];
corporates: Option[];
selects: (Option | null | undefined)[];
placeholder: string;
onSelectChange: (numberOfSelects: number, index: number, value: Option | null) => void;
}
export default function WorkflowStepSelects({
teachers,
corporates,
selects,
placeholder,
onSelectChange,
}: Props) {
return (
<div
className={"flex flex-wrap gap-0"}
>
{selects.map((option, index) => {
let classes = "px-2 rounded-none";
if (index === 0 && selects.length === 1) {
classes += " rounded-l-2xl rounded-r-2xl";
} else if (index === 0) {
classes += " rounded-l-2xl";
} else if (index === selects.length - 1) {
classes += " rounded-r-2xl";
}
return (
<div key={index} className="w-[275px]">
<Select
options={[...teachers, ...corporates]}
value={option}
onChange={(option) => onSelectChange(selects.length, index, option)}
placeholder={placeholder}
flat
isClearable
className={classes}
/>
</div>
);
})}
</div>
);
}