sendou.ink/app/components/Toggle.tsx
Kalle fd48bced91
Migrate Prettier/Eslint/Stylelint setup to Biome (#1772)
* Initial

* CSS lint

* Test CI

* Add 1v1, 2v2, and 3v3 Tags (#1771)

* Initial

* CSS lint

* Test CI

* Rename step

---------

Co-authored-by: xi <104683822+ximk@users.noreply.github.com>
2024-06-24 13:07:17 +03:00

33 lines
578 B
TypeScript

import { Switch } from "@headlessui/react";
import clsx from "clsx";
export function Toggle({
checked,
setChecked,
tiny,
id,
name,
disabled,
}: {
checked: boolean;
setChecked: (checked: boolean) => void;
tiny?: boolean;
id?: string;
name?: string;
disabled?: boolean;
}) {
return (
<Switch
checked={checked}
onChange={setChecked}
className={clsx("toggle", { checked, tiny })}
id={id}
name={name}
data-testid={id ? `toggle-${id}` : null}
disabled={disabled}
>
<span className={clsx("toggle-dot", { checked, tiny })} />
</Switch>
);
}