UNPKG

kinoklub-api

Version:

Support library for KinoKlub

36 lines (35 loc) 1.29 kB
import { fetchPage } from "../fetchers/index.js"; import { getTicketParams, resolveDate } from "../helpers/global.helper.js"; import { programUrl, ticketsRedirectUrl } from "../vars.js"; import { getCinema, getDay, getHall, getHour, getId, getPrice, getRunning, getTags, getTitle } from "../helpers/program.helper.js"; import { parse } from "node-html-parser"; //#region src/services/program.service.ts var ProgramScraper = class { async program(lang, cinemas, options = {}) { const programListNodes = parse(await fetchPage(programUrl(lang, cinemas, options))).querySelectorAll(".program__info-row"); return this.buildProgram(programListNodes); } buildProgram(moviesNode) { return moviesNode.map((m) => { const hour = getHour(m); const day = getDay(m); const ticketParams = getTicketParams(m); const queryParams = new URLSearchParams(ticketParams).toString(); return { id: getId(m), date: resolveDate(day, hour), title: getTitle(m), price: getPrice(m), hall: getHall(m), ticketUrl: queryParams ? ticketsRedirectUrl + "?" + queryParams : null, cinema: getCinema(m), tags: getTags(m), hour: getHour(m), isRunning: getRunning(m) }; }); } }; //#endregion export { ProgramScraper }; //# sourceMappingURL=program.service.js.map