fix sampler on windows

This commit is contained in:
Renzo Torr- 2024-05-21 17:54:41 -03:00
parent 841d897d0a
commit 2d3a9b800f

View File

@ -4,7 +4,7 @@ import cowsay from 'cowsay';
import { createReadStream } from 'fs'; import { createReadStream } from 'fs';
import { readdir } from 'fs/promises'; import { readdir } from 'fs/promises';
import http from 'http'; import http from 'http';
import { join } from 'path'; import { join, sep } from 'path';
import os from 'os'; import os from 'os';
// eslint-disable-next-line // eslint-disable-next-line
@ -45,16 +45,16 @@ async function getFilesInDirectory(directory) {
} }
async function getBanks(directory) { async function getBanks(directory) {
// const directory = resolve(__dirname, '.');
let files = await getFilesInDirectory(directory); let files = await getFilesInDirectory(directory);
let banks = {}; let banks = {};
let separator = process.platform === 'win32' ? '\\' : '/'; directory = directory.split(sep).join('/');
files = files.map((url) => { files = files.map((path) => path.split(sep).join('/'));
const [bank] = url.split(separator).slice(-2); files = files.map((path) => {
const [bank] = path.split('/').slice(-2);
banks[bank] = banks[bank] || []; banks[bank] = banks[bank] || [];
url = url.replace(directory, ''); const relativeUrl = path.replace(directory, '');
banks[bank].push(url); banks[bank].push(relativeUrl);
return url; return relativeUrl;
}); });
banks._base = `http://localhost:5432`; banks._base = `http://localhost:5432`;
return { banks, files }; return { banks, files };
@ -75,7 +75,7 @@ const server = http.createServer(async (req, res) => {
res.end('File not found'); res.end('File not found');
return; return;
} }
const filePath = join(directory, subpath); const filePath = join(directory, subpath.split('/').join(sep));
const readStream = createReadStream(filePath); const readStream = createReadStream(filePath);
readStream.on('error', (err) => { readStream.on('error', (err) => {
res.statusCode = 500; res.statusCode = 500;