@tasenor/common-node 1.10.14 → 1.10.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -17,7 +17,7 @@ export declare class BookkeeperImporter {
17
17
  * @param file Path to the JSON-file.
18
18
  * @returns Saved value.
19
19
  */
20
- readJson(file: TsvFilePath): Promise<Value>;
20
+ readJson<T = Value>(file: TsvFilePath): Promise<T>;
21
21
  /**
22
22
  * Read the version number from the file.
23
23
  * @param file Path to the version file.
@@ -65,7 +65,7 @@ export declare class BookkeeperImporter {
65
65
  * @param db Database connection.
66
66
  * @param file Path to the importers file.
67
67
  */
68
- setImporters(db: KnexDatabase, file: JsonFilePath): Promise<void>;
68
+ setImporters(db: KnexDatabase, configPath: JsonFilePath, importPaths: JsonFilePath[]): Promise<void>;
69
69
  /**
70
70
  * Remove all data from all tables.
71
71
  * @param db Database connection.
@@ -4,6 +4,7 @@ import fs from 'fs';
4
4
  import { system } from '..';
5
5
  import { log, error } from '@tasenor/common';
6
6
  import { DB } from './DB';
7
+ // TODO: Hmm, the create() is more confusing that simpy using `as Type`?
7
8
  import { create } from 'ts-opaque';
8
9
  /**
9
10
  * Implementation of the database backup file reading.
@@ -302,10 +303,26 @@ export class BookkeeperImporter {
302
303
  * @param db Database connection.
303
304
  * @param file Path to the importers file.
304
305
  */
305
- async setImporters(db, file) {
306
- const importers = await this.readJson(file);
307
- for (const importer of importers) {
308
- await db('importers').insert(importer);
306
+ async setImporters(db, configPath, importPaths) {
307
+ const config = await this.readJson(configPath);
308
+ const name = path.basename(path.dirname(configPath));
309
+ const importer = await db('importers').insert({ name, config }).returning('id');
310
+ const importerId = importer[0].id;
311
+ for (const importPath of importPaths) {
312
+ const process = await this.readJson(importPath);
313
+ const files = process.files || [];
314
+ const steps = process.steps || [];
315
+ delete process.files;
316
+ delete process.steps;
317
+ process.ownerId = importerId;
318
+ const inserted = await db('processes').insert(process).returning('id');
319
+ const processId = inserted[0].id;
320
+ for (const file of files) {
321
+ await db('process_files').insert({ processId, ...file });
322
+ }
323
+ for (const step of steps) {
324
+ await db('process_steps').insert({ processId, ...step });
325
+ }
309
326
  }
310
327
  }
311
328
  /**
@@ -346,7 +363,7 @@ export class BookkeeperImporter {
346
363
  }
347
364
  await this.clearEverything(userDb);
348
365
  await this.setConfig(userDb, conf);
349
- const files = glob.sync(path.join(out, 'accounts', '*'));
366
+ const files = glob.sync(path.join(out, 'accounts', '*.tsv'));
350
367
  await this.setAccounts(userDb, files);
351
368
  const periodsPath = path.join(out, 'periods.tsv');
352
369
  await this.setPeriods(userDb, create(periodsPath));
@@ -355,8 +372,12 @@ export class BookkeeperImporter {
355
372
  const tagsPath = path.join(out, 'tags.tsv');
356
373
  await this.setTags(userDb, create(tagsPath));
357
374
  if ((this.VERSION || 0) >= 3) {
358
- const importersPath = path.join(out, 'importers.json');
359
- await this.setImporters(userDb, create(importersPath));
375
+ const configPaths = glob.sync(path.join(out, 'importers', '*', 'config.json'));
376
+ for (const configPath of configPaths) {
377
+ const importerName = path.basename(path.dirname(configPath));
378
+ const imporPaths = glob.sync(path.join(out, 'importers', importerName, '[0-9][0-9][0-9][0-9]-*.json'));
379
+ await this.setImporters(userDb, create(configPath), imporPaths);
380
+ }
360
381
  }
361
382
  }
362
383
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"BookkeeperImporter.js","sourceRoot":"","sources":["../../../src/database/BookkeeperImporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BookkeeperImporter.js","sourceRoot":"","sources":["../../../src/database/BookkeeperImporter.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { KnexDatabase } from '..';
2
- import { ParsedTsvFileData, BookkeeperConfig, DirectoryPath, TsvFilePath, JsonFilePath, Json, Value, TarFilePath } from '@tasenor/common';
2
+ import { ParsedTsvFileData, BookkeeperConfig, DirectoryPath, TsvFilePath, JsonFilePath, Json, TarFilePath, ProcessModelDetailedData, ImporterModelData } from '@tasenor/common';
3
3
  /**
4
4
  * Common functionality for exporters.
5
5
  */
@@ -43,24 +43,24 @@ export declare class Exporter {
43
43
  * Collect a structure with all importers and their configs.
44
44
  * @param db Knex connection to use.
45
45
  */
46
- getImporters(db: KnexDatabase): Promise<Value>;
46
+ getImporters(db: KnexDatabase): Promise<ImporterModelData[]>;
47
47
  /**
48
48
  * Collect a structure with all imports.
49
49
  * @param db Knex connection to use.
50
50
  */
51
- getImports(db: KnexDatabase): Promise<Value>;
51
+ getImports(db: KnexDatabase): Promise<ProcessModelDetailedData[]>;
52
52
  /**
53
53
  * Write prepared data to TSV file.
54
54
  * @param path Output file path.
55
55
  * @param lines Data content.
56
56
  */
57
- writeTsv(path: TsvFilePath, lines: ParsedTsvFileData): void;
57
+ writeTsv(tsvPath: TsvFilePath, lines: ParsedTsvFileData): void;
58
58
  /**
59
59
  * Write prepared data to JSON file.
60
60
  * @param path Output file path.
61
61
  * @param lines Data content.
62
62
  */
63
- writeJson(path: JsonFilePath, data: Json): void;
63
+ writeJson(jsonPath: JsonFilePath, data: Json): void;
64
64
  /**
65
65
  * Save complete backup of the Sqlite database to the given directory.
66
66
  * @param db Database connection.
@@ -73,18 +73,24 @@ export class Exporter {
73
73
  * @param path Output file path.
74
74
  * @param lines Data content.
75
75
  */
76
- writeTsv(path, lines) {
77
- log(`Writing ${path}`);
78
- fs.writeFileSync(path, lines.map(l => l.join('\t')).join('\n') + '\n');
76
+ writeTsv(tsvPath, lines) {
77
+ log(`Writing ${tsvPath}`);
78
+ if (!fs.existsSync(path.dirname(tsvPath))) {
79
+ fs.mkdirSync(path.dirname(tsvPath), { recursive: true });
80
+ }
81
+ fs.writeFileSync(tsvPath, lines.map(l => l.join('\t')).join('\n') + '\n');
79
82
  }
80
83
  /**
81
84
  * Write prepared data to JSON file.
82
85
  * @param path Output file path.
83
86
  * @param lines Data content.
84
87
  */
85
- writeJson(path, data) {
86
- log(`Writing ${path}`);
87
- fs.writeFileSync(path, JSON.stringify(data, null, 2) + '\n');
88
+ writeJson(jsonPath, data) {
89
+ log(`Writing ${jsonPath}`);
90
+ if (!fs.existsSync(path.dirname(jsonPath))) {
91
+ fs.mkdirSync(path.dirname(jsonPath), { recursive: true });
92
+ }
93
+ fs.writeFileSync(jsonPath, JSON.stringify(data, null, 2) + '\n');
88
94
  }
89
95
  /**
90
96
  * Save complete backup of the Sqlite database to the given directory.
@@ -111,9 +117,19 @@ export class Exporter {
111
117
  this.writeTsv(create(path.join(out, 'tags.tsv')), tags);
112
118
  if (this.VERSION >= 3) {
113
119
  const importers = await this.getImporters(db);
114
- this.writeJson(create(path.join(out, 'importers.json')), importers);
115
120
  const imports = await this.getImports(db);
116
- console.dir(imports, { depth: null });
121
+ for (const importer of importers) {
122
+ const importerDir = create(path.join(out, 'importers', importer.name));
123
+ const importerPath = create(path.join(importerDir, 'config.json'));
124
+ // TODO: Need type improvements.
125
+ this.writeJson(importerPath, importer.config);
126
+ }
127
+ for (const imp of imports) {
128
+ const importDir = create(path.join(out, 'importers', imp.ownerId + ''));
129
+ const importPath = create(path.join(importDir, imp.created + '.json'));
130
+ // TODO: Need type improvements.
131
+ this.writeJson(importPath, { ...imp, ownerId: undefined });
132
+ }
117
133
  }
118
134
  return conf;
119
135
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Exporter.js","sourceRoot":"","sources":["../../../src/export/Exporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Exporter.js","sourceRoot":"","sources":["../../../src/export/Exporter.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { BookkeeperConfig, DirectoryPath, ParsedTsvFileData, TarFilePath, Url, Value } from '@tasenor/common';
1
+ import { BookkeeperConfig, DirectoryPath, ImporterModelData, ParsedTsvFileData, ProcessModelDetailedData, TarFilePath, Url } from '@tasenor/common';
2
2
  import { KnexDatabase } from '../database';
3
3
  import { Exporter } from './Exporter';
4
4
  /**
@@ -6,6 +6,7 @@ import { Exporter } from './Exporter';
6
6
  */
7
7
  export declare class TasenorExporter extends Exporter {
8
8
  VERSION: number;
9
+ importerIdMap: Record<number, string>;
9
10
  /**
10
11
  * Read configuration information from database and construct compiled configuration.
11
12
  * @param db Knex connection to use.
@@ -41,12 +42,12 @@ export declare class TasenorExporter extends Exporter {
41
42
  * Collect a structure with all importers and their configs.
42
43
  * @param db Knex connection to use.
43
44
  */
44
- getImporters(db: KnexDatabase): Promise<Value>;
45
+ getImporters(db: KnexDatabase): Promise<ImporterModelData[]>;
45
46
  /**
46
47
  * Collect a structure with all imports and their results.
47
48
  * @param db Knex connection to use.
48
49
  */
49
- getImports(db: KnexDatabase): Promise<Value>;
50
+ getImports(db: KnexDatabase): Promise<ProcessModelDetailedData[]>;
50
51
  /**
51
52
  * Run the full backup for the given database.
52
53
  * @param dbUrl Database URL.
@@ -10,6 +10,8 @@ import fs from 'fs';
10
10
  */
11
11
  export class TasenorExporter extends Exporter {
12
12
  VERSION = 3;
13
+ // Mapping from document importer IDs to their name.
14
+ importerIdMap;
13
15
  /**
14
16
  * Read configuration information from database and construct compiled configuration.
15
17
  * @param db Knex connection to use.
@@ -114,15 +116,42 @@ export class TasenorExporter extends Exporter {
114
116
  * @param db Knex connection to use.
115
117
  */
116
118
  async getImporters(db) {
117
- return await db('importers').select('config', 'name').orderBy('id');
119
+ const importers = await db('importers').select('id', 'config', 'name').orderBy('id');
120
+ this.importerIdMap = {};
121
+ importers.forEach(i => {
122
+ this.importerIdMap[i.id] = i.name;
123
+ delete i.id;
124
+ });
125
+ return importers;
118
126
  }
119
127
  /**
120
128
  * Collect a structure with all imports and their results.
121
129
  * @param db Knex connection to use.
122
130
  */
123
131
  async getImports(db) {
124
- // TODO: Implement.
125
- return {};
132
+ const processes = await db('processes').orderBy('id');
133
+ const steps = await db('process_steps').orderBy('id');
134
+ const files = await db('process_files').orderBy('id');
135
+ const result = {};
136
+ processes.forEach(p => {
137
+ result[p.id || ''] = p;
138
+ result[p.id || ''].ownerId = this.importerIdMap[p.ownerId || ''];
139
+ result[p.id || ''].steps = [];
140
+ result[p.id || ''].files = [];
141
+ delete result[p.id || ''].id;
142
+ });
143
+ steps.forEach(s => {
144
+ result[s.processId || ''].steps.push(s);
145
+ delete s.id;
146
+ delete s.processId;
147
+ });
148
+ files.forEach(f => {
149
+ result[f.processId || ''].files.push(f);
150
+ delete f.id;
151
+ delete f.processId;
152
+ });
153
+ // TODO: Add segment ID mapping.
154
+ return Object.values(result);
126
155
  }
127
156
  /**
128
157
  * Run the full backup for the given database.
@@ -1 +1 @@
1
- {"version":3,"file":"TasenorExporter.js","sourceRoot":"","sources":["../../../src/export/TasenorExporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TasenorExporter.js","sourceRoot":"","sources":["../../../src/export/TasenorExporter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tasenor/common-node",
3
- "version": "1.10.14",
3
+ "version": "1.10.15",
4
4
  "description": "Common Node-parts of Tasenor project",
5
5
  "main": "src/index.ts",
6
6
  "types": "src/index.ts",
@@ -36,7 +36,7 @@
36
36
  "sqlite3": "^5.1.6",
37
37
  "tar": "^6.1.15",
38
38
  "ts-opaque": "^3.0.1",
39
- "@tasenor/common": "1.10.14"
39
+ "@tasenor/common": "1.10.15"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@jest/globals": "^29.6.1",
@@ -45,8 +45,8 @@
45
45
  "jest": "^29.6.1",
46
46
  "ts-jest": "^29.1.1",
47
47
  "typescript": "^5.1.6",
48
- "@tasenor/config": "1.10.14",
49
- "eslint-config-tasenor": "0.0.0"
48
+ "eslint-config-tasenor": "0.0.0",
49
+ "@tasenor/config": "1.10.15"
50
50
  },
51
51
  "scripts": {
52
52
  "ci": "pnpm run lint && pnpm run test",
@@ -2,8 +2,9 @@ import glob from 'fast-glob'
2
2
  import path from 'path'
3
3
  import fs from 'fs'
4
4
  import { system } from '..'
5
- import { log, BookkeeperConfig, DirectoryPath, Hostname, ProcessedTsvFileData, TarFilePath, TextFilePath, TsvFilePath, error, FilePath, JsonFilePath, Value, ID } from '@tasenor/common'
5
+ import { log, BookkeeperConfig, DirectoryPath, Hostname, ProcessedTsvFileData, TarFilePath, TextFilePath, TsvFilePath, error, FilePath, JsonFilePath, Value, ID, ProcessModelDetailedData, ProcessFileModelData, ProcessStepModelData } from '@tasenor/common'
6
6
  import { DB, KnexDatabase } from './DB'
7
+ // TODO: Hmm, the create() is more confusing that simpy using `as Type`?
7
8
  import { create } from 'ts-opaque'
8
9
 
9
10
  /**
@@ -43,10 +44,10 @@ export class BookkeeperImporter {
43
44
  * @param file Path to the JSON-file.
44
45
  * @returns Saved value.
45
46
  */
46
- async readJson(file: TsvFilePath): Promise<Value> {
47
+ async readJson<T = Value>(file: TsvFilePath): Promise<T> {
47
48
  log(`Reading ${file}.`)
48
49
  const content = fs.readFileSync(file).toString('utf-8')
49
- return JSON.parse(content)
50
+ return JSON.parse(content) as T
50
51
  }
51
52
 
52
53
  /**
@@ -317,10 +318,26 @@ export class BookkeeperImporter {
317
318
  * @param db Database connection.
318
319
  * @param file Path to the importers file.
319
320
  */
320
- async setImporters(db: KnexDatabase, file: JsonFilePath): Promise<void> {
321
- const importers = await this.readJson(file)
322
- for (const importer of importers as Value[]) {
323
- await db('importers').insert(importer)
321
+ async setImporters(db: KnexDatabase, configPath: JsonFilePath, importPaths: JsonFilePath[]): Promise<void> {
322
+ const config = await this.readJson(configPath)
323
+ const name = path.basename(path.dirname(configPath))
324
+ const importer = await db('importers').insert({ name, config }).returning('id')
325
+ const importerId = importer[0].id
326
+ for (const importPath of importPaths) {
327
+ const process: Partial<ProcessModelDetailedData> = await this.readJson(importPath)
328
+ const files: ProcessFileModelData[] = process.files || []
329
+ const steps: ProcessStepModelData[] = process.steps || []
330
+ delete process.files
331
+ delete process.steps
332
+ process.ownerId = importerId
333
+ const inserted = await db('processes').insert(process).returning('id')
334
+ const processId = inserted[0].id
335
+ for (const file of files) {
336
+ await db('process_files').insert({ processId, ...file })
337
+ }
338
+ for (const step of steps) {
339
+ await db('process_steps').insert({ processId, ...step })
340
+ }
324
341
  }
325
342
  }
326
343
 
@@ -365,7 +382,7 @@ export class BookkeeperImporter {
365
382
  }
366
383
  await this.clearEverything(userDb)
367
384
  await this.setConfig(userDb, conf)
368
- const files = glob.sync(path.join(out, 'accounts', '*'))
385
+ const files = glob.sync(path.join(out, 'accounts', '*.tsv'))
369
386
  await this.setAccounts(userDb, files as FilePath[])
370
387
  const periodsPath = path.join(out, 'periods.tsv')
371
388
  await this.setPeriods(userDb, create(periodsPath))
@@ -374,8 +391,12 @@ export class BookkeeperImporter {
374
391
  const tagsPath = path.join(out, 'tags.tsv')
375
392
  await this.setTags(userDb, create(tagsPath))
376
393
  if ((this.VERSION || 0) >= 3) {
377
- const importersPath = path.join(out, 'importers.json')
378
- await this.setImporters(userDb, create(importersPath))
394
+ const configPaths = glob.sync(path.join(out, 'importers', '*', 'config.json'))
395
+ for (const configPath of configPaths) {
396
+ const importerName = path.basename(path.dirname(configPath))
397
+ const imporPaths = glob.sync(path.join(out, 'importers', importerName, '[0-9][0-9][0-9][0-9]-*.json'))
398
+ await this.setImporters(userDb, create(configPath), imporPaths as JsonFilePath[])
399
+ }
379
400
  }
380
401
  }
381
402
 
@@ -2,7 +2,7 @@
2
2
  import path from 'path'
3
3
  import fs from 'fs'
4
4
  import { KnexDatabase } from '..'
5
- import { log, ParsedTsvFileData, BookkeeperConfig, DirectoryPath, TsvFilePath, JsonFilePath, Json, Value, TarFilePath } from '@tasenor/common'
5
+ import { log, ParsedTsvFileData, BookkeeperConfig, DirectoryPath, TsvFilePath, JsonFilePath, Json, Value, TarFilePath, ProcessModelDetailedData, ImporterModelData, FilePath } from '@tasenor/common'
6
6
  import { create } from 'ts-opaque'
7
7
  import { system } from '../system'
8
8
  import dayjs from 'dayjs'
@@ -67,7 +67,7 @@ export class Exporter {
67
67
  * Collect a structure with all importers and their configs.
68
68
  * @param db Knex connection to use.
69
69
  */
70
- async getImporters(db: KnexDatabase): Promise<Value> {
70
+ async getImporters(db: KnexDatabase): Promise<ImporterModelData[]> {
71
71
  throw new Error(`Exporter ${this.constructor.name} does not implement getImporters().`)
72
72
  }
73
73
 
@@ -75,7 +75,7 @@ export class Exporter {
75
75
  * Collect a structure with all imports.
76
76
  * @param db Knex connection to use.
77
77
  */
78
- async getImports(db: KnexDatabase): Promise<Value> {
78
+ async getImports(db: KnexDatabase): Promise<ProcessModelDetailedData[]> {
79
79
  throw new Error(`Exporter ${this.constructor.name} does not implement getImports().`)
80
80
  }
81
81
 
@@ -84,9 +84,12 @@ export class Exporter {
84
84
  * @param path Output file path.
85
85
  * @param lines Data content.
86
86
  */
87
- writeTsv(path: TsvFilePath, lines: ParsedTsvFileData): void {
88
- log(`Writing ${path}`)
89
- fs.writeFileSync(path, lines.map(l => l.join('\t')).join('\n') + '\n')
87
+ writeTsv(tsvPath: TsvFilePath, lines: ParsedTsvFileData): void {
88
+ log(`Writing ${tsvPath}`)
89
+ if (!fs.existsSync(path.dirname(tsvPath))) {
90
+ fs.mkdirSync(path.dirname(tsvPath), { recursive: true })
91
+ }
92
+ fs.writeFileSync(tsvPath, lines.map(l => l.join('\t')).join('\n') + '\n')
90
93
  }
91
94
 
92
95
  /**
@@ -94,9 +97,12 @@ export class Exporter {
94
97
  * @param path Output file path.
95
98
  * @param lines Data content.
96
99
  */
97
- writeJson(path: JsonFilePath, data: Json): void {
98
- log(`Writing ${path}`)
99
- fs.writeFileSync(path, JSON.stringify(data, null, 2) + '\n')
100
+ writeJson(jsonPath: JsonFilePath, data: Json): void {
101
+ log(`Writing ${jsonPath}`)
102
+ if (!fs.existsSync(path.dirname(jsonPath))) {
103
+ fs.mkdirSync(path.dirname(jsonPath), { recursive: true })
104
+ }
105
+ fs.writeFileSync(jsonPath, JSON.stringify(data, null, 2) + '\n')
100
106
  }
101
107
 
102
108
  /**
@@ -123,11 +129,22 @@ export class Exporter {
123
129
  this.writeTsv(create(path.join(out, 'entries.tsv')), entries)
124
130
  const tags = await this.getTags(db, out)
125
131
  this.writeTsv(create(path.join(out, 'tags.tsv')), tags)
132
+
126
133
  if (this.VERSION >= 3) {
127
134
  const importers = await this.getImporters(db)
128
- this.writeJson(create(path.join(out, 'importers.json')), importers)
129
135
  const imports = await this.getImports(db)
130
- console.dir(imports, { depth: null })
136
+ for (const importer of importers) {
137
+ const importerDir: DirectoryPath = create(path.join(out, 'importers', importer.name))
138
+ const importerPath: FilePath = create(path.join(importerDir, 'config.json'))
139
+ // TODO: Need type improvements.
140
+ this.writeJson(importerPath, importer.config as Value)
141
+ }
142
+ for (const imp of imports) {
143
+ const importDir: DirectoryPath = create(path.join(out, 'importers', imp.ownerId + ''))
144
+ const importPath: FilePath = create(path.join(importDir, imp.created + '.json'))
145
+ // TODO: Need type improvements.
146
+ this.writeJson(importPath, { ...imp, ownerId: undefined } as unknown as Value)
147
+ }
131
148
  }
132
149
 
133
150
  return conf
@@ -1,4 +1,4 @@
1
- import { Bookkeeper, BookkeeperConfig, DirectoryPath, log, ParsedTsvFileData, TarFilePath, Url, Value } from '@tasenor/common'
1
+ import { Bookkeeper, BookkeeperConfig, DirectoryPath, ImporterModelData, log, ParsedTsvFileData, ProcessFileModelData, ProcessModelData, ProcessModelDetailedData, ProcessStepModelData, TarFilePath, Url } from '@tasenor/common'
2
2
  import { DB, KnexDatabase } from '../database'
3
3
  import { Exporter } from './Exporter'
4
4
  import knex from 'knex'
@@ -13,6 +13,9 @@ export class TasenorExporter extends Exporter {
13
13
 
14
14
  VERSION = 3
15
15
 
16
+ // Mapping from document importer IDs to their name.
17
+ importerIdMap: Record<number, string>
18
+
16
19
  /**
17
20
  * Read configuration information from database and construct compiled configuration.
18
21
  * @param db Knex connection to use.
@@ -123,17 +126,48 @@ export class TasenorExporter extends Exporter {
123
126
  * Collect a structure with all importers and their configs.
124
127
  * @param db Knex connection to use.
125
128
  */
126
- async getImporters(db: KnexDatabase): Promise<Value> {
127
- return await db('importers').select('config', 'name').orderBy('id')
129
+ async getImporters(db: KnexDatabase): Promise<ImporterModelData[]> {
130
+ const importers = await db('importers').select('id', 'config', 'name').orderBy('id')
131
+ this.importerIdMap = {}
132
+ importers.forEach(i => {
133
+ this.importerIdMap[i.id] = i.name
134
+ delete i.id
135
+ })
136
+ return importers
128
137
  }
129
138
 
130
139
  /**
131
140
  * Collect a structure with all imports and their results.
132
141
  * @param db Knex connection to use.
133
142
  */
134
- async getImports(db: KnexDatabase): Promise<Value> {
135
- // TODO: Implement.
136
- return {}
143
+ async getImports(db: KnexDatabase): Promise<ProcessModelDetailedData[]> {
144
+ const processes: ProcessModelData[] = await db('processes').orderBy('id')
145
+ const steps: Partial<ProcessStepModelData>[] = await db('process_steps').orderBy('id')
146
+ const files: Partial<ProcessFileModelData>[] = await db('process_files').orderBy('id')
147
+
148
+ const result: Record<number, ProcessModelDetailedData> = {}
149
+ processes.forEach(p => {
150
+ result[p.id || ''] = p
151
+ result[p.id || ''].ownerId = this.importerIdMap[p.ownerId || '']
152
+ result[p.id || ''].steps = []
153
+ result[p.id || ''].files = []
154
+ delete result[p.id || ''].id
155
+ })
156
+
157
+ steps.forEach(s => {
158
+ result[s.processId || ''].steps.push(s)
159
+ delete s.id
160
+ delete s.processId
161
+ })
162
+
163
+ files.forEach(f => {
164
+ result[f.processId || ''].files.push(f)
165
+ delete f.id
166
+ delete f.processId
167
+ })
168
+
169
+ // TODO: Add segment ID mapping.
170
+ return Object.values(result)
137
171
  }
138
172
 
139
173
  /**