UNPKG

@modern-js/runtime-utils

Version:

A Progressive React Framework for modern web development.

87 lines (86 loc) 2.65 kB
"use strict"; var __webpack_require__ = {}; (()=>{ __webpack_require__.d = (exports1, definition)=>{ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, { enumerable: true, get: definition[key] }); }; })(); (()=>{ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop); })(); (()=>{ __webpack_require__.r = (exports1)=>{ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, { value: 'Module' }); Object.defineProperty(exports1, '__esModule', { value: true }); }; })(); var __webpack_exports__ = {}; __webpack_require__.r(__webpack_exports__); __webpack_require__.d(__webpack_exports__, { getHost: ()=>getHost, getPathname: ()=>getPathname, parseCookie: ()=>parseCookie, parseHeaders: ()=>parseHeaders, parseQuery: ()=>parseQuery }); function parseQuery(req) { const query = {}; const { url } = req; const q = url.split('?')[1]; if (q) { const search = new URLSearchParams(q); search.forEach((v, k)=>{ query[k] = v; }); } return query; } function parseHeaders(request) { const headersData = {}; request.headers.forEach((value, key)=>{ headersData[key] = value; }); return headersData; } function getPathname(request) { const match = request.url.match(/^https?:\/\/[^/]+(\/[^?]*)/); return match ? match[1] : '/'; } function getHost(request) { const { headers } = request; let host = headers.get('X-Forwarded-Host'); if (!host) host = headers.get('Host'); host = host?.split(/\s*,\s*/, 1)[0] || 'undefined'; return host; } function parseCookie(req) { const _cookie = req.headers.get('Cookie'); const cookie = {}; _cookie?.trim().split(';').forEach((item)=>{ const [k, v] = item.trim().split('='); if (k) cookie[k] = v; }); return cookie; } exports.getHost = __webpack_exports__.getHost; exports.getPathname = __webpack_exports__.getPathname; exports.parseCookie = __webpack_exports__.parseCookie; exports.parseHeaders = __webpack_exports__.parseHeaders; exports.parseQuery = __webpack_exports__.parseQuery; for(var __rspack_i in __webpack_exports__)if (-1 === [ "getHost", "getPathname", "parseCookie", "parseHeaders", "parseQuery" ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i]; Object.defineProperty(exports, '__esModule', { value: true });