Download node_modules/hono/dist/client/utils.js from Snapkitty/agentscope-sift: direct link, hf CLI and curl.
- Browser
- Download file 2.04 kB
-
https://huggingface.co/Snapkitty/agentscope-sift/resolve/main/node_modules/hono/dist/client/utils.js
- Command line
-
hf download hf://Snapkitty/agentscope-sift/node_modules/hono/dist/client/utils.js
-
curl -L -o utils.js https://huggingface.co/Snapkitty/agentscope-sift/resolve/main/node_modules/hono/dist/client/utils.js
2.04 kB
| // src/client/utils.ts | |
| import { fetchRP, DetailedError } from "./fetch-result-please.js"; | |
| var mergePath = (base, path) => { | |
| base = base.replace(/\/+$/, ""); | |
| base = base + "/"; | |
| path = path.replace(/^\/+/, ""); | |
| return base + path; | |
| }; | |
| var replaceUrlParam = (urlString, params) => { | |
| for (const [k, v] of Object.entries(params)) { | |
| const reg = new RegExp("/:" + k + "(?:{[^/]+})?\\??"); | |
| urlString = urlString.replace(reg, v ? `/${v}` : ""); | |
| } | |
| return urlString; | |
| }; | |
| var buildSearchParams = (query) => { | |
| const searchParams = new URLSearchParams(); | |
| for (const [k, v] of Object.entries(query)) { | |
| if (v === void 0) { | |
| continue; | |
| } | |
| if (Array.isArray(v)) { | |
| for (const v2 of v) { | |
| searchParams.append(k, v2); | |
| } | |
| } else { | |
| searchParams.set(k, v); | |
| } | |
| } | |
| return searchParams; | |
| }; | |
| var replaceUrlProtocol = (urlString, protocol) => { | |
| switch (protocol) { | |
| case "ws": | |
| return urlString.replace(/^http/, "ws"); | |
| case "http": | |
| return urlString.replace(/^ws/, "http"); | |
| } | |
| }; | |
| var removeIndexString = (urlString) => { | |
| if (/^https?:\/\/[^\/]+?\/index(?=\?|$)/.test(urlString)) { | |
| return urlString.replace(/\/index(?=\?|$)/, "/"); | |
| } | |
| return urlString.replace(/\/index(?=\?|$)/, ""); | |
| }; | |
| function isObject(item) { | |
| return typeof item === "object" && item !== null && !Array.isArray(item); | |
| } | |
| function deepMerge(target, source) { | |
| if (!isObject(target) && !isObject(source)) { | |
| return source; | |
| } | |
| const merged = { ...target }; | |
| for (const key in source) { | |
| const value = source[key]; | |
| if (isObject(merged[key]) && isObject(value)) { | |
| merged[key] = deepMerge(merged[key], value); | |
| } else { | |
| merged[key] = value; | |
| } | |
| } | |
| return merged; | |
| } | |
| async function parseResponse(fetchRes) { | |
| return fetchRP(fetchRes); | |
| } | |
| export { | |
| DetailedError, | |
| buildSearchParams, | |
| deepMerge, | |
| mergePath, | |
| parseResponse, | |
| removeIndexString, | |
| replaceUrlParam, | |
| replaceUrlProtocol | |
| }; | |