DocSpace-client/packages/asc-web-components/modal-dialog/components/ModalBackdrop.js

39 lines
831 B
JavaScript
Raw Normal View History

2022-04-08 22:13:08 +00:00
import React from "react";
import styled from "styled-components";
const StyledModalBackdrop = styled.div.attrs((props) => ({
style: {
2022-04-08 22:42:38 +00:00
opacity: `${props.opacity}`,
2022-04-08 22:13:08 +00:00
backdropFilter: `${
props.modalSwipeOffset
? `blur(${18 - props.modalSwipeOffset * -0.15}px)`
: "blur(18px)"
}`,
background: `${
props.modalSwipeOffset
? `rgba(6, 22, 38, ${0.2 - props.modalSwipeOffset * -0.0016})`
: `rgba(6, 22, 38, 0.2)`
}`,
},
}))`
display: block;
height: 100vh;
position: fixed;
width: 100vw;
z-index: 310;
left: 0;
top: 0;
`;
2022-04-08 22:42:38 +00:00
const ModalBackdrop = ({ zIndex, modalSwipeOffset, opacity, children }) => {
2022-04-08 22:13:08 +00:00
return (
<StyledModalBackdrop modalSwipeOffset={modalSwipeOffset}>
{children}
</StyledModalBackdrop>
);
};
export default ModalBackdrop;