next
Version:
The React Framework
57 lines (56 loc) • 1.48 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
0 && (module.exports = {
getTestReqInfo: null,
withRequest: null
});
function _export(target, all) {
for(var name in all)Object.defineProperty(target, name, {
enumerable: true,
get: all[name]
});
}
_export(exports, {
getTestReqInfo: function() {
return getTestReqInfo;
},
withRequest: function() {
return withRequest;
}
});
const _nodeasync_hooks = require("node:async_hooks");
const testStorage = new _nodeasync_hooks.AsyncLocalStorage();
function extractTestInfoFromRequest(req, reader) {
const proxyPortHeader = reader.header(req, 'next-test-proxy-port');
if (!proxyPortHeader) {
return undefined;
}
const url = reader.url(req);
const proxyPort = Number(proxyPortHeader);
const testData = reader.header(req, 'next-test-data') || '';
return {
url,
proxyPort,
testData
};
}
function withRequest(req, reader, fn) {
const testReqInfo = extractTestInfoFromRequest(req, reader);
if (!testReqInfo) {
return fn();
}
return testStorage.run(testReqInfo, fn);
}
function getTestReqInfo(req, reader) {
const testReqInfo = testStorage.getStore();
if (testReqInfo) {
return testReqInfo;
}
if (req && reader) {
return extractTestInfoFromRequest(req, reader);
}
return undefined;
}
//# sourceMappingURL=context.js.map
;