mirror of
https://github.com/oceanprotocol/market.git
synced 2024-12-02 05:57:29 +01:00
Check provider fees validity (#1849)
* fix lint * add dynamic provider fees * fixes * cleanup and more fixes * bump oceanlib to 2.6.0 * Avoiding getInitialPaymentCollector failure (#1816) * early return is no web3 or ddo * Creating test for MetaFull * adding test: src/components/Asset/AssetContent/MetaSecondary.test.tsx * Adding test for bookmarks * Adding test for displaying payment collector * Removing comments * Renaming assetAquarius * Renaming assetWithAccessDetails * Ensuring that the payment collector is shown even without a wallet connected * Removing broken test * Using getDummyWeb3 for fetching the payment collector address * google validation (#1835) * Updating validation to exclude any google link * Updating Yup validation * Checking if domain includes google.com * Updating isGoogleUrl function * Moving isGoogleUrl into @utils/url/index file * isGoogleUrl function * Updating tests * Adding additional tests for other google domains * Updating tests * Updating isGoogleUrl file path * wip * Updating pricing message (#1842) * Bump @storybook/addon-essentials from 6.5.13 to 6.5.15 (#1841) Bumps [@storybook/addon-essentials](https://github.com/storybookjs/storybook/tree/HEAD/addons/essentials) from 6.5.13 to 6.5.15. - [Release notes](https://github.com/storybookjs/storybook/releases) - [Changelog](https://github.com/storybookjs/storybook/blob/v6.5.15/CHANGELOG.md) - [Commits](https://github.com/storybookjs/storybook/commits/v6.5.15/addons/essentials) --- updated-dependencies: - dependency-name: "@storybook/addon-essentials" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump @types/jest from 29.2.3 to 29.2.5 (#1840) Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 29.2.3 to 29.2.5. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest) --- updated-dependencies: - dependency-name: "@types/jest" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump prettier from 2.8.0 to 2.8.1 (#1837) Bumps [prettier](https://github.com/prettier/prettier) from 2.8.0 to 2.8.1. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/2.8.0...2.8.1) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump react-select from 5.6.1 to 5.7.0 (#1839) Bumps [react-select](https://github.com/JedWatson/react-select) from 5.6.1 to 5.7.0. - [Release notes](https://github.com/JedWatson/react-select/releases) - [Changelog](https://github.com/JedWatson/react-select/blob/master/docs/CHANGELOG.md) - [Commits](https://github.com/JedWatson/react-select/compare/react-select@5.6.1...react-select@5.7.0) --- updated-dependencies: - dependency-name: react-select dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump react-tabs from 5.1.0 to 6.0.0 (#1838) Bumps [react-tabs](https://github.com/reactjs/react-tabs) from 5.1.0 to 6.0.0. - [Release notes](https://github.com/reactjs/react-tabs/releases) - [Commits](https://github.com/reactjs/react-tabs/compare/v5.1.0...v6.0.0) --- updated-dependencies: - dependency-name: react-tabs dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * fix asset route (#1836) * updating the buy button message for free assets * Updating pricing text for compute and algorithms * Updating tests * Adding a seperate sentence about paying gas fees for network charges with free assets * Fixing tests Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: mihaisc <mihai.scarlat@smartcontrol.ro> * Showing hosting type in File Info (#1846) * Bump @storybook/addon-essentials from 6.5.13 to 6.5.15 (#1841) Bumps [@storybook/addon-essentials](https://github.com/storybookjs/storybook/tree/HEAD/addons/essentials) from 6.5.13 to 6.5.15. - [Release notes](https://github.com/storybookjs/storybook/releases) - [Changelog](https://github.com/storybookjs/storybook/blob/v6.5.15/CHANGELOG.md) - [Commits](https://github.com/storybookjs/storybook/commits/v6.5.15/addons/essentials) --- updated-dependencies: - dependency-name: "@storybook/addon-essentials" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump @types/jest from 29.2.3 to 29.2.5 (#1840) Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 29.2.3 to 29.2.5. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest) --- updated-dependencies: - dependency-name: "@types/jest" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump prettier from 2.8.0 to 2.8.1 (#1837) Bumps [prettier](https://github.com/prettier/prettier) from 2.8.0 to 2.8.1. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/2.8.0...2.8.1) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump react-select from 5.6.1 to 5.7.0 (#1839) Bumps [react-select](https://github.com/JedWatson/react-select) from 5.6.1 to 5.7.0. - [Release notes](https://github.com/JedWatson/react-select/releases) - [Changelog](https://github.com/JedWatson/react-select/blob/master/docs/CHANGELOG.md) - [Commits](https://github.com/JedWatson/react-select/compare/react-select@5.6.1...react-select@5.7.0) --- updated-dependencies: - dependency-name: react-select dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump react-tabs from 5.1.0 to 6.0.0 (#1838) Bumps [react-tabs](https://github.com/reactjs/react-tabs) from 5.1.0 to 6.0.0. - [Release notes](https://github.com/reactjs/react-tabs/releases) - [Commits](https://github.com/reactjs/react-tabs/compare/v5.1.0...v6.0.0) --- updated-dependencies: - dependency-name: react-tabs dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * fix asset route (#1836) * Adding hosting type to the file info component * Writting smart contract hosting type across two lines Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: mihaisc <mihai.scarlat@smartcontrol.ro> * add initial price value for not supported price assets (#1851) * Fix compute basetoken issue (#1829) * fix lint * add dynamic provider fees * fixes * cleanup and more fixes * bump oceanlib to 2.6.0 * fix build * add provider fees * filesize update * use existing providerFees in c2d flow * provider fees c2d logic * add logs * fixed * more debug * remove logs --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Jamie Hewitt <jamie@oceanprotocol.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: mihaisc <mihai.scarlat@smartcontrol.ro> Co-authored-by: Jamie Hewitt <jamie.hewitt15@gmail.com>
This commit is contained in:
parent
27239b73a8
commit
e67271c15f
@ -24,7 +24,7 @@ export function getNetworkDisplayName(data: EthereumListsChain): string {
|
|||||||
let displayName
|
let displayName
|
||||||
if (!data) return 'Unknown'
|
if (!data) return 'Unknown'
|
||||||
|
|
||||||
switch (data.chainId) {
|
switch (data?.chainId) {
|
||||||
case 137:
|
case 137:
|
||||||
displayName = 'Polygon'
|
displayName = 'Polygon'
|
||||||
break
|
break
|
||||||
|
3
src/@types/Price.d.ts
vendored
3
src/@types/Price.d.ts
vendored
@ -34,7 +34,7 @@ declare global {
|
|||||||
* @prop {bool} isOwned checks if there are valid orders for this, it also takes in consideration timeout
|
* @prop {bool} isOwned checks if there are valid orders for this, it also takes in consideration timeout
|
||||||
* @prop {string} validOrderTx the latest valid order tx, it also takes in consideration timeout
|
* @prop {string} validOrderTx the latest valid order tx, it also takes in consideration timeout
|
||||||
* @prop {string} publisherMarketOrderFee this is here just because it's more efficient, it's allready in the query
|
* @prop {string} publisherMarketOrderFee this is here just because it's more efficient, it's allready in the query
|
||||||
* @prop {FeeInfo} feeInfo values of the relevant fees
|
* @prop {ProviderFees} validProviderFees the latest valid order providerfees if there where any, checks them against current timestamp
|
||||||
*/
|
*/
|
||||||
interface AccessDetails {
|
interface AccessDetails {
|
||||||
type: 'fixed' | 'free' | 'NOT_SUPPORTED'
|
type: 'fixed' | 'free' | 'NOT_SUPPORTED'
|
||||||
@ -47,6 +47,7 @@ declare global {
|
|||||||
isOwned: bool
|
isOwned: bool
|
||||||
validOrderTx: string
|
validOrderTx: string
|
||||||
publisherMarketOrderFee: string
|
publisherMarketOrderFee: string
|
||||||
|
validProviderFees?: ProviderFees
|
||||||
}
|
}
|
||||||
|
|
||||||
interface PricePublishOptions {
|
interface PricePublishOptions {
|
||||||
|
@ -34,6 +34,7 @@ const tokenPriceQuery = gql`
|
|||||||
tx
|
tx
|
||||||
serviceIndex
|
serviceIndex
|
||||||
createdTimestamp
|
createdTimestamp
|
||||||
|
providerFee
|
||||||
reuses(orderBy: createdTimestamp, orderDirection: desc) {
|
reuses(orderBy: createdTimestamp, orderDirection: desc) {
|
||||||
id
|
id
|
||||||
caller
|
caller
|
||||||
@ -92,6 +93,14 @@ function getAccessDetailsFromTokenPrice(
|
|||||||
|
|
||||||
if (tokenPrice?.orders?.length > 0) {
|
if (tokenPrice?.orders?.length > 0) {
|
||||||
const order = tokenPrice.orders[0]
|
const order = tokenPrice.orders[0]
|
||||||
|
const providerFees: ProviderFees = order?.providerFee
|
||||||
|
? JSON.parse(order.providerFee)
|
||||||
|
: null
|
||||||
|
accessDetails.validProviderFees =
|
||||||
|
providerFees?.validUntil &&
|
||||||
|
Date.now() / 1000 < Number(providerFees?.validUntil)
|
||||||
|
? providerFees
|
||||||
|
: null
|
||||||
const reusedOrder = order?.reuses?.length > 0 ? order.reuses[0] : null
|
const reusedOrder = order?.reuses?.length > 0 ? order.reuses[0] : null
|
||||||
// asset is owned if there is an order and asset has timeout 0 (forever) or if the condition is valid
|
// asset is owned if there is an order and asset has timeout 0 (forever) or if the condition is valid
|
||||||
accessDetails.isOwned =
|
accessDetails.isOwned =
|
||||||
|
@ -152,6 +152,26 @@ export default function Compute({
|
|||||||
|
|
||||||
setInitializedProviderResponse(initializedProvider)
|
setInitializedProviderResponse(initializedProvider)
|
||||||
|
|
||||||
|
if (
|
||||||
|
asset.accessDetails?.validProviderFees &&
|
||||||
|
initializedProvider?.datasets?.[0]?.providerFee?.providerFeeAmount
|
||||||
|
) {
|
||||||
|
initializedProvider.datasets[0].providerFee = {
|
||||||
|
providerFeeAmount: '0',
|
||||||
|
...asset.accessDetails?.validProviderFees
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (
|
||||||
|
selectedAlgorithmAsset?.accessDetails?.validProviderFees &&
|
||||||
|
initializedProvider?.algorithm?.providerFee?.providerFeeAmount
|
||||||
|
) {
|
||||||
|
initializedProvider.algorithm.providerFee = {
|
||||||
|
providerFeeAmount: '0',
|
||||||
|
...selectedAlgorithmAsset.accessDetails.validProviderFees
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const feeAmount = await unitsToAmount(
|
const feeAmount = await unitsToAmount(
|
||||||
!isSupportedOceanNetwork || !isAssetNetwork
|
!isSupportedOceanNetwork || !isAssetNetwork
|
||||||
? await getDummyWeb3(asset?.chainId)
|
? await getDummyWeb3(asset?.chainId)
|
||||||
@ -369,6 +389,7 @@ export default function Compute({
|
|||||||
asset.metadata.type
|
asset.metadata.type
|
||||||
)[asset.accessDetails?.type === 'fixed' ? 2 : 3]
|
)[asset.accessDetails?.type === 'fixed' ? 2 : 3]
|
||||||
)
|
)
|
||||||
|
|
||||||
const datasetOrderTx = await handleComputeOrder(
|
const datasetOrderTx = await handleComputeOrder(
|
||||||
web3,
|
web3,
|
||||||
asset,
|
asset,
|
||||||
|
Loading…
Reference in New Issue
Block a user