Minify: Refactor `requestURI()` for readability

pull/5015/head
Richard Hansen 2021-04-21 16:24:27 -04:00
parent 3a8d66ba6a
commit aaacbd3a7a
1 changed files with 29 additions and 25 deletions

View File

@ -48,7 +48,7 @@ const LIBRARY_WHITELIST = [
// What follows is a terrible hack to avoid loop-back within the server.
// TODO: Serve files from another service, or directly from the file system.
const requestURI = async (url, method, headers) => await new Promise((resolve, reject) => {
const requestURI = async (url, method, headers) => {
const parsedUrl = new URL(url);
let status = 500;
const content = [];
@ -58,7 +58,9 @@ const requestURI = async (url, method, headers) => await new Promise((resolve, r
params: {filename: (parsedUrl.pathname + parsedUrl.search).replace(/^\/static\//, '')},
headers,
};
const mockResponse = {
let mockResponse;
const p = new Promise((resolve) => {
mockResponse = {
writeHead: (_status, _headers) => {
status = _status;
for (const header in _headers) {
@ -81,8 +83,10 @@ const requestURI = async (url, method, headers) => await new Promise((resolve, r
resolve([status, headers, content.join('')]);
},
};
minify(mockRequest, mockResponse).catch(reject);
});
});
await minify(mockRequest, mockResponse);
return await p;
};
const requestURIs = (locations, method, headers, callback) => {
Promise.all(locations.map((loc) => requestURI(loc, method, headers))).then((responses) => {