From 25a109d9ea27ad3a76fdce14bba283e953af9bce Mon Sep 17 00:00:00 2001 From: Divy Srivastava Date: Fri, 19 Aug 2022 15:54:54 +0530 Subject: chore(bench): add flash router benchmarks (#15495) --- .../dist/middleware/serve-static/serve-static.js | 40 ++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 cli/bench/testdata/npm/hono/dist/middleware/serve-static/serve-static.js (limited to 'cli/bench/testdata/npm/hono/dist/middleware/serve-static/serve-static.js') diff --git a/cli/bench/testdata/npm/hono/dist/middleware/serve-static/serve-static.js b/cli/bench/testdata/npm/hono/dist/middleware/serve-static/serve-static.js new file mode 100644 index 000000000..a647b7015 --- /dev/null +++ b/cli/bench/testdata/npm/hono/dist/middleware/serve-static/serve-static.js @@ -0,0 +1,40 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.serveStatic = void 0; +const cloudflare_1 = require("../../utils/cloudflare"); +const filepath_1 = require("../../utils/filepath"); +const mime_1 = require("../../utils/mime"); +const DEFAULT_DOCUMENT = 'index.html'; +// This middleware is available only on Cloudflare Workers. +const serveStatic = (options = { root: '' }) => { + return async (c, next) => { + // Do nothing if Response is already set + if (c.res && c.finalized) { + await next(); + } + const url = new URL(c.req.url); + const path = (0, filepath_1.getFilePath)({ + filename: options.path ?? url.pathname, + root: options.root, + defaultDocument: DEFAULT_DOCUMENT, + }); + const content = await (0, cloudflare_1.getContentFromKVAsset)(path, { + manifest: options.manifest, + namespace: options.namespace ? options.namespace : c.env ? c.env.__STATIC_CONTENT : undefined, + }); + if (content) { + const mimeType = (0, mime_1.getMimeType)(path); + if (mimeType) { + c.header('Content-Type', mimeType); + } + // Return Response object + return c.body(content); + } + else { + console.warn(`Static file: ${path} is not found`); + await next(); + } + return; + }; +}; +exports.serveStatic = serveStatic; -- cgit v1.2.3