SwapModal.tsx
1 import { Trans } from '@lingui/macro'; 2 import React from 'react'; 3 import { BasicModal } from 'src/components/primitives/BasicModal'; 4 import { UserAuthenticated } from 'src/components/UserAuthenticated'; 5 import { ModalContextType, ModalType, useModalContext } from 'src/hooks/useModal'; 6 7 import { ModalWrapper } from '../FlowCommons/ModalWrapper'; 8 import { SwapModalContent } from './SwapModalContent'; 9 10 export const SwapModal = () => { 11 const { type, close, args } = useModalContext() as ModalContextType<{ 12 underlyingAsset: string; 13 }>; 14 return ( 15 <BasicModal open={type === ModalType.Swap} setOpen={close}> 16 <ModalWrapper title={<Trans>Switch</Trans>} underlyingAsset={args.underlyingAsset}> 17 {(params) => ( 18 <UserAuthenticated> 19 {(user) => <SwapModalContent {...params} user={user} />} 20 </UserAuthenticated> 21 )} 22 </ModalWrapper> 23 </BasicModal> 24 ); 25 };