From 35fb1696b013c0b600c277feaccd88cea096692c Mon Sep 17 00:00:00 2001 From: stevereis <stevereis93@gmail.com> Date: Fri, 22 Oct 2021 09:29:11 +0200 Subject: [PATCH] Add comments and clean --- api/.env.defaults | 2 +- .../engine/connectors/csv/main.connector.ts | 22 +++++++++---------- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/api/.env.defaults b/api/.env.defaults index 7aa23bc..e94e8c2 100644 --- a/api/.env.defaults +++ b/api/.env.defaults @@ -1,3 +1,3 @@ ENGINE_TYPE=csv -ENGINE_BASE_URL=http://127.0.0.1:8080/services/ +ENGINE_BASE_URL=https://docs.google.com/spreadsheets/d/1yjslZQCOMCxkjr4xQ-NmTMNEjhpdmZgijbn83za80Ak/export?format=tsv GATEWAY_PORT=8081 \ No newline at end of file diff --git a/api/src/engine/connectors/csv/main.connector.ts b/api/src/engine/connectors/csv/main.connector.ts index 41e141d..eedb7ae 100644 --- a/api/src/engine/connectors/csv/main.connector.ts +++ b/api/src/engine/connectors/csv/main.connector.ts @@ -55,8 +55,7 @@ export default class CSVService implements IEngineService { } async getDomains(): Promise<Domain[]> { - const path = - 'https://docs.google.com/spreadsheets/d/1yjslZQCOMCxkjr4xQ-NmTMNEjhpdmZgijbn83za80Ak/export?format=tsv'; + const path = this.options.baseurl; const { data } = await firstValueFrom(this.httpService.get<string>(path)); @@ -65,12 +64,12 @@ export default class CSVService implements IEngineService { .map((row) => row.split('\t').filter((i) => i)) .filter((row) => row.length >= 2); - rows.shift(); // headers + rows.shift(); // remove headers const vars = []; const groups: Dictionary<Group> = {}; const rootGroup: Group = { - id: 'root', + id: 'Global group', groups: [], }; @@ -80,7 +79,7 @@ export default class CSVService implements IEngineService { label: row[0], }; - row.shift(); + row.shift(); // get ride of the variable name, keep only groups vars.push(variable); @@ -97,9 +96,9 @@ export default class CSVService implements IEngineService { }; }); - const groupId = row[row.length - 1].toLowerCase(); + const groupId = row[row.length - 1].toLowerCase(); // group's variable container - groups[groupId].variables = [...groups[groupId].variables, variable.id]; + groups[groupId].variables.push(variable.id); // add variable row .reverse() @@ -109,20 +108,19 @@ export default class CSVService implements IEngineService { if (i !== row.length - 1) { const parentId = row[i + 1].toLowerCase(); - groups[parentId].groups = groups[parentId].groups - ? [...new Set([...groups[parentId].groups, groupId])] - : [groupId]; + if (groups[parentId].groups.indexOf(groupId) === -1) + groups[parentId].groups.push(groupId); } }); }); - rootGroup.groups = [...new Set(rootGroup.groups)]; + rootGroup.groups = [...new Set(rootGroup.groups)]; // get distinct values return [ { id: 'Dummy', label: 'Dummy', - datasets: [{ id: 'DummyDataset', label: 'DummyDataset' }], + datasets: [{ id: 'DummyDataset', label: 'Dummy Dataset' }], groups: Object.values(groups), rootGroup: rootGroup, variables: vars, -- GitLab