1
0
mirror of https://github.com/oceanprotocol/market.git synced 2024-12-02 05:57:29 +01:00
market/src/hooks/useDataPartner.ts
Matthias Kretschmann ad107c5415
Data Partners (#214)
* datapartners prototype

* output partner name on asset teasers

* badge, output partner data

* deprioritize pool badge

* teaser spacing tweaks

* styling

* carousel pattern

* carousel fixes

* styling tweaks

* cleanup, useDataPartner hook

* large screen fixes

* add partner badge to all data set list titles

* byline links tweaks

* byline tweaks

* switch list data source

* fixes, link to https://github.com/oceanprotocol/list-datapartners

* refactor

* refactor
2020-11-05 14:43:13 +01:00

29 lines
773 B
TypeScript

import { useEffect, useState } from 'react'
import listPartners from '@oceanprotocol/list-datapartners'
import { PartnerData } from '@oceanprotocol/list-datapartners/types'
export function useDataPartner(
owner?: string
): {
partner: PartnerData
partnerAccounts: string[]
} {
const [partnerAccounts, setPartnerAccounts] = useState<string[]>()
const [partner, setPartner] = useState<PartnerData>()
useEffect(() => {
const accounts = [] as string[]
listPartners.map((partner) => accounts.push(...partner.accounts))
setPartnerAccounts(accounts)
if (!owner) return
const partner = listPartners.filter((partner) =>
partner.accounts.includes(owner)
)[0]
setPartner(partner)
}, [owner])
return { partner, partnerAccounts }
}