fix: Make the entire advanced mode toggle container clickable (#7761)

In this PR:

- Use a real `<input type="checkbox" />` element in the `<Toggle />`
component
- Create an `accessibility` module in the `twenty-ui` package
- Export the `VISIBILITY_HIDDEN` CSS object to hide visually any element
- Export a `<VisibilityHidden />` component from the `twenty-ui` package
to add visually hidden textual information easily
- Export a `<VisibilityHiddenInput />` component to create custom form
control components easily
- Use a `<label>` element for the "Advanced:" text; it will naturally
toggle the advanced settings

Fixes #7756

---------

Co-authored-by: Devessier <baptiste@devessier.fr>
This commit is contained in:
Vardhaman Bhandari
2024-10-21 21:52:10 +05:30
committed by GitHub
parent 1a0b387282
commit 1466d44b57
7 changed files with 68 additions and 35 deletions

View File

@ -0,0 +1,14 @@
import styled from '@emotion/styled';
import { VISIBILITY_HIDDEN } from '@ui/accessibility/utils/visibility-hidden';
const StyledSpan = styled.span`
${VISIBILITY_HIDDEN}
`;
export const VisibilityHidden = ({
children,
}: {
children: React.ReactNode;
}) => {
return <StyledSpan>{children}</StyledSpan>;
};

View File

@ -0,0 +1,7 @@
import styled from '@emotion/styled';
import { VISIBILITY_HIDDEN } from '@ui/accessibility/utils/visibility-hidden';
// eslint-disable-next-line @nx/workspace-styled-components-prefixed-with-styled
export const VisibilityHiddenInput = styled.input`
${VISIBILITY_HIDDEN}
`;