import React, { useState } from 'react'; import { Database } from '@/api/admin/databases/getDatabases'; import searchDatabases from '@/api/admin/databases/searchDatabases'; import SearchableSelect, { Option } from '@/components/elements/SearchableSelect'; export default ({ selected }: { selected: Database | null }) => { const [ database, setDatabase ] = useState(selected); const [ databases, setDatabases ] = useState([]); const onSearch = (query: string): Promise => { return new Promise((resolve, reject) => { searchDatabases({ name: query }).then((databases) => { setDatabases(databases); return resolve(); }).catch(reject); }); }; const onSelect = (database: Database) => { setDatabase(database); }; const getSelectedText = (database: Database | null): string => { return database?.name || ''; }; return ( {databases.map(d => ( ))} ); };