import React, {useEffect, useState} from "react"
import {Flex, Modal, ModalProps, Select, Tag, Typography} from "antd"
import {getWatchlists, Watchlist} from "../../../utils/api"
import {t} from 'ttag'
import {DomainToTag} from "../../../utils/functions/DomainToTag"
function WatchlistOption({watchlist}: {watchlist: Watchlist}) {
return
{watchlist.name}
{watchlist.domains.map(d => )}
}
interface WatchlistSelectionModalProps {
onFinish: (watchlist: Watchlist) => Promise|void
description?: string
open?: boolean
modalProps?: Partial
}
export default function WatchlistSelectionModal(props: WatchlistSelectionModalProps) {
const [watchlists, setWatchlists] = useState()
const [selectedWatchlist, setSelectedWatchlist] = useState()
const [validationLoading, setValidationLoading] = useState(false)
useEffect(() => {
getWatchlists().then(list => setWatchlists(list["hydra:member"]))
}, [])
const onFinish = () => {
const promise = props.onFinish(selectedWatchlist as Watchlist)
if (promise) {
setValidationLoading(true)
promise.finally(() => {
setSelectedWatchlist(undefined)
setValidationLoading(false)
})
} else {
setSelectedWatchlist(undefined)
}
}
return
{
props.description
|| t`Select one of your available watchlists`
}
}