UNPKG

event-booking-api

Version:

Package for easy access to Event App API

152 lines (151 loc) 7.64 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.BaseAPI = exports.postPublicBookings = exports.postPublicBookingsCheck = exports.getPublicPaymentMethods = exports.checkDiscountTicket = exports.getParamsTicket = exports.getTicketById = exports.getTicketByCode = exports.getPublicTickets = exports.getPublicEvents = exports.assignTicketTo = exports.getPublicTicketDetails = void 0; const api_1 = require("./api"); const handleFetchErrors_1 = require("./handleFetchErrors"); const utils_1 = require("./utils"); const getPublicTicketDetails = ({ baseUrl, id, access, }) => __awaiter(void 0, void 0, void 0, function* () { let response; if (id) { response = yield fetch(`${(0, api_1.getApiPath)(baseUrl).PUBLIC_BOOKINGS}/${id}?access=${access}`); } const data = yield (response === null || response === void 0 ? void 0 : response.json()); const result = data === null || data === void 0 ? void 0 : data.result; return ((result === null || result === void 0 ? void 0 : result.data) || result); }); exports.getPublicTicketDetails = getPublicTicketDetails; const assignTicketTo = ({ baseUrl, id, access, reference, assignee, }) => __awaiter(void 0, void 0, void 0, function* () { var _a; let result; if (id) { const form = new FormData(); result = yield (0, utils_1.postRequest)(`${(0, api_1.getApiPath)(baseUrl).PUBLIC_BOOKINGS}/${id}/assign/${reference}?access=${access}`, assignee); } return ((_a = result === null || result === void 0 ? void 0 : result.result) === null || _a === void 0 ? void 0 : _a.data) || (result === null || result === void 0 ? void 0 : result.result); }); exports.assignTicketTo = assignTicketTo; const getPublicEvents = ({ baseUrl, page = 0, slug, language, }) => __awaiter(void 0, void 0, void 0, function* () { const response = yield fetch(`${(0, api_1.getApiPath)(baseUrl).EVENTS}?limit=2000&page=${page}${slug ? "&slug=" + slug : ""}${language ? "&lang=" + language : ""}`); const data = yield response.json(); (0, handleFetchErrors_1.handleFetchErrors)(data); return { events: data, }; }); exports.getPublicEvents = getPublicEvents; const getPublicTickets = ({ baseUrl, page = 0, ticketCode, eventSlug, language, }) => __awaiter(void 0, void 0, void 0, function* () { const response = yield fetch(`${(0, api_1.getApiPath)(baseUrl).PUBLIC_TICKETS}?limit=2000&page=${page}${ticketCode ? "&code=" + ticketCode : ""}${eventSlug ? "&slug=" + eventSlug : ""}${language ? "&lang=" + language : ""}`); const data = yield response.json(); (0, handleFetchErrors_1.handleFetchErrors)(data); return { tickets: data, }; }); exports.getPublicTickets = getPublicTickets; const getTicketByCode = ({ baseUrl, code, }) => __awaiter(void 0, void 0, void 0, function* () { var _b; if (!code) return; const response = yield fetch(`${(0, api_1.getApiPath)(baseUrl).PUBLIC_TICKETS}?code=${code}`); const data = yield response.json(); const result = data.result; return { ticket: (_b = result.data) === null || _b === void 0 ? void 0 : _b[0], }; }); exports.getTicketByCode = getTicketByCode; const getTicketById = ({ baseUrl, id, }) => __awaiter(void 0, void 0, void 0, function* () { var _c; if (!id) return; const response = yield fetch(`${(0, api_1.getApiPath)(baseUrl).PUBLIC_TICKETS}?id=${id}`); const data = yield response.json(); const result = data.result; return { ticket: (_c = result.data) === null || _c === void 0 ? void 0 : _c[0], }; }); exports.getTicketById = getTicketById; const getParamsTicket = ({ baseUrl, params, }) => __awaiter(void 0, void 0, void 0, function* () { var _d; if (!params) return; const response = yield fetch(`${(0, api_1.getApiPath)(baseUrl).PUBLIC_TICKETS}?${params}`); const data = yield response.json(); const result = data.result; return { ticket: (_d = result.data) === null || _d === void 0 ? void 0 : _d[0], }; }); exports.getParamsTicket = getParamsTicket; const checkDiscountTicket = ({ baseUrl, ticketsIds, discountCode, language, }) => __awaiter(void 0, void 0, void 0, function* () { const ticketsIdsParam = ticketsIds.join(","); const response = yield fetch(`${(0, api_1.getApiPath)(baseUrl).PUBLIC_TICKETS}/discount?tickets=${ticketsIdsParam}&code=${discountCode}${language ? "&lang=" + language : ""}`); const data = yield response.json(); (0, handleFetchErrors_1.handleFetchErrors)(data); return { discount: data, }; }); exports.checkDiscountTicket = checkDiscountTicket; const getPublicPaymentMethods = ({ id, baseUrl, language, }) => __awaiter(void 0, void 0, void 0, function* () { const response = yield fetch(`${(0, api_1.getApiPath)(baseUrl).EVENTS}/${id}/payment-methods${language ? "?lang=" + language : ""}`); const data = yield (response === null || response === void 0 ? void 0 : response.json()); (0, handleFetchErrors_1.handleFetchErrors)(data); return { paymentMethods: data, }; }); exports.getPublicPaymentMethods = getPublicPaymentMethods; const postPublicBookingsCheck = ({ baseUrl, bookingCheck, language, }) => __awaiter(void 0, void 0, void 0, function* () { const response = yield fetch(`${(0, api_1.getApiPath)(baseUrl).PUBLIC_BOOKINGS}/check${language ? "?lang=" + language : ""}`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify(bookingCheck), }); const data = yield response.json(); (0, handleFetchErrors_1.handleFetchErrors)(data); return { bookingsCheck: data, }; }); exports.postPublicBookingsCheck = postPublicBookingsCheck; const postPublicBookings = ({ baseUrl, bookingCheck, language, }) => __awaiter(void 0, void 0, void 0, function* () { const response = yield fetch(`${(0, api_1.getApiPath)(baseUrl).PUBLIC_BOOKINGS}${language ? "?lang=" + language : ""}`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify(bookingCheck), }); const data = yield response.json(); (0, handleFetchErrors_1.handleFetchErrors)(data); return { bookings: data, }; }); exports.postPublicBookings = postPublicBookings; exports.BaseAPI = { getPublicEvents: exports.getPublicEvents, getPublicTicketDetails: exports.getPublicTicketDetails, assignTicketTo: exports.assignTicketTo, getPublicTickets: exports.getPublicTickets, getTicketByCode: exports.getTicketByCode, getTicketById: exports.getTicketById, getParamsTicket: exports.getParamsTicket, checkDiscountTicket: exports.checkDiscountTicket, getPublicPaymentMethods: exports.getPublicPaymentMethods, postPublicBookingsCheck: exports.postPublicBookingsCheck, postPublicBookings: exports.postPublicBookings, };