@tasenor/common-node 1.12.0 → 1.13.0

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.
Files changed (115) hide show
  1. package/dist/src/cli/cli.js.map +1 -1
  2. package/dist/src/cli/mini-util.d.ts +1 -1
  3. package/dist/src/cli/mini-util.js.map +1 -1
  4. package/dist/src/commands/account.js.map +1 -1
  5. package/dist/src/commands/balance.js.map +1 -1
  6. package/dist/src/commands/db.js.map +1 -1
  7. package/dist/src/commands/entry.js.map +1 -1
  8. package/dist/src/commands/import.js.map +1 -1
  9. package/dist/src/commands/importer.js +1 -1
  10. package/dist/src/commands/importer.js.map +1 -1
  11. package/dist/src/commands/index.js.map +1 -1
  12. package/dist/src/commands/period.js.map +1 -1
  13. package/dist/src/commands/plugin.js.map +1 -1
  14. package/dist/src/commands/report.js.map +1 -1
  15. package/dist/src/commands/settings.js.map +1 -1
  16. package/dist/src/commands/stock.js.map +1 -1
  17. package/dist/src/commands/tag.js.map +1 -1
  18. package/dist/src/commands/tx.js.map +1 -1
  19. package/dist/src/commands/user.js.map +1 -1
  20. package/dist/src/data/csv.d.ts +5 -0
  21. package/dist/src/data/csv.js +28 -0
  22. package/dist/src/data/csv.js.map +1 -0
  23. package/dist/src/data/index.d.ts +1 -0
  24. package/dist/src/data/index.js +1 -0
  25. package/dist/src/data/index.js.map +1 -1
  26. package/dist/src/data/utils.js.map +1 -1
  27. package/dist/src/database/BookkeeperImporter.d.ts +1 -0
  28. package/dist/src/database/BookkeeperImporter.js +13 -12
  29. package/dist/src/database/BookkeeperImporter.js.map +1 -1
  30. package/dist/src/database/DB.js +2 -1
  31. package/dist/src/database/DB.js.map +1 -1
  32. package/dist/src/export/Exporter.d.ts +2 -2
  33. package/dist/src/export/Exporter.js +0 -2
  34. package/dist/src/export/Exporter.js.map +1 -1
  35. package/dist/src/export/TasenorExporter.js.map +1 -1
  36. package/dist/src/export/TilitinExporter.js.map +1 -1
  37. package/dist/src/import/TextFileProcessHandler.js +2 -2
  38. package/dist/src/import/TextFileProcessHandler.js.map +1 -1
  39. package/dist/src/import/TransactionImportConnector.js.map +1 -1
  40. package/dist/src/import/TransactionImportHandler.d.ts +4 -26
  41. package/dist/src/import/TransactionImportHandler.js +8 -27
  42. package/dist/src/import/TransactionImportHandler.js.map +1 -1
  43. package/dist/src/import/TransactionRules.d.ts +1 -172
  44. package/dist/src/import/TransactionRules.js +8 -172
  45. package/dist/src/import/TransactionRules.js.map +1 -1
  46. package/dist/src/import/TransactionUI.js +16 -2
  47. package/dist/src/import/TransactionUI.js.map +1 -1
  48. package/dist/src/import/TransferAnalyzer.js +27 -6
  49. package/dist/src/import/TransferAnalyzer.js.map +1 -1
  50. package/dist/src/net/git.d.ts +10 -1
  51. package/dist/src/net/git.js +45 -13
  52. package/dist/src/net/git.js.map +1 -1
  53. package/dist/src/net/middleware.js.map +1 -1
  54. package/dist/src/net/tokens.js.map +1 -1
  55. package/dist/src/net/vault.js.map +1 -1
  56. package/dist/src/plugins/BackendPlugin.d.ts +1 -1
  57. package/dist/src/plugins/BackendPlugin.js.map +1 -1
  58. package/dist/src/plugins/DataPlugin.js.map +1 -1
  59. package/dist/src/plugins/ImportPlugin.d.ts +4 -1
  60. package/dist/src/plugins/ImportPlugin.js +2 -0
  61. package/dist/src/plugins/ImportPlugin.js.map +1 -1
  62. package/dist/src/plugins/LanguageBackendPlugin.d.ts +15 -0
  63. package/dist/src/plugins/LanguageBackendPlugin.js +18 -0
  64. package/dist/src/plugins/LanguageBackendPlugin.js.map +1 -0
  65. package/dist/src/plugins/ReportPlugin.d.ts +8 -3
  66. package/dist/src/plugins/ReportPlugin.js +38 -4
  67. package/dist/src/plugins/ReportPlugin.js.map +1 -1
  68. package/dist/src/plugins/ServicePlugin.js.map +1 -1
  69. package/dist/src/plugins/index.d.ts +1 -0
  70. package/dist/src/plugins/index.js +1 -0
  71. package/dist/src/plugins/index.js.map +1 -1
  72. package/dist/src/plugins/plugins.d.ts +2 -2
  73. package/dist/src/plugins/plugins.js +27 -5
  74. package/dist/src/plugins/plugins.js.map +1 -1
  75. package/dist/src/process/Process.js +4 -4
  76. package/dist/src/process/Process.js.map +1 -1
  77. package/dist/src/process/ProcessFile.js.map +1 -1
  78. package/dist/src/process/ProcessHandler.d.ts +0 -6
  79. package/dist/src/process/ProcessStep.js.map +1 -1
  80. package/dist/src/process/ProcessingSystem.d.ts +2 -8
  81. package/dist/src/process/ProcessingSystem.js +17 -31
  82. package/dist/src/process/ProcessingSystem.js.map +1 -1
  83. package/dist/src/reports/conversions.js +0 -3
  84. package/dist/src/reports/conversions.js.map +1 -1
  85. package/dist/src/server/ISPDemoServer.js.map +1 -1
  86. package/dist/src/server/api.js.map +1 -1
  87. package/dist/src/server/index.d.ts +1 -0
  88. package/dist/src/server/index.js +1 -0
  89. package/dist/src/server/index.js.map +1 -1
  90. package/dist/src/server/router.js.map +1 -1
  91. package/dist/src/server/server.d.ts +11 -0
  92. package/dist/src/server/server.js +39 -0
  93. package/dist/src/server/server.js.map +1 -0
  94. package/dist/src/system.d.ts +1 -1
  95. package/dist/src/system.js +8 -3
  96. package/dist/src/system.js.map +1 -1
  97. package/package.json +26 -27
  98. package/src/cli/mini-util.ts +6 -6
  99. package/src/commands/importer.ts +1 -1
  100. package/src/commands/index.ts +1 -1
  101. package/src/database/DB.ts +3 -1
  102. package/src/export/Exporter.ts +5 -7
  103. package/src/import/TransactionImportHandler.ts +9 -27
  104. package/src/import/TransactionRules.ts +8 -172
  105. package/src/import/TransactionUI.ts +16 -2
  106. package/src/import/TransferAnalyzer.ts +38 -7
  107. package/src/plugins/BackendPlugin.ts +1 -1
  108. package/src/plugins/ImportPlugin.ts +2 -2
  109. package/src/plugins/LanguageBackendPlugin.ts +22 -0
  110. package/src/plugins/ReportPlugin.ts +40 -4
  111. package/src/plugins/index.ts +1 -0
  112. package/src/process/Process.ts +4 -4
  113. package/src/process/ProcessHandler.ts +0 -7
  114. package/src/process/ProcessingSystem.ts +18 -31
  115. package/src/reports/conversions.ts +0 -3
