UNPKG

@omegabigdata/honoplay-api-helper-node

Version:
117 lines (106 loc) 2.72 kB
"use strict"; const { axiosClient } = require("./Helpers"); /** * @param {!number} questionId * @param {function} successCallback * @param {function} errorCallback */ const getQuestion = (questionId, successCallback, errorCallback) => { if (questionId == null || questionId == undefined) { if (errorCallback) { errorCallback("Missing Parameters"); } throw new Error("Missing Parameters"); } if (questionId <= 0) { throw new Error("Value must be greater than zero"); } let uri = `Question/${questionId}`; axiosClient .get(uri) .then(success => { successCallback(success); }) .catch(error => { errorCallback(error); }); }; /** * @param {!number} skip * @param {!number} take * @param {function} successCallback * @param {function} errorCallback */ const getQuestions = (skip, take, successCallback, errorCallback) => { if (skip < 0 || take < 0) { throw new Error("Values must be positive"); } let uri = `Question`; if (skip) { uri += `?Skip=${skip}`; } if (skip && take) { uri += `&Take=${take}`; } if (!skip && take) { uri += `?Take=${take}`; } axiosClient .get(uri) .then(success => { successCallback(success); }) .catch(error => { errorCallback(error); }); }; /** * @param {!string} question.text * @param {!number} question.duration * @param {!string} question.updatedBy * @param {!string} question.id * @param {function} successCallback * @param {function} errorCallback */ const putQuestion = (question, successCallback, errorCallback) => { if (!question) { if (errorCallback) { errorCallback("Missing Parameters"); return; } throw new Error("Missing Parameters"); } const uri = `Question`; axiosClient .put(uri, question) .then(success => successCallback(success)) .catch(error => errorCallback(error)); }; /** * @param {!string} question.text * @param {!number} question.duration * @param {!string} question.updatedBy * @param {!string} question.id * @param {function} successCallback * @param {function} errorCallback */ const postQuestion = (question, successCallback, errorCallback) => { if (!question) { if (errorCallback) { errorCallback("Missing Parameters"); return; } throw new Error("Missing Parameters"); } const uri = `Question`; axiosClient .post(uri, question) .then(success => successCallback(success)) .catch(error => errorCallback(error)); }; module.exports = { getQuestions, putQuestion, postQuestion, getQuestion };