diff --git a/packages/bridge-ui/src/App.svelte b/packages/bridge-ui/src/App.svelte index 10329e6a3b..88f0dacfb5 100644 --- a/packages/bridge-ui/src/App.svelte +++ b/packages/bridge-ui/src/App.svelte @@ -69,7 +69,6 @@ const { chains: wagmiChains, provider, - webSocketProvider, } = configureChains( [mainnet, taiko], [ @@ -83,6 +82,7 @@ ); $wagmiClient = createClient({ + autoConnect: true, provider, connectors: [ new MetaMaskConnector({ diff --git a/packages/bridge-ui/src/app.css b/packages/bridge-ui/src/app.css index 210ffb08e8..9fd61216e5 100644 --- a/packages/bridge-ui/src/app.css +++ b/packages/bridge-ui/src/app.css @@ -55,3 +55,13 @@ .dropdown-content.address-dropdown-content { border-radius: 6px; } + +input[type=number]::-webkit-outer-spin-button, +input[type=number]::-webkit-inner-spin-button { + -webkit-appearance: none; + margin: 0; +} + +input[type=number] { + -moz-appearance: textfield; +} \ No newline at end of file diff --git a/packages/bridge-ui/src/components/AddressDropdown.svelte b/packages/bridge-ui/src/components/AddressDropdown.svelte index 81e2ef37a2..3a56cd727b 100644 --- a/packages/bridge-ui/src/components/AddressDropdown.svelte +++ b/packages/bridge-ui/src/components/AddressDropdown.svelte @@ -18,8 +18,10 @@ let addressAvatarImgData: string = ""; let tokenBalance: string = ""; - onMount(async () => { - await setAddress($signer); + onMount(() => { + (async () => { + await setAddress($signer); + })(); }); $: getUserBalance($signer); diff --git a/packages/bridge-ui/src/components/buttons/Connect.svelte b/packages/bridge-ui/src/components/buttons/Connect.svelte index 21d1791f85..3f417aa79c 100644 --- a/packages/bridge-ui/src/components/buttons/Connect.svelte +++ b/packages/bridge-ui/src/components/buttons/Connect.svelte @@ -1,6 +1,5 @@ diff --git a/packages/bridge-ui/src/components/form/BridgeForm.svelte b/packages/bridge-ui/src/components/form/BridgeForm.svelte index 5ff95209c7..e198a6f960 100644 --- a/packages/bridge-ui/src/components/form/BridgeForm.svelte +++ b/packages/bridge-ui/src/components/form/BridgeForm.svelte @@ -38,6 +38,7 @@ import FaucetModal from "../modals/FaucetModal.svelte"; let amount: string; + let amountInput: HTMLInputElement; let requiresAllowance: boolean = true; let btnDisabled: boolean = true; let tokenBalance: string; @@ -244,6 +245,7 @@ function useFullAmount() { amount = tokenBalance; + amountInput.value = tokenBalance.toString(); } function updateAmount(e: any) { @@ -273,7 +275,7 @@ {/if} @@ -289,6 +291,7 @@ on:input={updateAmount} class="input input-primary bg-dark-4 input-md md:input-lg w-full focus:ring-0" name="amount" + bind:this={amountInput} /> diff --git a/packages/website/docs/alpha-1-testnet/deploy-a-contract.md b/packages/website/docs/alpha-1-testnet/deploy-a-contract.md index a25a066e4d..7125e758af 100644 --- a/packages/website/docs/alpha-1-testnet/deploy-a-contract.md +++ b/packages/website/docs/alpha-1-testnet/deploy-a-contract.md @@ -8,7 +8,10 @@ These steps will show you how to deploy a smart contract to Taiko A1 using Found ## Prerequisites -- Have the private key to an account that has some ETH on Taiko A1. This is to pay the small transaction fee for deploying the contract. +- Have the private key to an account that has some ETH on Taiko A1. This is to pay the small transaction fee for deploying the contract. You can check the following articles if you are unsure how to do this: + - [With MetaMask](https://www.herongyang.com/Ethereum/Ethereum-Account-Public-Private-Key-Example.html) + - [With OpenSSL](https://gist.github.com/miguelmota/3793b160992b4ea0b616497b8e5aee2f) + - [With ethereumjs-wallet](https://piyopiyo.medium.com/how-to-generate-ethereum-private-key-and-address-in-local-offline-environment-90294308593c) ## Steps diff --git a/packages/website/docs/alpha-1-testnet/run-a-node.md b/packages/website/docs/alpha-1-testnet/run-a-node.md index 13ec107832..5c9fa9bfe7 100644 --- a/packages/website/docs/alpha-1-testnet/run-a-node.md +++ b/packages/website/docs/alpha-1-testnet/run-a-node.md @@ -11,3 +11,22 @@ Follow the guide at [simple-taiko-node/README.md](https://github.com/taikoxyz/si :::note You will only be able to run a node regularly or as a proposer. In this testnet we are not running any provers. ::: + +## System requirements + +Because we are a fork of geth, you can consult the (geth minimum requirements)[https://github.com/ethereum/go-ethereum#hardware-requirements], which are outlined below. + +### Minimum: + +- CPU with 2+ cores +- 4GB RAM +- 1TB free storage space to sync the Mainnet + - (**only ~50GB for Testnet**) +- 8 MBit/sec download Internet service + +### Recommended: + +- Fast CPU with 4+ cores +- 16GB+ RAM +- High-performance SSD with at least 1TB of free space +- 25+ MBit/sec download Internet service diff --git a/packages/website/docs/alpha-1-testnet/use-the-bridge.md b/packages/website/docs/alpha-1-testnet/use-the-bridge.md index 3714fdeeef..98e3de642d 100644 --- a/packages/website/docs/alpha-1-testnet/use-the-bridge.md +++ b/packages/website/docs/alpha-1-testnet/use-the-bridge.md @@ -20,6 +20,11 @@ Use the [bridge](https://bridge.a1.taiko.xyz/) for the following actions: The transfer from L2 to L1 can take a while because Taiko has a several hours delay in syncing block headers to allow uncle proof generation time, and we need the synced header to match so the Merkle proof of the message being sent on L2 is valid on L1. +## Where are the HORSE contracts? + +L1: https://l1explorer.a1.taiko.xyz/address/0x3E3a3416DbCc5cb4448B6b171fF15f9Da35Ab72d +L2: https://l2explorer.a1.taiko.xyz/address/0xb8ea36284d1fa062cc0c969e28a49f3531cfb1bf + ## Bridge contract explained Read the bridge documentation on our GitHub: https://github.com/taikoxyz/taiko-mono/tree/main/packages/protocol/contracts/bridge.