Skip to content

Commit

Permalink
feat: move Snackbar to top of screen on mobile (twentyhq#5567)
Browse files Browse the repository at this point in the history
... and change SnackBar blur to medium.

@Bonapara Following
twentyhq#5515 (comment)

Related issue: twentyhq#5383

<img width="386" alt="image"
src="https://github.com/twentyhq/twenty/assets/3098428/de2f0be4-9d9c-4013-bed2-774e0599ce49">
  • Loading branch information
thaisguigon authored May 24, 2024
1 parent de9321d commit 9ad3fb9
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import {
IconInfoCircle,
IconSquareRoundedCheck,
IconX,
MOBILE_VIEWPORT,
} from 'twenty-ui';

import { ProgressBar } from '@/ui/feedback/progress-bar/components/ProgressBar';
Expand Down Expand Up @@ -39,7 +40,7 @@ export type SnackBarProps = Pick<
};

const StyledContainer = styled.div`
backdrop-filter: ${({ theme }) => theme.blur.light};
backdrop-filter: ${({ theme }) => theme.blur.medium};
background-color: ${({ theme }) => theme.background.transparent.primary};
border-radius: ${({ theme }) => theme.border.radius.md};
box-shadow: ${({ theme }) => theme.boxShadow.strong};
Expand All @@ -49,6 +50,11 @@ const StyledContainer = styled.div`
padding: ${({ theme }) => theme.spacing(2)};
position: relative;
width: 296px;
@media (max-width: ${MOBILE_VIEWPORT}px) {
border-radius: 0;
width: 100%;
}
`;

const StyledProgressBar = styled(ProgressBar)`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { MOBILE_VIEWPORT } from 'twenty-ui';

import { useSnackBarManagerScopedStates } from '@/ui/feedback/snack-bar-manager/hooks/internal/useSnackBarManagerScopedStates';
import { useSnackBar } from '@/ui/feedback/snack-bar-manager/hooks/useSnackBar';
import { useIsMobile } from '@/ui/utilities/responsive/hooks/useIsMobile';

import { SnackBar } from './SnackBar';

Expand All @@ -16,26 +17,28 @@ const StyledSnackBarContainer = styled.div`
z-index: ${({ theme }) => theme.lastLayerZIndex};
@media (max-width: ${MOBILE_VIEWPORT}px) {
bottom: ${({ theme }) => theme.spacing(16)};
right: 50%;
transform: translateX(50%);
top: 0;
bottom: auto;
left: 0;
right: 0;
}
`;

const variants = {
out: {
opacity: 0,
y: 40,
},
in: {
opacity: 1,
y: 0,
},
};

export const SnackBarProvider = ({ children }: React.PropsWithChildren) => {
const { snackBarInternal } = useSnackBarManagerScopedStates();
const { handleSnackBarClose } = useSnackBar();
const isMobile = useIsMobile();

const variants = {
out: {
opacity: 0,
y: isMobile ? -40 : 40,
},
in: {
opacity: 1,
y: 0,
},
};

return (
<>
Expand Down
1 change: 1 addition & 0 deletions packages/twenty-ui/src/theme/constants/Blur.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
export const BLUR = {
light: 'blur(6px)',
medium: 'blur(12px)',
strong: 'blur(20px)',
};

0 comments on commit 9ad3fb9

Please sign in to comment.