import React from "react"; import { Box, Text, VStack } from "native-base"; import { Platform } from "react-native"; import { Web3ActionButton } from "../../../advanced"; import { MPBTransactionDetailsModal } from "./MPBTransactionDetailsModal"; import { BridgeSuccessModal } from "./BridgeSuccessModal"; import { ErrorModal } from "../../../core/web3/modals/ErrorModal"; import type { MPBBridgeProps } from "./types"; import { ChainSelector } from "./ChainSelector"; import { BridgeProviderSelector } from "./BridgeProviderSelector"; import { AmountInput } from "./AmountInput"; import { ExpectedOutput } from "./ExpectedOutput"; import { FeeInformation } from "./FeeInformation"; import { TransactionHistory } from "./TransactionHistory"; import { BridgingStatusBanner } from "./BridgingStatusBanner"; import { useMPBBridgeViewController } from "./feature/useMPBBridgeViewController"; const cardShadowStyle = Platform.select({ web: { boxShadow: "0px 4px 12px rgba(0, 0, 0, 0.08)" }, default: { shadowColor: "#000", shadowOffset: { width: 0, height: 4 }, shadowOpacity: 0.08, shadowRadius: 12, elevation: 8 } }); export const MPBBridge = (props: MPBBridgeProps) => { const view = useMPBBridgeViewController(props); return ( {view.modals.txDetails.shouldRender ? : null} Main Bridge Seamlessly bridge G$ across Fuse, Celo, Ethereum and XDC, enabling versatile use of G$ across multiple ecosystems. {view.statusBanner.shouldShow && } {view.feeErrorBanner.shouldShow && ( {view.feeErrorBanner.message} )} ); };