UNPKG

@interaktiv/mibuilder-core

Version:

Core libraries to interact with MiBuilder projects.

46 lines (35 loc) 1.13 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.fetchStatus = fetchStatus; var _axios = _interopRequireDefault(require("axios")); var _mibuilderError = require("../mibuilder-error"); var _ux = require("../ux"); const MESSAGE_FOR_STATUS = { DEACTIVATED: 'Der Servicecode steht zur Zeit nicht mehr zur Verfügung' }; async function fetchStatus(url) { (await _ux.UX.create('request-consultant-status')).debug(`Request consultant status from: ${url}`); let result; try { result = await _axios.default.get(url, { responseType: 'json', timeout: 4000 }); } catch (err) { throw new _mibuilderError.MiBuilderError(`Fehler beim Abruf des Consultant Status "${err.message}"`, err.code); } const { data } = result; const { meta = {} } = data; if (meta.status === 'OK') { return data.payload; } const errorMessage = MESSAGE_FOR_STATUS[meta.status] || meta.msg; throw new _mibuilderError.MiBuilderError(errorMessage, 'ConsultantStatusError'); }