mirror of
https://github.com/jeffvli/feishin.git
synced 2026-05-10 04:30:25 +02:00
Add checkbox component
This commit is contained in:
@@ -0,0 +1,32 @@
|
|||||||
|
import { forwardRef } from 'react';
|
||||||
|
import { Checkbox as MantineCheckbox, CheckboxProps } from '@mantine/core';
|
||||||
|
import styled from 'styled-components';
|
||||||
|
|
||||||
|
const StyledCheckbox = styled(MantineCheckbox)`
|
||||||
|
& .mantine-Checkbox-input {
|
||||||
|
background-color: var(--input-bg);
|
||||||
|
|
||||||
|
&:checked {
|
||||||
|
background-color: var(--primary-color);
|
||||||
|
border-color: var(--primary-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:hover:not(:checked) {
|
||||||
|
background-color: var(--primary-color);
|
||||||
|
opacity: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
transition: none;
|
||||||
|
}
|
||||||
|
`;
|
||||||
|
|
||||||
|
export const Checkbox = forwardRef<HTMLInputElement, CheckboxProps>(
|
||||||
|
({ ...props }: CheckboxProps, ref) => {
|
||||||
|
return (
|
||||||
|
<StyledCheckbox
|
||||||
|
ref={ref}
|
||||||
|
{...props}
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
},
|
||||||
|
);
|
||||||
@@ -32,3 +32,4 @@ export * from './query-builder';
|
|||||||
export * from './rating';
|
export * from './rating';
|
||||||
export * from './hover-card';
|
export * from './hover-card';
|
||||||
export * from './option';
|
export * from './option';
|
||||||
|
export * from './checkbox';
|
||||||
|
|||||||
Reference in New Issue
Block a user