@@ -1,7 +1,7 @@
1
1
  import { Process } from './Process'
2
2
  import { ProcessFile, ProcessFileData } from './ProcessFile'
3
3
  import { ProcessStep } from './ProcessStep'
4
- import { ProcessHandler, ProcessHandlerMap } from './ProcessHandler'
4
+ import { ProcessHandler } from './ProcessHandler'
5
5
  import { ProcessConnector } from './ProcessConnector'
6
6
  import { ProcessName, ProcessConfig, ID } from '@tasenor/common'
7
7
  import { InvalidArgument } from '../error'
@@ -13,7 +13,7 @@ import { KnexDatabase } from '../database'
13
13
  export class ProcessingSystem {
14
14
 
15
15
  db: KnexDatabase
16
- handlers: ProcessHandlerMap = {}
16
+ handler: ProcessHandler
17
17
  connector: ProcessConnector
18
18
  logger: {
19
19
  info: (...msg) => void
@@ -54,14 +54,14 @@ export class ProcessingSystem {
54
54
  if (!handler.name) {
55
55
  throw new InvalidArgument('A handler without name cannot be registered.')
56
56
  }
57
- if (handler.name in this.handlers) {
58
- throw new InvalidArgument(`The handler '${handler.name}' is already defined.`)
57
+ if (this.handler) {
58
+ throw new InvalidArgument(`The handler '${this.handler.name}' is already defined.`)
59
59
  }
60
60
  if (handler.name.length > 32) {
61
61
  throw new InvalidArgument(`The handler name '${handler.name}' is too long.`)
62
62
  }
63
63
  handler.system = this
64
- this.handlers[handler.name] = handler
64
+ this.handler = handler
65
65
  }
66
66
 
67
67
  /**
@@ -90,23 +90,22 @@ export class ProcessingSystem {
90
90
 
91
91
  // Find the handler.
92
92
  let selectedHandler: ProcessHandler | null = null
93
- for (const handler of Object.values(this.handlers)) {
94
- try {
95
- const version = handler.canHandle(processFile)
96
- if (version) {
97
- if (version === true) {
98
- handler.version = 1
99
- } else {
100
- handler.version = version
101
- }
102
- selectedHandler = handler
103
- break
93
+
94
+ try {
95
+ const version = this.handler.canHandle(processFile)
96
+ if (version) {
97
+ if (version === true) {
98
+ this.handler.version = 1
99
+ } else {
100
+ this.handler.version = version
104
101
  }
105
- } catch (err) {
106
- await process.crashed(err)
107
- return process
102
+ selectedHandler = this.handler
108
103
  }
104
+ } catch (err) {
105
+ await process.crashed(err)
106
+ return process
109
107
  }
108
+
110
109
  if (!selectedHandler) {
111
110
  await process.crashed(new InvalidArgument(`No handler found for the file ${file.name} of type ${file.type}.`))
112
111
  return process
@@ -183,18 +182,6 @@ export class ProcessingSystem {
183
182
  await step.process.updateStatus()
184
183
  }
185
184
 
186
- /**
187
- * Get the named handler or throw an error if not registered.
188
- * @param name
189
- * @returns
190
- */
191
- getHandler(name: string): ProcessHandler {
192
- if (!(name in this.handlers)) {
193
- throw new InvalidArgument(`There is no handler for '${name}'.`)
194
- }
195
- return this.handlers[name]
196
- }
197
-
198
185
  /**
199
186
  * Load the process data from the disk.
200
187
  * @param id
@@ -39,9 +39,6 @@ export function data2csv(report, options: ReportQueryParams) {
39
39
  }
40
40
 
41
41
  data.forEach((entry) => {
42
- if (entry.paragraphBreak) {
43
- return
44
- }
45
42
  line = {}
46
43
  columns.forEach((column) => {
47
44
  if (entry.pageBreak || entry.paragraphBreak) {