Expand application functionality
This commit is contained in:
+8
-2
@@ -36,6 +36,11 @@ const staticFiles = new Set([
|
||||
'/src/client/region-select.mjs',
|
||||
'/src/data/china-regions.mjs'
|
||||
]);
|
||||
const vendorStaticFiles = new Map([
|
||||
['/vendor/ckeditor5/ckeditor5.js', join(root, 'node_modules', 'ckeditor5', 'dist', 'browser', 'ckeditor5.js')],
|
||||
['/vendor/ckeditor5/ckeditor5.css', join(root, 'node_modules', 'ckeditor5', 'dist', 'browser', 'ckeditor5.css')],
|
||||
['/vendor/ckeditor5/translations/zh-cn.js', join(root, 'node_modules', 'ckeditor5', 'dist', 'translations', 'zh-cn.js')]
|
||||
]);
|
||||
const mimeTypes = {
|
||||
'.html': 'text/html; charset=utf-8',
|
||||
'.css': 'text/css; charset=utf-8',
|
||||
@@ -865,8 +870,9 @@ const handleAdmin = createAdminRoutes(routeContext);
|
||||
|
||||
async function serveStatic(response, pathname) {
|
||||
const requestPath = pathname === '/' ? '/index.html' : pathname;
|
||||
if (!staticFiles.has(requestPath)) return false;
|
||||
const filePath = normalize(join(root, requestPath.replace(/^\/+/, '')));
|
||||
const filePath = vendorStaticFiles.get(requestPath)
|
||||
|| (staticFiles.has(requestPath) ? normalize(join(root, requestPath.replace(/^\/+/, ''))) : null);
|
||||
if (!filePath) return false;
|
||||
const body = await readFile(filePath);
|
||||
response.writeHead(200, { 'Content-Type': mimeTypes[extname(filePath)] || 'application/octet-stream', 'Cache-Control': 'no-cache' });
|
||||
response.end(body);
|
||||
|
||||
Reference in New Issue
Block a user