@ -0,0 +1,3 @@ |
|||||||
|
.next |
||||||
|
dist |
||||||
|
node_modules/ |
@ -0,0 +1,3 @@ |
|||||||
|
{ |
||||||
|
"extends": ["next/core-web-vitals", "prettier"] |
||||||
|
} |
@ -0,0 +1,36 @@ |
|||||||
|
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. |
||||||
|
|
||||||
|
# dependencies |
||||||
|
/node_modules |
||||||
|
/.pnp |
||||||
|
.pnp.js |
||||||
|
|
||||||
|
# testing |
||||||
|
/coverage |
||||||
|
|
||||||
|
# next.js |
||||||
|
/.next/ |
||||||
|
/out/ |
||||||
|
|
||||||
|
# production |
||||||
|
/build |
||||||
|
|
||||||
|
# misc |
||||||
|
.DS_Store |
||||||
|
*.pem |
||||||
|
|
||||||
|
# debug |
||||||
|
npm-debug.log* |
||||||
|
yarn-debug.log* |
||||||
|
yarn-error.log* |
||||||
|
.pnpm-debug.log* |
||||||
|
|
||||||
|
# local env files |
||||||
|
.env*.local |
||||||
|
|
||||||
|
# vercel |
||||||
|
.vercel |
||||||
|
|
||||||
|
# typescript |
||||||
|
*.tsbuildinfo |
||||||
|
next-env.d.ts |
@ -0,0 +1,6 @@ |
|||||||
|
.next |
||||||
|
node_modules |
||||||
|
yarn.lock |
||||||
|
package-lock.json |
||||||
|
public |
||||||
|
build |
@ -0,0 +1,10 @@ |
|||||||
|
{ |
||||||
|
"printWidth": 100, |
||||||
|
"trailingComma": "none", |
||||||
|
"semi": true, |
||||||
|
"arrowParens": "avoid", |
||||||
|
"singleQuote": true, |
||||||
|
"jsxSingleQuote": true, |
||||||
|
"tabWidth": 2, |
||||||
|
"useTabs": false |
||||||
|
} |
@ -1,65 +0,0 @@ |
|||||||
--- |
|
||||||
title: Backup & Restore |
|
||||||
sort_key: C |
|
||||||
--- |
|
||||||
|
|
||||||
Most important info first: **REMEMBER YOUR PASSWORD** and **BACKUP YOUR KEYSTORE**. |
|
||||||
|
|
||||||
## Data Directory |
|
||||||
|
|
||||||
Everything `geth` persists gets written inside its data directory. The default data |
|
||||||
directory locations are platform specific: |
|
||||||
|
|
||||||
* Mac: `~/Library/Ethereum` |
|
||||||
* Linux: `~/.ethereum` |
|
||||||
* Windows: `%LOCALAPPDATA%\Ethereum` |
|
||||||
|
|
||||||
Accounts are stored in the `keystore` subdirectory. The contents of this directories |
|
||||||
should be transportable between nodes, platforms, implementations (C++, Go, Python). |
|
||||||
|
|
||||||
To configure the location of the data directory, the `--datadir` parameter can be |
|
||||||
specified. See [CLI Options](../interface/command-line-options) for more details. |
|
||||||
|
|
||||||
Note the [ethash dag](../interface/mining) is stored at `~/.ethash` (Mac/Linux) or |
|
||||||
`%APPDATA%\Ethash` (Windows) so that it can be reused by all clients. You can store this |
|
||||||
in a different location by using a symbolic link. |
|
||||||
|
|
||||||
## Cleanup |
|
||||||
|
|
||||||
Geth's blockchain and state databases can be removed with: |
|
||||||
|
|
||||||
``` |
|
||||||
geth removedb |
|
||||||
``` |
|
||||||
|
|
||||||
This is useful for deleting an old chain and sync'ing to a new one. It only affects data |
|
||||||
directories that can be re-created on synchronisation and does not touch the keystore. |
|
||||||
|
|
||||||
## Blockchain Import/Export |
|
||||||
|
|
||||||
Export the blockchain in binary format with: |
|
||||||
|
|
||||||
``` |
|
||||||
geth export <filename> |
|
||||||
``` |
|
||||||
|
|
||||||
Or if you want to back up portions of the chain over time, a first and last block can be |
|
||||||
specified. For example, to back up the first epoch: |
|
||||||
|
|
||||||
``` |
|
||||||
geth export <filename> 0 29999 |
|
||||||
``` |
|
||||||
|
|
||||||
Note that when backing up a partial chain, the file will be appended rather than |
|
||||||
truncated. |
|
||||||
|
|
||||||
Import binary-format blockchain exports with: |
|
||||||
|
|
||||||
``` |
|
||||||
geth import <filename> |
|
||||||
``` |
|
||||||
|
|
||||||
_See https://eth.wiki/en/howto/blockchain-import-and-export-instructions for more info_ |
|
||||||
|
|
||||||
|
|
||||||
And finally: **REMEMBER YOUR PASSWORD** and **BACKUP YOUR KEYSTORE** |
|
@ -1,72 +0,0 @@ |
|||||||
--- |
|
||||||
title: Objects |
|
||||||
description: Data structures used for RPC methods |
|
||||||
--- |
|
||||||
|
|
||||||
The following are data structures which are used for various RPC methods. |
|
||||||
|
|
||||||
### Transaction call object |
|
||||||
|
|
||||||
The *transaction call object* contains all the necessary parameters for executing an EVM contract method. |
|
||||||
|
|
||||||
| Field | Type | Bytes | Optional | Description | |
|
||||||
|:-----------|:-----------|:------|:---------|:------------| |
|
||||||
| `from` | `Address` | 20 | Yes | Address the transaction is simulated to have been sent from. Defaults to first account in the local keystore or the `0x00..0` address if no local accounts are available. | |
|
||||||
| `to` | `Address` | 20 | No | Address the transaction is sent to. | |
|
||||||
| `gas` | `Quantity` | <8 | Yes | Maximum gas allowance for the code execution to avoid infinite loops. Defaults to `2^63` or whatever value the node operator specified via `--rpc.gascap`. | |
|
||||||
| `gasPrice` | `Quantity` | <32 | Yes | Number of `wei` to simulate paying for each unit of gas during execution. Defaults to `1 gwei`. | |
|
||||||
| `maxFeePerGas` | `Quantity` | <32 | Yes | Maximum fee per gas the transaction should pay in total. Relevant for type-2 transactions. | |
|
||||||
| `maxPriorityFeePerGas` | `Quantity` | <32 | Yes | Maximum tip per gas that's given directly to the miner. Relevant for type-2 transactions. | |
|
||||||
| `value` | `Quantity` | <32 | Yes | Amount of `wei` to simulate sending along with the transaction. Defaults to `0`. | |
|
||||||
| `nonce` | `Quantity` | <8 | Yes | Nonce of sender account. | |
|
||||||
| `input` | `Binary` | any | Yes | Binary data to send to the target contract. Generally the 4 byte hash of the method signature followed by the ABI encoded parameters. For details please see the [Ethereum Contract ABI](https://docs.soliditylang.org/en/v0.7.0/abi-spec.html). This field was previously called `data`. | |
|
||||||
| `accessList` | `AccessList` | any | Yes | A list of addresses and storage keys that the transaction plans to access. Used in non-legacy, i.e. type 1 and 2 transactions. | |
|
||||||
| `chainId` | `Quantity` | <32 | Yes | Transaction only valid on networks with this chain ID. Used in non-legacy, i.e. type 1 and 2 transactions. | |
|
||||||
|
|
||||||
Example for a legacy transaction: |
|
||||||
|
|
||||||
```json |
|
||||||
{ |
|
||||||
"from": "0xd9c9cd5f6779558b6e0ed4e6acf6b1947e7fa1f3", |
|
||||||
"to": "0xebe8efa441b9302a0d7eaecc277c09d20d684540", |
|
||||||
"gas": "0x1bd7c", |
|
||||||
"data": "0xd459fc46000000000000000000000000000000000000000000000000000000000046c650dbb5e8cb2bac4d2ed0b1e6475d37361157738801c494ca482f96527eb48f9eec488c2eba92d31baeccfb6968fad5c21a3df93181b43b4cf253b4d572b64172ef000000000000000000000000000000000000000000000000000000000000008c00000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000001c0000000000000000000000000000000000000000000000000000000000000002b85c0c828d7a98633b4e1b65eac0c017502da909420aeade9a280675013df36bdc71cffdf420cef3d24ba4b3f9b980bfbb26bd5e2dcf7795b3519a3fd22ffbb2000000000000000000000000000000000000000000000000000000000000000238fb6606dc2b5e42d00c653372c153da8560de77bd9afaba94b4ab6e4aa11d565d858c761320dbf23a94018d843772349bd9d92301b0ca9ca983a22d86a70628", |
|
||||||
} |
|
||||||
``` |
|
||||||
|
|
||||||
Example for a type-1 transaction: |
|
||||||
|
|
||||||
```json |
|
||||||
{ |
|
||||||
"from": "0xd9c9cd5f6779558b6e0ed4e6acf6b1947e7fa1f3", |
|
||||||
"to": "0xebe8efa441b9302a0d7eaecc277c09d20d684540", |
|
||||||
"gas": "0x1bd7c", |
|
||||||
"data": "0xd459fc46000000000000000000000000000000000000000000000000000000000046c650dbb5e8cb2bac4d2ed0b1e6475d37361157738801c494ca482f96527eb48f9eec488c2eba92d31baeccfb6968fad5c21a3df93181b43b4cf253b4d572b64172ef000000000000000000000000000000000000000000000000000000000000008c00000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000001c0000000000000000000000000000000000000000000000000000000000000002b85c0c828d7a98633b4e1b65eac0c017502da909420aeade9a280675013df36bdc71cffdf420cef3d24ba4b3f9b980bfbb26bd5e2dcf7795b3519a3fd22ffbb2000000000000000000000000000000000000000000000000000000000000000238fb6606dc2b5e42d00c653372c153da8560de77bd9afaba94b4ab6e4aa11d565d858c761320dbf23a94018d843772349bd9d92301b0ca9ca983a22d86a70628", |
|
||||||
"chainId": "0x1", |
|
||||||
"accessList": [ |
|
||||||
{ |
|
||||||
"address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", |
|
||||||
"storageKeys": ["0xda650992a54ccb05f924b3a73ba785211ba39a8912b6d270312f8e2c223fb9b1", "0x10d6a54a4754c8869d6886b5f5d7fbfa5b4 |
|
||||||
522237ea5c60d11bc4e7a1ff9390b"] |
|
||||||
}, { |
|
||||||
"address": "0xa2327a938febf5fec13bacfb16ae10ecbc4cbdcf", |
|
||||||
"storageKeys": [] |
|
||||||
}, |
|
||||||
] |
|
||||||
} |
|
||||||
``` |
|
||||||
|
|
||||||
Example for a type-2 transaction: |
|
||||||
|
|
||||||
```json |
|
||||||
{ |
|
||||||
"from": "0xd9c9cd5f6779558b6e0ed4e6acf6b1947e7fa1f3", |
|
||||||
"to": "0xebe8efa441b9302a0d7eaecc277c09d20d684540", |
|
||||||
"gas": "0x1bd7c", |
|
||||||
"maxFeePerGas": "0x6b44b0285", |
|
||||||
"maxPriorityFeePerGas": "0x6b44b0285", |
|
||||||
"data": "0xd459fc46000000000000000000000000000000000000000000000000000000000046c650dbb5e8cb2bac4d2ed0b1e6475d37361157738801c494ca482f96527eb48f9eec488c2eba92d31baeccfb6968fad5c21a3df93181b43b4cf253b4d572b64172ef000000000000000000000000000000000000000000000000000000000000008c00000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000001c0000000000000000000000000000000000000000000000000000000000000002b85c0c828d7a98633b4e1b65eac0c017502da909420aeade9a280675013df36bdc71cffdf420cef3d24ba4b3f9b980bfbb26bd5e2dcf7795b3519a3fd22ffbb2000000000000000000000000000000000000000000000000000000000000000238fb6606dc2b5e42d00c653372c153da8560de77bd9afaba94b4ab6e4aa11d565d858c761320dbf23a94018d843772349bd9d92301b0ca9ca983a22d86a70628", |
|
||||||
"chainId": "0x1", |
|
||||||
"accessList": [] |
|
||||||
} |
|
||||||
``` |
|
@ -0,0 +1,18 @@ |
|||||||
|
/** @type {import('next').NextConfig} */ |
||||||
|
|
||||||
|
const withMDX = require('@next/mdx')({ |
||||||
|
extension: /\.mdx?$/, |
||||||
|
options: { |
||||||
|
remarkPlugins: [], |
||||||
|
rehypePlugins: [] |
||||||
|
// If you use `MDXProvider`, uncomment the following line.
|
||||||
|
// providerImportSource: "@mdx-js/react",
|
||||||
|
} |
||||||
|
}); |
||||||
|
|
||||||
|
module.exports = withMDX({ |
||||||
|
reactStrictMode: true, |
||||||
|
swcMinify: true, |
||||||
|
// Append the default value with md extensions
|
||||||
|
pageExtensions: ['ts', 'tsx', 'md', 'mdx'] |
||||||
|
}); |
@ -0,0 +1,39 @@ |
|||||||
|
{ |
||||||
|
"name": "geth-site", |
||||||
|
"private": false, |
||||||
|
"description": "The website for geth.ethereum.org", |
||||||
|
"version": "2.0.0", |
||||||
|
"author": "Nicolás Quiroz <nicolas.quiroz@ethereum.org>", |
||||||
|
"scripts": { |
||||||
|
"dev": "next dev", |
||||||
|
"build": "npm run lint && next build && npm run format:fix", |
||||||
|
"start": "next start", |
||||||
|
"lint": "next lint", |
||||||
|
"format:fix": "prettier . --write --config .prettierrc --ignore-path .prettierignore --loglevel warn" |
||||||
|
}, |
||||||
|
"dependencies": { |
||||||
|
"@chakra-ui/react": "^2.3.2", |
||||||
|
"@emotion/react": "^11.10.4", |
||||||
|
"@emotion/styled": "^11.10.4", |
||||||
|
"@mdx-js/loader": "^2.1.3", |
||||||
|
"@mdx-js/react": "^2.1.3", |
||||||
|
"@next/mdx": "^12.3.0", |
||||||
|
"focus-visible": "^5.2.0", |
||||||
|
"framer-motion": "^7.3.2", |
||||||
|
"next": "^12.3.0", |
||||||
|
"react": "18.2.0", |
||||||
|
"react-dom": "18.2.0", |
||||||
|
"react-syntax-highlighter": "^15.5.0" |
||||||
|
}, |
||||||
|
"devDependencies": { |
||||||
|
"@types/node": "18.7.16", |
||||||
|
"@types/react": "18.0.18", |
||||||
|
"@types/react-dom": "18.0.6", |
||||||
|
"@types/react-syntax-highlighter": "^15.5.5", |
||||||
|
"eslint": "8.23.0", |
||||||
|
"eslint-config-next": "12.2.5", |
||||||
|
"eslint-config-prettier": "^8.5.0", |
||||||
|
"prettier": "^2.7.1", |
||||||
|
"typescript": "4.8.2" |
||||||
|
} |
||||||
|
} |
After Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 98 KiB After Width: | Height: | Size: 98 KiB |
Before Width: | Height: | Size: 142 KiB After Width: | Height: | Size: 142 KiB |
Before Width: | Height: | Size: 293 KiB After Width: | Height: | Size: 293 KiB |
Before Width: | Height: | Size: 119 KiB After Width: | Height: | Size: 119 KiB |
Before Width: | Height: | Size: 330 KiB After Width: | Height: | Size: 330 KiB |
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 43 KiB |
Before Width: | Height: | Size: 153 KiB After Width: | Height: | Size: 153 KiB |
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
Before Width: | Height: | Size: 95 KiB After Width: | Height: | Size: 95 KiB |
Before Width: | Height: | Size: 309 KiB After Width: | Height: | Size: 309 KiB |
Before Width: | Height: | Size: 484 KiB After Width: | Height: | Size: 484 KiB |
Before Width: | Height: | Size: 99 KiB After Width: | Height: | Size: 99 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 272 KiB After Width: | Height: | Size: 272 KiB |
Before Width: | Height: | Size: 276 KiB After Width: | Height: | Size: 276 KiB |
Before Width: | Height: | Size: 417 KiB After Width: | Height: | Size: 417 KiB |
Before Width: | Height: | Size: 253 KiB After Width: | Height: | Size: 253 KiB |
Before Width: | Height: | Size: 204 KiB After Width: | Height: | Size: 204 KiB |
Before Width: | Height: | Size: 245 KiB After Width: | Height: | Size: 245 KiB |
After Width: | Height: | Size: 1.1 KiB |
@ -0,0 +1,115 @@ |
|||||||
|
import { Heading, Link, Stack, Text } from '@chakra-ui/react'; |
||||||
|
import NextLink from 'next/link'; |
||||||
|
import { PrismLight as SyntaxHighlighter } from 'react-syntax-highlighter'; |
||||||
|
import { nightOwl } from 'react-syntax-highlighter/dist/cjs/styles/prism'; |
||||||
|
|
||||||
|
import bash from 'react-syntax-highlighter/dist/cjs/languages/prism/bash'; |
||||||
|
import go from 'react-syntax-highlighter/dist/cjs/languages/prism/go'; |
||||||
|
import graphql from 'react-syntax-highlighter/dist/cjs/languages/prism/graphql'; |
||||||
|
import java from 'react-syntax-highlighter/dist/cjs/languages/prism/java'; |
||||||
|
import javascript from 'react-syntax-highlighter/dist/cjs/languages/prism/javascript'; |
||||||
|
import json from 'react-syntax-highlighter/dist/cjs/languages/prism/json'; |
||||||
|
import python from 'react-syntax-highlighter/dist/cjs/languages/prism/python'; |
||||||
|
import sh from 'react-syntax-highlighter/dist/cjs/languages/prism/shell-session'; |
||||||
|
import solidity from 'react-syntax-highlighter/dist/cjs/languages/prism/solidity'; |
||||||
|
import swift from 'react-syntax-highlighter/dist/cjs/languages/prism/swift'; |
||||||
|
|
||||||
|
// syntax highlighting languages supported
|
||||||
|
SyntaxHighlighter.registerLanguage('bash', bash); |
||||||
|
SyntaxHighlighter.registerLanguage('go', go); |
||||||
|
SyntaxHighlighter.registerLanguage('graphql', graphql); |
||||||
|
SyntaxHighlighter.registerLanguage('java', java); |
||||||
|
SyntaxHighlighter.registerLanguage('javascript', javascript); |
||||||
|
SyntaxHighlighter.registerLanguage('json', json); |
||||||
|
SyntaxHighlighter.registerLanguage('python', python); |
||||||
|
SyntaxHighlighter.registerLanguage('sh', sh); |
||||||
|
SyntaxHighlighter.registerLanguage('solidity', solidity); |
||||||
|
SyntaxHighlighter.registerLanguage('swift', swift); |
||||||
|
|
||||||
|
import { getProgrammingLanguageName } from '../utils'; |
||||||
|
|
||||||
|
const MDXComponents = { |
||||||
|
// paragraphs
|
||||||
|
p: ({ children }: any) => { |
||||||
|
return ( |
||||||
|
<Text mb={7} _last={{ mb: 0 }} size='sm' lineHeight={1.5}> |
||||||
|
{children} |
||||||
|
</Text> |
||||||
|
); |
||||||
|
}, |
||||||
|
// links
|
||||||
|
a: ({ children, href }: any) => { |
||||||
|
return ( |
||||||
|
<NextLink href={href} passHref> |
||||||
|
<Link |
||||||
|
isExternal={href.startsWith('http') && !href.includes('geth.ethereum.org')} |
||||||
|
color='#18bc9c' |
||||||
|
> |
||||||
|
{children} |
||||||
|
</Link> |
||||||
|
</NextLink> |
||||||
|
); |
||||||
|
}, |
||||||
|
// headings
|
||||||
|
h1: ({ children }: any) => { |
||||||
|
return ( |
||||||
|
<Heading as='h1' textAlign='start' fontSize='4xl' mb={5}> |
||||||
|
{children} |
||||||
|
</Heading> |
||||||
|
); |
||||||
|
}, |
||||||
|
h2: ({ children }: any) => { |
||||||
|
return ( |
||||||
|
<Heading as='h2' textAlign='start' fontSize='3xl' mb={4}> |
||||||
|
{children} |
||||||
|
</Heading> |
||||||
|
); |
||||||
|
}, |
||||||
|
h3: ({ children }: any) => { |
||||||
|
return ( |
||||||
|
<Heading as='h3' fontSize='2xl' mt={5} mb={2.5}> |
||||||
|
{children} |
||||||
|
</Heading> |
||||||
|
); |
||||||
|
}, |
||||||
|
h4: ({ children }: any) => { |
||||||
|
return ( |
||||||
|
<Heading as='h4' fontSize='lg' mb={2.5}> |
||||||
|
{children} |
||||||
|
</Heading> |
||||||
|
); |
||||||
|
}, |
||||||
|
// pre
|
||||||
|
pre: ({ children }: any) => { |
||||||
|
return ( |
||||||
|
<Stack mb={5}> |
||||||
|
<pre>{children}</pre> |
||||||
|
</Stack> |
||||||
|
); |
||||||
|
} |
||||||
|
// code
|
||||||
|
// code: (code: any) => {
|
||||||
|
// const language = getProgrammingLanguageName(code);
|
||||||
|
|
||||||
|
// return !!code.inline ? (
|
||||||
|
// <Text
|
||||||
|
// as={'span'}
|
||||||
|
// padding='0.125em 0.25em'
|
||||||
|
// color='red.300'
|
||||||
|
// background='#1c1e2d'
|
||||||
|
// borderRadius='0.25em'
|
||||||
|
// fontFamily='code'
|
||||||
|
// fontSize='sm'
|
||||||
|
// overflowY='scroll'
|
||||||
|
// >
|
||||||
|
// {code.children[0]}
|
||||||
|
// </Text>
|
||||||
|
// ) : (
|
||||||
|
// <Stack style={nightOwl}>
|
||||||
|
// {code.children[0]}
|
||||||
|
// </Stack>
|
||||||
|
// );
|
||||||
|
// }
|
||||||
|
}; |
||||||
|
|
||||||
|
export default MDXComponents; |
@ -0,0 +1 @@ |
|||||||
|
export { default } from './MDXComponents'; |
@ -0,0 +1,14 @@ |
|||||||
|
import { Container } from '@chakra-ui/react'; |
||||||
|
import { FC } from 'react'; |
||||||
|
|
||||||
|
interface Props { |
||||||
|
children?: React.ReactNode; |
||||||
|
} |
||||||
|
|
||||||
|
export const Layout: FC<Props> = ({ children }) => { |
||||||
|
return ( |
||||||
|
<Container maxW='container.lg' my={7}> |
||||||
|
{children} |
||||||
|
</Container> |
||||||
|
); |
||||||
|
}; |
@ -0,0 +1 @@ |
|||||||
|
export { Layout } from './Layout'; |
@ -0,0 +1,23 @@ |
|||||||
|
import { ChakraProvider } from '@chakra-ui/react'; |
||||||
|
import { AppProps } from 'next/app'; |
||||||
|
|
||||||
|
import { Layout } from '../components/layouts'; |
||||||
|
|
||||||
|
import 'focus-visible/dist/focus-visible'; |
||||||
|
|
||||||
|
import theme from '../theme'; |
||||||
|
|
||||||
|
import { MDXProvider } from '@mdx-js/react'; |
||||||
|
import MDXComponents from '../components/'; |
||||||
|
|
||||||
|
export default function App({ Component, pageProps }: AppProps) { |
||||||
|
return ( |
||||||
|
<ChakraProvider theme={theme}> |
||||||
|
<MDXProvider components={MDXComponents}> |
||||||
|
<Layout> |
||||||
|
<Component {...pageProps} /> |
||||||
|
</Layout> |
||||||
|
</MDXProvider> |
||||||
|
</ChakraProvider> |
||||||
|
); |
||||||
|
} |
@ -0,0 +1,5 @@ |
|||||||
|
# About |
||||||
|
|
||||||
|
## Subtitle |
||||||
|
|
||||||
|
Text sample for testing only |
@ -0,0 +1,10 @@ |
|||||||
|
// Next.js API route support: https://nextjs.org/docs/api-routes/introduction
|
||||||
|
import type { NextApiRequest, NextApiResponse } from 'next'; |
||||||
|
|
||||||
|
type Data = { |
||||||
|
name: string; |
||||||
|
}; |
||||||
|
|
||||||
|
export default function handler(req: NextApiRequest, res: NextApiResponse<Data>) { |
||||||
|
res.status(200).json({ name: 'John Doe' }); |
||||||
|
} |
@ -0,0 +1,72 @@ |
|||||||
|
--- |
||||||
|
title: Objects |
||||||
|
description: Data structures used for RPC methods |
||||||
|
--- |
||||||
|
|
||||||
|
The following are data structures which are used for various RPC methods. |
||||||
|
|
||||||
|
## Transaction call object |
||||||
|
|
||||||
|
The _transaction call object_ contains all the necessary parameters for executing an EVM contract method. |
||||||
|
|
||||||
|
| Field | Type | Bytes | Optional | Description | |
||||||
|
| :--------------------- | :----------- | :---- | :------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | |
||||||
|
| `from` | `Address` | 20 | Yes | Address the transaction is simulated to have been sent from. Defaults to first account in the local keystore or the `0x00..0` address if no local accounts are available. | |
||||||
|
| `to` | `Address` | 20 | No | Address the transaction is sent to. | |
||||||
|
| `gas` | `Quantity` | <8 | Yes | Maximum gas allowance for the code execution to avoid infinite loops. Defaults to `2^63` or whatever value the node operator specified via `--rpc.gascap`. | |
||||||
|
| `gasPrice` | `Quantity` | <32 | Yes | Number of `wei` to simulate paying for each unit of gas during execution. Defaults to `1 gwei`. | |
||||||
|
| `maxFeePerGas` | `Quantity` | <32 | Yes | Maximum fee per gas the transaction should pay in total. Relevant for type-2 transactions. | |
||||||
|
| `maxPriorityFeePerGas` | `Quantity` | <32 | Yes | Maximum tip per gas that's given directly to the miner. Relevant for type-2 transactions. | |
||||||
|
| `value` | `Quantity` | <32 | Yes | Amount of `wei` to simulate sending along with the transaction. Defaults to `0`. | |
||||||
|
| `nonce` | `Quantity` | <8 | Yes | Nonce of sender account. | |
||||||
|
| `input` | `Binary` | any | Yes | Binary data to send to the target contract. Generally the 4 byte hash of the method signature followed by the ABI encoded parameters. For details please see the [Ethereum Contract ABI](https://docs.soliditylang.org/en/v0.7.0/abi-spec.html). This field was previously called `data`. | |
||||||
|
| `accessList` | `AccessList` | any | Yes | A list of addresses and storage keys that the transaction plans to access. Used in non-legacy, i.e. type 1 and 2 transactions. | |
||||||
|
| `chainId` | `Quantity` | <32 | Yes | Transaction only valid on networks with this chain ID. Used in non-legacy, i.e. type 1 and 2 transactions. | |
||||||
|
|
||||||
|
Example for a legacy transaction: |
||||||
|
|
||||||
|
```json |
||||||
|
{ |
||||||
|
"from": "0xd9c9cd5f6779558b6e0ed4e6acf6b1947e7fa1f3", |
||||||
|
"to": "0xebe8efa441b9302a0d7eaecc277c09d20d684540", |
||||||
|
"gas": "0x1bd7c", |
||||||
|
"data": "0xd459fc46000000000000000000000000000000000000000000000000000000000046c650dbb5e8cb2bac4d2ed0b1e6475d37361157738801c494ca482f96527eb48f9eec488c2eba92d31baeccfb6968fad5c21a3df93181b43b4cf253b4d572b64172ef000000000000000000000000000000000000000000000000000000000000008c00000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000001c0000000000000000000000000000000000000000000000000000000000000002b85c0c828d7a98633b4e1b65eac0c017502da909420aeade9a280675013df36bdc71cffdf420cef3d24ba4b3f9b980bfbb26bd5e2dcf7795b3519a3fd22ffbb2000000000000000000000000000000000000000000000000000000000000000238fb6606dc2b5e42d00c653372c153da8560de77bd9afaba94b4ab6e4aa11d565d858c761320dbf23a94018d843772349bd9d92301b0ca9ca983a22d86a70628" |
||||||
|
} |
||||||
|
``` |
||||||
|
|
||||||
|
Example for a type-1 transaction: |
||||||
|
|
||||||
|
```json |
||||||
|
{ |
||||||
|
"from": "0xd9c9cd5f6779558b6e0ed4e6acf6b1947e7fa1f3", |
||||||
|
"to": "0xebe8efa441b9302a0d7eaecc277c09d20d684540", |
||||||
|
"gas": "0x1bd7c", |
||||||
|
"data": "0xd459fc46000000000000000000000000000000000000000000000000000000000046c650dbb5e8cb2bac4d2ed0b1e6475d37361157738801c494ca482f96527eb48f9eec488c2eba92d31baeccfb6968fad5c21a3df93181b43b4cf253b4d572b64172ef000000000000000000000000000000000000000000000000000000000000008c00000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000001c0000000000000000000000000000000000000000000000000000000000000002b85c0c828d7a98633b4e1b65eac0c017502da909420aeade9a280675013df36bdc71cffdf420cef3d24ba4b3f9b980bfbb26bd5e2dcf7795b3519a3fd22ffbb2000000000000000000000000000000000000000000000000000000000000000238fb6606dc2b5e42d00c653372c153da8560de77bd9afaba94b4ab6e4aa11d565d858c761320dbf23a94018d843772349bd9d92301b0ca9ca983a22d86a70628", |
||||||
|
"chainId": "0x1", |
||||||
|
"accessList": [ |
||||||
|
{ |
||||||
|
"address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", |
||||||
|
"storageKeys": ["0xda650992a54ccb05f924b3a73ba785211ba39a8912b6d270312f8e2c223fb9b1", "0x10d6a54a4754c8869d6886b5f5d7fbfa5b4 |
||||||
|
522237ea5c60d11bc4e7a1ff9390b"] |
||||||
|
}, { |
||||||
|
"address": "0xa2327a938febf5fec13bacfb16ae10ecbc4cbdcf", |
||||||
|
"storageKeys": [] |
||||||
|
}, |
||||||
|
] |
||||||
|
} |
||||||
|
``` |
||||||
|
|
||||||
|
Example for a type-2 transaction: |
||||||
|
|
||||||
|
```json |
||||||
|
{ |
||||||
|
"from": "0xd9c9cd5f6779558b6e0ed4e6acf6b1947e7fa1f3", |
||||||
|
"to": "0xebe8efa441b9302a0d7eaecc277c09d20d684540", |
||||||
|
"gas": "0x1bd7c", |
||||||
|
"maxFeePerGas": "0x6b44b0285", |
||||||
|
"maxPriorityFeePerGas": "0x6b44b0285", |
||||||
|
"data": "0xd459fc46000000000000000000000000000000000000000000000000000000000046c650dbb5e8cb2bac4d2ed0b1e6475d37361157738801c494ca482f96527eb48f9eec488c2eba92d31baeccfb6968fad5c21a3df93181b43b4cf253b4d572b64172ef000000000000000000000000000000000000000000000000000000000000008c00000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000001c0000000000000000000000000000000000000000000000000000000000000002b85c0c828d7a98633b4e1b65eac0c017502da909420aeade9a280675013df36bdc71cffdf420cef3d24ba4b3f9b980bfbb26bd5e2dcf7795b3519a3fd22ffbb2000000000000000000000000000000000000000000000000000000000000000238fb6606dc2b5e42d00c653372c153da8560de77bd9afaba94b4ab6e4aa11d565d858c761320dbf23a94018d843772349bd9d92301b0ca9ca983a22d86a70628", |
||||||
|
"chainId": "0x1", |
||||||
|
"accessList": [] |
||||||
|
} |
||||||
|
``` |