"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); 0 && (module.exports = { INTERNALS: null, NextRequest: null }); function _export(target, all) { for(var name in all)Object.defineProperty(target, name, { enumerable: true, get: all[name] }); } _export(exports, { INTERNALS: function() { return INTERNALS; }, NextRequest: function() { return NextRequest; } }); const _nexturl = require("../next-url"); const _utils = require("../utils"); const _error = require("../error"); const _cookies = require("./cookies"); const INTERNALS = Symbol("internal request"); class NextRequest extends Request { constructor(input, init = {}){ const url = typeof input !== "string" && "url" in input ? input.url : String(input); (0, _utils.validateURL)(url); if (input instanceof Request) super(input, init); else super(url, init); const nextUrl = new _nexturl.NextURL(url, { headers: (0, _utils.toNodeOutgoingHttpHeaders)(this.headers), nextConfig: init.nextConfig }); this[INTERNALS] = { cookies: new _cookies.RequestCookies(this.headers), geo: init.geo || {}, ip: init.ip, nextUrl, url: process.env.__NEXT_NO_MIDDLEWARE_URL_NORMALIZE ? url : nextUrl.toString() }; } [Symbol.for("edge-runtime.inspect.custom")]() { return { cookies: this.cookies, geo: this.geo, ip: this.ip, nextUrl: this.nextUrl, url: this.url, // rest of props come from Request bodyUsed: this.bodyUsed, cache: this.cache, credentials: this.credentials, destination: this.destination, headers: Object.fromEntries(this.headers), integrity: this.integrity, keepalive: this.keepalive, method: this.method, mode: this.mode, redirect: this.redirect, referrer: this.referrer, referrerPolicy: this.referrerPolicy, signal: this.signal }; } get cookies() { return this[INTERNALS].cookies; } get geo() { return this[INTERNALS].geo; } get ip() { return this[INTERNALS].ip; } get nextUrl() { return this[INTERNALS].nextUrl; } /** * @deprecated * `page` has been deprecated in favour of `URLPattern`. * Read more: https://nextjs.org/docs/messages/middleware-request-page */ get page() { throw new _error.RemovedPageError(); } /** * @deprecated * `ua` has been removed in favour of \`userAgent\` function. * Read more: https://nextjs.org/docs/messages/middleware-parse-user-agent */ get ua() { throw new _error.RemovedUAError(); } get url() { return this[INTERNALS].url; } } //# sourceMappingURL=request.js.map