bamble_skills_controller
Version:
schemas for all microservices
67 lines (66 loc) • 2.31 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.isSkillInCategory = exports.isValidCategory = exports.getAllSkillCategories = void 0;
const db_1 = require("./db");
// Function to retrieve all skill categories
const getAllSkillCategories = () => {
return new Promise((resolve, reject) => {
const categories = Object.keys(db_1.SkillCategories);
if (categories.length > 0) {
let res = {
data: categories,
message: 'Skill categories retrieved successfully.',
status: 200,
statusCode: 'SKILL_CATEGORIES_RETRIEVED'
};
resolve(res);
}
else {
let notfound = {
data: categories,
message: 'Skill categories does not exist.',
status: 404,
statusCode: 'RESOURCE_NOT_FOUND'
};
}
});
};
exports.getAllSkillCategories = getAllSkillCategories;
// Function to check if a category is valid
const isValidCategory = (category) => {
return new Promise((resolve, reject) => {
if (db_1.SkillCategories.hasOwnProperty(category)) {
resolve(true);
}
else {
reject(`Invalid category: ${category}`);
}
});
};
exports.isValidCategory = isValidCategory;
// Function to check if a skill is in a given category
const isSkillInCategory = (skill, category) => {
return new Promise((resolve, reject) => {
if (db_1.SkillCategories.hasOwnProperty(category)) {
const skills = db_1.SkillCategories[category];
let skillLen = skill.length;
for (let i = 0; i < skillLen; i++) {
if (skills.includes(skill[i])) {
}
else {
reject(`${skill[i]} is not a valid skill for ${category} `);
return;
}
if (i == skillLen - 1) {
resolve(true);
return;
}
}
}
else {
reject(`Invalid category: ${category}`);
return;
}
});
};
exports.isSkillInCategory = isSkillInCategory;