aboutsummaryrefslogtreecommitdiff
path: root/src/server/ApiManagers/DataVizManager.ts
diff options
context:
space:
mode:
authormehekj <mehek.jethani@gmail.com>2023-04-10 16:08:58 -0400
committermehekj <mehek.jethani@gmail.com>2023-04-10 16:08:58 -0400
commitbff54ce7283f7a50a8c4184ea0543b7a2d338e25 (patch)
tree26af049cb8549aa75cc376524e123b78adf5a94f /src/server/ApiManagers/DataVizManager.ts
parent7934c38ed641f4a10cd008fe415a50aef1240e10 (diff)
parent3cb7f85b23eb0ae3a432bbe15b8a2cda37290ce2 (diff)
Merge branch 'master' into schema-mehek
Diffstat (limited to 'src/server/ApiManagers/DataVizManager.ts')
-rw-r--r--src/server/ApiManagers/DataVizManager.ts26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/server/ApiManagers/DataVizManager.ts b/src/server/ApiManagers/DataVizManager.ts
new file mode 100644
index 000000000..0d43130d1
--- /dev/null
+++ b/src/server/ApiManagers/DataVizManager.ts
@@ -0,0 +1,26 @@
+import { csvParser, csvToString } from "../DataVizUtils";
+import { Method, _success } from "../RouteManager";
+import ApiManager, { Registration } from "./ApiManager";
+import { Directory, serverPathToFile } from "./UploadManager";
+import * as path from 'path';
+
+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<void>(resolve => {
+ const name = path.basename(uri);
+ const sPath = serverPathToFile(Directory.csv, name);
+ const parsedCsv = csvParser(csvToString(sPath));
+ _success(res, parsedCsv);
+ resolve();
+ });
+ }
+ });
+ }
+
+} \ No newline at end of file