UNPKG

jobsuche-api-js

Version:

A JavaScript wrapper for the Arbeitsagentur jobs API, allowing developers to easily integrate job search functionality into their applications.

42 lines (41 loc) 1.72 kB
import axios from "axios"; import { companyLogoV3 } from "../constants/urls"; import { fetchCompanyInfo } from "./companyInfo"; import { companyLogoReturnHelper } from "../helpers/companyLogoReturnHelper"; const constructAvatarUrl = (name) => { const defaultSettings = { name: name || "N/A", background: "random", color: "fff", size: 128, format: "svg", }; return `https://ui-avatars.com/api/?name=${encodeURIComponent(defaultSettings.name)}&background=${defaultSettings.background}&color=${defaultSettings.color}&size=${defaultSettings.size}&format=${defaultSettings.format}`; }; async function getCompanyLogoURL(kundennummerHash, companyName) { let avatarUrl = null; if (companyName) avatarUrl = constructAvatarUrl(companyName); if (!companyName) { const companyInfo = await fetchCompanyInfo(kundennummerHash); if (companyInfo) { avatarUrl = constructAvatarUrl(companyInfo === null || companyInfo === void 0 ? void 0 : companyInfo.firma); } } try { const fullUrl = `${companyLogoV3}/${kundennummerHash}`; // TODO check this later. // make an axios request to check if the company logo exists. // if there is an error the avatar will be returned. const response = await axios.get(fullUrl); const data = response.data; if (!data) { return companyLogoReturnHelper(avatarUrl, false, "Image not found from try!"); } return companyLogoReturnHelper(fullUrl, fullUrl.length > 0, null); } catch (error) { return companyLogoReturnHelper(avatarUrl, false, error.message); } } export { getCompanyLogoURL };