aboutsummaryrefslogtreecommitdiffstats
path: root/apps/Radio/components/Search.js
diff options
context:
space:
mode:
Diffstat (limited to 'apps/Radio/components/Search.js')
-rw-r--r--apps/Radio/components/Search.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/apps/Radio/components/Search.js b/apps/Radio/components/Search.js
new file mode 100644
index 0000000..363a37c
--- /dev/null
+++ b/apps/Radio/components/Search.js
@@ -0,0 +1,31 @@
+import { useState } from 'react'
+import styles from '../styles/Radio.module.scss'
+import fetchJson from 'helpers/fetchJson'
+
+const searchQuery = async (query, setResults) => {
+ const results = await fetchJson('/api/radio/stations', {
+ method: 'POST',
+ body: JSON.stringify({ query })
+ })
+
+ setResults(results)
+}
+
+const Search = ({ setResults }) => {
+ const [query, setQuery] = useState('')
+ const changeQuery = e => setQuery(e.target.value)
+
+ return (
+ <div className={styles.search}>
+ <input type="text" onChange={changeQuery} value={query} />
+ <span
+ className="window__button"
+ onClick={() => searchQuery(query, setResults)}
+ >
+ Search
+ </span>
+ </div>
+ )
+}
+
+export default Search