1
0
mirror of https://github.com/oceanprotocol/ocean.js.git synced 2024-11-26 20:39:05 +01:00
ocean.js/docs/classes/Router.md
Alex Coseru 9bf71ba4f0
Features/ethers (#1696)
* add ethers

* global updates

* ve updates

* ve tests

* contract updates

* first test passing

* downgrade to ethers 5.7.2

* add log

* add tx wait

* full NftFactory.test

* add wait

* add Router tests

* fix dispenser

* Nft test

* add dispenser tests

* add fre tests part 1

* WIP datatoken unit tests

* add DFRewards test

* increase gas estimate

* increase gas estimate

* Work datatoken unit tests

* datatoken test more tests

* finished datatoken tests

* fix nft get data

* fix nft transfer tests

* Provider int tests

* Updating CodeExamples.md

* update provider & fix publish flow int test

* wip publish edit consume integration test

* more work on  publish edit consume integration test

* fix edit  publish edit consume integration test

* add 3 int tests

* Updating ComputeExamples.md

* fix signature and download

* fix compute flow integration test

* udapte handleComputeOrder helper

* update datatoken instance

* update datatoken global variable

* mint ocean tokens to consumer as well and added logs

* update compute exammples

* Updating ComputeExamples.md

* wip code examples readme

* update code examples readme

* Updating CodeExamples.md

* run all tests

* update dep in readme

* update readme

* code examples update metadata flags

* update dt instance in code examples md

* set metadata updates

* Updating CodeExamples.md

* update code examples readme structure

* Updating CodeExamples.md

* update readmes table links

* Updating CodeExamples.md

* Updating ComputeExamples.md

* clean-up

* Updating CodeExamples.md

* added missing unit tests for usdc fixed rate exchange tests

* more cleanup and jsdoc updates

* more  jsdoc updates

* donw with jsdoc updates

* handle provider errors

* add missing error handling file

* adds most of the provider errors

* update get compute env return type

* Release 3.0.0-next.0

* adding Typedoc to ethers branch

* update provider signature message

* fix lint

* Release 3.0.0-next.1

* fix lint

* adding Typedoc to ethers branch

* Updating CI to build and commit the documentation

* Updating documentation

* Updating script permissions

* fix todos add missing logic to send tx

* npm package cleanups

* Release 3.0.0-next.2

* update log messages for errors

* Release 3.0.0-next.3

* fix gasFee issue on sendTx

* Release 3.0.0-next.4

* add consume params typings (#1731)

* fix gas fee estimate

* remove comments

* add some delays before resolving datasets

* adds delay to Publish flow tests

* Release 3.0.0-next.5

---------

Co-authored-by: Bogdan Fazakas <bogdan.fazakas@gmail.com>
Co-authored-by: GitHub Actions Bot <>
Co-authored-by: Jamie Hewitt <jamie.hewitt15@gmail.com>
Co-authored-by: Jamie Hewitt <jamie@oceanprotocol.com>
2023-05-29 11:20:38 +03:00

16 KiB

@oceanprotocol/lib / Exports / Router

Class: Router

Provides an interface for FactoryRouter contract

Hierarchy

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new Router(address, signer, network?, config?, abi?)

Instantiate the smart contract.

Parameters

Name Type Description
address string The address of the contract.
signer Signer The signer object.
network? string | number Network id or name
config? Config The configuration object.
abi? AbiItem[] ABI array of the smart contract

Inherited from

SmartContractWithAddress.constructor

Defined in

contracts/SmartContractWithAddress.ts:17

Properties

abi

abi: AbiItem[]

Inherited from

SmartContractWithAddress.abi

Defined in

contracts/SmartContract.ts:14


address

address: string

Inherited from

SmartContractWithAddress.address

Defined in

contracts/SmartContractWithAddress.ts:6


config

config: Config

Inherited from

SmartContractWithAddress.config

Defined in

contracts/SmartContract.ts:13


contract

contract: Contract

Inherited from

SmartContractWithAddress.contract

Defined in

contracts/SmartContractWithAddress.ts:7


signer

signer: Signer

Inherited from

SmartContractWithAddress.signer

Defined in

contracts/SmartContract.ts:12

Methods

addApprovedToken

addApprovedToken<G>(address, tokenAddress, estimateGas?): Promise<ReceiptOrEstimate<G>>

Adds a token to the list of tokens with reduced fees

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
address string caller address
tokenAddress string token address to add
estimateGas? G if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

Defined in

contracts/Router.ts:82


addDispenserContract

addDispenserContract<G>(address, tokenAddress, estimateGas?): Promise<ReceiptOrEstimate<G>>

Adds an address to the list of dispensers

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
address string caller address
tokenAddress string contract address to add
estimateGas? G if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

Defined in

contracts/Router.ts:201


addFixedRateContract

addFixedRateContract<G>(address, tokenAddress, estimateGas?): Promise<ReceiptOrEstimate<G>>

Adds an address to the list of fixed rate contracts

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
address string caller address
tokenAddress string contract address to add
estimateGas? G if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

Defined in

contracts/Router.ts:141


amountToUnits

Protected amountToUnits(token, amount, tokenDecimals?): Promise<string>

Converts an amount of tokens to units

Parameters

Name Type Description
token string The token to convert
amount string The amount of tokens to convert
tokenDecimals? number The number of decimals of the token

Returns

Promise<string>

  • The converted amount in units

Inherited from

SmartContractWithAddress.amountToUnits

Defined in

contracts/SmartContract.ts:43


buyDatatokenBatch

buyDatatokenBatch<G>(operations, estimateGas?): Promise<ReceiptOrEstimate<G>>

  • Buys a batch of datatokens. one single call to buy multiple DT for multiple assets. require tokenIn approvals for router from user. (except for dispenser operations)

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
operations Operation[] The operations to execute.
estimateGas? G Whether to return only the estimate gas or not.

Returns

Promise<ReceiptOrEstimate<G>>

Transaction receipt

Defined in

contracts/Router.ts:22


getContract

Protected getContract(address, abi?): Contract

Returns a contract instance for the given address

Parameters

Name Type Description
address string The address of the contract
abi? AbiItem[] The ABI of the contract

Returns

Contract

  • The contract instance

Inherited from

SmartContractWithAddress.getContract

Defined in

contracts/SmartContract.ts:80


getCurrentOPCFee

getCurrentOPCFee(): Promise<number>

Get Current OPF Fee

Returns

Promise<number>

OPF fee

Defined in

contracts/Router.ts:262


getDefaultAbi

getDefaultAbi(): AbiItem[]

Returns

AbiItem[]

Overrides

SmartContractWithAddress.getDefaultAbi

Defined in

contracts/Router.ts:10


getFairGasPrice

Protected getFairGasPrice(): Promise<string>

Retruns the gas price

Returns

Promise<string>

  • The fair gas price

Inherited from

SmartContractWithAddress.getFairGasPrice

Defined in

contracts/SmartContract.ts:70


getNFTFactory

getNFTFactory(): Promise<string>

Get NFT Factory address

Returns

Promise<string>

NFT Factory address

Defined in

contracts/Router.ts:71


getOPCFee

getOPCFee(baseToken): Promise<number>

Get OPF Fee per token

Parameters

Name Type
baseToken string

Returns

Promise<number>

OPC fee for a specific baseToken

Defined in

contracts/Router.ts:255


getOwner

getOwner(): Promise<string>

Get Router Owner

Returns

Promise<string>

Router Owner address

Defined in

contracts/Router.ts:63


isApprovedToken

isApprovedToken(address): Promise<boolean>

Checks if a token is on approved tokens list, if true opfFee is lower in pools with that token/DT

Parameters

Name Type Description
address string The address of the token to check.

Returns

Promise<boolean>

true if is on the list.

Defined in

contracts/Router.ts:46


isFixedPrice

isFixedPrice(address): Promise<boolean>

Check if an address is a Fixed Rate contract.

Parameters

Name Type Description
address string The address of the fixed rate exchange to check.

Returns

Promise<boolean>

true if is a Fixed Rate contract

Defined in

contracts/Router.ts:55


removeApprovedToken

removeApprovedToken<G>(address, tokenAddress, estimateGas?): Promise<ReceiptOrEstimate<G>>

Removes a token if exists from the list of tokens with reduced fees

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
address string caller address
tokenAddress string token address to remove
estimateGas? G if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

Defined in

contracts/Router.ts:112


removeDispenserContract

removeDispenserContract<G>(address, tokenAddress, estimateGas?): Promise<ReceiptOrEstimate<G>>

Removes an address from the list of dispensers

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
address string caller address
tokenAddress string address Contract to be removed
estimateGas? G if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

Defined in

contracts/Router.ts:230


removeFixedRateContract

removeFixedRateContract<G>(address, tokenAddress, estimateGas?): Promise<ReceiptOrEstimate<G>>

Removes an address from the list of fixed rate contracts

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
address string caller address
tokenAddress string contract address to add
estimateGas? G if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

Defined in

contracts/Router.ts:171


unitsToAmount

Protected unitsToAmount(token, amount, tokenDecimals?): Promise<string>

Converts an amount of units to tokens

Parameters

Name Type Description
token string The token to convert
amount string The amount of units to convert
tokenDecimals? number The number of decimals in the token

Returns

Promise<string>

  • The converted amount in tokens

Inherited from

SmartContractWithAddress.unitsToAmount

Defined in

contracts/SmartContract.ts:58


updateOPCFee

updateOPCFee<G>(address, newSwapOceanFee, newSwapNonOceanFee, newConsumeFee, newProviderFee, estimateGas?): Promise<ReceiptOrEstimate<G>>

Updates OP Community Fees

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
address string caller address
newSwapOceanFee number Amount charged for swapping with ocean approved tokens
newSwapNonOceanFee number Amount charged for swapping with non ocean approved tokens
newConsumeFee number Amount charged from consumeFees
newProviderFee number Amount charged for providerFees
estimateGas? G if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

Defined in

contracts/Router.ts:276