@hono/node-server 1.19.5 → 1.19.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -98,7 +98,6 @@ var serveStatic = (options = { root: "" }) => {
98
98
  await options.onNotFound?.(path, c);
99
99
  return next();
100
100
  }
101
- await options.onFound?.(path, c);
102
101
  const mimeType = (0, import_mime.getMimeType)(path);
103
102
  c.header("Content-Type", mimeType || "application/octet-stream");
104
103
  if (options.precompressed && (!mimeType || COMPRESSIBLE_CONTENT_TYPE_REGEX.test(mimeType))) {
@@ -119,30 +118,33 @@ var serveStatic = (options = { root: "" }) => {
119
118
  }
120
119
  }
121
120
  }
121
+ let result;
122
122
  const size = stats.size;
123
+ const range = c.req.header("range") || "";
123
124
  if (c.req.method == "HEAD" || c.req.method == "OPTIONS") {
124
125
  c.header("Content-Length", size.toString());
125
126
  c.status(200);
126
- return c.body(null);
127
- }
128
- const range = c.req.header("range") || "";
129
- if (!range) {
127
+ result = c.body(null);
128
+ } else if (!range) {
130
129
  c.header("Content-Length", size.toString());
131
- return c.body(createStreamBody((0, import_node_fs.createReadStream)(path)), 200);
132
- }
133
- c.header("Accept-Ranges", "bytes");
134
- c.header("Date", stats.birthtime.toUTCString());
135
- const parts = range.replace(/bytes=/, "").split("-", 2);
136
- const start = parseInt(parts[0], 10) || 0;
137
- let end = parseInt(parts[1], 10) || size - 1;
138
- if (size < end - start + 1) {
139
- end = size - 1;
130
+ result = c.body(createStreamBody((0, import_node_fs.createReadStream)(path)), 200);
131
+ } else {
132
+ c.header("Accept-Ranges", "bytes");
133
+ c.header("Date", stats.birthtime.toUTCString());
134
+ const parts = range.replace(/bytes=/, "").split("-", 2);
135
+ const start = parseInt(parts[0], 10) || 0;
136
+ let end = parseInt(parts[1], 10) || size - 1;
137
+ if (size < end - start + 1) {
138
+ end = size - 1;
139
+ }
140
+ const chunksize = end - start + 1;
141
+ const stream = (0, import_node_fs.createReadStream)(path, { start, end });
142
+ c.header("Content-Length", chunksize.toString());
143
+ c.header("Content-Range", `bytes ${start}-${end}/${stats.size}`);
144
+ result = c.body(createStreamBody(stream), 206);
140
145
  }
141
- const chunksize = end - start + 1;
142
- const stream = (0, import_node_fs.createReadStream)(path, { start, end });
143
- c.header("Content-Length", chunksize.toString());
144
- c.header("Content-Range", `bytes ${start}-${end}/${stats.size}`);
145
- return c.body(createStreamBody(stream), 206);
146
+ await options.onFound?.(path, c);
147
+ return result;
146
148
  };
147
149
  };
148
150
  // Annotate the CommonJS export names for ESM import in node:
@@ -74,7 +74,6 @@ var serveStatic = (options = { root: "" }) => {
74
74
  await options.onNotFound?.(path, c);
75
75
  return next();
76
76
  }
77
- await options.onFound?.(path, c);
78
77
  const mimeType = getMimeType(path);
79
78
  c.header("Content-Type", mimeType || "application/octet-stream");
80
79
  if (options.precompressed && (!mimeType || COMPRESSIBLE_CONTENT_TYPE_REGEX.test(mimeType))) {
@@ -95,30 +94,33 @@ var serveStatic = (options = { root: "" }) => {
95
94
  }
96
95
  }
97
96
  }
97
+ let result;
98
98
  const size = stats.size;
99
+ const range = c.req.header("range") || "";
99
100
  if (c.req.method == "HEAD" || c.req.method == "OPTIONS") {
100
101
  c.header("Content-Length", size.toString());
101
102
  c.status(200);
102
- return c.body(null);
103
- }
104
- const range = c.req.header("range") || "";
105
- if (!range) {
103
+ result = c.body(null);
104
+ } else if (!range) {
106
105
  c.header("Content-Length", size.toString());
107
- return c.body(createStreamBody(createReadStream(path)), 200);
108
- }
109
- c.header("Accept-Ranges", "bytes");
110
- c.header("Date", stats.birthtime.toUTCString());
111
- const parts = range.replace(/bytes=/, "").split("-", 2);
112
- const start = parseInt(parts[0], 10) || 0;
113
- let end = parseInt(parts[1], 10) || size - 1;
114
- if (size < end - start + 1) {
115
- end = size - 1;
106
+ result = c.body(createStreamBody(createReadStream(path)), 200);
107
+ } else {
108
+ c.header("Accept-Ranges", "bytes");
109
+ c.header("Date", stats.birthtime.toUTCString());
110
+ const parts = range.replace(/bytes=/, "").split("-", 2);
111
+ const start = parseInt(parts[0], 10) || 0;
112
+ let end = parseInt(parts[1], 10) || size - 1;
113
+ if (size < end - start + 1) {
114
+ end = size - 1;
115
+ }
116
+ const chunksize = end - start + 1;
117
+ const stream = createReadStream(path, { start, end });
118
+ c.header("Content-Length", chunksize.toString());
119
+ c.header("Content-Range", `bytes ${start}-${end}/${stats.size}`);
120
+ result = c.body(createStreamBody(stream), 206);
116
121
  }
117
- const chunksize = end - start + 1;
118
- const stream = createReadStream(path, { start, end });
119
- c.header("Content-Length", chunksize.toString());
120
- c.header("Content-Range", `bytes ${start}-${end}/${stats.size}`);
121
- return c.body(createStreamBody(stream), 206);
122
+ await options.onFound?.(path, c);
123
+ return result;
122
124
  };
123
125
  };
124
126
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hono/node-server",
3
- "version": "1.19.5",
3
+ "version": "1.19.6",
4
4
  "description": "Node.js Adapter for Hono",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",