Spaces:
Running
Running
File size: 1,996 Bytes
95f4e64 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.wrapper = void 0;
const http_1 = require("http-cookie-agent/http");
const AGENT_CREATED_BY_AXIOS_COOKIEJAR_SUPPORT = Symbol('AGENT_CREATED_BY_AXIOS_COOKIEJAR_SUPPORT');
function requestInterceptor(config) {
if (!config.jar) {
return config;
}
// @ts-expect-error ...
if (config.jar === true) {
throw new Error('config.jar does not accept boolean since axios-cookiejar-support@2.0.0.');
}
if ((config.httpAgent != null && config.httpAgent[AGENT_CREATED_BY_AXIOS_COOKIEJAR_SUPPORT] !== true) ||
(config.httpsAgent != null && config.httpsAgent[AGENT_CREATED_BY_AXIOS_COOKIEJAR_SUPPORT] !== true)) {
throw new Error('axios-cookiejar-support does not support for use with other http(s).Agent.');
}
config.httpAgent = new http_1.HttpCookieAgent({ cookies: { jar: config.jar } });
Object.defineProperty(config.httpAgent, AGENT_CREATED_BY_AXIOS_COOKIEJAR_SUPPORT, {
configurable: false,
enumerable: false,
value: true,
writable: false,
});
config.httpsAgent = new http_1.HttpsCookieAgent({ cookies: { jar: config.jar } });
Object.defineProperty(config.httpsAgent, AGENT_CREATED_BY_AXIOS_COOKIEJAR_SUPPORT, {
configurable: false,
enumerable: false,
value: true,
writable: false,
});
return config;
}
function wrapper(axios) {
const isWrapped = axios.interceptors.request.handlers.find(({ fulfilled }) => fulfilled === requestInterceptor);
if (isWrapped) {
return axios;
}
axios.interceptors.request.use(requestInterceptor);
if ('create' in axios) {
const create = axios.create;
axios.create = (...args) => {
const instance = create.apply(axios, args);
instance.interceptors.request.use(requestInterceptor);
return instance;
};
}
return axios;
}
exports.wrapper = wrapper;
|