resource-portal / frontend /src /components /planner /PlannerControls.tsx
Gowrisankar
Rebuild Projects page as Runn-style timeline planner like People.
9175508
interface SelectorDropdownProps {
value: string;
options: Array<{ value: string; label: string }>;
onChange: (value: string) => void;
}
export function SelectorDropdown({ value, options, onChange }: SelectorDropdownProps) {
return (
<label className="planner-select">
<select onChange={(event) => onChange(event.target.value)} value={value}>
{options.map((option) => (
<option key={option.value} value={option.value}>
{option.label}
</option>
))}
</select>
</label>
);
}
interface ToggleProps {
label: string;
checked: boolean;
onChange: (value: boolean) => void;
}
export function Toggle({ label, checked, onChange }: ToggleProps) {
return (
<label className="planner-toggle">
<span className="planner-toggle-label">{label}</span>
<span
className={`switch ${checked ? "on" : ""}`}
onClick={() => onChange(!checked)}
role="switch"
aria-checked={checked}
tabIndex={0}
>
<span className="thumb" />
</span>
</label>
);
}