mirror of
https://github.com/oceanprotocol/ocean.js.git
synced 2024-11-26 20:39:05 +01:00
* 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>
1069 lines
26 KiB
Markdown
1069 lines
26 KiB
Markdown
[@oceanprotocol/lib](../README.md) / [Exports](../modules.md) / FixedRateExchange
|
|
|
|
# Class: FixedRateExchange
|
|
|
|
## Hierarchy
|
|
|
|
- [`SmartContractWithAddress`](SmartContractWithAddress.md)
|
|
|
|
↳ **`FixedRateExchange`**
|
|
|
|
## Table of contents
|
|
|
|
### Constructors
|
|
|
|
- [constructor](FixedRateExchange.md#constructor)
|
|
|
|
### Properties
|
|
|
|
- [abi](FixedRateExchange.md#abi)
|
|
- [address](FixedRateExchange.md#address)
|
|
- [config](FixedRateExchange.md#config)
|
|
- [contract](FixedRateExchange.md#contract)
|
|
- [signer](FixedRateExchange.md#signer)
|
|
|
|
### Methods
|
|
|
|
- [activate](FixedRateExchange.md#activate)
|
|
- [activateMint](FixedRateExchange.md#activatemint)
|
|
- [amountToUnits](FixedRateExchange.md#amounttounits)
|
|
- [buyDatatokens](FixedRateExchange.md#buydatatokens)
|
|
- [calcBaseInGivenDatatokensOut](FixedRateExchange.md#calcbaseingivendatatokensout)
|
|
- [collectBasetokens](FixedRateExchange.md#collectbasetokens)
|
|
- [collectDatatokens](FixedRateExchange.md#collectdatatokens)
|
|
- [collectMarketFee](FixedRateExchange.md#collectmarketfee)
|
|
- [collectOceanFee](FixedRateExchange.md#collectoceanfee)
|
|
- [deactivate](FixedRateExchange.md#deactivate)
|
|
- [deactivateMint](FixedRateExchange.md#deactivatemint)
|
|
- [generateExchangeId](FixedRateExchange.md#generateexchangeid)
|
|
- [getAllowedSwapper](FixedRateExchange.md#getallowedswapper)
|
|
- [getAmountBasetokensOut](FixedRateExchange.md#getamountbasetokensout)
|
|
- [getBasetokenSupply](FixedRateExchange.md#getbasetokensupply)
|
|
- [getContract](FixedRateExchange.md#getcontract)
|
|
- [getDatatokenSupply](FixedRateExchange.md#getdatatokensupply)
|
|
- [getDefaultAbi](FixedRateExchange.md#getdefaultabi)
|
|
- [getExchange](FixedRateExchange.md#getexchange)
|
|
- [getExchangeOwner](FixedRateExchange.md#getexchangeowner)
|
|
- [getExchanges](FixedRateExchange.md#getexchanges)
|
|
- [getFairGasPrice](FixedRateExchange.md#getfairgasprice)
|
|
- [getFeesInfo](FixedRateExchange.md#getfeesinfo)
|
|
- [getNumberOfExchanges](FixedRateExchange.md#getnumberofexchanges)
|
|
- [getOPCCollector](FixedRateExchange.md#getopccollector)
|
|
- [getRate](FixedRateExchange.md#getrate)
|
|
- [getRouter](FixedRateExchange.md#getrouter)
|
|
- [isActive](FixedRateExchange.md#isactive)
|
|
- [sellDatatokens](FixedRateExchange.md#selldatatokens)
|
|
- [setAllowedSwapper](FixedRateExchange.md#setallowedswapper)
|
|
- [setRate](FixedRateExchange.md#setrate)
|
|
- [unitsToAmount](FixedRateExchange.md#unitstoamount)
|
|
- [updateMarketFee](FixedRateExchange.md#updatemarketfee)
|
|
- [updateMarketFeeCollector](FixedRateExchange.md#updatemarketfeecollector)
|
|
|
|
## Constructors
|
|
|
|
### constructor
|
|
|
|
• **new FixedRateExchange**(`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`](Config.md) | The configuration object. |
|
|
| `abi?` | [`AbiItem`](../interfaces/AbiItem.md)[] | ABI array of the smart contract |
|
|
|
|
#### Inherited from
|
|
|
|
[SmartContractWithAddress](SmartContractWithAddress.md).[constructor](SmartContractWithAddress.md#constructor)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/SmartContractWithAddress.ts:17](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/SmartContractWithAddress.ts#L17)
|
|
|
|
## Properties
|
|
|
|
### abi
|
|
|
|
• **abi**: [`AbiItem`](../interfaces/AbiItem.md)[]
|
|
|
|
#### Inherited from
|
|
|
|
[SmartContractWithAddress](SmartContractWithAddress.md).[abi](SmartContractWithAddress.md#abi)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/SmartContract.ts:14](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/SmartContract.ts#L14)
|
|
|
|
___
|
|
|
|
### address
|
|
|
|
• **address**: `string`
|
|
|
|
#### Inherited from
|
|
|
|
[SmartContractWithAddress](SmartContractWithAddress.md).[address](SmartContractWithAddress.md#address)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/SmartContractWithAddress.ts:6](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/SmartContractWithAddress.ts#L6)
|
|
|
|
___
|
|
|
|
### config
|
|
|
|
• **config**: [`Config`](Config.md)
|
|
|
|
#### Inherited from
|
|
|
|
[SmartContractWithAddress](SmartContractWithAddress.md).[config](SmartContractWithAddress.md#config)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/SmartContract.ts:13](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/SmartContract.ts#L13)
|
|
|
|
___
|
|
|
|
### contract
|
|
|
|
• **contract**: `Contract`
|
|
|
|
#### Inherited from
|
|
|
|
[SmartContractWithAddress](SmartContractWithAddress.md).[contract](SmartContractWithAddress.md#contract)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/SmartContractWithAddress.ts:7](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/SmartContractWithAddress.ts#L7)
|
|
|
|
___
|
|
|
|
### signer
|
|
|
|
• **signer**: `Signer`
|
|
|
|
#### Inherited from
|
|
|
|
[SmartContractWithAddress](SmartContractWithAddress.md).[signer](SmartContractWithAddress.md#signer)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/SmartContract.ts:12](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/SmartContract.ts#L12)
|
|
|
|
## Methods
|
|
|
|
### activate
|
|
|
|
▸ **activate**<`G`\>(`exchangeId`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Activate an exchange
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | ExchangeId |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:210](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L210)
|
|
|
|
___
|
|
|
|
### activateMint
|
|
|
|
▸ **activateMint**<`G`\>(`exchangeId`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Activate minting option for fixed rate contract
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchang eId |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:462](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L462)
|
|
|
|
___
|
|
|
|
### 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](SmartContractWithAddress.md).[amountToUnits](SmartContractWithAddress.md#amounttounits)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/SmartContract.ts:43](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/SmartContract.ts#L43)
|
|
|
|
___
|
|
|
|
### buyDatatokens
|
|
|
|
▸ **buyDatatokens**<`G`\>(`exchangeId`, `datatokenAmount`, `maxBaseTokenAmount`, `consumeMarketAddress?`, `consumeMarketFee?`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Atomic swap
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Default value | Description |
|
|
| :------ | :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | `undefined` | ExchangeId |
|
|
| `datatokenAmount` | `string` | `undefined` | Amount of datatokens |
|
|
| `maxBaseTokenAmount` | `string` | `undefined` | max amount of baseToken we want to pay for datatokenAmount |
|
|
| `consumeMarketAddress` | `string` | `ZERO_ADDRESS` | consumeMarketAddress |
|
|
| `consumeMarketFee` | `string` | `'0'` | consumeMarketFee in fraction |
|
|
| `estimateGas?` | `G` | `undefined` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:38](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L38)
|
|
|
|
___
|
|
|
|
### calcBaseInGivenDatatokensOut
|
|
|
|
▸ **calcBaseInGivenDatatokensOut**(`exchangeId`, `datatokenAmount`, `consumeMarketFee?`): `Promise`<[`PriceAndFees`](../interfaces/PriceAndFees.md)\>
|
|
|
|
calcBaseInGivenDatatokensOut - Calculates how many base tokens are needed to get specified amount of datatokens
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Default value | Description |
|
|
| :------ | :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | `undefined` | Exchange Id |
|
|
| `datatokenAmount` | `string` | `undefined` | Amount of datatokens user wants to buy |
|
|
| `consumeMarketFee` | `string` | `'0'` | consumeMarketFee in fraction |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`PriceAndFees`](../interfaces/PriceAndFees.md)\>
|
|
|
|
how many base tokens are needed and fees
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:305](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L305)
|
|
|
|
___
|
|
|
|
### collectBasetokens
|
|
|
|
▸ **collectBasetokens**<`G`\>(`exchangeId`, `amount`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Collect BaseTokens in the contract (anyone can call this, funds are sent to Datatoken.paymentCollector)
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange Id |
|
|
| `amount` | `string` | amount to be collected |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:519](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L519)
|
|
|
|
___
|
|
|
|
### collectDatatokens
|
|
|
|
▸ **collectDatatokens**<`G`\>(`exchangeId`, `amount`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Collect datatokens in the contract (anyone can call this, funds are sent to Datatoken.paymentCollector)
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange Id |
|
|
| `amount` | `string` | amount to be collected |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:555](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L555)
|
|
|
|
___
|
|
|
|
### collectMarketFee
|
|
|
|
▸ **collectMarketFee**<`G`\>(`exchangeId`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Collect market fee and send it to marketFeeCollector (anyone can call it)
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange Id |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:590](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L590)
|
|
|
|
___
|
|
|
|
### collectOceanFee
|
|
|
|
▸ **collectOceanFee**<`G`\>(`exchangeId`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Collect ocean fee and send it to OPF collector (anyone can call it)
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange Id |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:617](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L617)
|
|
|
|
___
|
|
|
|
### deactivate
|
|
|
|
▸ **deactivate**<`G`\>(`exchangeId`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Deactivate an exchange
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | ExchangeId |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:236](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L236)
|
|
|
|
___
|
|
|
|
### deactivateMint
|
|
|
|
▸ **deactivateMint**<`G`\>(`exchangeId`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Deactivate minting for fixed rate
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | ExchangeId |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:490](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L490)
|
|
|
|
___
|
|
|
|
### generateExchangeId
|
|
|
|
▸ **generateExchangeId**(`baseToken`, `datatoken`): `Promise`<`string`\>
|
|
|
|
Creates unique exchange identifier.
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `baseToken` | `string` | baseToken contract address |
|
|
| `datatoken` | `string` | Datatoken contract address |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`string`\>
|
|
|
|
exchangeId
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:23](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L23)
|
|
|
|
___
|
|
|
|
### getAllowedSwapper
|
|
|
|
▸ **getAllowedSwapper**(`exchangeId`): `Promise`<`string`\>
|
|
|
|
Get Allower Swapper (if set this is the only account which can use this exchange, else is set at address(0))
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange Id |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`string`\>
|
|
|
|
address of allowed swapper
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:294](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L294)
|
|
|
|
___
|
|
|
|
### getAmountBasetokensOut
|
|
|
|
▸ **getAmountBasetokensOut**(`exchangeId`, `datatokenAmount`, `consumeMarketFee?`): `Promise`<`string`\>
|
|
|
|
Returns amount in baseToken that user will receive for datatokenAmount sold
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Default value | Description |
|
|
| :------ | :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | `undefined` | Exchange Id |
|
|
| `datatokenAmount` | `string` | `undefined` | Amount of datatokens |
|
|
| `consumeMarketFee` | `string` | `'0'` | consumeMarketFee in fraction |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`string`\>
|
|
|
|
Amount of baseTokens user will receive
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:352](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L352)
|
|
|
|
___
|
|
|
|
### getBasetokenSupply
|
|
|
|
▸ **getBasetokenSupply**(`exchangeId`): `Promise`<`string`\>
|
|
|
|
Returns basetoken supply in the exchange
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange Id |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`string`\>
|
|
|
|
dt supply formatted
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:283](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L283)
|
|
|
|
___
|
|
|
|
### 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`](../interfaces/AbiItem.md)[] | The ABI of the contract |
|
|
|
|
#### Returns
|
|
|
|
`Contract`
|
|
|
|
- The contract instance
|
|
|
|
#### Inherited from
|
|
|
|
[SmartContractWithAddress](SmartContractWithAddress.md).[getContract](SmartContractWithAddress.md#getcontract)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/SmartContract.ts:80](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/SmartContract.ts#L80)
|
|
|
|
___
|
|
|
|
### getDatatokenSupply
|
|
|
|
▸ **getDatatokenSupply**(`exchangeId`): `Promise`<`string`\>
|
|
|
|
Get Datatoken Supply in the exchange
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange Id |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`string`\>
|
|
|
|
dt supply formatted
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:272](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L272)
|
|
|
|
___
|
|
|
|
### getDefaultAbi
|
|
|
|
▸ **getDefaultAbi**(): [`AbiItem`](../interfaces/AbiItem.md)[]
|
|
|
|
#### Returns
|
|
|
|
[`AbiItem`](../interfaces/AbiItem.md)[]
|
|
|
|
#### Overrides
|
|
|
|
[SmartContractWithAddress](SmartContractWithAddress.md).[getDefaultAbi](SmartContractWithAddress.md#getdefaultabi)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:13](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L13)
|
|
|
|
___
|
|
|
|
### getExchange
|
|
|
|
▸ **getExchange**(`exchangeId`): `Promise`<[`FixedPriceExchange`](../interfaces/FixedPriceExchange.md)\>
|
|
|
|
Get exchange details
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange Id |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`FixedPriceExchange`](../interfaces/FixedPriceExchange.md)\>
|
|
|
|
Exchange details
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:372](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L372)
|
|
|
|
___
|
|
|
|
### getExchangeOwner
|
|
|
|
▸ **getExchangeOwner**(`exchangeId`): `Promise`<`string`\>
|
|
|
|
Get Exchange Owner given an exchangeId
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange Id |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`string`\>
|
|
|
|
return exchange owner
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:661](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L661)
|
|
|
|
___
|
|
|
|
### getExchanges
|
|
|
|
▸ **getExchanges**(): `Promise`<`string`[]\>
|
|
|
|
Returns all exchanges
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`string`[]\>
|
|
|
|
Exchanges list
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:442](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L442)
|
|
|
|
___
|
|
|
|
### getFairGasPrice
|
|
|
|
▸ `Protected` **getFairGasPrice**(): `Promise`<`string`\>
|
|
|
|
Retruns the gas price
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`string`\>
|
|
|
|
- The fair gas price
|
|
|
|
#### Inherited from
|
|
|
|
[SmartContractWithAddress](SmartContractWithAddress.md).[getFairGasPrice](SmartContractWithAddress.md#getfairgasprice)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/SmartContract.ts:70](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/SmartContract.ts#L70)
|
|
|
|
___
|
|
|
|
### getFeesInfo
|
|
|
|
▸ **getFeesInfo**(`exchangeId`): `Promise`<[`FeesInfo`](../interfaces/FeesInfo.md)\>
|
|
|
|
Get fee details for an exchange
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange Id |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`FeesInfo`](../interfaces/FeesInfo.md)\>
|
|
|
|
Exchange details
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:414](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L414)
|
|
|
|
___
|
|
|
|
### getNumberOfExchanges
|
|
|
|
▸ **getNumberOfExchanges**(): `Promise`<`number`\>
|
|
|
|
Gets total number of exchanges
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`number`\>
|
|
|
|
no of available exchanges
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:140](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L140)
|
|
|
|
___
|
|
|
|
### getOPCCollector
|
|
|
|
▸ **getOPCCollector**(): `Promise`<`string`\>
|
|
|
|
Get OPF Collector of fixed rate contract
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`string`\>
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:642](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L642)
|
|
|
|
___
|
|
|
|
### getRate
|
|
|
|
▸ **getRate**(`exchangeId`): `Promise`<`string`\>
|
|
|
|
Get Exchange Rate
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange ID |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`string`\>
|
|
|
|
Rate (converted from wei)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:262](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L262)
|
|
|
|
___
|
|
|
|
### getRouter
|
|
|
|
▸ **getRouter**(): `Promise`<`string`\>
|
|
|
|
Get Router address set in fixed rate contract
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`string`\>
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:651](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L651)
|
|
|
|
___
|
|
|
|
### isActive
|
|
|
|
▸ **isActive**(`exchangeId`): `Promise`<`boolean`\>
|
|
|
|
Check if an exchange is active
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | ExchangeId |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`boolean`\>
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:451](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L451)
|
|
|
|
___
|
|
|
|
### sellDatatokens
|
|
|
|
▸ **sellDatatokens**<`G`\>(`exchangeId`, `datatokenAmount`, `minBaseTokenAmount`, `consumeMarketAddress?`, `consumeMarketFee?`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Sell datatokenAmount while expecting at least minBaseTokenAmount
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Default value | Description |
|
|
| :------ | :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | `undefined` | ExchangeId |
|
|
| `datatokenAmount` | `string` | `undefined` | Amount of datatokens |
|
|
| `minBaseTokenAmount` | `string` | `undefined` | min amount of baseToken we want to receive back |
|
|
| `consumeMarketAddress` | `string` | `ZERO_ADDRESS` | consumeMarketAddress |
|
|
| `consumeMarketFee` | `string` | `'0'` | consumeMarketFee in fraction |
|
|
| `estimateGas?` | `G` | `undefined` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:93](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L93)
|
|
|
|
___
|
|
|
|
### setAllowedSwapper
|
|
|
|
▸ **setAllowedSwapper**<`G`\>(`exchangeId`, `newAllowedSwapper`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Sets a new allowedSwapper
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange ID |
|
|
| `newAllowedSwapper` | `string` | The address of the new allowed swapper (set address zero if we want to remove allowed swapper) |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:182](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L182)
|
|
|
|
___
|
|
|
|
### setRate
|
|
|
|
▸ **setRate**<`G`\>(`exchangeId`, `newRate`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Set new rate
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange ID |
|
|
| `newRate` | `string` | New rate |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:152](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L152)
|
|
|
|
___
|
|
|
|
### 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](SmartContractWithAddress.md).[unitsToAmount](SmartContractWithAddress.md#unitstoamount)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/SmartContract.ts:58](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/SmartContract.ts#L58)
|
|
|
|
___
|
|
|
|
### updateMarketFee
|
|
|
|
▸ **updateMarketFee**<`G`\>(`exchangeId`, `newMarketFee`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Set new market fee, only market fee collector can update it
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange Id |
|
|
| `newMarketFee` | `string` | New market fee |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:673](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L673)
|
|
|
|
___
|
|
|
|
### updateMarketFeeCollector
|
|
|
|
▸ **updateMarketFeeCollector**<`G`\>(`exchangeId`, `newMarketFeeCollector`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Set new market fee collector, only market fee collector can update it
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `exchangeId` | `string` | Exchange Id |
|
|
| `newMarketFeeCollector` | `string` | New market fee collector |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/FixedRateExchange.ts:703](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/FixedRateExchange.ts#L703)
|