import { hashAPIPath } from "../../../actions/core/hash"; import { getToken } from "../../../actions/core/token"; import { azureHeaders } from "../../../actions/core/headers"; import { consoleLogger } from "../../../actions/core/logger"; import axios from "axios"; import { respondError, respondSuccess } from "../middleware/apiResponse"; import nextConnect from "next-connect"; import middleware from "../middleware/middleware"; const ApiProxy = nextConnect(); ApiProxy.use(middleware); const BASE_URL = process.env.API_ROOT || `http://localhost:${port}`; const hasValue = (value) => typeof value === "string" && value.trim().length > 0; ApiProxy.get(async (req, res) => { const containerName = req.query.container; const tempCaseRef = req.query.tempcaseref; if (!hasValue(containerName) || !hasValue(tempCaseRef)) { return respondError(res, { status: 400, code: "MISSING_REQUIRED_QUERY", message: "container and tempcaseref are required" }); } const token = await getToken(); const queryUrl = "/api/file/createappealcompletemessage_api?container=" + encodeURIComponent(containerName) + "&tempcaseref=" + encodeURIComponent(tempCaseRef); try { const { data } = await axios.get( BASE_URL + queryUrl + hashAPIPath(queryUrl), azureHeaders(token.access_token) ); return respondSuccess(res, data); } catch (error) { consoleLogger(error); return respondError(res, { status: 400, code: "CREATE_APPEAL_COMPLETE_MESSAGE_PROXY_FAILED", message: "Failed to create appeal complete message" }); } }); export const config = { api: { bodyParser: false } }; export default ApiProxy;