| 123456789101112131415161718192021222324252627282930313233 | 
							- import { STATIC_SERVED_FILE_SUFFIX, CONTENT_TYPE_MAP } from '../../constant';
 
- import path from 'path';
 
- import { PluginOption, ViteDevServer } from 'vite';
 
- import fs from 'node:fs';
 
- /**
 
-  * Plugin to serve static assets (placed in /public) in case to import them directly
 
-  *
 
-  * @link https://github.com/vitejs/vite/discussions/10356
 
-  */
 
- export function configServerPlugin(): PluginOption {
 
-   return {
 
-     apply: 'serve',
 
-     configureServer(server: ViteDevServer) {
 
-       return () => {
 
-         server.middlewares.use(async (req, res, next) => {
 
-           STATIC_SERVED_FILE_SUFFIX.forEach((suffix) => {
 
-             if (req.originalUrl?.includes(suffix)) {
 
-               res.setHeader('Content-Type', CONTENT_TYPE_MAP.get(suffix) || 'application/application');
 
-               res.writeHead(200);
 
-               const [url] = (req.originalUrl || '')?.split('?');
 
-               res.write(fs.readFileSync(path.join(__dirname, `../../../public/${url}`)));
 
-               res.end();
 
-             }
 
-             next();
 
-           });
 
-         });
 
-       };
 
-     },
 
-     name: 'serve-static',
 
-   };
 
- }
 
 
  |