--- // Port of preview/pages/job-listing.html (layout: default) // NOTE: page-header-actions "add-job" requires PageHeader.astro to dispatch it // to HeaderActionsAddJob — see the migration report (PageHeader.astro is a // shared component and was not modified here). import DefaultLayout from '@shared/layouts/DefaultLayout.astro'; import Icon from '@shared/components/Icon.astro'; import Check from '@shared/components/ui/form/Check.astro'; import jobsData from '@data/jobs.json'; interface Job { company: string; location: string; title: string; type: string; image: string; salary?: string; tags: string[]; } const jobs = jobsData as Job[]; const types = ['Programming', 'Design', 'Management / Finance', 'Customer Support', 'Sales / Marketing']; const salaries = ['$20K - $50K', '$50K - $100K', '> $100K', 'Drawing / Painting']; ---
Job Types
{ types.map((type, i) => ( )) }
Remote
Salary Range
{ salaries.map((salary, i) => ( )) }
Immigration
Only show companies that can sponsor a visa
Reset to defaults
{ jobs.map((job) => (
{job.salary &&
{job.salary}
}
{job.company}
{job.type}
{job.location}
{job.company}
{job.type}
{job.location}
{job.tags.map((tag) => ( {tag} ))}
)) }