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>
862 lines
22 KiB
Markdown
862 lines
22 KiB
Markdown
[@oceanprotocol/lib](../README.md) / [Exports](../modules.md) / NftFactory
|
|
|
|
# Class: NftFactory
|
|
|
|
Provides an interface for NFT Factory contract
|
|
|
|
## Hierarchy
|
|
|
|
- [`SmartContractWithAddress`](SmartContractWithAddress.md)
|
|
|
|
↳ **`NftFactory`**
|
|
|
|
## Table of contents
|
|
|
|
### Constructors
|
|
|
|
- [constructor](NftFactory.md#constructor)
|
|
|
|
### Properties
|
|
|
|
- [abi](NftFactory.md#abi)
|
|
- [address](NftFactory.md#address)
|
|
- [config](NftFactory.md#config)
|
|
- [contract](NftFactory.md#contract)
|
|
- [signer](NftFactory.md#signer)
|
|
|
|
### Methods
|
|
|
|
- [addNFTTemplate](NftFactory.md#addnfttemplate)
|
|
- [addTokenTemplate](NftFactory.md#addtokentemplate)
|
|
- [amountToUnits](NftFactory.md#amounttounits)
|
|
- [checkDatatoken](NftFactory.md#checkdatatoken)
|
|
- [checkNFT](NftFactory.md#checknft)
|
|
- [createNFT](NftFactory.md#createnft)
|
|
- [createNftWithDatatoken](NftFactory.md#createnftwithdatatoken)
|
|
- [createNftWithDatatokenWithDispenser](NftFactory.md#createnftwithdatatokenwithdispenser)
|
|
- [createNftWithDatatokenWithFixedRate](NftFactory.md#createnftwithdatatokenwithfixedrate)
|
|
- [disableNFTTemplate](NftFactory.md#disablenfttemplate)
|
|
- [disableTokenTemplate](NftFactory.md#disabletokentemplate)
|
|
- [getContract](NftFactory.md#getcontract)
|
|
- [getCurrentNFTCount](NftFactory.md#getcurrentnftcount)
|
|
- [getCurrentNFTTemplateCount](NftFactory.md#getcurrentnfttemplatecount)
|
|
- [getCurrentTokenCount](NftFactory.md#getcurrenttokencount)
|
|
- [getCurrentTokenTemplateCount](NftFactory.md#getcurrenttokentemplatecount)
|
|
- [getDefaultAbi](NftFactory.md#getdefaultabi)
|
|
- [getErcCreationParams](NftFactory.md#geterccreationparams)
|
|
- [getFairGasPrice](NftFactory.md#getfairgasprice)
|
|
- [getFreCreationParams](NftFactory.md#getfrecreationparams)
|
|
- [getNFTTemplate](NftFactory.md#getnfttemplate)
|
|
- [getOwner](NftFactory.md#getowner)
|
|
- [getTokenTemplate](NftFactory.md#gettokentemplate)
|
|
- [reactivateNFTTemplate](NftFactory.md#reactivatenfttemplate)
|
|
- [reactivateTokenTemplate](NftFactory.md#reactivatetokentemplate)
|
|
- [startMultipleTokenOrder](NftFactory.md#startmultipletokenorder)
|
|
- [unitsToAmount](NftFactory.md#unitstoamount)
|
|
|
|
## Constructors
|
|
|
|
### constructor
|
|
|
|
• **new NftFactory**(`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
|
|
|
|
### addNFTTemplate
|
|
|
|
▸ **addNFTTemplate**<`G`\>(`address`, `templateAddress`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Add a new NFT token template - only factory Owner
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `address` | `string` | caller address |
|
|
| `templateAddress` | `string` | template address to add |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:181](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L181)
|
|
|
|
___
|
|
|
|
### addTokenTemplate
|
|
|
|
▸ **addTokenTemplate**<`G`\>(`address`, `templateAddress`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Add a new NFT token template - only factory Owner
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `address` | `string` | caller address |
|
|
| `templateAddress` | `string` | template address to add |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:288](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L288)
|
|
|
|
___
|
|
|
|
### 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)
|
|
|
|
___
|
|
|
|
### checkDatatoken
|
|
|
|
▸ **checkDatatoken**(`datatoken`): `Promise`<`Boolean`\>
|
|
|
|
Check if Datatoken is deployed from the factory
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `datatoken` | `string` | Datatoken address to check |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`Boolean`\>
|
|
|
|
return true if deployed from this factory
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:159](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L159)
|
|
|
|
___
|
|
|
|
### checkNFT
|
|
|
|
▸ **checkNFT**(`nftAddress`): `Promise`<`String`\>
|
|
|
|
Check if NFT is deployed from the factory
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `nftAddress` | `string` | nftAddress address to check |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`String`\>
|
|
|
|
return address(0) if it's not, or the nftAddress if true
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:169](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L169)
|
|
|
|
___
|
|
|
|
### createNFT
|
|
|
|
▸ **createNFT**<`G`\>(`nftData`, `estimateGas?`): `Promise`<`G` extends ``false`` ? `string` : `BigNumber`\>
|
|
|
|
Create new data NFT
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `nftData` | [`NftCreateData`](../interfaces/NftCreateData.md) | The data needed to create an NFT. |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`G` extends ``false`` ? `string` : `BigNumber`\>
|
|
|
|
The transaction hash or the gas estimate.
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:30](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L30)
|
|
|
|
___
|
|
|
|
### createNftWithDatatoken
|
|
|
|
▸ **createNftWithDatatoken**<`G`\>(`nftCreateData`, `dtParams`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Creates a new NFT, then a datatoken,all in one call
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `nftCreateData` | [`NftCreateData`](../interfaces/NftCreateData.md) | The data required to create an NFT. |
|
|
| `dtParams` | [`DatatokenCreateParams`](../interfaces/DatatokenCreateParams.md) | The parameters required to create a datatoken. |
|
|
| `estimateGas?` | `G` | Whether to return only estimate gas or not. |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:434](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L434)
|
|
|
|
___
|
|
|
|
### createNftWithDatatokenWithDispenser
|
|
|
|
▸ **createNftWithDatatokenWithDispenser**<`G`\>(`nftCreateData`, `dtParams`, `dispenserParams`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Creates an NFT with a datatoken with a dispenser in one call.
|
|
Be aware if Fixed Rate creation fails, you are still going to pay a lot of gas
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `nftCreateData` | [`NftCreateData`](../interfaces/NftCreateData.md) | The data required to create an NFT. |
|
|
| `dtParams` | [`DatatokenCreateParams`](../interfaces/DatatokenCreateParams.md) | The parameters required to create a datatoken. |
|
|
| `dispenserParams` | [`DispenserCreationParams`](../interfaces/DispenserCreationParams.md) | The parameters required to create a dispenser contract. |
|
|
| `estimateGas?` | `G` | Whether to estimate gas or not. |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:505](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L505)
|
|
|
|
___
|
|
|
|
### createNftWithDatatokenWithFixedRate
|
|
|
|
▸ **createNftWithDatatokenWithFixedRate**<`G`\>(`nftCreateData`, `dtParams`, `freParams`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Creates an NFT with a datatoken with a fixed rate all in one call.
|
|
be aware if Fixed Rate creation fails, you are still going to pay a lot of gas
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `nftCreateData` | [`NftCreateData`](../interfaces/NftCreateData.md) | The data required to create an NFT. |
|
|
| `dtParams` | [`DatatokenCreateParams`](../interfaces/DatatokenCreateParams.md) | The parameters required to create a datatoken. |
|
|
| `freParams` | [`FreCreationParams`](../interfaces/FreCreationParams.md) | The parameters required to create a fixed-rate exchange contract. |
|
|
| `estimateGas?` | `G` | Whether to return only estimate gas or not. |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:467](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L467)
|
|
|
|
___
|
|
|
|
### disableNFTTemplate
|
|
|
|
▸ **disableNFTTemplate**<`G`\>(`address`, `templateIndex`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Disable token template - only factory Owner
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `address` | `string` | |
|
|
| `templateIndex` | `number` | index of the template we want to disable |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
current token template count
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:213](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L213)
|
|
|
|
___
|
|
|
|
### disableTokenTemplate
|
|
|
|
▸ **disableTokenTemplate**<`G`\>(`address`, `templateIndex`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Disable token template - only factory Owner
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `address` | `string` | caller address |
|
|
| `templateIndex` | `number` | index of the template we want to disable |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
current token template count
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:321](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L321)
|
|
|
|
___
|
|
|
|
### 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)
|
|
|
|
___
|
|
|
|
### getCurrentNFTCount
|
|
|
|
▸ **getCurrentNFTCount**(): `Promise`<`number`\>
|
|
|
|
Get Current NFT Count (NFT created)
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`number`\>
|
|
|
|
Number of NFT created from this factory
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:86](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L86)
|
|
|
|
___
|
|
|
|
### getCurrentNFTTemplateCount
|
|
|
|
▸ **getCurrentNFTTemplateCount**(): `Promise`<`number`\>
|
|
|
|
Get Current NFT Template Count
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`number`\>
|
|
|
|
Number of NFT Template added to this factory
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:113](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L113)
|
|
|
|
___
|
|
|
|
### getCurrentTokenCount
|
|
|
|
▸ **getCurrentTokenCount**(): `Promise`<`number`\>
|
|
|
|
Get Current Datatoken Count
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`number`\>
|
|
|
|
Number of DTs created from this factory
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:95](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L95)
|
|
|
|
___
|
|
|
|
### getCurrentTokenTemplateCount
|
|
|
|
▸ **getCurrentTokenTemplateCount**(): `Promise`<`number`\>
|
|
|
|
Get Current Template Datatoken (ERC20) Count
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`number`\>
|
|
|
|
Number of Datatoken Template added to this factory
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:122](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L122)
|
|
|
|
___
|
|
|
|
### getDefaultAbi
|
|
|
|
▸ **getDefaultAbi**(): [`AbiItem`](../interfaces/AbiItem.md)[]
|
|
|
|
#### Returns
|
|
|
|
[`AbiItem`](../interfaces/AbiItem.md)[]
|
|
|
|
#### Overrides
|
|
|
|
[SmartContractWithAddress](SmartContractWithAddress.md).[getDefaultAbi](SmartContractWithAddress.md#getdefaultabi)
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:20](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L20)
|
|
|
|
___
|
|
|
|
### getErcCreationParams
|
|
|
|
▸ `Private` **getErcCreationParams**(`dtParams`): `Promise`<`any`\>
|
|
|
|
Gets the parameters required to create an ERC20 token.
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `dtParams` | [`DatatokenCreateParams`](../interfaces/DatatokenCreateParams.md) | The parameters required to create a datatoken. |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`any`\>
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:550](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L550)
|
|
|
|
___
|
|
|
|
### 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)
|
|
|
|
___
|
|
|
|
### getFreCreationParams
|
|
|
|
▸ `Private` **getFreCreationParams**(`freParams`): `Promise`<`any`\>
|
|
|
|
Gets the parameters required to create a fixed-rate exchange contract.
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `freParams` | [`FreCreationParams`](../interfaces/FreCreationParams.md) | The parameters required to create a fixed-rate exchange contract. |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`any`\>
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:578](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L578)
|
|
|
|
___
|
|
|
|
### getNFTTemplate
|
|
|
|
▸ **getNFTTemplate**(`index`): `Promise`<[`Template`](../interfaces/Template.md)\>
|
|
|
|
Get NFT Template
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `index` | `number` | Template index |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`Template`](../interfaces/Template.md)\>
|
|
|
|
Number of Template added to this factory
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:132](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L132)
|
|
|
|
___
|
|
|
|
### getOwner
|
|
|
|
▸ **getOwner**(): `Promise`<`string`\>
|
|
|
|
Get Factory Owner
|
|
|
|
#### Returns
|
|
|
|
`Promise`<`string`\>
|
|
|
|
Factory Owner address
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:104](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L104)
|
|
|
|
___
|
|
|
|
### getTokenTemplate
|
|
|
|
▸ **getTokenTemplate**(`index`): `Promise`<[`Template`](../interfaces/Template.md)\>
|
|
|
|
Get Datatoken (ERC20) Template
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `index` | `number` | Template index |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`Template`](../interfaces/Template.md)\>
|
|
|
|
DT Template info
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:149](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L149)
|
|
|
|
___
|
|
|
|
### reactivateNFTTemplate
|
|
|
|
▸ **reactivateNFTTemplate**<`G`\>(`address`, `templateIndex`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Reactivate a previously disabled token template - only factory Owner
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `address` | `string` | |
|
|
| `templateIndex` | `number` | index of the template we want to reactivate |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
current token template count
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:249](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L249)
|
|
|
|
___
|
|
|
|
### reactivateTokenTemplate
|
|
|
|
▸ **reactivateTokenTemplate**<`G`\>(`address`, `templateIndex`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Reactivate a previously disabled token template - only factory Owner
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `address` | `string` | caller address |
|
|
| `templateIndex` | `number` | index of the template we want to reactivate |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
current token template count
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:360](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L360)
|
|
|
|
___
|
|
|
|
### startMultipleTokenOrder
|
|
|
|
▸ **startMultipleTokenOrder**<`G`\>(`orders`, `estimateGas?`): `Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
Used as a proxy to order multiple services
|
|
Users can have inifinite approvals for fees for factory instead of having one approval/ Datatoken contract
|
|
Requires previous approval of all :
|
|
- consumeFeeTokens
|
|
- publishMarketFeeTokens
|
|
- ERC20 Datatokens
|
|
|
|
#### Type parameters
|
|
|
|
| Name | Type |
|
|
| :------ | :------ |
|
|
| `G` | extends `boolean` = ``false`` |
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :------ | :------ | :------ |
|
|
| `orders` | [`TokenOrder`](../interfaces/TokenOrder.md)[] | array of of orders |
|
|
| `estimateGas?` | `G` | if True, return gas estimate |
|
|
|
|
#### Returns
|
|
|
|
`Promise`<[`ReceiptOrEstimate`](../modules.md#receiptorestimate)<`G`\>\>
|
|
|
|
transaction receipt
|
|
|
|
#### Defined in
|
|
|
|
[contracts/NFTFactory.ts:404](https://github.com/oceanprotocol/ocean.js/blob/c99bc5c6/src/contracts/NFTFactory.ts#L404)
|
|
|
|
___
|
|
|
|
### 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)
|