Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details
Socket
Book a DemoInstallSign in
Socket

hono

Package Overview
Dependencies
Maintainers
1
Versions
411
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

hono - npm Package Compare versions

Comparing version
4.11.6
to
4.11.7
+1
-1
dist/adapter/cloudflare-workers/utils.js

@@ -23,3 +23,3 @@ // src/adapter/cloudflare-workers/utils.ts

}
const key = ASSET_MANIFEST[path] || path;
const key = ASSET_MANIFEST[path];
if (!key) {

@@ -26,0 +26,0 @@ return null;

@@ -45,3 +45,3 @@ "use strict";

}
const key = ASSET_MANIFEST[path] || path;
const key = ASSET_MANIFEST[path];
if (!key) {

@@ -48,0 +48,0 @@ return null;

@@ -27,2 +27,3 @@ "use strict";

var import_html2 = require("../utils/html");
var import_base = require("./base");
var import_constants = require("./constants");

@@ -45,2 +46,16 @@ var import_context = require("./context");

};
const resolveChildEarly = (c) => {
if (c == null || typeof c === "boolean") {
return "";
} else if (typeof c === "string") {
return c;
} else {
const str = c.toString();
if (!(str instanceof Promise)) {
return (0, import_html.raw)(str);
} else {
return str;
}
}
};
const ErrorBoundary = async ({ children, fallback, fallbackRender, onError }) => {

@@ -55,13 +70,22 @@ if (!children) {

let fallbackStr;
const resolveFallbackStr = async () => {
const awaitedFallback = await fallback;
if (typeof awaitedFallback === "string") {
fallbackStr = awaitedFallback;
} else {
fallbackStr = await awaitedFallback?.toString();
if (typeof fallbackStr === "string") {
fallbackStr = (0, import_html.raw)(fallbackStr);
}
}
};
const fallbackRes = (error) => {
onError?.(error);
return (fallbackStr || fallbackRender?.(error) || "").toString();
return fallbackStr || fallbackRender && (0, import_base.jsx)(import_base.Fragment, {}, fallbackRender(error)) || "";
};
let resArray = [];
try {
resArray = children.map(
(c) => c == null || typeof c === "boolean" ? "" : c.toString()
);
resArray = children.map(resolveChildEarly);
} catch (e) {
fallbackStr = await fallback?.toString();
await resolveFallbackStr();
if (e instanceof Promise) {

@@ -76,11 +100,13 @@ resArray = [

if (resArray.some((res) => res instanceof Promise)) {
fallbackStr ||= await fallback?.toString();
await resolveFallbackStr();
const index = errorBoundaryCounter++;
const replaceRe = RegExp(`(<template id="E:${index}"></template>.*?)(.*?)(<!--E:${index}-->)`);
const caught = false;
const catchCallback = ({ error: error2, buffer }) => {
const catchCallback = async ({ error: error2, buffer }) => {
if (caught) {
return "";
}
const fallbackResString = fallbackRes(error2);
const fallbackResString = await (0, import_base.Fragment)({
children: fallbackRes(error2)
}).toString();
if (buffer) {

@@ -172,3 +198,3 @@ buffer[0] = buffer[0].replace(replaceRe, fallbackResString);

} else {
return (0, import_html.raw)(resArray.join(""));
return (0, import_base.Fragment)({ children: resArray });
}

@@ -175,0 +201,0 @@ };

@@ -27,3 +27,13 @@ "use strict";

const vary = res.headers.get("Vary");
return vary && vary.includes("*");
if (vary && vary.includes("*")) {
return true;
}
const cacheControl = res.headers.get("Cache-Control");
if (cacheControl && /(?:^|,\s*)(?:private|no-(?:store|cache))(?:\s*(?:=|,|$))/i.test(cacheControl)) {
return true;
}
if (res.headers.has("Set-Cookie")) {
return true;
}
return false;
};

@@ -30,0 +40,0 @@ const cache = (options) => {

@@ -50,3 +50,4 @@ "use strict";

};
const IPV4_REGEX = /^[0-9]{0,3}\.[0-9]{0,3}\.[0-9]{0,3}\.[0-9]{0,3}$/;
const IPV4_OCTET_PART = "(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])";
const IPV4_REGEX = new RegExp(`^(?:${IPV4_OCTET_PART}\\.){3}${IPV4_OCTET_PART}$`);
const distinctRemoteAddr = (remoteAddr) => {

@@ -53,0 +54,0 @@ if (IPV4_REGEX.test(remoteAddr)) {

// src/jsx/components.ts
import { raw } from "../helper/html/index.js";
import { HtmlEscapedCallbackPhase, resolveCallback } from "../utils/html.js";
import { jsx, Fragment } from "./base.js";
import { DOM_RENDERER } from "./constants.js";

@@ -21,2 +22,16 @@ import { useContext } from "./context.js";

};
var resolveChildEarly = (c) => {
if (c == null || typeof c === "boolean") {
return "";
} else if (typeof c === "string") {
return c;
} else {
const str = c.toString();
if (!(str instanceof Promise)) {
return raw(str);
} else {
return str;
}
}
};
var ErrorBoundary = async ({ children, fallback, fallbackRender, onError }) => {

@@ -31,13 +46,22 @@ if (!children) {

let fallbackStr;
const resolveFallbackStr = async () => {
const awaitedFallback = await fallback;
if (typeof awaitedFallback === "string") {
fallbackStr = awaitedFallback;
} else {
fallbackStr = await awaitedFallback?.toString();
if (typeof fallbackStr === "string") {
fallbackStr = raw(fallbackStr);
}
}
};
const fallbackRes = (error) => {
onError?.(error);
return (fallbackStr || fallbackRender?.(error) || "").toString();
return fallbackStr || fallbackRender && jsx(Fragment, {}, fallbackRender(error)) || "";
};
let resArray = [];
try {
resArray = children.map(
(c) => c == null || typeof c === "boolean" ? "" : c.toString()
);
resArray = children.map(resolveChildEarly);
} catch (e) {
fallbackStr = await fallback?.toString();
await resolveFallbackStr();
if (e instanceof Promise) {

@@ -52,11 +76,13 @@ resArray = [

if (resArray.some((res) => res instanceof Promise)) {
fallbackStr ||= await fallback?.toString();
await resolveFallbackStr();
const index = errorBoundaryCounter++;
const replaceRe = RegExp(`(<template id="E:${index}"></template>.*?)(.*?)(<!--E:${index}-->)`);
const caught = false;
const catchCallback = ({ error: error2, buffer }) => {
const catchCallback = async ({ error: error2, buffer }) => {
if (caught) {
return "";
}
const fallbackResString = fallbackRes(error2);
const fallbackResString = await Fragment({
children: fallbackRes(error2)
}).toString();
if (buffer) {

@@ -148,3 +174,3 @@ buffer[0] = buffer[0].replace(replaceRe, fallbackResString);

} else {
return raw(resArray.join(""));
return Fragment({ children: resArray });
}

@@ -151,0 +177,0 @@ };

@@ -5,3 +5,13 @@ // src/middleware/cache/index.ts

const vary = res.headers.get("Vary");
return vary && vary.includes("*");
if (vary && vary.includes("*")) {
return true;
}
const cacheControl = res.headers.get("Cache-Control");
if (cacheControl && /(?:^|,\s*)(?:private|no-(?:store|cache))(?:\s*(?:=|,|$))/i.test(cacheControl)) {
return true;
}
if (res.headers.has("Set-Cookie")) {
return true;
}
return false;
};

@@ -8,0 +18,0 @@ var cache = (options) => {

@@ -23,3 +23,4 @@ // src/utils/ipaddr.ts

};
var IPV4_REGEX = /^[0-9]{0,3}\.[0-9]{0,3}\.[0-9]{0,3}\.[0-9]{0,3}$/;
var IPV4_OCTET_PART = "(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])";
var IPV4_REGEX = new RegExp(`^(?:${IPV4_OCTET_PART}\\.){3}${IPV4_OCTET_PART}$`);
var distinctRemoteAddr = (remoteAddr) => {

@@ -26,0 +27,0 @@ if (IPV4_REGEX.test(remoteAddr)) {

{
"name": "hono",
"version": "4.11.6",
"version": "4.11.7",
"description": "Web framework built on Web Standards",

@@ -5,0 +5,0 @@ "main": "dist/cjs/index.js",