diff --git a/packages/bridge/src/components/Footer/index.less b/packages/bridge/src/components/Footer/index.less new file mode 100644 index 0000000..8263cb9 --- /dev/null +++ b/packages/bridge/src/components/Footer/index.less @@ -0,0 +1,4 @@ +.footer { + text-align: left; + margin: 20px 0 20px 0; +} diff --git a/packages/bridge/src/components/Footer/index.tsx b/packages/bridge/src/components/Footer/index.tsx new file mode 100644 index 0000000..72f7202 --- /dev/null +++ b/packages/bridge/src/components/Footer/index.tsx @@ -0,0 +1,25 @@ +import React from 'react'; +import { GithubOutlined, TwitterOutlined } from '@ant-design/icons'; +import { Link } from 'react-router-dom'; +import { SecurityAuditButton } from '../SecurityAuditButton'; +import { Button } from 'antd'; + +import './index.less'; + +export const Footer = () => { + return ( +
+ + + +
+ ); +}; diff --git a/packages/bridge/src/components/Layout/index.tsx b/packages/bridge/src/components/Layout/index.tsx index 6153248..55f3100 100644 --- a/packages/bridge/src/components/Layout/index.tsx +++ b/packages/bridge/src/components/Layout/index.tsx @@ -10,6 +10,8 @@ import { contexts, AppBar, shortenAddress, useWallet } from '@oyster/common'; import Wormhole from '../Wormhole'; import { useEthereum } from '../../contexts'; import { useCorrectNetwork } from '../../hooks/useCorrectNetwork'; +import { SecurityAuditButton } from '../SecurityAuditButton'; +import { Footer } from '../Footer'; const { Header, Content } = Layout; const { useConnectionConfig } = contexts.Connection; @@ -30,51 +32,55 @@ export const AppLayout = React.memo((props: any) => { [...Object.keys(paths)].find(key => location.pathname.startsWith(key)) || ''; return ( -
- setWormholeReady(true)} - show={true} - rotate={isRoot} - > - - {isRoot && ( -
-
- -

WORMHOLE

- -
- - {accounts[0] && ( -
- {hasCorrespondingNetworks ? ( - <> - {'metamask-icon'} - {shortenAddress(accounts[0], 4)} - - ) : ( - - )} -
- )} - - } - /> -
- )} - {props.children} -
-
-
+ <> +
+ setWormholeReady(true)} + show={true} + rotate={isRoot} + > + + {isRoot && ( +
+
+ +

WORMHOLE

+ +
+ + {accounts[0] && ( +
+ {hasCorrespondingNetworks ? ( + <> + {'metamask-icon'} + {shortenAddress(accounts[0], 4)} + + ) : ( + + )} +
+ )} + + } + /> +
+ )} + + {props.children} + +
+
+
+ ); }); diff --git a/packages/bridge/src/components/SecurityAuditButton/index.less b/packages/bridge/src/components/SecurityAuditButton/index.less new file mode 100644 index 0000000..20a3359 --- /dev/null +++ b/packages/bridge/src/components/SecurityAuditButton/index.less @@ -0,0 +1,7 @@ +.audit-button { + display: inline-block; + position: relative; + width: auto; + height: auto; + margin: 0 20px 0 20px; +} diff --git a/packages/bridge/src/components/SecurityAuditButton/index.tsx b/packages/bridge/src/components/SecurityAuditButton/index.tsx new file mode 100644 index 0000000..10c3d53 --- /dev/null +++ b/packages/bridge/src/components/SecurityAuditButton/index.tsx @@ -0,0 +1,13 @@ +import React from 'react'; +import { Link } from 'react-router-dom'; +import { Button } from 'antd'; + +import './index.less'; + +export const SecurityAuditButton = () => { + return ( + + ); +}; diff --git a/packages/bridge/src/components/Transfer/index.tsx b/packages/bridge/src/components/Transfer/index.tsx index d35edab..1eb546b 100644 --- a/packages/bridge/src/components/Transfer/index.tsx +++ b/packages/bridge/src/components/Transfer/index.tsx @@ -1,19 +1,13 @@ import React, { useEffect, useState } from 'react'; import { notification, Spin, Button } from 'antd'; -import { - contexts, - ConnectButton, - programIds, - formatAmount, - notify, -} from '@oyster/common'; -import { Input } from './../Input'; +import { contexts, ConnectButton, programIds, notify } from '@oyster/common'; +import { Input } from '../Input'; import './style.less'; import { ASSET_CHAIN, chainToName } from '../../utils/assets'; import { ProgressUpdate, toSolana, TransferRequest } from '../../models/bridge'; import { useEthereum } from '../../contexts'; -import { TokenDisplay } from './../TokenDisplay'; +import { TokenDisplay } from '../TokenDisplay'; import { WrappedAssetFactory } from '../../contracts/WrappedAssetFactory'; import { WormholeFactory } from '../../contracts/WormholeFactory'; import BN from 'bn.js'; diff --git a/packages/bridge/src/views/home/index.tsx b/packages/bridge/src/views/home/index.tsx index 8fbc89d..505a6c0 100644 --- a/packages/bridge/src/views/home/index.tsx +++ b/packages/bridge/src/views/home/index.tsx @@ -7,6 +7,7 @@ import { Link } from 'react-router-dom'; import { useWormholeAccounts } from '../../hooks/useWormholeAccounts'; import { TokenDisplay } from '../../components/TokenDisplay'; import { toChainSymbol } from '../../contexts/chainPair'; +import { Footer } from '../../components/Footer'; export const HomeView = () => { const { @@ -108,35 +109,38 @@ export const HomeView = () => { ]; return ( -
- - -

Wormhole

-

- Ethereum + Solana Bridge -

- - - - - - - -
- a.name)} - columns={columns} - loading={loadingLockedAccounts} - /> - + <> +
+ +
+

Wormhole

+

+ Ethereum + Solana Bridge +

+ + + + + + + + +
a.name)} + columns={columns} + loading={loadingLockedAccounts} + /> + +