import * as path from 'path'; import { csvParser, csvToString } from '../DataVizUtils'; import { Method, _success } from '../RouteManager'; import { Directory, serverPathToFile } from '../SocketData'; import ApiManager, { Registration } from './ApiManager'; export default class DataVizManager extends ApiManager { protected initialize(register: Registration): void { register({ method: Method.GET, subscription: '/csvData', secureHandler: async ({ req, res }) => { const uri = req.query.uri as string; return new Promise(resolve => { const name = path.basename(uri); const sPath = serverPathToFile(Directory.csv, name); const parsedCsv = csvParser(csvToString(sPath)); _success(res, parsedCsv); resolve(); }); }, }); } }