1
0
mirror of https://github.com/oceanprotocol/ocean.js.git synced 2024-11-26 20:39:05 +01:00
ocean.js/docs/classes/Dispenser.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

12 KiB

@oceanprotocol/lib / Exports / Dispenser

Class: Dispenser

Hierarchy

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new Dispenser(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

activate

activate<G>(dtAddress, maxTokens, maxBalance, estimateGas?): Promise<ReceiptOrEstimate<G>>

Activates a dispener.

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
dtAddress string refers to datatoken address.
maxTokens string max amount of tokens to dispense
maxBalance string max balance of user. If user balance is >, then dispense will be rejected
estimateGas? G if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

TransactionReceipt

Defined in

contracts/Dispenser.ts:86


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


create

create<G>(dtAddress, address, maxTokens, maxBalance, allowedSwapper, estimateGas?): Promise<ReceiptOrEstimate<G>>

Creates a new Dispenser

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
dtAddress string Datatoken address
address string Owner address
maxTokens string max tokens to dispense
maxBalance string max balance of requester
allowedSwapper string only account that can ask tokens. set address(0) if not required
estimateGas? G if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

transactionId

Defined in

contracts/Dispenser.ts:45


deactivate

deactivate<G>(dtAddress, estimateGas?): Promise<ReceiptOrEstimate<G>>

Deactivate an existing dispenser.

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
dtAddress string refers to datatoken address.
estimateGas? G if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

TransactionReceipt

Defined in

contracts/Dispenser.ts:118


dispense

dispense<G>(dtAddress, amount?, destination, estimateGas?): Promise<ReceiptOrEstimate<G>>

Dispense datatokens to caller. The dispenser must be active, hold enough datatokens (or be able to mint more) and respect maxTokens/maxBalance requirements

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Default value Description
dtAddress string undefined Datatoken address.
amount string '1' Amount of datatokens required.
destination string undefined address of tokens receiver
estimateGas? G undefined if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

Defined in

contracts/Dispenser.ts:175


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


getDefaultAbi

getDefaultAbi(): AbiItem[]

Returns

AbiItem[]

Overrides

SmartContractWithAddress.getDefaultAbi

Defined in

contracts/Dispenser.ts:9


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


isDispensable

isDispensable(dtAddress, datatoken, address, amount?): Promise<Boolean>

Check if tokens can be dispensed

Parameters

Name Type Default value Description
dtAddress string undefined Datatoken address
datatoken Datatoken undefined -
address string undefined User address that will receive datatokens
amount string '1' amount of datatokens required.

Returns

Promise<Boolean>

Defined in

contracts/Dispenser.ts:231


ownerWithdraw

ownerWithdraw<G>(dtAddress, estimateGas?): Promise<ReceiptOrEstimate<G>>

Withdraw all tokens from the dispenser

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
dtAddress string Datatoken address.
estimateGas? G if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

Defined in

contracts/Dispenser.ts:206


setAllowedSwapper

setAllowedSwapper<G>(dtAddress, newAllowedSwapper, estimateGas?): Promise<ReceiptOrEstimate<G>>

Sets a new allowed swapper.

Type parameters

Name Type
G extends boolean = false

Parameters

Name Type Description
dtAddress string Datatoken address.
newAllowedSwapper string The address of the new allowed swapper.
estimateGas? G if True, return gas estimate

Returns

Promise<ReceiptOrEstimate<G>>

Defined in

contracts/Dispenser.ts:143


status

status(dtAdress): Promise<DispenserToken>

Get information about a datatoken dispenser

Parameters

Name Type
dtAdress string

Returns

Promise<DispenserToken>

Defined in

contracts/Dispenser.ts:18


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