123456789101112131415161718192021222324252627 |
- import styled from '@emotion/styled';
- import type {LoadingMaskProps} from 'sentry/components/loadingMask';
- import LoadingMask from 'sentry/components/loadingMask';
- interface TransparentLoadingMaskProps extends LoadingMaskProps {
- visible: boolean;
- children?: React.ReactNode;
- className?: string;
- }
- const TransparentLoadingMask = styled(
- ({className, visible, children, ...props}: TransparentLoadingMaskProps) => {
- const other = visible ? {...props, 'data-test-id': 'loading-placeholder'} : props;
- return (
- <LoadingMask className={className} {...other}>
- {children}
- </LoadingMask>
- );
- }
- )<TransparentLoadingMaskProps>`
- ${p => !p.visible && 'display: none;'};
- opacity: 0.4;
- z-index: 1;
- `;
- export default TransparentLoadingMask;
|