import * as fs from "node:fs"; import * as path from "node:path"; import {getAllMusics, getMusicMetadata, insertMusicFile, insertMusicMetadata} from "../services/musics.services.js"; export async function scan(req, res) { const dir = process.env.DATA_PATH; const content = fs.readdirSync(path.join(dir, "import"), 'utf8'); const inBase = await getAllMusics(); console.log("MUSIC IN BASE"); console.log(inBase.rows); if (content.length > 1) { res.status(400).json({ "error": "400", "message": "Too many files" }) } const discogs_metadata = await getMusicMetadata(content[0]); const filename = content[0].split('.')[0]; const file_id = await insertMusicFile(content[0]) console.log("FILE ID") console.log(file_id.rows[0].id); const metadata = { name: filename.split('---')[0], artist: filename.split('---')[1], album: discogs_metadata.results[0].title, cover: discogs_metadata.results[0]["cover_image"], file: file_id.rows[0].id } const meta = await insertMusicMetadata(metadata) res.status(200).json(meta); }