feat: add Boolean field preview in settings (#2399)

Closes #2328
This commit is contained in:
Thaïs
2023-11-09 12:20:30 +01:00
committed by GitHub
parent 0f7581acc3
commit aa09b5758c
6 changed files with 23 additions and 5 deletions

View File

@ -7,11 +7,13 @@ import { FieldInputEvent } from './DateFieldInput';
export type BooleanFieldInputProps = {
onSubmit?: FieldInputEvent;
readonly?: boolean;
testId?: string;
};
export const BooleanFieldInput = ({
onSubmit,
readonly,
testId,
}: BooleanFieldInputProps) => {
const { fieldValue } = useBooleanField();
@ -26,6 +28,7 @@ export const BooleanFieldInput = ({
<BooleanInput
value={fieldValue ?? ''}
onToggle={handleToggle}
readonly={readonly}
testId={testId}
/>
);

View File

@ -6,7 +6,7 @@ import { IconCheck, IconX } from '@/ui/display/icon';
const StyledEditableBooleanFieldContainer = styled.div`
align-items: center;
cursor: pointer;
cursor: ${({ onClick }) => (onClick ? 'pointer' : 'default')};
display: flex;
height: 100%;
@ -20,12 +20,14 @@ const StyledEditableBooleanFieldValue = styled.div`
type BooleanInputProps = {
value: boolean;
onToggle?: (newValue: boolean) => void;
readonly?: boolean;
testId?: string;
};
export const BooleanInput = ({
value,
onToggle,
readonly,
testId,
}: BooleanInputProps) => {
const [internalValue, setInternalValue] = useState(value);
@ -43,7 +45,7 @@ export const BooleanInput = ({
return (
<StyledEditableBooleanFieldContainer
onClick={handleClick}
onClick={readonly ? undefined : handleClick}
data-testid={testId}
>
{internalValue ? (