CV/src/cvdocs/skills.ts

30 lines
1023 B
TypeScript

import { DocumentBuilder } from "@nestjs/swagger";
import { RedocOptions } from "@juicyllama/nestjs-redoc";
import skillsDataset from "@/skills/skills.dataset";
export const addSkills = (
document: DocumentBuilder,
count: number = 5,
redocOptions: RedocOptions
): DocumentBuilder => {
const introTagGroup = redocOptions.tagGroups.find((tagGroup) => tagGroup.name === "Intro");
if (!introTagGroup) {
redocOptions.tagGroups.push({
name: "Intro",
tags: ["Skills"],
});
} else {
introTagGroup.tags.push("Skills");
}
const intro = "A short excerpt of my skills are";
const skillList = skillsDataset
.getData()
.slice(0, count)
.reduce((list, skill) => list.concat(`<li><strong>${skill.name}</strong> ${skill.description}</li>`), "");
const outro = "For my complete skillset, take a look at the GetSkills API endpoint.";
return document.addTag("Skills", `${intro}<br/><ul>${skillList}</ul><br/>${outro}`);
};