UNPKG

@coursebuilder/core

Version:

Core package for Course Builder

115 lines (114 loc) 3.08 kB
import { assertConfig } from "./chunk-L5Z3CNIX.js"; import { createActionURL, setEnvDefaults } from "./chunk-4JVUWPE2.js"; import { CourseBuilderInternal } from "./chunk-KTSDNIPC.js"; import { toInternalRequest, toResponse } from "./chunk-CSOW4WEB.js"; import "./chunk-UMBG64VH.js"; import "./chunk-32RI6ONG.js"; import "./chunk-KJUGUROM.js"; import "./chunk-W2PMM4NN.js"; import "./chunk-WY77I7D6.js"; import "./chunk-75EZNCSN.js"; import "./chunk-2OWSI6TL.js"; import "./chunk-OA3TJ3QX.js"; import "./chunk-CNLQWUTB.js"; import "./chunk-7JAQB4AI.js"; import "./chunk-QLPBMM7X.js"; import "./chunk-FEG4FJXK.js"; import "./chunk-JIYITLP7.js"; import "./chunk-F3UZSGOU.js"; import "./chunk-K5LCDWG2.js"; import "./chunk-GTLQQGKR.js"; import "./chunk-WEFCBOK6.js"; import "./chunk-MQGN7QP6.js"; import "./chunk-G5E54GVJ.js"; import "./chunk-4EOF5F5J.js"; import "./chunk-MUVDMT7G.js"; import "./chunk-EGXM3TQ6.js"; import "./chunk-IXARSSGX.js"; import "./chunk-BMBVNXO6.js"; import "./chunk-ZJOFKIX6.js"; import "./chunk-26D7PACF.js"; import "./chunk-YG7SUWCG.js"; import "./chunk-C7YJXK7J.js"; import "./chunk-TAX2U45T.js"; import "./chunk-RLQCDCZC.js"; import { formatPricesForProduct } from "./chunk-NTGLTY3X.js"; import "./chunk-QDGLZ5WB.js"; import "./chunk-UIVG44OI.js"; import "./chunk-JX5MYOL7.js"; import "./chunk-PQKCCDCP.js"; import "./chunk-35XRVA3B.js"; import "./chunk-HQIC5BGE.js"; import "./chunk-YHIVAMGP.js"; import "./chunk-GN23C7L3.js"; import "./chunk-PKSI5Z7M.js"; import { logger, setLogger } from "./chunk-B73XG2UO.js"; import "./chunk-F32UWPXN.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