Fixed documentation typos (#895, #917, #924).

This commit is contained in:
Richard Moore 2020-07-03 01:44:17 -04:00
parent 4838874127
commit 0059b7e468
No known key found for this signature in database
GPG Key ID: 665176BE8E9DC651
18 changed files with 48 additions and 42 deletions

@ -36,11 +36,11 @@ to the Contract's constructor.
_property: contractFactory.deploy(...args) => Promise<[[Contract]]> @<ContractFactory-deploy> _property: contractFactory.deploy(...args) => Promise<[[Contract]]> @<ContractFactory-deploy>
Uses the signer to deploy the Contract with //args// passed into tgee constructor and Uses the signer to deploy the Contract with //args// passed into the constructor and
retruns a Contract which is attached to the address where this contract **will** be retruns a Contract which is attached to the address where this contract **will** be
deployed once the transction is mined. deployed once the transaction is mined.
The transction can be found at ``contract.deployTransaction``, and no interactions The transaction can be found at ``contract.deployTransaction``, and no interactions
should be made until the transaction is mined. should be made until the transaction is mined.
_code: Deploying a Contract _code: Deploying a Contract
@ -73,6 +73,6 @@ contract.deployTransaction
contract.deployTransaction.wait() contract.deployTransaction.wait()
//! //!
// Now the contract is safe to ineract with // Now the contract is safe to interact with
contract.value() contract.value()
//! //!

@ -19,7 +19,7 @@ Returns a new instance of the Contract, but connected to
By passing in a [[Provider]], this will return a downgraded By passing in a [[Provider]], this will return a downgraded
**Contract** which only has read-only access (i.e. constant calls). **Contract** which only has read-only access (i.e. constant calls).
By passing in a [[Signer]]. the will return a **Contract** which By passing in a [[Signer]]. this will return a **Contract** which
will act on behalf of that signer. will act on behalf of that signer.
@ -107,7 +107,7 @@ For values that have a simple meaning in JavaScript, the types are fairly
straight forward; strings and booleans are returned as JavaScript strings straight forward; strings and booleans are returned as JavaScript strings
and booleans. and booleans.
For numbers, if the **type** is in the JavaSsript safe range (i.e. less For numbers, if the **type** is in the JavaScript safe range (i.e. less
than 53 bits, such as an ``int24`` or ``uint48``) a normal JavaScript than 53 bits, such as an ``int24`` or ``uint48``) a normal JavaScript
number is used. Otherwise a [[BigNumber]] is returned. number is used. Otherwise a [[BigNumber]] is returned.
@ -150,7 +150,7 @@ signer.
_heading: Write Methods Analysis @<Contract--check> _heading: Write Methods Analysis @<Contract--check>
There are secveral options to analyze properties and results of a There are several options to analyze properties and results of a
write method without actually executing it. write method without actually executing it.
_property: contract.estimateGas.METHOD_NAME(...args [ , overrides ]) => Promise<[[BigNumber]]> @<contract-estimateGas> _property: contract.estimateGas.METHOD_NAME(...args [ , overrides ]) => Promise<[[BigNumber]]> @<contract-estimateGas>
@ -162,12 +162,12 @@ Returns an [[UnsignedTransaction]] which represents the transaction
that would need to be signed and submitted to the network to execute that would need to be signed and submitted to the network to execute
//METHOD_NAME// with //args// and //overrides//. //METHOD_NAME// with //args// and //overrides//.
_property: contract.staticCall.METHOD_NAME(...args [ , overrides ]) => Promise<any> @<contract-staticCall> _property: contract.callStatic.METHOD_NAME(...args [ , overrides ]) => Promise<any> @<contract-callStatic>
Rather than executing the state-change of a transaction, it is possible Rather than executing the state-change of a transaction, it is possible
to ask a node to //pretend// that a call is not state-changing and to ask a node to //pretend// that a call is not state-changing and
return the result. return the result.
This does not actually chagne any state, but is free. This in some cases This does not actually change any state, but is free. This in some cases
can be used to determine if a transaction will fail or succeed. can be used to determine if a transaction will fail or succeed.
This otherwise functions the same as a [Read-Only Method](Contract--readonly). This otherwise functions the same as a [Read-Only Method](Contract--readonly).

@ -91,7 +91,7 @@ Returns a new instance of the Contract, but connected to
By passing in a [[Provider]], this will return a downgraded By passing in a [[Provider]], this will return a downgraded
**Contract** which only has read-only access (i.e. constant calls). **Contract** which only has read-only access (i.e. constant calls).
By passing in a [[Signer]]. the will return a **Contract** which By passing in a [[Signer]]. this will return a **Contract** which
will act on behalf of that signer. will act on behalf of that signer.
_property: erc20.deployed() => Promise<Contract> _property: erc20.deployed() => Promise<Contract>

@ -2,10 +2,10 @@ _section: Contract Interaction @<contracts>
A **Contract** object is an abstraction of a contract (EVM bytecode) A **Contract** object is an abstraction of a contract (EVM bytecode)
deployed on the Ethereum network. It allows for a simple way to deployed on the Ethereum network. It allows for a simple way to
serialize calls and transaxtions to an on-chain contract and serialize calls and transactions to an on-chain contract and
deserialize their results and emitted logs. deserialize their results and emitted logs.
A **ContractFactory** is an abstraction a contract's //bytecode// A **ContractFactory** is an abstraction of a contract's //bytecode//
and facilitates deploying a contract. and facilitates deploying a contract.
_toc: _toc:

@ -96,7 +96,7 @@ specify a [Project Secret](link-infura-secret) which can be used
on non-public sources (like on a server) to further secure your on non-public sources (like on a server) to further secure your
API access and quotas. API access and quotas.
_property: InfuraProvider.getWebSocketProvider([ network [ , apiKey ] ]) => [[WebSocketProvider]] @<InfuraProvider-getWebSocketProvider> @SRC<providers> _property: InfuraProvider.getWebSocketProvider([ network [ , apiKey ] ]) => [[WebSocketProvider]] @<InfuraProvider-getWebSocketProvider> @SRC<providers:InfuraProvider.getWebSocketProvider>
Create a new [[WebSocketProvider]] using the INFURA web-socket endpoint Create a new [[WebSocketProvider]] using the INFURA web-socket endpoint
to connect to //network// with the optional //apiKey//. to connect to //network// with the optional //apiKey//.

@ -55,16 +55,16 @@ _note: Note: API Keys
It is highly recommended for production services that to acquire It is highly recommended for production services that to acquire
and specify an API Key for each sercice. and specify an API Key for each sercice.
The deafult API Keys used by ethers are shared across all users, The default API Keys used by ethers are shared across all users,
so services may throttle all services that are using the default so services may throttle all services that are using the default
API Keys during periods of load without realizing it. API Keys during periods of load without realizing it.
Many services also have monitoring and usage metrics, which are Many services also have monitoring and usage metrics, which are
only available if an API Key is specifie. This allows tracking only available if an API Key is specified. This allows tracking
how many requests are being sent and which methods are being how many requests are being sent and which methods are being
used the most. used the most.
Some services also provide additional paid features, whichare only Some services also provide additional paid features, which are only
available when specifying an API Key. available when specifying an API Key.

@ -14,7 +14,7 @@ querying the node.
_note: Note: Connecting to a Local Node _note: Note: Connecting to a Local Node
Each node implementation is slightly different and may require specific Each node implementation is slightly different and may require specific
command-line flags, configuration or settings in their UI to enable command-line flags, configuration or settings in their UI to enable
JSON-RPC, unlock accounrs or expose specific APIs. Please consult JSON-RPC, unlock accounts or expose specific APIs. Please consult
their documentation. their documentation.
_property: jsonRpcProvider.getSigner([ addressOrIndex ]) => [[JsonRpcSigner]] @<JsonRpcProvider-getSigner> @SRC<providers/json-rpc-provider> _property: jsonRpcProvider.getSigner([ addressOrIndex ]) => [[JsonRpcSigner]] @<JsonRpcProvider-getSigner> @SRC<providers/json-rpc-provider>
@ -42,12 +42,12 @@ _property: signer.provider => [[JsonRpcProvider]]
The provider this signer was established from. The provider this signer was established from.
_property: signer.connectUnchecked() => [[UncheckedJsonRpcSigner]] @<JsonRpcSigner-connectUnchecked> @SRC<providers> _property: signer.connectUnchecked() => [[UncheckedJsonRpcSigner]] @<JsonRpcSigner-connectUnchecked> @SRC<providers>
Returns a new Signer object which does not perform addtional checks when Returns a new Signer object which does not perform additional checks when
sending a transaction. See [getUncheckedSigner](JsonRpcProvider-getUncheckedSigner) for more details. sending a transaction. See [getUncheckedSigner](JsonRpcProvider-getUncheckedSigner) for more details.
_property: signer.sendUncheckedTransaction(transaction) => Promise<string<[[DataHexString]]\<32>\>> @<JsonRpcSigner-sendUncheckedTransaction> @SRC<providers> _property: signer.sendUncheckedTransaction(transaction) => Promise<string<[[DataHexString]]\<32>\>> @<JsonRpcSigner-sendUncheckedTransaction> @SRC<providers>
Sends the //transaction// and returns a Promise which resolves to the Sends the //transaction// and returns a Promise which resolves to the
opacque transaction hash. opaque transaction hash.
_property: signer.unlock(password) => Promise<boolean> @<JsonRpcSigner-unlock> @SRC<providers> _property: signer.unlock(password) => Promise<boolean> @<JsonRpcSigner-unlock> @SRC<providers>
Request the node unlock the account (if locked) using //password//. Request the node unlock the account (if locked) using //password//.
@ -60,7 +60,7 @@ of a transaction before returning it. For example, the gas price and gas limit
may be adjusted by the node or the nonce automatically included, in which case may be adjusted by the node or the nonce automatically included, in which case
the opaque transaction hash has discarded this. the opaque transaction hash has discarded this.
To remedy this, the [[JsonRpcSigner]] immeidately queries the provider for To remedy this, the [[JsonRpcSigner]] immediately queries the provider for
the details using the returned transaction hash to populate the [[providers-TransactionResponse]] the details using the returned transaction hash to populate the [[providers-TransactionResponse]]
object. object.
@ -85,7 +85,7 @@ The [jsonRpcProvider.send](JsonRpcProvider-send) method can be used to access th
- [All JSON-RPC methods](link-json-rpc) (including the less common methods) which most - [All JSON-RPC methods](link-json-rpc) (including the less common methods) which most
Ethereum Nodes support. Ethereum Nodes support.
- [Parity's Trace Module](link-parity-trace) can be used to trace and debug EVM - [Parity's Trace Module](link-parity-trace) can be used to trace and debug EVM
execcution of a transaction (requires custom configuration) execution of a transaction (requires custom configuration)
- [Geth's Debug Module](link-geth-debug) can be used to debug transactions and - [Geth's Debug Module](link-geth-debug) can be used to debug transactions and
internal cache state, etc. internal cache state, etc.
- [Additional Geth Methods](link-geth-rpc) - [Additional Geth Methods](link-geth-rpc)

@ -60,7 +60,7 @@ provider.getBlockWithTransactions(100004)
_subsection: Ethereum Naming Service (ENS) Methods @<Provider--ens-methods> _subsection: Ethereum Naming Service (ENS) Methods @<Provider--ens-methods>
The [Ethereum Naming Service](link-ens) (ENS) allows a short and The [Ethereum Naming Service](link-ens) (ENS) allows a short and
easy-to-remember ENS Name to be atached to any set of keys easy-to-remember ENS Name to be attached to any set of keys
and values. and values.
One of the most common uses for this is to use a simple name to One of the most common uses for this is to use a simple name to

@ -47,7 +47,7 @@ _property: signer.getBalance([ blockTag = "latest" ]) => Promise<[[BigNumber]]>
Returns the balance of this wallet at //blockTag//. Returns the balance of this wallet at //blockTag//.
_property: signer.getChainId() => Promise<number> @<Signer-getChainId> @SRC<abstract-signer> _property: signer.getChainId() => Promise<number> @<Signer-getChainId> @SRC<abstract-signer>
Returns ths chain ID this wallet is connected to. Returns the chain ID this wallet is connected to.
_property: signer.getGasPrice() => Promise<[[BigNumber]]> @<Signer-getGasPrice> @SRC<abstract-signer> _property: signer.getGasPrice() => Promise<[[BigNumber]]> @<Signer-getGasPrice> @SRC<abstract-signer>
Returns the current gas price. Returns the current gas price.
@ -121,7 +121,7 @@ properties such as the //provider// and //address// static throughout the
life-cycle of the Signer helps prevent serious issues and many other classes life-cycle of the Signer helps prevent serious issues and many other classes
and libraries make this assumption. and libraries make this assumption.
A sub-class **must** extend Sigenr and **must** call ``super()``. A sub-class **must** extend Signer and **must** call ``super()``.
_property: signer.checkTransaction(transactionRequest) => [[providers-TransactionRequest]] @<Signer-checkTransaction> @SRC<abstract-signer> _property: signer.checkTransaction(transactionRequest) => [[providers-TransactionRequest]] @<Signer-checkTransaction> @SRC<abstract-signer>
This is generally not required to be overridden, but may needed to provide This is generally not required to be overridden, but may needed to provide
@ -197,7 +197,7 @@ The provider this wallet is connected to, which will ge used for any [[Signer--b
methods. This can be null. methods. This can be null.
_note: Note _note: Note
A **Wallet** instance is immuatable, so if you wish to change the Provider, you A **Wallet** instance is immutable, so if you wish to change the Provider, you
may use the [connect](Signer-connect) method to create a new instance connected may use the [connect](Signer-connect) method to create a new instance connected
to the desired provider. to the desired provider.

@ -12,12 +12,12 @@ The **JSON ABI Format** is the format that is
A JSON serialized object is always a string, which represents an Array A JSON serialized object is always a string, which represents an Array
of Objects, where each Object has various properties describing the [[Fragment]] of the ABI. of Objects, where each Object has various properties describing the [[Fragment]] of the ABI.
The deserialied JSON string (which is a normal JavaScript Object) may The deserialized JSON string (which is a normal JavaScript Object) may
also be passed into any function which accepts a JSON String ABI. also be passed into any function which accepts a JSON String ABI.
_heading: Humanb-Readable ABI _heading: Humanb-Readable ABI
The Human-Readable ABI was The Human-Readable ABI was @TODO
[article](link-ricmoo-humanreadableabi) [article](link-ricmoo-humanreadableabi)

@ -45,7 +45,7 @@ _property: ethers.utils.getAddress(address) => string<[[address]]> @<utils-getA
Returns //address// as a Checksum Address. Returns //address// as a Checksum Address.
If //address// is an invalid 40-nibble [[HexString]] or if it contains mixed case and If //address// is an invalid 40-nibble [[HexString]] or if it contains mixed case and
the checksum is invalid, an InvalidArgument Error is throw. the checksum is invalid, an InvalidArgument Error is thrown.
The value of //address// may be any supported address format. The value of //address// may be any supported address format.

@ -153,7 +153,7 @@ Returns true if and only if the value of //BigNumber// **>** //otherValue//.
_property: BigNumber.gte(otherValue) => boolean @SRC<bignumber> _property: BigNumber.gte(otherValue) => boolean @SRC<bignumber>
Returns true if and only if the value of //BigNumber// **&ge;** //otherValue//. Returns true if and only if the value of //BigNumber// **&ge;** //otherValue//.
_property: BigNumber.isZero() => boolean @SRC<bignumber> _property: BigNumber.isZero() => boolean @SRC<bignumber:BigNumber.isZero>
Returns true if and only if the value of //BigNumber// is zero. Returns true if and only if the value of //BigNumber// is zero.

@ -49,6 +49,12 @@ _property: fixednumber.round([ decimals = 0 ]) => [[FixedNumber]] @SRC<bignumbe
Returns a new FixedNumber with the value of //fixedvalue// rounded to //decimals//. Returns a new FixedNumber with the value of //fixedvalue// rounded to //decimals//.
_heading: Comparison and Equivalence
_property: FixedNumber.isZero() => boolean @SRC<bignumber/fixednumber:FixedNumber.isZero>
Returns true if and only if the value of //FixedNumber// is zero.
_heading: Conversion _heading: Conversion
_property: fixednumber.toFormat(format) => [[FixedNumber]] @SRC<bignumber/fixednumber> _property: fixednumber.toFormat(format) => [[FixedNumber]] @SRC<bignumber/fixednumber>

@ -27,7 +27,7 @@ If a topic-set is a single topic, a log topic in that position must match
**that topic**. **that topic**.
If a topic-set is an array of topics, a log topic in that position must If a topic-set is an array of topics, a log topic in that position must
match any **one** of topics (i.e. the topic in thie position are ``OR``-ed). match any **one** of the topics (i.e. the topic in this position are ``OR``-ed).
_table: Example Log Matching @style<full> _table: Example Log Matching @style<full>

@ -12,7 +12,7 @@ much stronger security.
The algorithm usually used for this process is [scrypt](link-wiki-scrypt), The algorithm usually used for this process is [scrypt](link-wiki-scrypt),
which is a memory and CPU intensive algorithm which computes which is a memory and CPU intensive algorithm which computes
a key (fixed-length psudo-random series of bytes) for a given a key (fixed-length pseudo-random series of bytes) for a given
password. password.
@ -50,7 +50,7 @@ progress callback which will be periodically called with a number between
In general a progress bar makes the experience feel faster, as well as In general a progress bar makes the experience feel faster, as well as
more comfortable since there is a clear indication how much (relative) time more comfortable since there is a clear indication how much (relative) time
is remaining. Additionally, using language like //"decrpyting..."// in is remaining. Additionally, using language like //"decrypting..."// in
a progress bar makes a user feel like there time is not being //needlessly// a progress bar makes a user feel like there time is not being //needlessly//
wasted. wasted.

@ -54,7 +54,7 @@ function getDefinitions(source) {
const getSourceUrl = (function(path, include, exclude) { const getSourceUrl = (function(path, include, exclude) {
console.log("Scanning TypeScript Sources..."); console.log("Scanning TypeScript Sources...");
const Link = "https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages$FILENAME#L$LINE"; const Link = "https://github.com/ethers-io/ethers.js/blob/master/packages$FILENAME#L$LINE";
const Root = resolve(__dirname, path); const Root = resolve(__dirname, path);
const readdir = function(path) { const readdir = function(path) {
@ -151,16 +151,16 @@ function codeContextify(context) {
module.exports = { module.exports = {
title: "ethers", title: "ethers",
subtitle: "v5.0-beta", subtitle: "v5.0",
logo: "logo.svg", logo: "logo.svg",
prefix: "/v5", prefix: "/v5",
link: "https:/\/docs-beta.ethers.io", link: "https:/\/docs.ethers.io",
copyright: "The content of this site is licensed under the [Creative Commons License](https:/\/choosealicense.com/licenses/cc-by-4.0/). Generated on &$now;.", copyright: "The content of this site is licensed under the [Creative Commons License](https:/\/choosealicense.com/licenses/cc-by-4.0/). Generated on &$now;.",
markdown: { markdown: {
"banner": "-----\n\nDocumentation: [html](https://docs-beta.ethers.io/)\n\n-----\n\n" "banner": "-----\n\nDocumentation: [html](https://docs.ethers.io/)\n\n-----\n\n"
}, },
codeContextify: codeContextify, codeContextify: codeContextify,
@ -217,7 +217,7 @@ module.exports = {
"link-ethers-docs": "https:/\/docs.ethers.io/", "link-ethers-docs": "https:/\/docs.ethers.io/",
"link-ethers-js": "https:/\/cdn.ethers.io/lib/ethers-5.0.esm.min.js", "link-ethers-js": "https:/\/cdn.ethers.io/lib/ethers-5.0.esm.min.js",
"link-ethers-npm": "https:/\/www.npmjs.com/search?q=%40ethersproject%2F", "link-ethers-npm": "https:/\/www.npmjs.com/search?q=%40ethersproject%2F",
"link-ethers-asm-grammar": "https:/\/github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/asm/grammar.jison", "link-ethers-asm-grammar": "https:/\/github.com/ethers-io/ethers.js/blob/master/packages/asm/grammar.jison",
"link-eip-155": { name: "EIP-155", url: "https:/\/eips.ethereum.org/EIPS/eip-155" }, "link-eip-155": { name: "EIP-155", url: "https:/\/eips.ethereum.org/EIPS/eip-155" },
"link-eip-191": { name: "EIP-191", url: "https:/\/eips.ethereum.org/EIPS/eip-191" }, "link-eip-191": { name: "EIP-191", url: "https:/\/eips.ethereum.org/EIPS/eip-191" },

@ -78,7 +78,7 @@ Ethereum is to use [[link-metamask]], which is a browser extension
that provides: that provides:
- A connection to the Ethereum network (a [[Provider]]) - A connection to the Ethereum network (a [[Provider]])
- Holds your private key and can sign thing (a [[Signer]]) - Holds your private key and can sign things (a [[Signer]])
_code: Connecting to Metamask @lang<script> _code: Connecting to Metamask @lang<script>

@ -99,14 +99,14 @@ interface.functions.transfer.encode(to, amount)
interface.functions.transfer.decode(callData) interface.functions.transfer.decode(callData)
// v5 // v5
interface.encodeData("transfer", [ to, amount ]) interface.encodeFunctionData("transfer", [ to, amount ])
interface.decodeResult("transfer", data) interface.decodeFunctionResult("transfer", data)
// Or you can use any compatible signature or Fragment objects. // Or you can use any compatible signature or Fragment objects.
// Notice that signature normalization is performed for you, // Notice that signature normalization is performed for you,
// e.g. "uint" and "uint256" will be automatically converted // e.g. "uint" and "uint256" will be automatically converted
interface.encodeData("transfer(address,uint)", [ to, amount ]) interface.encodeFunctionData("transfer(address,uint)", [ to, amount ])
interface.decodeResult("transfer(address to, uint256 amount)", data) interface.decodeFunctionResult("transfer(address to, uint256 amount)", data)
_heading: Events _heading: Events