UNPKG

@coursebuilder/core

Version:

Core package for Course Builder

115 lines (114 loc) 3.08 kB
import { assertConfig } from "./chunk-KJPWWBTE.js"; import { createActionURL, setEnvDefaults } from "./chunk-7AUFW6LL.js"; import { CourseBuilderInternal } from "./chunk-VKGUTDNI.js"; import { toInternalRequest, toResponse } from "./chunk-U6V43GM7.js"; import "./chunk-UMBG64VH.js"; import "./chunk-W2PMM4NN.js"; import "./chunk-WY77I7D6.js"; import "./chunk-XBLLWDMW.js"; import "./chunk-2OWSI6TL.js"; import "./chunk-OA3TJ3QX.js"; import "./chunk-PHYSJ7TL.js"; import "./chunk-TAM5HSCG.js"; import "./chunk-44J4PUYB.js"; import "./chunk-MQGN7QP6.js"; import "./chunk-32RI6ONG.js"; import "./chunk-KJUGUROM.js"; import "./chunk-G5E54GVJ.js"; import "./chunk-4EOF5F5J.js"; import "./chunk-BMBVNXO6.js"; import "./chunk-NEEWBEH7.js"; import "./chunk-YHIVAMGP.js"; import "./chunk-GN23C7L3.js"; import "./chunk-PKSI5Z7M.js"; import "./chunk-KG6FLMGD.js"; import "./chunk-C7YJXK7J.js"; import { logger, setLogger } from "./chunk-734KCKQL.js"; import "./chunk-CK22XAGT.js"; import "./chunk-6BDNKLNX.js"; import { formatPricesForProduct } from "./chunk-PDAUDRNY.js"; import "./chunk-MHZLJS34.js"; import "./chunk-JX5MYOL7.js"; import "./chunk-PQKCCDCP.js"; import "./chunk-UIVG44OI.js"; import "./chunk-35XRVA3B.js"; import "./chunk-QLPBMM7X.js"; import "./chunk-FEG4FJXK.js"; import "./chunk-6CGYBMSO.js"; import "./chunk-GTLQQGKR.js"; import "./chunk-F3UZSGOU.js"; import "./chunk-K5LCDWG2.js"; import "./chunk-ZJOFKIX6.js"; import "./chunk-26D7PACF.js"; import "./chunk-TAX2U45T.js"; import "./chunk-MUVDMT7G.js"; import "./chunk-EGXM3TQ6.js"; import "./chunk-IXARSSGX.js"; import "./chunk-JLNB6NRA.js"; import { __name } from "./chunk-VLQXSCFN.js"; // src/index.ts async function CourseBuilder(request, config) { setLogger(config.logger, config.debug); const internalRequest = await toInternalRequest(request, config); if (!internalRequest) { return Response.json("Bad request", { status: 400 }); } const warningsOrError = assertConfig(internalRequest, config); if (Array.isArray(warningsOrError)) { warningsOrError.forEach(logger.warn); } else if (warningsOrError) { logger.error(warningsOrError); return Response.json("Internal Server Error", { status: 500 }); } const isRedirect = request.headers?.has("X-Course-Builder-Return-Redirect"); try { const internalResponse = await CourseBuilderInternal(internalRequest, config); const response = toResponse(internalResponse); const url = response.headers.get("Location"); if (!isRedirect || !url) return response; return Response.json({ url }, { headers: response.headers }); } catch (e) { logger.error(e); if (request.method === "POST" && internalRequest.action === "session") return Response.json(null, { status: 400 }); return Response.json(`something broke: ${e.message}`, { status: 400 }); } } __name(CourseBuilder, "CourseBuilder"); export { CourseBuilder, createActionURL, formatPricesForProduct, setEnvDefaults }; //# sourceMappingURL=index.js.map