UNPKG

skola24-node

Version:

Library that provides convenient access to the Skola24 API.

37 lines 1.58 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); class Utilities { client; _getActiveSchoolYears; _encryptSignature; constructor(createApiRequest, client) { this.client = client; this._getActiveSchoolYears = createApiRequest("/get/active/school/years"); this._encryptSignature = createApiRequest("/encrypt/signature"); } /** * Retrieves active school years. * * @param {RequestData.getActiveSchoolYears} data - The request data. * @param {AdditionalAxiosRequestConfig?} additionalConfig - Additional Axios configuration settings. * @throws Will throw an error if no active school years are found. */ getActiveSchoolYears = async (data, additionalConfig) => { const response = await this._getActiveSchoolYears({ hostName: this.client.Config.Host, ...data }, additionalConfig); if (response.activeSchoolYears.length <= 0) { throw new Error(`No school years. Response: \n\n${response}`); } return response; }; /** * Encrypts an ID or signature and returns a string that should be used as a selection when fetching timetables. * * @param {RequestData.encryptSignature} data - The request data. * @param {AdditionalAxiosRequestConfig?} additionalConfig - Additional Axios configuration settings. */ encryptSignature = async (data, additionalConfig) => { return this._encryptSignature({ ...data }, additionalConfig); }; } exports.default = Utilities; //# sourceMappingURL=Utilities.js.map