@tasenor/common-node 1.9.30 → 1.9.32

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 (248) hide show
  1. package/package.json +2 -2
  2. package/dist/migrations/01_init.js +0 -60
  3. package/dist/tasenor-common-node/src/cli.d.ts +0 -81
  4. package/dist/tasenor-common-node/src/cli.js +0 -242
  5. package/dist/tasenor-common-node/src/cli.js.map +0 -1
  6. package/dist/tasenor-common-node/src/commands/account.d.ts +0 -12
  7. package/dist/tasenor-common-node/src/commands/account.js +0 -58
  8. package/dist/tasenor-common-node/src/commands/account.js.map +0 -1
  9. package/dist/tasenor-common-node/src/commands/balance.d.ts +0 -11
  10. package/dist/tasenor-common-node/src/commands/balance.js +0 -117
  11. package/dist/tasenor-common-node/src/commands/balance.js.map +0 -1
  12. package/dist/tasenor-common-node/src/commands/db.d.ts +0 -14
  13. package/dist/tasenor-common-node/src/commands/db.js +0 -69
  14. package/dist/tasenor-common-node/src/commands/db.js.map +0 -1
  15. package/dist/tasenor-common-node/src/commands/entry.d.ts +0 -13
  16. package/dist/tasenor-common-node/src/commands/entry.js +0 -106
  17. package/dist/tasenor-common-node/src/commands/entry.js.map +0 -1
  18. package/dist/tasenor-common-node/src/commands/import.d.ts +0 -17
  19. package/dist/tasenor-common-node/src/commands/import.js +0 -140
  20. package/dist/tasenor-common-node/src/commands/import.js.map +0 -1
  21. package/dist/tasenor-common-node/src/commands/importer.d.ts +0 -13
  22. package/dist/tasenor-common-node/src/commands/importer.js +0 -71
  23. package/dist/tasenor-common-node/src/commands/importer.js.map +0 -1
  24. package/dist/tasenor-common-node/src/commands/index.d.ts +0 -191
  25. package/dist/tasenor-common-node/src/commands/index.js +0 -482
  26. package/dist/tasenor-common-node/src/commands/index.js.map +0 -1
  27. package/dist/tasenor-common-node/src/commands/period.d.ts +0 -12
  28. package/dist/tasenor-common-node/src/commands/period.js +0 -48
  29. package/dist/tasenor-common-node/src/commands/period.js.map +0 -1
  30. package/dist/tasenor-common-node/src/commands/plugin.d.ts +0 -15
  31. package/dist/tasenor-common-node/src/commands/plugin.js +0 -78
  32. package/dist/tasenor-common-node/src/commands/plugin.js.map +0 -1
  33. package/dist/tasenor-common-node/src/commands/report.d.ts +0 -11
  34. package/dist/tasenor-common-node/src/commands/report.js +0 -96
  35. package/dist/tasenor-common-node/src/commands/report.js.map +0 -1
  36. package/dist/tasenor-common-node/src/commands/settings.d.ts +0 -10
  37. package/dist/tasenor-common-node/src/commands/settings.js +0 -64
  38. package/dist/tasenor-common-node/src/commands/settings.js.map +0 -1
  39. package/dist/tasenor-common-node/src/commands/stock.d.ts +0 -8
  40. package/dist/tasenor-common-node/src/commands/stock.js +0 -73
  41. package/dist/tasenor-common-node/src/commands/stock.js.map +0 -1
  42. package/dist/tasenor-common-node/src/commands/tag.d.ts +0 -13
  43. package/dist/tasenor-common-node/src/commands/tag.js +0 -89
  44. package/dist/tasenor-common-node/src/commands/tag.js.map +0 -1
  45. package/dist/tasenor-common-node/src/commands/tx.d.ts +0 -12
  46. package/dist/tasenor-common-node/src/commands/tx.js +0 -81
  47. package/dist/tasenor-common-node/src/commands/tx.js.map +0 -1
  48. package/dist/tasenor-common-node/src/commands/user.d.ts +0 -12
  49. package/dist/tasenor-common-node/src/commands/user.js +0 -52
  50. package/dist/tasenor-common-node/src/commands/user.js.map +0 -1
  51. package/dist/tasenor-common-node/src/database/BookkeeperImporter.d.ts +0 -77
  52. package/dist/tasenor-common-node/src/database/BookkeeperImporter.js +0 -343
  53. package/dist/tasenor-common-node/src/database/BookkeeperImporter.js.map +0 -1
  54. package/dist/tasenor-common-node/src/database/DB.d.ts +0 -51
  55. package/dist/tasenor-common-node/src/database/DB.js +0 -354
  56. package/dist/tasenor-common-node/src/database/DB.js.map +0 -1
  57. package/dist/tasenor-common-node/src/database/index.d.ts +0 -7
  58. package/dist/tasenor-common-node/src/database/index.js +0 -8
  59. package/dist/tasenor-common-node/src/database/index.js.map +0 -1
  60. package/dist/tasenor-common-node/src/doccer.d.ts +0 -29
  61. package/dist/tasenor-common-node/src/doccer.js +0 -30
  62. package/dist/tasenor-common-node/src/doccer.js.map +0 -1
  63. package/dist/tasenor-common-node/src/error.d.ts +0 -30
  64. package/dist/tasenor-common-node/src/error.js +0 -35
  65. package/dist/tasenor-common-node/src/error.js.map +0 -1
  66. package/dist/tasenor-common-node/src/export/Exporter.d.ts +0 -69
  67. package/dist/tasenor-common-node/src/export/Exporter.js +0 -123
  68. package/dist/tasenor-common-node/src/export/Exporter.js.map +0 -1
  69. package/dist/tasenor-common-node/src/export/TasenorExporter.d.ts +0 -55
  70. package/dist/tasenor-common-node/src/export/TasenorExporter.js +0 -135
  71. package/dist/tasenor-common-node/src/export/TasenorExporter.js.map +0 -1
  72. package/dist/tasenor-common-node/src/export/TilitinExporter.d.ts +0 -71
  73. package/dist/tasenor-common-node/src/export/TilitinExporter.js +0 -290
  74. package/dist/tasenor-common-node/src/export/TilitinExporter.js.map +0 -1
  75. package/dist/tasenor-common-node/src/export/index.d.ts +0 -8
  76. package/dist/tasenor-common-node/src/export/index.js +0 -9
  77. package/dist/tasenor-common-node/src/export/index.js.map +0 -1
  78. package/dist/tasenor-common-node/src/import/TextFileProcessHandler.d.ts +0 -104
  79. package/dist/tasenor-common-node/src/import/TextFileProcessHandler.js +0 -354
  80. package/dist/tasenor-common-node/src/import/TextFileProcessHandler.js.map +0 -1
  81. package/dist/tasenor-common-node/src/import/TransactionImportConnector.d.ts +0 -38
  82. package/dist/tasenor-common-node/src/import/TransactionImportConnector.js +0 -27
  83. package/dist/tasenor-common-node/src/import/TransactionImportConnector.js.map +0 -1
  84. package/dist/tasenor-common-node/src/import/TransactionImportHandler.d.ts +0 -173
  85. package/dist/tasenor-common-node/src/import/TransactionImportHandler.js +0 -733
  86. package/dist/tasenor-common-node/src/import/TransactionImportHandler.js.map +0 -1
  87. package/dist/tasenor-common-node/src/import/TransactionRules.d.ts +0 -238
  88. package/dist/tasenor-common-node/src/import/TransactionRules.js +0 -522
  89. package/dist/tasenor-common-node/src/import/TransactionRules.js.map +0 -1
  90. package/dist/tasenor-common-node/src/import/TransactionUI.d.ts +0 -181
  91. package/dist/tasenor-common-node/src/import/TransactionUI.js +0 -482
  92. package/dist/tasenor-common-node/src/import/TransactionUI.js.map +0 -1
  93. package/dist/tasenor-common-node/src/import/TransferAnalyzer.d.ts +0 -324
  94. package/dist/tasenor-common-node/src/import/TransferAnalyzer.js +0 -1379
  95. package/dist/tasenor-common-node/src/import/TransferAnalyzer.js.map +0 -1
  96. package/dist/tasenor-common-node/src/import/index.d.ts +0 -11
  97. package/dist/tasenor-common-node/src/import/index.js +0 -12
  98. package/dist/tasenor-common-node/src/import/index.js.map +0 -1
  99. package/dist/tasenor-common-node/src/index.d.ts +0 -12
  100. package/dist/tasenor-common-node/src/index.js +0 -13
  101. package/dist/tasenor-common-node/src/index.js.map +0 -1
  102. package/dist/tasenor-common-node/src/net/crypto.d.ts +0 -33
  103. package/dist/tasenor-common-node/src/net/crypto.js +0 -63
  104. package/dist/tasenor-common-node/src/net/crypto.js.map +0 -1
  105. package/dist/tasenor-common-node/src/net/git.d.ts +0 -49
  106. package/dist/tasenor-common-node/src/net/git.js +0 -137
  107. package/dist/tasenor-common-node/src/net/git.js.map +0 -1
  108. package/dist/tasenor-common-node/src/net/index.d.ts +0 -10
  109. package/dist/tasenor-common-node/src/net/index.js +0 -11
  110. package/dist/tasenor-common-node/src/net/index.js.map +0 -1
  111. package/dist/tasenor-common-node/src/net/middleware.d.ts +0 -61
  112. package/dist/tasenor-common-node/src/net/middleware.js +0 -220
  113. package/dist/tasenor-common-node/src/net/middleware.js.map +0 -1
  114. package/dist/tasenor-common-node/src/net/tokens.d.ts +0 -50
  115. package/dist/tasenor-common-node/src/net/tokens.js +0 -141
  116. package/dist/tasenor-common-node/src/net/tokens.js.map +0 -1
  117. package/dist/tasenor-common-node/src/net/vault.d.ts +0 -67
  118. package/dist/tasenor-common-node/src/net/vault.js +0 -145
  119. package/dist/tasenor-common-node/src/net/vault.js.map +0 -1
  120. package/dist/tasenor-common-node/src/plugins/BackendPlugin.d.ts +0 -91
  121. package/dist/tasenor-common-node/src/plugins/BackendPlugin.js +0 -165
  122. package/dist/tasenor-common-node/src/plugins/BackendPlugin.js.map +0 -1
  123. package/dist/tasenor-common-node/src/plugins/DataPlugin.d.ts +0 -13
  124. package/dist/tasenor-common-node/src/plugins/DataPlugin.js +0 -26
  125. package/dist/tasenor-common-node/src/plugins/DataPlugin.js.map +0 -1
  126. package/dist/tasenor-common-node/src/plugins/ImportPlugin.d.ts +0 -188
  127. package/dist/tasenor-common-node/src/plugins/ImportPlugin.js +0 -204
  128. package/dist/tasenor-common-node/src/plugins/ImportPlugin.js.map +0 -1
  129. package/dist/tasenor-common-node/src/plugins/ReportPlugin.d.ts +0 -132
  130. package/dist/tasenor-common-node/src/plugins/ReportPlugin.js +0 -393
  131. package/dist/tasenor-common-node/src/plugins/ReportPlugin.js.map +0 -1
  132. package/dist/tasenor-common-node/src/plugins/SchemePlugin.d.ts +0 -34
  133. package/dist/tasenor-common-node/src/plugins/SchemePlugin.js +0 -47
  134. package/dist/tasenor-common-node/src/plugins/SchemePlugin.js.map +0 -1
  135. package/dist/tasenor-common-node/src/plugins/ServicePlugin.d.ts +0 -80
  136. package/dist/tasenor-common-node/src/plugins/ServicePlugin.js +0 -168
  137. package/dist/tasenor-common-node/src/plugins/ServicePlugin.js.map +0 -1
  138. package/dist/tasenor-common-node/src/plugins/ToolPlugin.d.ts +0 -27
  139. package/dist/tasenor-common-node/src/plugins/ToolPlugin.js +0 -37
  140. package/dist/tasenor-common-node/src/plugins/ToolPlugin.js.map +0 -1
  141. package/dist/tasenor-common-node/src/plugins/index.d.ts +0 -13
  142. package/dist/tasenor-common-node/src/plugins/index.js +0 -14
  143. package/dist/tasenor-common-node/src/plugins/index.js.map +0 -1
  144. package/dist/tasenor-common-node/src/plugins/plugins.d.ts +0 -101
  145. package/dist/tasenor-common-node/src/plugins/plugins.js +0 -292
  146. package/dist/tasenor-common-node/src/plugins/plugins.js.map +0 -1
  147. package/dist/tasenor-common-node/src/process/Process.d.ts +0 -108
  148. package/dist/tasenor-common-node/src/process/Process.js +0 -335
  149. package/dist/tasenor-common-node/src/process/Process.js.map +0 -1
  150. package/dist/tasenor-common-node/src/process/ProcessConnector.d.ts +0 -24
  151. package/dist/tasenor-common-node/src/process/ProcessConnector.js +0 -28
  152. package/dist/tasenor-common-node/src/process/ProcessConnector.js.map +0 -1
  153. package/dist/tasenor-common-node/src/process/ProcessFile.d.ts +0 -69
  154. package/dist/tasenor-common-node/src/process/ProcessFile.js +0 -145
  155. package/dist/tasenor-common-node/src/process/ProcessFile.js.map +0 -1
  156. package/dist/tasenor-common-node/src/process/ProcessHandler.d.ts +0 -60
  157. package/dist/tasenor-common-node/src/process/ProcessHandler.js +0 -73
  158. package/dist/tasenor-common-node/src/process/ProcessHandler.js.map +0 -1
  159. package/dist/tasenor-common-node/src/process/ProcessStep.d.ts +0 -52
  160. package/dist/tasenor-common-node/src/process/ProcessStep.js +0 -78
  161. package/dist/tasenor-common-node/src/process/ProcessStep.js.map +0 -1
  162. package/dist/tasenor-common-node/src/process/ProcessingSystem.d.ts +0 -60
  163. package/dist/tasenor-common-node/src/process/ProcessingSystem.js +0 -182
  164. package/dist/tasenor-common-node/src/process/ProcessingSystem.js.map +0 -1
  165. package/dist/tasenor-common-node/src/process/index.d.ts +0 -11
  166. package/dist/tasenor-common-node/src/process/index.js +0 -12
  167. package/dist/tasenor-common-node/src/process/index.js.map +0 -1
  168. package/dist/tasenor-common-node/src/reports/conversions.d.ts +0 -8
  169. package/dist/tasenor-common-node/src/reports/conversions.js +0 -47
  170. package/dist/tasenor-common-node/src/reports/conversions.js.map +0 -1
  171. package/dist/tasenor-common-node/src/reports/index.d.ts +0 -6
  172. package/dist/tasenor-common-node/src/reports/index.js +0 -7
  173. package/dist/tasenor-common-node/src/reports/index.js.map +0 -1
  174. package/dist/tasenor-common-node/src/server/ISPDemoServer.d.ts +0 -43
  175. package/dist/tasenor-common-node/src/server/ISPDemoServer.js +0 -112
  176. package/dist/tasenor-common-node/src/server/ISPDemoServer.js.map +0 -1
  177. package/dist/tasenor-common-node/src/server/api.d.ts +0 -15
  178. package/dist/tasenor-common-node/src/server/api.js +0 -27
  179. package/dist/tasenor-common-node/src/server/api.js.map +0 -1
  180. package/dist/tasenor-common-node/src/server/index.d.ts +0 -7
  181. package/dist/tasenor-common-node/src/server/index.js +0 -8
  182. package/dist/tasenor-common-node/src/server/index.js.map +0 -1
  183. package/dist/tasenor-common-node/src/server/router.d.ts +0 -5
  184. package/dist/tasenor-common-node/src/server/router.js +0 -37
  185. package/dist/tasenor-common-node/src/server/router.js.map +0 -1
  186. package/dist/tasenor-common-node/src/system.d.ts +0 -27
  187. package/dist/tasenor-common-node/src/system.js +0 -95
  188. package/dist/tasenor-common-node/src/system.js.map +0 -1
  189. package/dist/tasenor-common-node/src/testing/ProcessingSystemMock.d.ts +0 -21
  190. package/dist/tasenor-common-node/src/testing/ProcessingSystemMock.js +0 -33
  191. package/dist/tasenor-common-node/src/testing/ProcessingSystemMock.js.map +0 -1
  192. package/dist/tasenor-common-node/src/testing/UnitTestImportConnector.d.ts +0 -24
  193. package/dist/tasenor-common-node/src/testing/UnitTestImportConnector.js +0 -68
  194. package/dist/tasenor-common-node/src/testing/UnitTestImportConnector.js.map +0 -1
  195. package/dist/tasenor-common-node/src/testing/UnitTester.d.ts +0 -64
  196. package/dist/tasenor-common-node/src/testing/UnitTester.js +0 -199
  197. package/dist/tasenor-common-node/src/testing/UnitTester.js.map +0 -1
  198. package/dist/tasenor-common-node/src/testing/index.d.ts +0 -4
  199. package/dist/tasenor-common-node/src/testing/index.js +0 -5
  200. package/dist/tasenor-common-node/src/testing/index.js.map +0 -1
  201. package/dist/tasenor-common-node/src/testing/test-handlers.d.ts +0 -13
  202. package/dist/tasenor-common-node/src/testing/test-handlers.js +0 -44
  203. package/dist/tasenor-common-node/src/testing/test-handlers.js.map +0 -1
  204. package/dist/tasenor-common-node/tests/TransactionRules.spec.d.ts +0 -1
  205. package/dist/tasenor-common-node/tests/TransactionRules.spec.js +0 -64
  206. package/dist/tasenor-common-node/tests/TransactionRules.spec.js.map +0 -1
  207. package/dist/tasenor-common-node/tests/TransferAnalyzer-account-address.spec.d.ts +0 -1
  208. package/dist/tasenor-common-node/tests/TransferAnalyzer-account-address.spec.js +0 -80
  209. package/dist/tasenor-common-node/tests/TransferAnalyzer-account-address.spec.js.map +0 -1
  210. package/dist/tasenor-common-node/tests/TransferAnalyzer-buying-and-selling.spec.d.ts +0 -1
  211. package/dist/tasenor-common-node/tests/TransferAnalyzer-buying-and-selling.spec.js +0 -342
  212. package/dist/tasenor-common-node/tests/TransferAnalyzer-buying-and-selling.spec.js.map +0 -1
  213. package/dist/tasenor-common-node/tests/TransferAnalyzer-loans.spec.d.ts +0 -1
  214. package/dist/tasenor-common-node/tests/TransferAnalyzer-loans.spec.js +0 -174
  215. package/dist/tasenor-common-node/tests/TransferAnalyzer-loans.spec.js.map +0 -1
  216. package/dist/tasenor-common-node/tests/TransferAnalyzer-multiple-null-amounts.spec.d.ts +0 -1
  217. package/dist/tasenor-common-node/tests/TransferAnalyzer-multiple-null-amounts.spec.js +0 -175
  218. package/dist/tasenor-common-node/tests/TransferAnalyzer-multiple-null-amounts.spec.js.map +0 -1
  219. package/dist/tasenor-common-node/tests/password.spec.d.ts +0 -1
  220. package/dist/tasenor-common-node/tests/password.spec.js +0 -8
  221. package/dist/tasenor-common-node/tests/password.spec.js.map +0 -1
  222. package/dist/tasenor-common-node/tests/tokens.spec.d.ts +0 -1
  223. package/dist/tasenor-common-node/tests/tokens.spec.js +0 -49
  224. package/dist/tasenor-common-node/tests/tokens.spec.js.map +0 -1
  225. package/dist/tasenor-common-node/tests/vault.spec.d.ts +0 -1
  226. package/dist/tasenor-common-node/tests/vault.spec.js +0 -19
  227. package/dist/tasenor-common-node/tests/vault.spec.js.map +0 -1
  228. package/dist/tasenor-common-plugins/src/CoinbaseImport/backend/CoinbaseHandler.d.ts +0 -11
  229. package/dist/tasenor-common-plugins/src/CoinbaseImport/backend/CoinbaseHandler.js +0 -30
  230. package/dist/tasenor-common-plugins/src/CoinbaseImport/backend/CoinbaseHandler.js.map +0 -1
  231. package/dist/tasenor-common-plugins/src/IncomeAndExpenses/backend/index.d.ts +0 -5
  232. package/dist/tasenor-common-plugins/src/IncomeAndExpenses/backend/index.js +0 -350
  233. package/dist/tasenor-common-plugins/src/IncomeAndExpenses/backend/index.js.map +0 -1
  234. package/dist/tasenor-common-plugins/src/KrakenImport/backend/KrakenHandler.d.ts +0 -23
  235. package/dist/tasenor-common-plugins/src/KrakenImport/backend/KrakenHandler.js +0 -83
  236. package/dist/tasenor-common-plugins/src/KrakenImport/backend/KrakenHandler.js.map +0 -1
  237. package/dist/tasenor-common-plugins/src/LynxImport/backend/LynxHandler.d.ts +0 -28
  238. package/dist/tasenor-common-plugins/src/LynxImport/backend/LynxHandler.js +0 -340
  239. package/dist/tasenor-common-plugins/src/LynxImport/backend/LynxHandler.js.map +0 -1
  240. package/dist/tasenor-common-plugins/src/NordeaImport/backend/NordeaHandler.d.ts +0 -11
  241. package/dist/tasenor-common-plugins/src/NordeaImport/backend/NordeaHandler.js +0 -39
  242. package/dist/tasenor-common-plugins/src/NordeaImport/backend/NordeaHandler.js.map +0 -1
  243. package/dist/tasenor-common-plugins/src/NordnetImport/backend/NordnetHandler.d.ts +0 -17
  244. package/dist/tasenor-common-plugins/src/NordnetImport/backend/NordnetHandler.js +0 -66
  245. package/dist/tasenor-common-plugins/src/NordnetImport/backend/NordnetHandler.js.map +0 -1
  246. package/dist/tasenor-common-plugins/src/TITOImport/backend/TITOHandler.d.ts +0 -13
  247. package/dist/tasenor-common-plugins/src/TITOImport/backend/TITOHandler.js +0 -241
  248. package/dist/tasenor-common-plugins/src/TITOImport/backend/TITOHandler.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tasenor/common-node",
