Spaces:
Running
Running
Fix search functionality
Browse files- src/components/Header.tsx +6 -2
- src/data/conferences.yml +13 -1
- src/pages/Index.tsx +1 -2
src/components/Header.tsx
CHANGED
|
@@ -1,7 +1,10 @@
|
|
| 1 |
-
|
| 2 |
import { Search } from "lucide-react";
|
| 3 |
|
| 4 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 5 |
return (
|
| 6 |
<header className="w-full py-6 px-4 sm:px-6 lg:px-8 bg-white shadow-sm animate-fade-in">
|
| 7 |
<div className="max-w-7xl mx-auto">
|
|
@@ -19,6 +22,7 @@ const Header = () => {
|
|
| 19 |
<input
|
| 20 |
type="text"
|
| 21 |
placeholder="Search conferences..."
|
|
|
|
| 22 |
className="w-full pl-10 pr-4 py-2 border border-neutral-200 rounded-lg focus:outline-none focus:border-primary focus:ring-1 focus:ring-primary bg-neutral-50"
|
| 23 |
/>
|
| 24 |
<Search className="absolute left-3 top-2.5 h-5 w-5 text-neutral" />
|
|
|
|
|
|
|
| 1 |
import { Search } from "lucide-react";
|
| 2 |
|
| 3 |
+
interface HeaderProps {
|
| 4 |
+
onSearch: (query: string) => void;
|
| 5 |
+
}
|
| 6 |
+
|
| 7 |
+
const Header = ({ onSearch }: HeaderProps) => {
|
| 8 |
return (
|
| 9 |
<header className="w-full py-6 px-4 sm:px-6 lg:px-8 bg-white shadow-sm animate-fade-in">
|
| 10 |
<div className="max-w-7xl mx-auto">
|
|
|
|
| 22 |
<input
|
| 23 |
type="text"
|
| 24 |
placeholder="Search conferences..."
|
| 25 |
+
onChange={(e) => onSearch(e.target.value)}
|
| 26 |
className="w-full pl-10 pr-4 py-2 border border-neutral-200 rounded-lg focus:outline-none focus:border-primary focus:ring-1 focus:ring-primary bg-neutral-50"
|
| 27 |
/>
|
| 28 |
<Search className="absolute left-3 top-2.5 h-5 w-5 text-neutral" />
|
src/data/conferences.yml
CHANGED
|
@@ -367,7 +367,7 @@
|
|
| 367 |
- title: IROS
|
| 368 |
year: 2025
|
| 369 |
id: iros25
|
| 370 |
-
full_name:
|
| 371 |
link: http://www.iros25.org/
|
| 372 |
deadline: '2025-03-01 23:59:59'
|
| 373 |
timezone: UTC-8
|
|
@@ -473,3 +473,15 @@
|
|
| 473 |
tags:
|
| 474 |
- machine-learning
|
| 475 |
- robotics
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 367 |
- title: IROS
|
| 368 |
year: 2025
|
| 369 |
id: iros25
|
| 370 |
+
full_name: International Conference on Intelligent Robots and Systems
|
| 371 |
link: http://www.iros25.org/
|
| 372 |
deadline: '2025-03-01 23:59:59'
|
| 373 |
timezone: UTC-8
|
|
|
|
| 473 |
tags:
|
| 474 |
- machine-learning
|
| 475 |
- robotics
|
| 476 |
+
|
| 477 |
+
- title: NeurIPS
|
| 478 |
+
year: 2025
|
| 479 |
+
id: neurips25
|
| 480 |
+
full_name: Conference on Neural Information Processing Systems
|
| 481 |
+
link: https://neurips.cc/
|
| 482 |
+
deadline: "2025-05-16 23:59:59"
|
| 483 |
+
timezone: UTC-8
|
| 484 |
+
place: San Diego, US
|
| 485 |
+
date: Dec 9-15, 2025
|
| 486 |
+
tags:
|
| 487 |
+
- machine-learning
|
src/pages/Index.tsx
CHANGED
|
@@ -1,4 +1,3 @@
|
|
| 1 |
-
|
| 2 |
import Header from "@/components/Header";
|
| 3 |
import FilterBar from "@/components/FilterBar";
|
| 4 |
import ConferenceCard from "@/components/ConferenceCard";
|
|
@@ -57,7 +56,7 @@ const Index = () => {
|
|
| 57 |
|
| 58 |
return (
|
| 59 |
<div className="min-h-screen bg-neutral-light">
|
| 60 |
-
<Header />
|
| 61 |
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 62 |
<div className="space-y-4 py-4">
|
| 63 |
<FilterBar selectedTag={selectedTag} onTagSelect={setSelectedTag} />
|
|
|
|
|
|
|
| 1 |
import Header from "@/components/Header";
|
| 2 |
import FilterBar from "@/components/FilterBar";
|
| 3 |
import ConferenceCard from "@/components/ConferenceCard";
|
|
|
|
| 56 |
|
| 57 |
return (
|
| 58 |
<div className="min-h-screen bg-neutral-light">
|
| 59 |
+
<Header onSearch={setSearchQuery} />
|
| 60 |
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 61 |
<div className="space-y-4 py-4">
|
| 62 |
<FilterBar selectedTag={selectedTag} onTagSelect={setSelectedTag} />
|