UNPKG

rsshub

Version:
83 lines (81 loc) 2.48 kB
import { n as init_esm_shims, t as __dirname } from "./esm-shims-CzJ_djXG.mjs"; import "./config-C37vj7VH.mjs"; import "./dist-BInvbO1W.mjs"; import "./logger-Czu8UMNd.mjs"; import "./ofetch-BIyrKU3Y.mjs"; import { t as parseDate } from "./parse-date-BrP7mxXf.mjs"; import "./helpers-DxBp0Pty.mjs"; import { t as art } from "./render-BQo6B4tL.mjs"; import { t as got_default } from "./got-KxxWdaxq.mjs"; import path from "node:path"; //#region lib/routes/lmu/jobs.ts init_esm_shims(); const apiUrl = "https://jobs.b-ite.com/api/v1/postings/search"; function findLabel(value, options) { return options.find((option) => option.value === value)?.label ?? value; } async function handler() { const { data: response } = await got_default.post(apiUrl, { json: { key: "7d4ebad4ecdfd3e99a89596c85c5e4be21cd9c12", channel: 0, locale: "en", sort: { by: "custom.bereich", order: "asc" }, origin: "https://www.lmu.de/en/about-lmu/working-at-lmu/job-portal/academic-staff/", page: { offset: 0, num: 1e3 }, filter: { locale: { in: ["en"] }, "custom.beschaeftigtengruppe": { in: ["02_wiss"] } } }, headers: { "content-type": "application/json", "bite-jobsapi-client": "v5-20230925-9df79de" } }); const jobPostings = response.jobPostings; const bereichOptions = response.fields["custom.bereich"].options; const verguetungOptions = response.fields["custom.verguetung"].options; return { title: "LMU Academic Staff Job Openings", link: "https://www.lmu.de/en/about-lmu/working-at-lmu/job-portal/academic-staff/", item: jobPostings.map((job) => { const pubDate = parseDate(job.createdOn, "YYYY-MM-DDTHH:mm:ssZ"); const institutionLabel = findLabel(job.custom.bereich, bereichOptions); const RemunerationGroupLabel = findLabel(job.custom.verguetung, verguetungOptions); const description = art(path.join(__dirname, "templates/jobPosting-6ff08743.art"), { institutionLabel, RemunerationGroupLabel, job }); return { title: job.title, link: job.url, description, pubDate }; }) }; } const route = { path: "/jobs", name: "Job Openings", url: "lmu.de", example: "/lmu/jobs", maintainers: ["StarDxxx"], categories: ["university", "study"], radar: [{ source: ["www.lmu.de/en/about-lmu/working-at-lmu/job-portal/academic-staff/"], target: "/lmu/jobs" }], description: "RSS feed for LMU academic staff job openings.", handler }; //#endregion export { route };