summaryrefslogtreecommitdiffstats
path: root/g4f/Provider/npm/node_modules/undici/lib/interceptor/redirectInterceptor.js
diff options
context:
space:
mode:
Diffstat (limited to 'g4f/Provider/npm/node_modules/undici/lib/interceptor/redirectInterceptor.js')
-rw-r--r--g4f/Provider/npm/node_modules/undici/lib/interceptor/redirectInterceptor.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/g4f/Provider/npm/node_modules/undici/lib/interceptor/redirectInterceptor.js b/g4f/Provider/npm/node_modules/undici/lib/interceptor/redirectInterceptor.js
new file mode 100644
index 00000000..7cc035e0
--- /dev/null
+++ b/g4f/Provider/npm/node_modules/undici/lib/interceptor/redirectInterceptor.js
@@ -0,0 +1,21 @@
+'use strict'
+
+const RedirectHandler = require('../handler/RedirectHandler')
+
+function createRedirectInterceptor ({ maxRedirections: defaultMaxRedirections }) {
+ return (dispatch) => {
+ return function Intercept (opts, handler) {
+ const { maxRedirections = defaultMaxRedirections } = opts
+
+ if (!maxRedirections) {
+ return dispatch(opts, handler)
+ }
+
+ const redirectHandler = new RedirectHandler(dispatch, maxRedirections, opts, handler)
+ opts = { ...opts, maxRedirections: 0 } // Stop sub dispatcher from also redirecting.
+ return dispatch(opts, redirectHandler)
+ }
+ }
+}
+
+module.exports = createRedirectInterceptor