3
- "version": "1.9.30",
3
+ "version": "1.9.32",
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.9.30"
39
+ "@tasenor/common": "1.9.32"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@jest/globals": "^29.6.1",
@@ -1,60 +0,0 @@
1
- async function up(knex) {
2
- if (await knex.schema.hasTable('processes')) {
3
- console.log('Found processes table. Skipping migrations.')
4
- return
5
- }
6
- await knex.schema.createTable('processes', function (table) {
7
- table.increments('id')
8
- table.integer('ownerId').default(null)
9
- table.string('name', 128).notNullable()
10
- table.jsonb('config').default({})
11
- table.boolean('complete').notNullable().default(false)
12
- table.boolean('successful').default(null)
13
- table.integer('currentStep').default(null)
14
- table.text('error').default(null)
15
- table.enum('status', ['INCOMPLETE', 'WAITING', 'SUCCEEDED', 'FAILED', 'CRASHED', 'ROLLEDBACK'], { useNative: true, enumName: 'process_status' }).notNullable().default('INCOMPLETE')
16
- table.datetime('created').defaultTo(knex.fn.now())
17
-
18
- table.index(['ownerId', 'created'])
19
- })
20
-
21
- await knex.schema.createTable('process_files', function (table) {
22
- table.increments('id')
23
- table.integer('processId').notNullable()
24
- table.foreign('processId').references('processes.id')
25
- table.text('name')
26
- table.string('type', 64)
27
- table.string('encoding', 16)
28
- table.text('data')
29
-
30
- table.index(['processId'])
31
- })
32
-
33
- await knex.schema.createTable('process_steps', function (table) {
34
- table.increments('id')
35
-
36
- table.integer('processId').notNullable()
37
- table.foreign('processId').references('processes.id')
38
-
39
- table.integer('number').notNullable()
40
- table.string('handler', 32).notNullable()
41
- table.jsonb('directions')
42
- table.jsonb('action').default(null)
43
- table.datetime('started').defaultTo(knex.fn.now())
44
- table.jsonb('state').notNullable()
45
- table.datetime('finished').default(null)
46
-
47
- table.unique(['processId', 'number'])
48
- })
49
- }
50
-
51
- async function down(knex) {
52
- await knex.schema.dropTable('process_files')
53
- await knex.schema.dropTable('process_steps')
54
- await knex.schema.dropTable('processes')
55
- await knex.schema.raw('DROP TYPE process_status')
56
- }
57
-
58
- module.exports = {
59
- up, down
60
- }
@@ -1,81 +0,0 @@
1
- import * as FormData from 'form-data';
2
- import { HttpMethod, Url, Value, TokenPair, Token, HttpResponse } from '@tasenor/common';
3
- import { Command, CommandArgumentDefault, CommandArguments } from './commands';
4
- /**
5
- * Ask a question on the console and return answer.
6
- * @param question
7
- * @returns
8
- */
9
- declare function ask(question: string): Promise<string>;
10
- /**
11
- * Exit hook that needs to be called if used functions in this library.
12
- */
13
- declare function exit(): void;
14
- /**
15
- * An interface for accessing API.
16
- */
17
- export declare class CLIRunner {
18
- user: string;
19
- password: string;
20
- api: Url;
21
- uiApi: Url;
22
- token: Token;
23
- commands: Record<string, Command>;
24
- originalArgs: string[];
25
- args: CommandArguments;
26
- /**
27
- * Execute HTTP request.
28
- * @param method
29
- * @param url
30
- * @returns
31
- */
32
- request(method: HttpMethod, url: string, data: Value | undefined | FormData): Promise<HttpResponse>;
33
- /**
34
- * Execute HTTP request against UI API.
35
- * @param method
36
- * @param url
37
- * @returns
38
- */
39
- requestUi(method: HttpMethod, url: string, data: Value | undefined | FormData): Promise<HttpResponse>;
40
- /**
41
- * Execute request with optional retries.
42
- * @param caller
43
- * @param fullUrl
44
- * @param data
45
- * @returns
46
- */
47
- doRequest(caller: any, fullUrl: any, data: any): Promise<import("@tasenor/common").HttpSuccessResponse<Value>>;
48
- /**
49
- * Log in if we don't have access token yet.
50
- */
51
- login(): Promise<void>;
52
- /**
53
- * Set up the API.
54
- * @param tokens
55
- */
56
- configureApi(api: Url, tokens?: TokenPair | undefined): void;
57
- }
58
- /**
59
- * A class implementing dynamic collection of commands that are automatically looked up when called.
60
- */
61
- export declare class CLI extends CLIRunner {
62
- /**
63
- * Scan commands and instantiate them to the collection.
64
- * @param paths
65
- */
66
- constructor();
67
- /**
68
- * Insert defaults for the arguments.
69
- * @param args
70
- */
71
- addDefaults(defaults: CommandArgumentDefault[]): void;
72
- /**
73
- * Parse and execute the command.
74
- */
75
- run(defaults?: CommandArgumentDefault[], explicitArgs?: string[]): Promise<void>;
76
- }
77
- export declare const cli: {
78
- ask: typeof ask;
79
- exit: typeof exit;
80
- };
81
- export {};
@@ -1,242 +0,0 @@
1
- /* eslint-disable camelcase */
2
- /**
3
- * Command line interface utilities.
4
- *
5
- * @module tasenor-common-node/src/cli
6
- */
7
- import * as readline from 'readline';
8
- import { ArgumentParser } from 'argparse';
9
- import { net, log, mute, waitPromise, note } from '@tasenor/common';
10
- import clone from 'clone';
11
- import DbCommand from './commands/db';
12
- import AccountCommand from './commands/account';
13
- import BalanceCommand from './commands/balance';
14
- import EntryCommand from './commands/entry';
15
- import ImportCommand from './commands/import';
16
- import PeriodCommand from './commands/period';
17
- import ImporterCommand from './commands/importer';
18
- import PluginCommand from './commands/plugin';
19
- import ReportCommand from './commands/report';
20
- import SettingsCommand from './commands/settings';
21
- import StockCommand from './commands/stock';
22
- import TagCommand from './commands/tag';
23
- import TxCommand from './commands/tx';
24
- import UserCommand from './commands/user';
25
- let readlineInterface;
26
- /**
27
- * Ask a question on the console and return answer.
28
- * @param question
29
- * @returns
30
- */
31
- function ask(question) {
32
- if (!readlineInterface) {
33
- readlineInterface = readline.createInterface({
34
- input: process.stdin,
35
- output: process.stdout
36
- });
37
- }
38
- return new Promise((resolve) => {
39
- readlineInterface.question(question ? `${question} ` : '>', (text) => { resolve(text); });
40
- });
41
- }
42
- /**
43
- * Exit hook that needs to be called if used functions in this library.
44
- */
45
- function exit() {
46
- if (readlineInterface)
47
- readlineInterface.close();
48
- }
49
- /**
50
- * An interface for accessing API.
51
- */
52
- export class CLIRunner {
53
- user;
54
- password;
55
- api;
56
- uiApi;
57
- token;
58
- commands;
59
- originalArgs;
60
- args;
61
- /**
62
- * Execute HTTP request.
63
- * @param method
64
- * @param url
65
- * @returns
66
- */
67
- async request(method, url, data) {
68
- const caller = net[method];
69
- const fullUrl = url.startsWith('/') ? `${this.api}${url}` : `${this.api}/${url}`;
70
- return this.doRequest(caller, fullUrl, data);
71
- }
72
- /**
73
- * Execute HTTP request against UI API.
74
- * @param method
75
- * @param url
76
- * @returns
77
- */
78
- async requestUi(method, url, data) {
79
- const caller = net[method];
80
- const fullUrl = url.startsWith('/') ? `${this.uiApi}${url}` : `${this.uiApi}/${url}`;
81
- return this.doRequest(caller, fullUrl, data);
82
- }
83
- /**
84
- * Execute request with optional retries.
85
- * @param caller
86
- * @param fullUrl
87
- * @param data
88
- * @returns
89
- */
90
- async doRequest(caller, fullUrl, data) {
91
- let result = null;
92
- let error;
93
- const max = this.args.retry || 0;
94
- for (let i = -1; i < max; i++) {
95
- try {
96
- result = await caller(fullUrl, data);
97
- if (result && result.success) {
98
- return result;
99
- }
100
- error = new Error(JSON.stringify(result));
101
- }
102
- catch (err) {
103
- error = err;
104
- }
105
- const delay = (i + 1) * 5;
106
- note(`Waiting for ${delay} seconds`);
107
- await waitPromise(delay * 1000);
108
- }
109
- throw error;
110
- }
111
- /**
112
- * Log in if we don't have access token yet.
113
- */
114
- async login() {
115
- if (this.token)
116
- return;
117
- log(`Logging in to ${this.api} as ${this.user}`);
118
- const resp = await this.request('POST', '/auth', { user: this.user, password: this.password });
119
- if (resp.success && resp.data && resp.data instanceof Object) {
120
- if ('token' in resp.data && 'refresh' in resp.data) {
121
- const { token, refresh } = resp.data;
122
- this.configureApi(this.api, { token, refresh });
123
- this.configureApi(this.uiApi, { token, refresh });
124
- this.token = token;
125
- }
126
- }
127
- }
128
- /**
129
- * Set up the API.
130
- * @param tokens
131
- */
132
- configureApi(api, tokens = undefined) {
133
- net.configure({ sites: { [api]: {} } });
134
- if (tokens) {
135
- net.setConf(api, 'token', tokens.token);
136
- net.setConf(api, 'refreshToken', tokens.refresh);
137
- }
138
- }
139
- }
140
- /**
141
- * A class implementing dynamic collection of commands that are automatically looked up when called.
142
- */
143
- export class CLI extends CLIRunner {
144
- /**
145
- * Scan commands and instantiate them to the collection.
146
- * @param paths
147
- */
148
- constructor() {
149
- super();
150
- this.commands = {
151
- account: new AccountCommand(this),
152
- db: new DbCommand(this),
153
- balance: new BalanceCommand(this),
154
- entry: new EntryCommand(this),
155
- import: new ImportCommand(this),
156
- importer: new ImporterCommand(this),
157
- period: new PeriodCommand(this),
158
- plugin: new PluginCommand(this),
159
- report: new ReportCommand(this),
160
- settings: new SettingsCommand(this),
161
- stock: new StockCommand(this),
162
- tag: new TagCommand(this),
163
- tx: new TxCommand(this),
164
- user: new UserCommand(this)
165
- };
166
- }
167
- /**
168
- * Insert defaults for the arguments.
169
- * @param args
170
- */
171
- addDefaults(defaults) {
172
- for (const def of defaults) {
173
- const { name, envName, defaultValue } = def;
174
- if (this.args[name] === undefined) {
175
- this.args[name] = process.env[envName] || defaultValue;
176
- }
177
- }
178
- }
179
- /**
180
- * Parse and execute the command.
181
- */
182
- async run(defaults = [], explicitArgs = []) {
183
- // Helper to extract arguments.
184
- const pop = (args, name) => {
185
- const ret = args[name];
186
- delete args[name];
187
- if (!ret)
188
- return '';
189
- return typeof ret === 'string' ? ret : ret[0];
190
- };
191
- const parser = new ArgumentParser({
192
- description: 'Tasenor command line tool'
193
- });
194
- parser.add_argument('command', { help: 'Command handling the operation', choices: Object.keys(this.commands) });
195
- parser.add_argument('--debug', '-d', { help: 'If set, show logs for requests etc', action: 'store_true', required: false });
196
- parser.add_argument('--json', { help: 'If set, show output as JSON', action: 'store_true', required: false });
197
- parser.add_argument('--verbose', '-v', { help: 'If set, show more comprehensive output', action: 'store_true', required: false });
198
- parser.add_argument('--user', { help: 'User email for logging in (use USERNAME env by default)', type: String, required: false });
199
- parser.add_argument('--password', { help: 'User password for logging in (use PASSWORD env by default)', type: String, required: false });
200
- parser.add_argument('--api', { help: 'The server base URL providing Bookkeeper API (use API env by default)', type: String, required: false });
201
- parser.add_argument('--ui-api', { help: 'The server base URL providing Bookkeeper UI API (use UI_API env by default)', type: String, required: false });
202
- parser.add_argument('--retry', { help: 'If given, retry this many times if network call fails', type: Number, required: false });
203
- // Set up args.
204
- this.originalArgs = explicitArgs.length ? clone(explicitArgs) : clone(process.argv.splice(2));
205
- // Find the command and add its arguments.
206
- let cmd;
207
- for (let i = 0; i < this.originalArgs.length; i++) {
208
- if (this.commands[this.originalArgs[i]]) {
209
- cmd = this.commands[this.originalArgs[i]];
210
- break;
211
- }
212
- }
213
- if (cmd) {
214
- cmd.addArguments(parser);
215
- }
216
- // Collect and fix arguments.
217
- this.args = parser.parse_args(this.originalArgs);
218
- cmd?.setArgs(this.args);
219
- this.addDefaults(defaults);
220
- this.user = pop(this.args, 'user');
221
- this.password = pop(this.args, 'password');
222
- this.api = pop(this.args, 'api');
223
- this.uiApi = pop(this.args, 'ui_api');
224
- delete this.args.command;
225
- if (!this.args.debug) {
226
- mute();
227
- }
228
- // Configure net APIs.
229
- if (this.api) {
230
- this.configureApi(this.api);
231
- }
232
- if (this.uiApi) {
233
- this.configureApi(this.uiApi);
234
- }
235
- cmd && await cmd.run();
236
- }
237
- }
238
- export const cli = {
239
- ask,
240
- exit
241
- };
242
- //# sourceMappingURL=cli.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- import { AccountModelData } from '@tasenor/common';
2
- import { Command } from '.';
3
- import { ArgumentParser } from 'argparse';
4
- declare class AccountCommand extends Command {
5
- addArguments(parser: ArgumentParser): void;
6
- ls(): Promise<void>;
7
- print(data: AccountModelData[]): void;
8
- rm(): Promise<void>;
9
- create(): Promise<void>;
10
- run(): Promise<void>;
11
- }
12
- export default AccountCommand;
@@ -1,58 +0,0 @@
1
- /* eslint-disable camelcase */
2
- import { log } from '@tasenor/common';
3
- import { Command } from '.';
4
- class AccountCommand extends Command {
5
- addArguments(parser) {
6
- const sub = parser.add_subparsers();
7
- const ls = sub.add_parser('ls', { help: 'List all accounts' });
8
- ls.set_defaults({ subCommand: 'ls' });
9
- ls.add_argument('db', { help: 'Name of the database' });
10
- const rm = sub.add_parser('rm', { help: 'Delete an account' });
11
- rm.set_defaults({ subCommand: 'rm' });
12
- rm.add_argument('db', { help: 'Name of the database' });
13
- rm.add_argument('id', { help: 'ID of the account' });
14
- const create = sub.add_parser('create', { help: 'Create an account' });
15
- create.set_defaults({ subCommand: 'create' });
16
- create.add_argument('db', { help: 'Name of the database' });
17
- create.add_argument('language', { help: 'Account language' });
18
- create.add_argument('currency', { help: 'Account currency' });
19
- create.add_argument('type', { help: 'Account type' });
20
- create.add_argument('number', { help: 'Account number' });
21
- create.add_argument('name', { help: 'Account name' });
22
- create.add_argument('data', { help: 'Additional account data in JSON format', nargs: '?' });
23
- }
24
- async ls() {
25
- const { db } = this.args;
26
- const resp = await this.get(`/db/${db}/account`);
27
- this.out('account', resp);
28
- }
29
- print(data) {
30
- for (const account of data.sort((a, b) => (a.id || 0) - (b.id || 0))) {
31
- const { id, number, name, type, language, currency, data } = account;
32
- console.log(`#${id} [${language} ${currency} ${type}] ${number} ${name} ${Object.keys(data).length ? JSON.stringify(data) : ''}`);
33
- }
34
- }
35
- async rm() {
36
- const { db, id } = this.args;
37
- await this.delete(`/db/${db}/account/${id}`);
38
- log(`Account ${id} deleted successfully.`);
39
- }
40
- async create() {
41
- const { db, number, name, type, language, currency, data } = this.args;
42
- const params = {
43
- number,
44
- name,
45
- type,
46
- language,
47
- currency,
48
- data: data ? await this.jsonData(data) : {}
49
- };
50
- await this.post(`/db/${db}/account`, params);
51
- log(`Account ${number} ${name} created successfully.`);
52
- }
53
- async run() {
54
- await this.runBy('subCommand');
55
- }
56
- }
57
- export default AccountCommand;
58
- //# sourceMappingURL=account.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"account.js","sourceRoot":"","sources":["../../../../src/commands/account.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import { Command } from '.';
2
- import { ArgumentParser } from 'argparse';
3
- import { AccountNumber } from '@tasenor/common';
4
- declare class BalanceCommand extends Command {
5
- addArguments(parser: ArgumentParser): void;
6
- ls(): Promise<void>;
7
- print(data: Record<AccountNumber, number>): void;
8
- create(): Promise<void>;
9
- run(): Promise<void>;
10
- }
11
- export default BalanceCommand;
@@ -1,117 +0,0 @@
1
- /* eslint-disable camelcase */
2
- import { sprintf } from 'sprintf-js';
3
- import { Command } from '.';
4
- import { log, warning } from '@tasenor/common';
5
- import clone from 'clone';
6
- class BalanceCommand extends Command {
7
- addArguments(parser) {
8
- const sub = parser.add_subparsers();
9
- const ls = sub.add_parser('ls', { help: 'List account balances' });
10
- ls.set_defaults({ subCommand: 'ls' });
11
- ls.add_argument('db', { help: 'Name of the database' });
12
- ls.add_argument('period', { help: 'Period year, date or ID' });
13
- const create = sub.add_parser('create', { help: 'Initialize account balances' });
14
- create.set_defaults({ subCommand: 'create' });
15
- create.add_argument('--force', '-f', { action: 'store_true', help: 'If given, allow invalid entries to be created', required: false });
16
- create.add_argument('--map', { help: 'Remap account numbers using JSON or @filepath mapping', required: false });
17
- create.add_argument('--stock', { nargs: '*', help: 'Define initial stock using JSON or @filepath mapping', required: false });
18
- create.add_argument('--text', { help: 'A description for the transaction', required: false });
19
- create.add_argument('db', { help: 'Name of the database' });
20
- create.add_argument('data', { help: 'A JSON data or @filepath for balances' });
21
- }
22
- async ls() {
23
- const { db, period, verbose } = this.args;
24
- const periodId = await this.periodId(db, period);
25
- const resp = await this.get(`/db/${db}/period/${periodId}`);
26
- await this.readAccounts(db);
27
- if (!verbose && resp.balances) {
28
- this.out('balance', resp.balances.reduce((prev, cur) => ({ ...prev, [cur.number]: cur.total }), {}));
29
- return;
30
- }
31
- this.out('balance', resp);
32
- }
33
- print(data) {
34
- Object.keys(data).sort().forEach(number => {
35
- console.log(number, this.accounts[number].name, '\t', sprintf('%.2f', data[number] / 100));
36
- });
37
- }
38
- async create() {
39
- const { db, data, map, stock, text, force } = this.args;
40
- if (!db) {
41
- throw new Error(`Invalid database argument ${JSON.stringify(db)}`);
42
- }
43
- const dataArg = await this.jsonData(data);
44
- const mapArg = (map ? await this.jsonData(map) : {});
45
- const period = await this.singlePeriod(db);
46
- const stockArg = await this.jsonData(stock);
47
- // Check if the DB is clean.
48
- const docs = await this.get(`/db/${db}/document`);
49
- if (docs.filter(d => d.number !== 0).length && !force) {
50
- throw new Error('There are already non-initial transactions in the database and cannot be initialized anymore.');
51
- }
52
- // Ensure zero balance.
53
- const sum = Object.values(dataArg).reduce((prev, cur) => prev + cur, 0);
54
- if (sum) {
55
- if (force) {
56
- warning(`Initial balance total must be zero. Got ${sum} from ${JSON.stringify(dataArg)}.`);
57
- }
58
- else {
59
- throw new Error(`Initial balance total must be zero. Got ${sum} from ${JSON.stringify(dataArg)}.`);
60
- }
61
- }
62
- // Ensure all accounts are valid.
63
- for (const account of Object.keys(dataArg)) {
64
- // Zero balance accounts not needed.
65
- if (!dataArg[account]) {
66
- continue;
67
- }
68
- await this.accountId(db, mapArg[account] || account);
69
- }
70
- // Create initial doc.
71
- const document = (docs.length > 0)
72
- ? docs[0]
73
- : await this.post(`/db/${db}/document`, {
74
- period_id: period.id,
75
- date: this.date(period.start_date),
76
- number: 0
77
- });
78
- log(`Created a document #${document.id} on ${period.start_date}.`);
79
- // Create entries.
80
- const description = this.str(text) || 'Initial balance';
81
- for (const account of Object.keys(dataArg)) {
82
- const destAccount = mapArg[account] || account;
83
- // Skip zeroes.
84
- if (!dataArg[account]) {
85
- log(`Skipping an entry ${destAccount} ${description} ${sprintf('%.2f', 0)}.`);
86
- continue;
87
- }
88
- const entry = {
89
- document_id: document.id,
90
- account_id: await this.accountId(db, destAccount),
91
- debit: dataArg[account] >= 0 ? 1 : 0,
92
- amount: Math.abs(dataArg[account]),
93
- description
94
- };
95
- // Add stock if given.
96
- if (stockArg[destAccount]) {
97
- entry.data = {
98
- stock: {
99
- set: clone(stockArg[destAccount])
100
- }
101
- };
102
- delete stockArg[destAccount];
103
- }
104
- // Add data if known.
105
- const out = await this.post(`/db/${db}/entry`, entry);
106
- log(`Created an entry #${out.id} for ${destAccount} ${description} ${sprintf('%.2f', dataArg[account] / 100)}${entry.data ? ' ' + JSON.stringify(entry.data) : ''}.`);
107
- }
108
- if (Object.keys(stockArg).length) {
109
- throw new Error(`Unused initial stocks for accounts ${Object.keys(stockArg).join(', ')}`);
110
- }
111
- }
112
- async run() {
113
- await this.runBy('subCommand');
114
- }
115
- }
116
- export default BalanceCommand;
117
- //# sourceMappingURL=balance.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"balance.js","sourceRoot":"","sources":["../../../../src/commands/balance.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import { DatabaseModelData } from '@tasenor/common';
2
- import { ArgumentParser } from 'argparse';
3
- import { Command } from '.';
4
- declare class DbCommand extends Command {
5
- addArguments(parser: ArgumentParser): void;
6
- ls(): Promise<void>;
7
- print(data: DatabaseModelData[]): void;
8
- rm(): Promise<void>;
9
- create(): Promise<void>;
10
- upload(): Promise<void>;
11
- download(): Promise<void>;
12
- run(): Promise<void>;
13
- }
14
- export default DbCommand;