@razorpay/blade
Version:
The Design System that powers Razorpay
21 lines (18 loc) • 2.23 kB
JavaScript
import 'react';
import { Pressable } from 'react-native';
import styled from 'styled-components/native';
import { useDropdown } from './useDropdown.js';
import { StyledDropdownOverlay } from './StyledDropdownOverlay.js';
import { dropdownComponentIds } from './dropdownComponentIds.js';
import { BaseBox } from '../Box/BaseBox/BaseBox.native.js';
import '@babel/runtime/helpers/slicedToArray';
import { makeSize } from '../../utils/makeSize/makeSize.js';
import '../BladeProvider/useTheme.js';
import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.native.js';
import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
import { useBottomSheetAndDropdownGlue } from '../BottomSheet/BottomSheetContext.js';
import { jsx } from 'react/jsx-runtime';
var AnimatedDropdownOverlay=styled(StyledDropdownOverlay)(function(props){return {transform:`translateY(${makeSize(props.theme.spacing[3])})`};});var StyledCloseableArea=styled(Pressable)(function(props){return {position:'static',height:'100%',width:'100%',display:props.display};});var _DropdownOverlay=function _DropdownOverlay(_ref){var children=_ref.children,testID=_ref.testID;var _useDropdown=useDropdown(),isOpen=_useDropdown.isOpen,close=_useDropdown.close;var bottomSheetAndDropdownGlue=useBottomSheetAndDropdownGlue();return jsx(BaseBox,{position:"relative",children:jsx(StyledCloseableArea,{display:isOpen?'flex':'none',onPress:function onPress(){close();},testID:"closeable-area",children:jsx(AnimatedDropdownOverlay,Object.assign({isInBottomSheet:bottomSheetAndDropdownGlue==null?void 0:bottomSheetAndDropdownGlue.dropdownHasBottomSheet,display:isOpen?'flex':'none',position:"absolute",width:"100%",testID:"dropdown-overlay",elevation:bottomSheetAndDropdownGlue!=null&&bottomSheetAndDropdownGlue.dropdownHasBottomSheet?undefined:'midRaised'},metaAttribute({name:MetaConstants.DropdownOverlay,testID:testID}),{children:children}))})});};var DropdownOverlay=assignWithoutSideEffects(_DropdownOverlay,{componentId:dropdownComponentIds.DropdownOverlay});
export { DropdownOverlay };
//# sourceMappingURL=DropdownOverlay.native.js.map