diff --git a/src/components/resume/shared/items/awards-item.tsx b/src/components/resume/shared/items/awards-item.tsx index 4e0bc3141..d57d3e1a7 100644 --- a/src/components/resume/shared/items/awards-item.tsx +++ b/src/components/resume/shared/items/awards-item.tsx @@ -45,12 +45,13 @@ export function AwardsItem({ className, ...item }: AwardsItemProps) {
{/* Header */}
-
- {headerFields.map((field, index) => ( -
- {field.content} -
- ))} +
+
+ {headerFields.get("title")?.content} + {headerFields.get("awarder")?.content} +
+ +
{headerFields.get("date")?.content}
diff --git a/src/components/resume/shared/items/certifications-item.tsx b/src/components/resume/shared/items/certifications-item.tsx index 352e55506..d38d89fb2 100644 --- a/src/components/resume/shared/items/certifications-item.tsx +++ b/src/components/resume/shared/items/certifications-item.tsx @@ -45,12 +45,13 @@ export function CertificationsItem({ className, ...item }: CertificationsItemPro
{/* Header */}
-
- {headerFields.map((field, index) => ( -
- {field.content} -
- ))} +
+
+ {headerFields.get("title")?.content} + {headerFields.get("issuer")?.content} +
+ +
{headerFields.get("date")?.content}
diff --git a/src/components/resume/shared/items/education-item.tsx b/src/components/resume/shared/items/education-item.tsx index b2a45807e..40929f687 100644 --- a/src/components/resume/shared/items/education-item.tsx +++ b/src/components/resume/shared/items/education-item.tsx @@ -52,12 +52,16 @@ export function EducationItem({ className, ...item }: EducationItemProps) {
{/* Header */}
-
- {headerFields.map((field, index) => ( -
- {field.content} -
- ))} +
+
+ {headerFields.get("school")?.content} + {headerFields.get("area")?.content} +
+ +
+ {headerFields.get("degreeAndGrade")?.content} + {headerFields.get("locationAndPeriod")?.content} +
diff --git a/src/components/resume/shared/items/experience-item.tsx b/src/components/resume/shared/items/experience-item.tsx index b3fabea1a..28a7a5447 100644 --- a/src/components/resume/shared/items/experience-item.tsx +++ b/src/components/resume/shared/items/experience-item.tsx @@ -46,17 +46,20 @@ export function ExperienceItem({ className, ...item }: ExperienceItemProps) { content: {item.period}, }, ); - return (
{/* Header */}
-
- {headerFields.map((field, index) => ( -
- {field.content} -
- ))} +
+
+ {headerFields.get("company")?.content} + {headerFields.get("position")?.content} +
+ +
+ {headerFields.get("location")?.content} + {headerFields.get("period")?.content} +
@@ -65,7 +68,7 @@ export function ExperienceItem({ className, ...item }: ExperienceItemProps) {
{item.roles.map((role) => (
-
+
{role.position}
{role.period}
diff --git a/src/components/resume/shared/items/publications-item.tsx b/src/components/resume/shared/items/publications-item.tsx index 5735bfda4..e56715fd2 100644 --- a/src/components/resume/shared/items/publications-item.tsx +++ b/src/components/resume/shared/items/publications-item.tsx @@ -45,12 +45,13 @@ export function PublicationsItem({ className, ...item }: PublicationsItemProps)
{/* Header */}
-
- {headerFields.map((field, index) => ( -
- {field.content} -
- ))} +
+
+ {headerFields.get("title")?.content} + {headerFields.get("publisher")?.content} +
+ +
{headerFields.get("date")?.content}
diff --git a/src/components/resume/shared/items/references-item.tsx b/src/components/resume/shared/items/references-item.tsx index ef3ba47f0..20dd97e2a 100644 --- a/src/components/resume/shared/items/references-item.tsx +++ b/src/components/resume/shared/items/references-item.tsx @@ -40,12 +40,12 @@ export function ReferencesItem({ className, ...item }: ReferencesItemProps) {
{/* Header */}
-
- {headerFields.map((field, index) => ( -
- {field.content} -
- ))} +
+
{headerFields.get("name")?.content}
+ +
+ {headerFields.get("position")?.content} +
diff --git a/src/components/resume/shared/items/volunteer-item.tsx b/src/components/resume/shared/items/volunteer-item.tsx index 894eeacc3..d9177caca 100644 --- a/src/components/resume/shared/items/volunteer-item.tsx +++ b/src/components/resume/shared/items/volunteer-item.tsx @@ -45,12 +45,13 @@ export function VolunteerItem({ className, ...item }: VolunteerItemProps) {
{/* Header */}
-
- {headerFields.map((field, index) => ( -
- {field.content} -
- ))} +
+
+ {headerFields.get("organization")?.content} + {headerFields.get("location")?.content} +
+ +
{headerFields.get("period")?.content}
diff --git a/src/components/resume/shared/linked-title.tsx b/src/components/resume/shared/linked-title.tsx index fa485baa7..c6d09e30e 100644 --- a/src/components/resume/shared/linked-title.tsx +++ b/src/components/resume/shared/linked-title.tsx @@ -10,7 +10,7 @@ type LinkedTitleProps = { export function LinkedTitle({ title, website, showLinkInTitle, className }: LinkedTitleProps) { if (showLinkInTitle && website?.url) { return ( - + {title} ); diff --git a/src/utils/field.ts b/src/utils/field.ts index 6bec275da..350ad9a7a 100644 --- a/src/utils/field.ts +++ b/src/utils/field.ts @@ -19,5 +19,6 @@ export function filterFieldValues, ...fields: TField[] ) { - return fields.filter((field) => Boolean(values[field.key]?.trim())); + const filteredFields = fields.filter((field) => Boolean(values[field.key]?.trim())); + return new Map(filteredFields.map((field) => [field.key, field] as const)); }