import { getJobylonFeed } from "@/lib/trpc/memoizedRequests"

import SectionContainer from "@/components/Section/Container"
import SectionHeader from "@/components/Section/Header"
import SectionLink from "@/components/Section/Link"

import JobList from "./JobList"

interface JobylonFeedProps {
  title?: string
  subtitle?: string
  link?: { href: string; text: string }
}

export default async function JobylonFeed({
  title,
  subtitle,
  link,
}: JobylonFeedProps) {
  const allJobs = await getJobylonFeed()

  if (!allJobs) {
    return null
  }

  return (
    <SectionContainer>
      <SectionHeader
        link={link}
        preamble={subtitle}
        title={title}
        headingAs="h3"
        headingLevel="h2"
      />
      <JobList allJobs={allJobs} />
      <SectionLink link={link} variant="mobile" />
    </SectionContainer>
  )
}
