diff --git a/src/api/supabase/queries/interest.ts b/src/api/supabase/queries/interest.ts index f7ca5dad..09df49aa 100644 --- a/src/api/supabase/queries/interest.ts +++ b/src/api/supabase/queries/interest.ts @@ -14,7 +14,6 @@ export async function getAllInterests() { /** Insert a new interest object into supabase interest table. */ export async function insertInterest(interest: Interest) { const { error } = await supabase.from('interests').insert(interest).select(); - if (error) { throw new Error(`An error occurred trying to insert an interest: ${error}`); } diff --git a/src/app/cases/page.tsx b/src/app/cases/page.tsx index 7b84cf79..c7a3d3c4 100644 --- a/src/app/cases/page.tsx +++ b/src/app/cases/page.tsx @@ -3,17 +3,16 @@ import { useEffect, useState } from 'react'; import { UUID } from 'crypto'; import { CaseListing } from '@/types/schema'; +import FilterDropdown from '@/components/FilterDropdown'; import { getNCases } from '@/api/supabase/queries/cases'; import ListingCard from '@/components/ListingCard'; -import { H1, H2 } from '@/styles/text'; -import FilterDropdown from '@/components/FilterDropdown'; +import CaseDetailDisplay from '@/components/CaseDetails'; +import { H1 } from '@/styles/text'; import { CardColumn, - CaseDetailDisplay, - CaseDetails, - FiltersContainer, MainDisplay, PageContainer, + FiltersContainer, } from './styles'; type FilterType = { @@ -27,6 +26,7 @@ type FilterType = { export default function Page() { const [caseData, setCaseData] = useState([]); const [selectedCard, setSelectedCard] = useState(); + const [caseInfo, setCaseInfo] = useState(); const [caseFilters, setCaseFilters] = useState({ remote: 'Remote/In Person', role: 'Attorney/Interpreter', @@ -39,10 +39,10 @@ export default function Page() { useEffect(() => { getNCases(20).then(casesData => { setCaseData(casesData); + setCaseInfo(casesData[0]); }); }, []); - // page structure return (

Browse Available Cases

@@ -126,16 +126,14 @@ export default function Page() { key={c.id} caseData={c} isSelected={c.id === selectedCard} - onClick={() => setSelectedCard(c.id)} + onClick={() => { + setSelectedCard(c.id); + setCaseInfo(c); + }} /> ))} - - {/* proof of concept -- to turn into component later */} - -

Case details.

-
-
+ {caseInfo && }
); diff --git a/src/app/cases/styles.tsx b/src/app/cases/styles.tsx index ae8a4ad6..643a407e 100644 --- a/src/app/cases/styles.tsx +++ b/src/app/cases/styles.tsx @@ -36,16 +36,3 @@ export const CaseDetailDisplay = styled.aside` position: relative; width: 100%; `; - -export const CaseDetails = styled.div` - position: sticky; - top: 4rem; - background: white; - width: 90%; - height: 80vh; - border-radius: 20px; - margin: 0 auto; - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25); - padding: 2rem; - border: 1px solid lightgray; -`; diff --git a/src/app/interest/page.tsx b/src/app/interest/page.tsx deleted file mode 100644 index 44e8e6ff..00000000 --- a/src/app/interest/page.tsx +++ /dev/null @@ -1,48 +0,0 @@ -'use client'; - -import { useState } from 'react'; -import { UUID } from 'crypto'; -import { insertInterest } from '../../api/supabase/queries/interest'; -import { Interest } from '../../types/schema'; -import styles from '../page.module.css'; - -export default function Interest() { - const [reason, setReason] = useState(''); - - const handleInsert = async () => { - if (reason !== '') { - const newInterest: Interest = { - // hardcoded values for now - id: crypto.randomUUID() as UUID, - listing_id: '36b8f84d-df4e-4d49-b662-bcde71a8764f', - listing_type: 100, - user_id: '36b8f84d-df4e-4d49-b662-bcde71a8764f', - form_response: { - interestType: 'IJP-6-test', - interestReason: reason, - start_date: 'Jan 1 2020 8:00:00 PM UTC-7', - }, - }; - await insertInterest(newInterest); - setReason(''); - } else { - // console.log('cannot create an empty interest'); - } - }; - - return ( -
-
Interest Form
-
-