+ {Object.entries(
+ experiences.reduce((acc, exp) => {
+ if (!acc[exp.type]) acc[exp.type] = [];
+ acc[exp.type].push(exp);
+ return acc;
+ }, {} as Record
)
+ ).map(([type, items]) => (
+
+
+ {getTypeIcon(type as Experience["type"])} {type.charAt(0).toUpperCase() + type.slice(1)}
+
+
+ {items.map((exp, index) => (
+
+
+ {exp.image ? (
+

+ ) : (
+ getTypeIcon(exp.type)
+ )}
+
+
+
+ {exp.name}
+
+ {exp.description && (
+
+ {exp.description}
+
+ )}
+
+
+ ))}
+
+
+ ))}
+
+
+