@tstdl/base 0.92.123 → 0.92.124

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 (1353) hide show
  1. package/ai/ai-file.service.js +23 -18
  2. package/ai/ai.service.js +79 -147
  3. package/api/server/gateway.js +6 -6
  4. package/authentication/authentication.api.js +24 -24
  5. package/authentication/server/authentication.service.js +20 -20
  6. package/browser/page-controller.js +1 -1
  7. package/context/context.js +5 -5
  8. package/document-management/api/document-management.api.js +32 -68
  9. package/document-management/models/document-assignment-scope.model.js +38 -0
  10. package/document-management/models/document-assignment-task.model.js +38 -0
  11. package/document-management/models/document-category.model.js +7 -1
  12. package/document-management/models/document-collection-assignment.model.js +39 -0
  13. package/document-management/models/document-collection.model.js +10 -0
  14. package/document-management/models/document-property-value.model.js +15 -46
  15. package/document-management/models/document-property.model.js +2 -2
  16. package/document-management/models/document-request-submission.model.js +34 -0
  17. package/document-management/models/document-request-template.js +3 -8
  18. package/document-management/models/document-request.model.js +22 -12
  19. package/document-management/models/document-type-validation.model.js +34 -0
  20. package/document-management/models/document-type.model.js +0 -5
  21. package/document-management/models/document-validation-definition.model.js +39 -0
  22. package/document-management/models/document-validation-execution-related-document.model.js +34 -0
  23. package/document-management/models/document-validation-execution.model.js +72 -0
  24. package/document-management/models/document-workflow.model.js +70 -0
  25. package/document-management/models/document.model.js +21 -5
  26. package/document-management/models/index.js +10 -5
  27. package/document-management/models/service-models/categories-and-types.view-model.js +2 -21
  28. package/document-management/models/service-models/document-folders.view-model.js +20 -44
  29. package/document-management/models/service-models/document-management.view-model.js +127 -0
  30. package/document-management/models/service-models/document.service-model.js +30 -28
  31. package/document-management/models/service-models/enriched/enriched-document-assignment.view.js +12 -0
  32. package/document-management/models/service-models/enriched/enriched-document-category.view.js +47 -0
  33. package/document-management/models/service-models/enriched/enriched-document-collection.view.js +89 -0
  34. package/document-management/models/service-models/enriched/enriched-document-file.view.js +16 -0
  35. package/document-management/models/service-models/enriched/enriched-document-management-data.view.js +130 -0
  36. package/document-management/models/service-models/enriched/enriched-document-request.view.js +52 -0
  37. package/document-management/models/service-models/enriched/enriched-document-type.view.js +10 -0
  38. package/document-management/models/service-models/enriched/enriched-document.view.js +77 -0
  39. package/document-management/models/service-models/enriched/enriched.js +39 -0
  40. package/document-management/models/service-models/enriched/index.js +9 -0
  41. package/document-management/models/service-models/index.js +2 -2
  42. package/document-management/models/service-models/normalized-requests-template-data.model.js +5 -4
  43. package/document-management/models/service-models/stats.view-model.js +19 -9
  44. package/document-management/server/module.js +3 -7
  45. package/document-management/server/schemas.js +18 -23
  46. package/document-management/server/services/document-category-type.service.js +66 -0
  47. package/document-management/server/services/document-collection.service.js +41 -0
  48. package/document-management/server/services/document-file.service.js +204 -0
  49. package/document-management/server/services/document-management-ai.service.js +340 -0
  50. package/document-management/server/services/document-management-ancillary.service.js +24 -0
  51. package/document-management/server/services/document-management.service.js +106 -888
  52. package/document-management/server/services/document-property.service.js +87 -0
  53. package/document-management/server/services/document-request.service.js +138 -0
  54. package/document-management/server/services/document-validation.service.js +145 -0
  55. package/document-management/server/services/document-workflow.service.js +132 -0
  56. package/document-management/server/services/document.service.js +81 -0
  57. package/document-management/server/services/index.js +9 -0
  58. package/document-management/server/validators/ai-validation-executor.js +51 -0
  59. package/document-management/server/validators/index.js +2 -0
  60. package/document-management/server/validators/single-document-validation-executor.js +20 -0
  61. package/document-management/server/validators/validator.js +2 -0
  62. package/eslint.config.js +31 -17
  63. package/examples/document-management/main.js +28 -12
  64. package/file/mime-type.js +2 -9
  65. package/formats.js +32 -23
  66. package/http/client/http-client.js +1 -1
  67. package/injector/injector.js +2 -2
  68. package/object-storage/s3/s3.object-storage.js +1 -1
  69. package/orm/data-types/bytea.js +8 -0
  70. package/orm/data-types/index.js +4 -0
  71. package/orm/data-types/numeric-date.js +9 -0
  72. package/orm/data-types/timestamp.js +9 -0
  73. package/orm/decorators.js +50 -0
  74. package/orm/entity.js +19 -0
  75. package/orm/index.js +5 -0
  76. package/orm/query.js +6 -0
  77. package/orm/server/database-schema.js +29 -0
  78. package/orm/server/database.js +17 -3
  79. package/orm/server/drizzle/schema-converter.js +12 -1
  80. package/orm/server/encryption.js +29 -4
  81. package/orm/server/index.js +7 -0
  82. package/orm/server/module.js +9 -0
  83. package/orm/server/query-converter.js +66 -11
  84. package/orm/server/repository.js +344 -73
  85. package/orm/server/transaction.js +5 -5
  86. package/orm/server/transactional.js +134 -0
  87. package/orm/sqls.js +60 -0
  88. package/orm/utils.js +12 -0
  89. package/package.json +33 -31
  90. package/password/password-check-result.model.js +8 -8
  91. package/password/password-check.js +5 -7
  92. package/password/password-check.localization.js +12 -12
  93. package/pdf/pdf.service.js +1 -1
  94. package/pdf/utils.js +19 -2
  95. package/process/spawn.js +42 -5
  96. package/queue/postgres/queue.js +5 -5
  97. package/queue/queue.js +6 -6
  98. package/schema/schemas/one-or-many.js +1 -1
  99. package/search-index/elastic/model/index-mapping.js +0 -1
  100. package/search-index/elastic/search-index.js +3 -3
  101. package/types/ai/ai-file.service.d.ts +27 -0
  102. package/types/ai/ai-session.d.ts +11 -0
  103. package/types/ai/ai.service.d.ts +60 -0
  104. package/types/ai/functions.d.ts +3 -0
  105. package/types/ai/types.d.ts +91 -0
  106. package/types/api/client/client.d.ts +23 -0
  107. package/types/api/default-error-handlers.d.ts +14 -0
  108. package/types/api/server/api-controller.d.ts +11 -0
  109. package/types/api/server/error-handler.d.ts +4 -0
  110. package/types/api/server/gateway.d.ts +77 -0
  111. package/types/api/server/middlewares/catch-error.middleware.d.ts +4 -0
  112. package/types/api/server/middlewares/cors.middleware.d.ts +6 -0
  113. package/types/api/server/module.d.ts +10 -0
  114. package/types/api/server/tokens.d.ts +5 -0
  115. package/types/api/types.d.ts +123 -0
  116. package/types/application/application.d.ts +34 -0
  117. package/types/authentication/authentication.api.d.ts +293 -0
  118. package/types/authentication/client/api.client.d.ts +9 -0
  119. package/types/authentication/client/authentication.service.d.ts +61 -0
  120. package/types/authentication/client/http-client.middleware.d.ts +4 -0
  121. package/types/authentication/client/module.d.ts +10 -0
  122. package/types/authentication/client/tokens.d.ts +4 -0
  123. package/types/authentication/errors/secret-requirements.error.d.ts +5 -0
  124. package/types/authentication/models/authentication-credentials.model.d.ts +7 -0
  125. package/types/authentication/models/authentication-session.model.d.ts +10 -0
  126. package/types/authentication/models/schemas.d.ts +5 -0
  127. package/types/authentication/models/secret-check-result.model.d.ts +3 -0
  128. package/types/authentication/models/token.model.d.ts +20 -0
  129. package/types/authentication/server/authentication-ancillary.service.d.ts +27 -0
  130. package/types/authentication/server/authentication-api-request-token.provider.d.ts +8 -0
  131. package/types/authentication/server/authentication.api-controller.d.ts +23 -0
  132. package/types/authentication/server/authentication.service.d.ts +110 -0
  133. package/types/authentication/server/helper.d.ts +15 -0
  134. package/types/authentication/server/module.d.ts +14 -0
  135. package/types/browser/browser-context-controller.d.ts +45 -0
  136. package/types/browser/browser-controller.d.ts +49 -0
  137. package/types/browser/browser.service.d.ts +42 -0
  138. package/types/browser/element-controller.d.ts +104 -0
  139. package/types/browser/locator-controller.d.ts +16 -0
  140. package/types/browser/page-controller.d.ts +40 -0
  141. package/types/browser/types.d.ts +15 -0
  142. package/types/browser/utils.d.ts +17 -0
  143. package/types/collections/observable/observable-sorted-array-list.d.ts +36 -0
  144. package/types/collections/sorted-array-list.d.ts +37 -0
  145. package/types/context/context.d.ts +10 -0
  146. package/types/data-structures/array-list.d.ts +30 -0
  147. package/types/data-structures/circular-buffer.d.ts +56 -0
  148. package/types/data-structures/collection.d.ts +65 -0
  149. package/types/data-structures/context-data-map.d.ts +11 -0
  150. package/types/data-structures/index-out-of-bounds.error.d.ts +8 -0
  151. package/types/data-structures/linked-list.d.ts +57 -0
  152. package/types/data-structures/list.d.ts +78 -0
  153. package/types/data-structures/sorted-array-list.d.ts +49 -0
  154. package/types/database/module.d.ts +8 -0
  155. package/types/database/mongo/classes.d.ts +21 -0
  156. package/types/database/mongo/model/document.d.ts +29 -0
  157. package/types/database/mongo/mongo-base.repository.d.ts +103 -0
  158. package/types/database/mongo/mongo-bulk.d.ts +35 -0
  159. package/types/database/mongo/mongo-entity-repository.d.ts +98 -0
  160. package/types/database/mongo/operations.d.ts +10 -0
  161. package/types/database/mongo/query-converter.d.ts +6 -0
  162. package/types/database/mongo/simple-entity-repository.d.ts +7 -0
  163. package/types/database/mongo/types.d.ts +50 -0
  164. package/types/database/query.d.ts +121 -0
  165. package/types/decorators/log.d.ts +3 -0
  166. package/types/disposable/async-disposer.d.ts +35 -0
  167. package/types/distributed-loop/distributed-loop.d.ts +32 -0
  168. package/types/distributed-loop/provider.d.ts +7 -0
  169. package/types/document-management/api/document-management.api.d.ts +634 -0
  170. package/types/document-management/localizations/localization.d.ts +9 -0
  171. package/types/document-management/models/document-assignment-scope.model.d.ts +11 -0
  172. package/types/document-management/models/document-assignment-task.model.d.ts +13 -0
  173. package/types/document-management/models/document-category.model.d.ts +7 -0
  174. package/types/document-management/models/document-collection-assignment.model.d.ts +7 -0
  175. package/types/document-management/models/document-collection.model.d.ts +5 -0
  176. package/types/document-management/models/document-file.model.d.ts +7 -0
  177. package/types/document-management/models/document-property-value.model.d.ts +12 -0
  178. package/types/document-management/models/document-property.model.d.ts +16 -0
  179. package/types/document-management/models/document-request-collection.model.d.ts +7 -0
  180. package/types/document-management/models/document-request-submission.model.d.ts +7 -0
  181. package/types/document-management/models/document-request-template.d.ts +8 -0
  182. package/types/document-management/models/document-request.model.d.ts +18 -0
  183. package/types/document-management/models/document-requests-template.d.ts +5 -0
  184. package/types/document-management/models/document-type-property.model.d.ts +6 -0
  185. package/types/document-management/models/document-type-validation.model.d.ts +6 -0
  186. package/types/document-management/models/document-type.model.d.ts +7 -0
  187. package/types/document-management/models/document-validation-definition.model.d.ts +10 -0
  188. package/types/document-management/models/document-validation-execution-related-document.model.d.ts +7 -0
  189. package/types/document-management/models/document-validation-execution.model.d.ts +26 -0
  190. package/types/document-management/models/document-workflow.model.d.ts +35 -0
  191. package/types/document-management/models/document.model.d.ts +24 -0
  192. package/types/document-management/models/index.d.ts +22 -0
  193. package/types/document-management/models/service-models/categories-and-types.view-model.d.ts +6 -0
  194. package/types/document-management/models/service-models/document-folders.view-model.d.ts +15 -0
  195. package/types/document-management/models/service-models/document-management.view-model.d.ts +41 -0
  196. package/types/document-management/models/service-models/document.service-model.d.ts +253 -0
  197. package/types/document-management/models/service-models/enriched/enriched-document-assignment.view.d.ts +11 -0
  198. package/types/document-management/models/service-models/enriched/enriched-document-category.view.d.ts +13 -0
  199. package/types/document-management/models/service-models/enriched/enriched-document-collection.view.d.ts +22 -0
  200. package/types/document-management/models/service-models/enriched/enriched-document-file.view.d.ts +12 -0
  201. package/types/document-management/models/service-models/enriched/enriched-document-management-data.view.d.ts +41 -0
  202. package/types/document-management/models/service-models/enriched/enriched-document-request.view.d.ts +17 -0
  203. package/types/document-management/models/service-models/enriched/enriched-document-type.view.d.ts +9 -0
  204. package/types/document-management/models/service-models/enriched/enriched-document.view.d.ts +28 -0
  205. package/types/document-management/models/service-models/enriched/enriched.d.ts +18 -0
  206. package/types/document-management/models/service-models/enriched/index.d.ts +9 -0
  207. package/types/document-management/models/service-models/index.d.ts +8 -0
  208. package/types/document-management/models/service-models/normalized-requests-template-data.model.d.ts +18 -0
  209. package/types/document-management/models/service-models/stats.view-model.d.ts +8 -0
  210. package/types/document-management/server/module.d.ts +12 -0
  211. package/types/document-management/server/schemas.d.ts +31 -0
  212. package/types/document-management/server/services/document-category-type.service.d.ts +25 -0
  213. package/types/document-management/server/services/document-collection.service.d.ts +13 -0
  214. package/types/document-management/server/services/document-file.service.d.ts +17 -0
  215. package/types/document-management/server/services/document-management-ai.service.d.ts +22 -0
  216. package/types/document-management/server/services/document-management-ancillary.service.d.ts +128 -0
  217. package/types/document-management/server/services/document-management.service.d.ts +13 -0
  218. package/types/document-management/server/services/document-property.service.d.ts +84 -0
  219. package/types/document-management/server/services/document-request.service.d.ts +30 -0
  220. package/types/document-management/server/services/document-validation.service.d.ts +20 -0
  221. package/types/document-management/server/services/document-workflow.service.d.ts +20 -0
  222. package/types/document-management/server/services/document.service.d.ts +16 -0
  223. package/types/document-management/server/services/index.d.ts +11 -0
  224. package/types/document-management/server/validators/ai-validation-executor.d.ts +19 -0
  225. package/types/document-management/server/validators/index.d.ts +2 -0
  226. package/types/document-management/server/validators/single-document-validation-executor.d.ts +16 -0
  227. package/types/document-management/server/validators/validator.d.ts +21 -0
  228. package/types/dom/file-select-dialog.d.ts +7 -0
  229. package/types/dom/observation/intersection-observer.d.ts +4 -0
  230. package/types/dom/observation/media-query-observer.d.ts +12 -0
  231. package/types/dom/observation/resize-observer.d.ts +4 -0
  232. package/types/enumerable/async-enumerable.d.ts +78 -0
  233. package/types/enumerable/enumerable.d.ts +63 -0
  234. package/types/enumeration/enumeration.d.ts +5 -0
  235. package/types/errors/errors.localization.d.ts +53 -0
  236. package/types/errors/not-supported.error.d.ts +7 -0
  237. package/types/examples/api/authentication.d.ts +1 -0
  238. package/types/examples/api/basic-overview.d.ts +1 -0
  239. package/types/examples/api/custom-authentication.d.ts +1 -0
  240. package/types/examples/api/streaming.d.ts +1 -0
  241. package/types/examples/browser/basic.d.ts +1 -0
  242. package/types/examples/document-management/main.d.ts +21 -0
  243. package/types/examples/http/client.d.ts +1 -0
  244. package/types/examples/mail/templates/hello-name.d.ts +5 -0
  245. package/types/examples/orm/schemas.d.ts +3 -0
  246. package/types/examples/orm/user.model.d.ts +13 -0
  247. package/types/examples/pdf/templates/hello-name.d.ts +2 -0
  248. package/types/examples/reflection/basic.d.ts +11 -0
  249. package/types/examples/template/templates/hello-jsx.d.ts +4 -0
  250. package/types/examples/template/templates/hello-name.d.ts +4 -0
  251. package/types/formats.d.ts +51 -0
  252. package/types/function/log.d.ts +8 -0
  253. package/types/http/client/adapters/undici.adapter.d.ts +20 -0
  254. package/types/http/client/http-client-request.d.ts +122 -0
  255. package/types/http/client/http-client-response.d.ts +28 -0
  256. package/types/http/client/http-client.d.ts +56 -0
  257. package/types/http/client/middleware.d.ts +10 -0
  258. package/types/http/client/module.d.ts +12 -0
  259. package/types/http/client/tokens.d.ts +2 -0
  260. package/types/http/http-body.d.ts +21 -0
  261. package/types/http/http-value-map.d.ts +36 -0
  262. package/types/http/http.error.d.ts +28 -0
  263. package/types/http/server/http-server-request.d.ts +23 -0
  264. package/types/http/server/http-server-response.d.ts +38 -0
  265. package/types/http/server/http-server.d.ts +16 -0
  266. package/types/http/server/node/node-http-server.d.ts +22 -0
  267. package/types/http/types.d.ts +10 -0
  268. package/types/http/utils.d.ts +18 -0
  269. package/types/image-service/imgproxy/imgproxy-image-service.d.ts +24 -0
  270. package/types/index.d.ts +8 -2
  271. package/types/injector/decorators.d.ts +82 -0
  272. package/types/injector/injector.d.ts +113 -0
  273. package/types/injector/interfaces.d.ts +17 -0
  274. package/types/injector/provider.d.ts +57 -0
  275. package/types/injector/resolution.d.ts +15 -0
  276. package/types/injector/resolve-chain.d.ts +34 -0
  277. package/types/injector/resolve.error.d.ts +5 -0
  278. package/types/injector/token.d.ts +25 -0
  279. package/types/injector/type-info.d.ts +22 -0
  280. package/types/injector/types.d.ts +64 -0
  281. package/types/key-value-store/key-value.store.d.ts +23 -0
  282. package/types/key-value-store/mongo/module.d.ts +8 -0
  283. package/types/key-value-store/mongo/mongo-key-value-store.provider.d.ts +8 -0
  284. package/types/key-value-store/mongo/mongo-key-value.model.d.ts +7 -0
  285. package/types/key-value-store/mongo/mongo-key-value.repository.d.ts +10 -0
  286. package/types/key-value-store/mongo/mongo-key-value.store.d.ts +14 -0
  287. package/types/key-value-store/mongo/tokens.d.ts +3 -0
  288. package/types/lock/lock.d.ts +48 -0
  289. package/types/lock/mongo/lock.d.ts +14 -0
  290. package/types/lock/mongo/model.d.ts +6 -0
  291. package/types/lock/mongo/module.d.ts +12 -0
  292. package/types/lock/mongo/mongo-lock-repository.d.ts +14 -0
  293. package/types/lock/mongo/provider.d.ts +8 -0
  294. package/types/lock/provider.d.ts +10 -0
  295. package/types/lock/web/web-lock.provider.d.ts +8 -0
  296. package/types/logger/logger.d.ts +41 -0
  297. package/types/logger/tokens.d.ts +2 -0
  298. package/types/mail/clients/nodemailer.mail-client.d.ts +13 -0
  299. package/types/mail/mail.client.d.ts +17 -0
  300. package/types/mail/mail.service.d.ts +10 -0
  301. package/types/mail/models/mail-data.model.d.ts +21 -0
  302. package/types/mail/models/mail-log.model.d.ts +10 -0
  303. package/types/mail/models/mail-template.model.d.ts +14 -0
  304. package/types/mail/models/schemas.d.ts +3 -0
  305. package/types/mail/module.d.ts +15 -0
  306. package/types/mail/tokens.d.ts +1 -0
  307. package/types/message-bus/broadcast-channel/broadcast-channel-message-bus-provider.d.ts +8 -0
  308. package/types/message-bus/broadcast-channel/broadcast-channel-message-bus.d.ts +19 -0
  309. package/types/message-bus/local/local-message-bus-provider.d.ts +9 -0
  310. package/types/message-bus/local/local-message-bus.d.ts +14 -0
  311. package/types/message-bus/message-bus-base.d.ts +26 -0
  312. package/types/message-bus/message-bus.d.ts +15 -0
  313. package/types/migration/migration-state-repository.d.ts +4 -0
  314. package/types/migration/migration-state.d.ts +6 -0
  315. package/types/migration/mongo/migration-state-repository.d.ts +11 -0
  316. package/types/migration/mongo/module.d.ts +12 -0
  317. package/types/module/module-base.d.ts +18 -0
  318. package/types/module/module-metric-reporter.d.ts +29 -0
  319. package/types/module/module.d.ts +23 -0
  320. package/types/module/modules/function.module.d.ts +10 -0
  321. package/types/module/modules/web-server.module.d.ts +27 -0
  322. package/types/module/utils.d.ts +4 -0
  323. package/types/object-storage/object-storage.d.ts +75 -0
  324. package/types/object-storage/object.d.ts +12 -0
  325. package/types/object-storage/s3/s3.object-storage-provider.d.ts +41 -0
  326. package/types/object-storage/s3/s3.object-storage.d.ts +28 -0
  327. package/types/object-storage/s3/s3.object.d.ts +16 -0
  328. package/types/openid-connect/cached-oidc-configuration.service.d.ts +9 -0
  329. package/types/openid-connect/mongo-oidc-state.repository.d.ts +21 -0
  330. package/types/openid-connect/oidc-configuration.service.d.ts +13 -0
  331. package/types/openid-connect/oidc-state.model.d.ts +11 -0
  332. package/types/openid-connect/oidc-state.repository.d.ts +4 -0
  333. package/types/openid-connect/oidc.service.d.ts +20 -0
  334. package/types/orm/data-types/bytea.d.ts +18 -0
  335. package/types/orm/data-types/index.d.ts +7 -0
  336. package/types/orm/data-types/numeric-date.d.ts +19 -0
  337. package/types/orm/data-types/timestamp.d.ts +19 -0
  338. package/types/orm/decorators.d.ts +212 -0
  339. package/types/orm/entity.d.ts +41 -0
  340. package/types/orm/index.d.ts +12 -0
  341. package/types/orm/query.d.ts +164 -0
  342. package/types/orm/repository.types.d.ts +84 -0
  343. package/types/orm/schemas/json.d.ts +9 -0
  344. package/types/orm/schemas/numeric-date.d.ts +8 -0
  345. package/types/orm/schemas/timestamp.d.ts +10 -0
  346. package/types/orm/schemas/uuid.d.ts +11 -0
  347. package/types/orm/server/database-schema.d.ts +45 -0
  348. package/types/orm/server/database.d.ts +27 -0
  349. package/types/orm/server/drizzle/schema-converter.d.ts +15 -0
  350. package/types/orm/server/encryption.d.ts +18 -0
  351. package/types/orm/server/index.d.ts +13 -0
  352. package/types/orm/server/module.d.ts +32 -0
  353. package/types/orm/server/query-converter.d.ts +21 -0
  354. package/types/orm/server/repository.d.ts +487 -0
  355. package/types/orm/server/tokens.d.ts +1 -0
  356. package/types/orm/server/transaction.d.ts +29 -0
  357. package/types/orm/server/transactional.d.ts +75 -0
  358. package/types/orm/server/types.d.ts +47 -0
  359. package/types/orm/sqls.d.ts +71 -0
  360. package/types/orm/types.d.ts +93 -0
  361. package/types/orm/utils.d.ts +19 -0
  362. package/types/password/password-check-result.model.d.ts +19 -0
  363. package/types/password/password-check.localization.d.ts +20 -0
  364. package/types/pdf/pdf.service.d.ts +101 -0
  365. package/types/pdf/utils.d.ts +12 -0
  366. package/types/pool/pool.d.ts +49 -0
  367. package/types/process/spawn.d.ts +22 -0
  368. package/types/process-shutdown.d.ts +9 -0
  369. package/types/promise/cancelable-promise.d.ts +15 -0
  370. package/types/queue/mongo/job.d.ts +12 -0
  371. package/types/queue/mongo/mongo-job.repository.d.ts +13 -0
  372. package/types/queue/mongo/queue.d.ts +38 -0
  373. package/types/queue/mongo/queue.provider.d.ts +22 -0
  374. package/types/queue/postgres/job.model.d.ts +13 -0
  375. package/types/queue/postgres/module.d.ts +9 -0
  376. package/types/queue/postgres/queue.d.ts +31 -0
  377. package/types/queue/postgres/queue.provider.d.ts +7 -0
  378. package/types/queue/postgres/schemas.d.ts +3 -0
  379. package/types/queue/provider.d.ts +5 -0
  380. package/types/queue/queue.d.ts +91 -0
  381. package/types/reflection/decorators.d.ts +15 -0
  382. package/types/reflection/registry.d.ts +61 -0
  383. package/types/reflection/types.d.ts +90 -0
  384. package/types/reflection/utils.d.ts +33 -0
  385. package/types/rpc/model.d.ts +64 -0
  386. package/types/rpc/rpc.adapter.d.ts +19 -0
  387. package/types/rpc/rpc.d.ts +21 -0
  388. package/types/rpc/rpc.error.d.ts +8 -0
  389. package/types/rxjs-utils/retry-backoff.d.ts +4 -0
  390. package/types/schema/converters/openapi-converter.d.ts +3 -0
  391. package/types/schema/decorators/class.d.ts +3 -0
  392. package/types/schema/decorators/description.d.ts +3 -0
  393. package/types/schema/decorators/schema.d.ts +21 -0
  394. package/types/schema/decorators/types.d.ts +24 -0
  395. package/types/schema/decorators/utils.d.ts +7 -0
  396. package/types/schema/schema.d.ts +99 -0
  397. package/types/schema/schema.error.d.ts +25 -0
  398. package/types/schema/schemas/array.d.ts +20 -0
  399. package/types/schema/schemas/defaulted.d.ts +13 -0
  400. package/types/schema/schemas/deferred.d.ts +12 -0
  401. package/types/schema/schemas/enumeration.d.ts +13 -0
  402. package/types/schema/schemas/function.d.ts +23 -0
  403. package/types/schema/schemas/instance.d.ts +13 -0
  404. package/types/schema/schemas/literal.d.ts +12 -0
  405. package/types/schema/schemas/never.d.ts +8 -0
  406. package/types/schema/schemas/nullable.d.ts +12 -0
  407. package/types/schema/schemas/number.d.ts +19 -0
  408. package/types/schema/schemas/object.d.ts +91 -0
  409. package/types/schema/schemas/one-or-many.d.ts +15 -0
  410. package/types/schema/schemas/optional.d.ts +13 -0
  411. package/types/schema/schemas/simple.d.ts +27 -0
  412. package/types/schema/schemas/transform.d.ts +10 -0
  413. package/types/schema/schemas/union.d.ts +15 -0
  414. package/types/search-index/elastic/config.d.ts +8 -0
  415. package/types/search-index/elastic/model/index-mapping.d.ts +26 -0
  416. package/types/search-index/elastic/model/sort.d.ts +8 -0
  417. package/types/search-index/elastic/module.d.ts +10 -0
  418. package/types/search-index/elastic/query-converter.d.ts +9 -0
  419. package/types/search-index/elastic/search-index.d.ts +30 -0
  420. package/types/search-index/elastic/sort-converter.d.ts +4 -0
  421. package/types/search-index/error.d.ts +10 -0
  422. package/types/search-index/memory/memory-search-index.d.ts +19 -0
  423. package/types/search-index/search-index.d.ts +46 -0
  424. package/types/search-index/search-result.d.ts +12 -0
  425. package/types/serializer/handlers/binary.d.ts +12 -0
  426. package/types/serializer/serializable.d.ts +33 -0
  427. package/types/serializer/serializer.d.ts +20 -0
  428. package/types/serializer/types.d.ts +65 -0
  429. package/types/sse/server-sent-events-source.d.ts +12 -0
  430. package/types/templates/module.d.ts +14 -0
  431. package/types/templates/providers/file.template-provider.d.ts +15 -0
  432. package/types/templates/renderers/handlebars.template-renderer.d.ts +43 -0
  433. package/types/templates/renderers/jsx.template-renderer.d.ts +10 -0
  434. package/types/templates/renderers/mjml.template-renderer.d.ts +16 -0
  435. package/types/templates/renderers/string.template-renderer.d.ts +10 -0
  436. package/types/templates/resolvers/file.template-resolver.d.ts +22 -0
  437. package/types/templates/resolvers/jsx.template-resolver.d.ts +17 -0
  438. package/types/templates/resolvers/string.template-resolver.d.ts +13 -0
  439. package/types/templates/template.model.d.ts +25 -0
  440. package/types/templates/template.renderer.d.ts +20 -0
  441. package/types/templates/template.service.d.ts +18 -0
  442. package/types/templates/tokens.d.ts +4 -0
  443. package/types/test.d.ts +1 -0
  444. package/types/test2.d.ts +1 -0
  445. package/types/test3.d.ts +1 -0
  446. package/types/test4.d.ts +21 -0
  447. package/types/test5.d.ts +1 -0
  448. package/types/test6.d.ts +1 -0
  449. package/types/text/dynamic-text.model.d.ts +15 -0
  450. package/types/text/localization.service.d.ts +92 -0
  451. package/types/theme/adapters/tailwind-adapter.d.ts +18 -0
  452. package/types/theme/theme-service.d.ts +43 -0
  453. package/types/threading/thread-pool.d.ts +20 -0
  454. package/types/tools/fetch-mime-types.d.ts +1 -0
  455. package/types/types/geo-json.d.ts +36 -0
  456. package/types/types/index.d.ts +2 -0
  457. package/types/types/tagged.d.ts +16 -0
  458. package/types/types.d.ts +215 -0
  459. package/types/utils/async-hook/async-hook.d.ts +9 -0
  460. package/types/utils/async-hook/index.d.ts +1 -0
  461. package/types/utils/async-iterable-helpers/take-until.d.ts +3 -0
  462. package/types/utils/backoff.d.ts +77 -0
  463. package/types/utils/binary.d.ts +16 -0
  464. package/types/utils/cryptography.d.ts +122 -0
  465. package/types/utils/encoding.d.ts +36 -0
  466. package/types/utils/enum.d.ts +9 -0
  467. package/types/utils/equals.d.ts +30 -0
  468. package/types/utils/event-loop.d.ts +4 -0
  469. package/types/utils/format-error.d.ts +24 -0
  470. package/types/utils/function/class.d.ts +6 -0
  471. package/types/utils/function/index.d.ts +3 -0
  472. package/types/utils/function/memoize.d.ts +36 -0
  473. package/types/utils/iterable-helpers/take-until.d.ts +2 -0
  474. package/types/utils/jwt.d.ts +32 -0
  475. package/types/utils/math.d.ts +93 -0
  476. package/types/utils/merge.d.ts +19 -0
  477. package/types/utils/object/decycle.d.ts +16 -0
  478. package/types/utils/object/dereference.d.ts +34 -0
  479. package/types/utils/object/forward-ref.d.ts +21 -0
  480. package/types/utils/object/lazy-property.d.ts +49 -0
  481. package/types/utils/object/object.d.ts +30 -0
  482. package/types/utils/object/property-name.d.ts +61 -0
  483. package/types/utils/patch-worker.d.ts +25 -0
  484. package/types/utils/reactive-value-to-signal.d.ts +20 -0
  485. package/types/utils/reflection.d.ts +8 -0
  486. package/types/utils/repl.d.ts +9 -0
  487. package/types/utils/singleton.d.ts +7 -0
  488. package/types/utils/stream/from-promise.d.ts +3 -0
  489. package/types/utils/stream/index.d.ts +9 -0
  490. package/types/utils/stream/size-limited-stream.d.ts +2 -0
  491. package/types/utils/timing.d.ts +20 -0
  492. package/types/utils/try-ignore.d.ts +9 -0
  493. package/types/utils/type/extends.d.ts +3 -0
  494. package/types/utils/type-guards.d.ts +259 -0
  495. package/types/utils/z-base32.d.ts +3 -0
  496. package/utils/async-hook/async-hook.js +21 -0
  497. package/utils/async-hook/index.js +1 -0
  498. package/utils/compression.js +1 -1
  499. package/utils/function/class.js +9 -0
  500. package/utils/function/index.js +1 -0
  501. package/utils/function/memoize.js +41 -2
  502. package/utils/jwt.js +5 -5
  503. package/utils/object/forward-ref.js +12 -12
  504. package/utils/object/lazy-property.js +2 -2
  505. package/utils/proxy.js +1 -1
  506. package/utils/stream/from-promise.js +27 -0
  507. package/utils/stream/index.js +1 -1
  508. package/utils/stream/stream-reader.js +71 -31
  509. package/ai/ai-file.service.d.ts +0 -27
  510. package/ai/ai-session.d.ts +0 -11
  511. package/ai/ai.service.d.ts +0 -68
  512. package/ai/functions.d.ts +0 -3
  513. package/ai/types.d.ts +0 -89
  514. package/api/client/client.d.ts +0 -23
  515. package/api/default-error-handlers.d.ts +0 -14
  516. package/api/server/api-controller.d.ts +0 -11
  517. package/api/server/error-handler.d.ts +0 -4
  518. package/api/server/gateway.d.ts +0 -77
  519. package/api/server/middlewares/catch-error.middleware.d.ts +0 -4
  520. package/api/server/middlewares/cors.middleware.d.ts +0 -6
  521. package/api/server/module.d.ts +0 -10
  522. package/api/server/tokens.d.ts +0 -5
  523. package/api/types.d.ts +0 -123
  524. package/application/application.d.ts +0 -34
  525. package/authentication/authentication.api.d.ts +0 -293
  526. package/authentication/client/api.client.d.ts +0 -9
  527. package/authentication/client/authentication.service.d.ts +0 -61
  528. package/authentication/client/http-client.middleware.d.ts +0 -4
  529. package/authentication/client/module.d.ts +0 -10
  530. package/authentication/client/tokens.d.ts +0 -4
  531. package/authentication/errors/secret-requirements.error.d.ts +0 -5
  532. package/authentication/models/authentication-credentials.model.d.ts +0 -7
  533. package/authentication/models/authentication-session.model.d.ts +0 -10
  534. package/authentication/models/schemas.d.ts +0 -5
  535. package/authentication/models/secret-check-result.model.d.ts +0 -3
  536. package/authentication/models/token.model.d.ts +0 -20
  537. package/authentication/server/authentication-ancillary.service.d.ts +0 -27
  538. package/authentication/server/authentication-api-request-token.provider.d.ts +0 -8
  539. package/authentication/server/authentication.api-controller.d.ts +0 -23
  540. package/authentication/server/authentication.service.d.ts +0 -110
  541. package/authentication/server/helper.d.ts +0 -15
  542. package/authentication/server/module.d.ts +0 -14
  543. package/browser/browser-context-controller.d.ts +0 -45
  544. package/browser/browser-controller.d.ts +0 -49
  545. package/browser/browser.service.d.ts +0 -42
  546. package/browser/element-controller.d.ts +0 -104
  547. package/browser/locator-controller.d.ts +0 -16
  548. package/browser/page-controller.d.ts +0 -40
  549. package/browser/types.d.ts +0 -15
  550. package/browser/utils.d.ts +0 -17
  551. package/collections/observable/observable-sorted-array-list.d.ts +0 -36
  552. package/collections/sorted-array-list.d.ts +0 -37
  553. package/context/context.d.ts +0 -10
  554. package/data-structures/array-list.d.ts +0 -30
  555. package/data-structures/circular-buffer.d.ts +0 -56
  556. package/data-structures/collection.d.ts +0 -65
  557. package/data-structures/context-data-map.d.ts +0 -11
  558. package/data-structures/index-out-of-bounds.error.d.ts +0 -8
  559. package/data-structures/linked-list.d.ts +0 -57
  560. package/data-structures/list.d.ts +0 -78
  561. package/data-structures/sorted-array-list.d.ts +0 -49
  562. package/database/module.d.ts +0 -8
  563. package/database/mongo/classes.d.ts +0 -21
  564. package/database/mongo/model/document.d.ts +0 -29
  565. package/database/mongo/mongo-base.repository.d.ts +0 -103
  566. package/database/mongo/mongo-bulk.d.ts +0 -35
  567. package/database/mongo/mongo-entity-repository.d.ts +0 -98
  568. package/database/mongo/operations.d.ts +0 -10
  569. package/database/mongo/query-converter.d.ts +0 -6
  570. package/database/mongo/simple-entity-repository.d.ts +0 -7
  571. package/database/mongo/types.d.ts +0 -50
  572. package/database/query.d.ts +0 -121
  573. package/decorators/log.d.ts +0 -3
  574. package/disposable/async-disposer.d.ts +0 -35
  575. package/distributed-loop/distributed-loop.d.ts +0 -32
  576. package/distributed-loop/provider.d.ts +0 -7
  577. package/document-management/api/document-management.api.d.ts +0 -789
  578. package/document-management/localizations/localization.d.ts +0 -9
  579. package/document-management/models/document-category.model.d.ts +0 -5
  580. package/document-management/models/document-collection-document.model.d.ts +0 -7
  581. package/document-management/models/document-collection-document.model.js +0 -39
  582. package/document-management/models/document-collection.model.d.ts +0 -3
  583. package/document-management/models/document-file.model.d.ts +0 -7
  584. package/document-management/models/document-property-value.model.d.ts +0 -20
  585. package/document-management/models/document-property.model.d.ts +0 -15
  586. package/document-management/models/document-request-assignment-task-collection.model.d.ts +0 -7
  587. package/document-management/models/document-request-assignment-task-collection.model.js +0 -34
  588. package/document-management/models/document-request-assignment-task.model.d.ts +0 -14
  589. package/document-management/models/document-request-assignment-task.model.js +0 -77
  590. package/document-management/models/document-request-collection.model.d.ts +0 -7
  591. package/document-management/models/document-request-file.model.d.ts +0 -16
  592. package/document-management/models/document-request-file.model.js +0 -86
  593. package/document-management/models/document-request-template.d.ts +0 -10
  594. package/document-management/models/document-request.model.d.ts +0 -10
  595. package/document-management/models/document-requests-template.d.ts +0 -5
  596. package/document-management/models/document-type-property.model.d.ts +0 -6
  597. package/document-management/models/document-type.model.d.ts +0 -8
  598. package/document-management/models/document.model.d.ts +0 -13
  599. package/document-management/models/index.d.ts +0 -17
  600. package/document-management/models/service-models/categories-and-types.view-model.d.ts +0 -6
  601. package/document-management/models/service-models/document-folders.view-model.d.ts +0 -22
  602. package/document-management/models/service-models/document.service-model.d.ts +0 -283
  603. package/document-management/models/service-models/document.view-model.d.ts +0 -41
  604. package/document-management/models/service-models/document.view-model.js +0 -110
  605. package/document-management/models/service-models/index.d.ts +0 -8
  606. package/document-management/models/service-models/normalized-document-collection-view.model.d.ts +0 -73
  607. package/document-management/models/service-models/normalized-document-collection-view.model.js +0 -110
  608. package/document-management/models/service-models/normalized-requests-template-data.model.d.ts +0 -16
  609. package/document-management/models/service-models/stats.view-model.d.ts +0 -6
  610. package/document-management/server/module.d.ts +0 -12
  611. package/document-management/server/schemas.d.ts +0 -36
  612. package/document-management/server/services/document-management-ancillary.service.d.ts +0 -4
  613. package/document-management/server/services/document-management.service.d.ts +0 -125
  614. package/document-management/server/services/index.d.ts +0 -2
  615. package/dom/file-select-dialog.d.ts +0 -7
  616. package/dom/observation/intersection-observer.d.ts +0 -4
  617. package/dom/observation/media-query-observer.d.ts +0 -12
  618. package/dom/observation/resize-observer.d.ts +0 -4
  619. package/enumerable/async-enumerable.d.ts +0 -78
  620. package/enumerable/enumerable.d.ts +0 -63
  621. package/enumeration/enumeration.d.ts +0 -5
  622. package/errors/errors.localization.d.ts +0 -53
  623. package/errors/not-supported.error.d.ts +0 -7
  624. package/examples/api/authentication.d.ts +0 -1
  625. package/examples/api/basic-overview.d.ts +0 -1
  626. package/examples/api/custom-authentication.d.ts +0 -1
  627. package/examples/api/streaming.d.ts +0 -1
  628. package/examples/browser/basic.d.ts +0 -1
  629. package/examples/document-management/main.d.ts +0 -6
  630. package/examples/http/client.d.ts +0 -1
  631. package/examples/mail/templates/hello-name.d.ts +0 -5
  632. package/examples/orm/schemas.d.ts +0 -3
  633. package/examples/orm/user.model.d.ts +0 -13
  634. package/examples/pdf/templates/hello-name.d.ts +0 -2
  635. package/examples/reflection/basic.d.ts +0 -11
  636. package/examples/template/templates/hello-jsx.d.ts +0 -4
  637. package/examples/template/templates/hello-name.d.ts +0 -4
  638. package/formats.d.ts +0 -48
  639. package/function/log.d.ts +0 -8
  640. package/http/client/adapters/undici.adapter.d.ts +0 -20
  641. package/http/client/http-client-request.d.ts +0 -122
  642. package/http/client/http-client-response.d.ts +0 -28
  643. package/http/client/http-client.d.ts +0 -56
  644. package/http/client/middleware.d.ts +0 -10
  645. package/http/client/module.d.ts +0 -12
  646. package/http/client/tokens.d.ts +0 -2
  647. package/http/http-body.d.ts +0 -21
  648. package/http/http-value-map.d.ts +0 -36
  649. package/http/http.error.d.ts +0 -28
  650. package/http/server/http-server-request.d.ts +0 -23
  651. package/http/server/http-server-response.d.ts +0 -38
  652. package/http/server/http-server.d.ts +0 -16
  653. package/http/server/node/node-http-server.d.ts +0 -22
  654. package/http/types.d.ts +0 -10
  655. package/http/utils.d.ts +0 -18
  656. package/image-service/imgproxy/imgproxy-image-service.d.ts +0 -24
  657. package/index.d.ts +0 -8
  658. package/injector/decorators.d.ts +0 -82
  659. package/injector/injector.d.ts +0 -113
  660. package/injector/interfaces.d.ts +0 -17
  661. package/injector/provider.d.ts +0 -57
  662. package/injector/resolution.d.ts +0 -15
  663. package/injector/resolve-chain.d.ts +0 -34
  664. package/injector/resolve.error.d.ts +0 -5
  665. package/injector/token.d.ts +0 -25
  666. package/injector/type-info.d.ts +0 -22
  667. package/injector/types.d.ts +0 -64
  668. package/key-value-store/key-value.store.d.ts +0 -23
  669. package/key-value-store/mongo/module.d.ts +0 -8
  670. package/key-value-store/mongo/mongo-key-value-store.provider.d.ts +0 -8
  671. package/key-value-store/mongo/mongo-key-value.model.d.ts +0 -7
  672. package/key-value-store/mongo/mongo-key-value.repository.d.ts +0 -10
  673. package/key-value-store/mongo/mongo-key-value.store.d.ts +0 -14
  674. package/key-value-store/mongo/tokens.d.ts +0 -3
  675. package/lock/lock.d.ts +0 -48
  676. package/lock/mongo/lock.d.ts +0 -14
  677. package/lock/mongo/model.d.ts +0 -6
  678. package/lock/mongo/module.d.ts +0 -12
  679. package/lock/mongo/mongo-lock-repository.d.ts +0 -14
  680. package/lock/mongo/provider.d.ts +0 -8
  681. package/lock/provider.d.ts +0 -10
  682. package/lock/web/web-lock.provider.d.ts +0 -8
  683. package/logger/logger.d.ts +0 -41
  684. package/logger/tokens.d.ts +0 -2
  685. package/mail/clients/nodemailer.mail-client.d.ts +0 -13
  686. package/mail/mail.client.d.ts +0 -17
  687. package/mail/mail.service.d.ts +0 -10
  688. package/mail/models/mail-data.model.d.ts +0 -21
  689. package/mail/models/mail-log.model.d.ts +0 -10
  690. package/mail/models/mail-template.model.d.ts +0 -14
  691. package/mail/models/schemas.d.ts +0 -3
  692. package/mail/module.d.ts +0 -15
  693. package/mail/tokens.d.ts +0 -1
  694. package/message-bus/broadcast-channel/broadcast-channel-message-bus-provider.d.ts +0 -8
  695. package/message-bus/broadcast-channel/broadcast-channel-message-bus.d.ts +0 -19
  696. package/message-bus/local/local-message-bus-provider.d.ts +0 -9
  697. package/message-bus/local/local-message-bus.d.ts +0 -14
  698. package/message-bus/message-bus-base.d.ts +0 -26
  699. package/message-bus/message-bus.d.ts +0 -15
  700. package/migration/migration-state-repository.d.ts +0 -4
  701. package/migration/migration-state.d.ts +0 -6
  702. package/migration/mongo/migration-state-repository.d.ts +0 -11
  703. package/migration/mongo/module.d.ts +0 -12
  704. package/module/module-base.d.ts +0 -18
  705. package/module/module-metric-reporter.d.ts +0 -29
  706. package/module/module.d.ts +0 -23
  707. package/module/modules/function.module.d.ts +0 -10
  708. package/module/modules/web-server.module.d.ts +0 -27
  709. package/module/utils.d.ts +0 -4
  710. package/object-storage/object-storage.d.ts +0 -75
  711. package/object-storage/object.d.ts +0 -12
  712. package/object-storage/s3/s3.object-storage-provider.d.ts +0 -41
  713. package/object-storage/s3/s3.object-storage.d.ts +0 -28
  714. package/object-storage/s3/s3.object.d.ts +0 -16
  715. package/openid-connect/cached-oidc-configuration.service.d.ts +0 -9
  716. package/openid-connect/mongo-oidc-state.repository.d.ts +0 -21
  717. package/openid-connect/oidc-configuration.service.d.ts +0 -13
  718. package/openid-connect/oidc-state.model.d.ts +0 -11
  719. package/openid-connect/oidc-state.repository.d.ts +0 -4
  720. package/openid-connect/oidc.service.d.ts +0 -20
  721. package/orm/data-types/bytea.d.ts +0 -10
  722. package/orm/data-types/index.d.ts +0 -3
  723. package/orm/data-types/numeric-date.d.ts +0 -10
  724. package/orm/data-types/timestamp.d.ts +0 -10
  725. package/orm/decorators.d.ts +0 -78
  726. package/orm/entity.d.ts +0 -22
  727. package/orm/index.d.ts +0 -7
  728. package/orm/query.d.ts +0 -113
  729. package/orm/repository.types.d.ts +0 -32
  730. package/orm/schemas/json.d.ts +0 -9
  731. package/orm/schemas/numeric-date.d.ts +0 -8
  732. package/orm/schemas/timestamp.d.ts +0 -10
  733. package/orm/schemas/uuid.d.ts +0 -11
  734. package/orm/server/database-schema.d.ts +0 -11
  735. package/orm/server/database.d.ts +0 -9
  736. package/orm/server/drizzle/schema-converter.d.ts +0 -14
  737. package/orm/server/encryption.d.ts +0 -2
  738. package/orm/server/index.d.ts +0 -6
  739. package/orm/server/module.d.ts +0 -12
  740. package/orm/server/query-converter.d.ts +0 -4
  741. package/orm/server/repository.d.ts +0 -181
  742. package/orm/server/tokens.d.ts +0 -1
  743. package/orm/server/transaction.d.ts +0 -29
  744. package/orm/server/types.d.ts +0 -46
  745. package/orm/sqls.d.ts +0 -16
  746. package/orm/types.d.ts +0 -30
  747. package/orm/utils.d.ts +0 -3
  748. package/password/password-check-result.model.d.ts +0 -17
  749. package/password/password-check.localization.d.ts +0 -20
  750. package/pdf/pdf.service.d.ts +0 -101
  751. package/pdf/utils.d.ts +0 -3
  752. package/pool/pool.d.ts +0 -49
  753. package/process/spawn.d.ts +0 -15
  754. package/process-shutdown.d.ts +0 -9
  755. package/promise/cancelable-promise.d.ts +0 -15
  756. package/queue/mongo/job.d.ts +0 -12
  757. package/queue/mongo/mongo-job.repository.d.ts +0 -13
  758. package/queue/mongo/queue.d.ts +0 -38
  759. package/queue/mongo/queue.provider.d.ts +0 -22
  760. package/queue/postgres/job.model.d.ts +0 -13
  761. package/queue/postgres/module.d.ts +0 -9
  762. package/queue/postgres/queue.d.ts +0 -31
  763. package/queue/postgres/queue.provider.d.ts +0 -7
  764. package/queue/postgres/schemas.d.ts +0 -3
  765. package/queue/provider.d.ts +0 -5
  766. package/queue/queue.d.ts +0 -89
  767. package/reflection/decorators.d.ts +0 -15
  768. package/reflection/registry.d.ts +0 -61
  769. package/reflection/types.d.ts +0 -90
  770. package/reflection/utils.d.ts +0 -33
  771. package/rpc/model.d.ts +0 -64
  772. package/rpc/rpc.adapter.d.ts +0 -19
  773. package/rpc/rpc.d.ts +0 -21
  774. package/rpc/rpc.error.d.ts +0 -8
  775. package/rxjs-utils/retry-backoff.d.ts +0 -4
  776. package/schema/converters/openapi-converter.d.ts +0 -3
  777. package/schema/decorators/class.d.ts +0 -3
  778. package/schema/decorators/description.d.ts +0 -3
  779. package/schema/decorators/schema.d.ts +0 -21
  780. package/schema/decorators/types.d.ts +0 -24
  781. package/schema/decorators/utils.d.ts +0 -7
  782. package/schema/schema.d.ts +0 -99
  783. package/schema/schema.error.d.ts +0 -25
  784. package/schema/schemas/array.d.ts +0 -20
  785. package/schema/schemas/defaulted.d.ts +0 -13
  786. package/schema/schemas/deferred.d.ts +0 -12
  787. package/schema/schemas/enumeration.d.ts +0 -13
  788. package/schema/schemas/function.d.ts +0 -23
  789. package/schema/schemas/instance.d.ts +0 -13
  790. package/schema/schemas/literal.d.ts +0 -12
  791. package/schema/schemas/never.d.ts +0 -8
  792. package/schema/schemas/nullable.d.ts +0 -12
  793. package/schema/schemas/number.d.ts +0 -19
  794. package/schema/schemas/object.d.ts +0 -91
  795. package/schema/schemas/one-or-many.d.ts +0 -14
  796. package/schema/schemas/optional.d.ts +0 -13
  797. package/schema/schemas/simple.d.ts +0 -27
  798. package/schema/schemas/transform.d.ts +0 -10
  799. package/schema/schemas/union.d.ts +0 -15
  800. package/search-index/elastic/config.d.ts +0 -8
  801. package/search-index/elastic/model/index-mapping.d.ts +0 -26
  802. package/search-index/elastic/model/sort.d.ts +0 -8
  803. package/search-index/elastic/module.d.ts +0 -10
  804. package/search-index/elastic/query-converter.d.ts +0 -9
  805. package/search-index/elastic/search-index.d.ts +0 -31
  806. package/search-index/elastic/sort-converter.d.ts +0 -4
  807. package/search-index/error.d.ts +0 -10
  808. package/search-index/memory/memory-search-index.d.ts +0 -19
  809. package/search-index/search-index.d.ts +0 -46
  810. package/search-index/search-result.d.ts +0 -12
  811. package/serializer/handlers/binary.d.ts +0 -12
  812. package/serializer/serializable.d.ts +0 -33
  813. package/serializer/serializer.d.ts +0 -20
  814. package/serializer/types.d.ts +0 -65
  815. package/sse/server-sent-events-source.d.ts +0 -12
  816. package/templates/module.d.ts +0 -14
  817. package/templates/providers/file.template-provider.d.ts +0 -15
  818. package/templates/renderers/handlebars.template-renderer.d.ts +0 -43
  819. package/templates/renderers/jsx.template-renderer.d.ts +0 -10
  820. package/templates/renderers/mjml.template-renderer.d.ts +0 -16
  821. package/templates/renderers/string.template-renderer.d.ts +0 -10
  822. package/templates/resolvers/file.template-resolver.d.ts +0 -22
  823. package/templates/resolvers/jsx.template-resolver.d.ts +0 -17
  824. package/templates/resolvers/string.template-resolver.d.ts +0 -13
  825. package/templates/template.model.d.ts +0 -25
  826. package/templates/template.renderer.d.ts +0 -20
  827. package/templates/template.service.d.ts +0 -18
  828. package/templates/tokens.d.ts +0 -4
  829. package/text/dynamic-text.model.d.ts +0 -15
  830. package/text/localization.service.d.ts +0 -92
  831. package/theme/adapters/tailwind-adapter.d.ts +0 -18
  832. package/theme/theme-service.d.ts +0 -43
  833. package/threading/thread-pool.d.ts +0 -20
  834. package/types/geo-json.d.ts +0 -36
  835. package/types/tagged.d.ts +0 -16
  836. package/types.d.ts +0 -214
  837. package/utils/async-iterable-helpers/take-until.d.ts +0 -3
  838. package/utils/backoff.d.ts +0 -77
  839. package/utils/binary.d.ts +0 -16
  840. package/utils/cryptography.d.ts +0 -122
  841. package/utils/encoding.d.ts +0 -36
  842. package/utils/enum.d.ts +0 -9
  843. package/utils/equals.d.ts +0 -30
  844. package/utils/event-loop.d.ts +0 -4
  845. package/utils/format-error.d.ts +0 -24
  846. package/utils/function/index.d.ts +0 -2
  847. package/utils/function/memoize.d.ts +0 -18
  848. package/utils/iterable-helpers/take-until.d.ts +0 -2
  849. package/utils/jwt.d.ts +0 -32
  850. package/utils/math.d.ts +0 -93
  851. package/utils/merge.d.ts +0 -19
  852. package/utils/object/decycle.d.ts +0 -16
  853. package/utils/object/dereference.d.ts +0 -34
  854. package/utils/object/forward-ref.d.ts +0 -20
  855. package/utils/object/lazy-property.d.ts +0 -49
  856. package/utils/object/object.d.ts +0 -30
  857. package/utils/object/property-name.d.ts +0 -61
  858. package/utils/patch-worker.d.ts +0 -25
  859. package/utils/reactive-value-to-signal.d.ts +0 -20
  860. package/utils/reflection.d.ts +0 -8
  861. package/utils/repl.d.ts +0 -9
  862. package/utils/singleton.d.ts +0 -7
  863. package/utils/stream/index.d.ts +0 -9
  864. package/utils/stream/readable-stream-from-promise.d.ts +0 -2
  865. package/utils/stream/readable-stream-from-promise.js +0 -8
  866. package/utils/stream/size-limited-stream.d.ts +0 -2
  867. package/utils/timing.d.ts +0 -20
  868. package/utils/try-ignore.d.ts +0 -9
  869. package/utils/type/extends.d.ts +0 -3
  870. package/utils/type-guards.d.ts +0 -259
  871. package/utils/z-base32.d.ts +0 -3
  872. /package/{ai → types/ai}/index.d.ts +0 -0
  873. /package/{ai → types/ai}/module.d.ts +0 -0
  874. /package/{api → types/api}/client/index.d.ts +0 -0
  875. /package/{api → types/api}/index.d.ts +0 -0
  876. /package/{api → types/api}/response.d.ts +0 -0
  877. /package/{api → types/api}/server/api-request-token.provider.d.ts +0 -0
  878. /package/{api → types/api}/server/index.d.ts +0 -0
  879. /package/{api → types/api}/server/middlewares/allowed-methods.middleware.d.ts +0 -0
  880. /package/{api → types/api}/server/middlewares/content-type.middleware.d.ts +0 -0
  881. /package/{api → types/api}/server/middlewares/index.d.ts +0 -0
  882. /package/{api → types/api}/server/middlewares/response-time.middleware.d.ts +0 -0
  883. /package/{api → types/api}/utils.d.ts +0 -0
  884. /package/{application → types/application}/index.d.ts +0 -0
  885. /package/{authentication → types/authentication}/client/index.d.ts +0 -0
  886. /package/{authentication → types/authentication}/errors/index.d.ts +0 -0
  887. /package/{authentication → types/authentication}/index.d.ts +0 -0
  888. /package/{authentication → types/authentication}/models/index.d.ts +0 -0
  889. /package/{authentication → types/authentication}/models/init-secret-reset-data.model.d.ts +0 -0
  890. /package/{authentication → types/authentication}/models/token-payload-base.model.d.ts +0 -0
  891. /package/{authentication → types/authentication}/server/authentication-secret-requirements.validator.d.ts +0 -0
  892. /package/{authentication → types/authentication}/server/drizzle.config.d.ts +0 -0
  893. /package/{authentication → types/authentication}/server/index.d.ts +0 -0
  894. /package/{browser → types/browser}/document-controller.d.ts +0 -0
  895. /package/{browser → types/browser}/frame-controller.d.ts +0 -0
  896. /package/{browser → types/browser}/index.d.ts +0 -0
  897. /package/{browser → types/browser}/module.d.ts +0 -0
  898. /package/{browser → types/browser}/pdf-options.d.ts +0 -0
  899. /package/{cancellation → types/cancellation}/index.d.ts +0 -0
  900. /package/{cancellation → types/cancellation}/token.d.ts +0 -0
  901. /package/{collections → types/collections}/awaitable/awaitable-list.d.ts +0 -0
  902. /package/{collections → types/collections}/awaitable/awaitable-map.d.ts +0 -0
  903. /package/{collections → types/collections}/awaitable/awaitable-set.d.ts +0 -0
  904. /package/{collections → types/collections}/awaitable/index.d.ts +0 -0
  905. /package/{collections → types/collections}/collection.d.ts +0 -0
  906. /package/{collections → types/collections}/index.d.ts +0 -0
  907. /package/{collections → types/collections}/keyed-set.d.ts +0 -0
  908. /package/{collections → types/collections}/list.d.ts +0 -0
  909. /package/{collections → types/collections}/observable/index.d.ts +0 -0
  910. /package/{collections → types/collections}/observable/observable-array.d.ts +0 -0
  911. /package/{collections → types/collections}/observable/observable-collection-base.d.ts +0 -0
  912. /package/{collections → types/collections}/observable/observable-collection.d.ts +0 -0
  913. /package/{collections → types/collections}/observable/observable-list-base.d.ts +0 -0
  914. /package/{collections → types/collections}/observable/observable-list.d.ts +0 -0
  915. /package/{collections → types/collections}/observable/observable-map.d.ts +0 -0
  916. /package/{collections → types/collections}/observable/observable-set.d.ts +0 -0
  917. /package/{collections → types/collections}/sorted-list.d.ts +0 -0
  918. /package/{collections → types/collections}/sorted-map.d.ts +0 -0
  919. /package/{context → types/context}/index.d.ts +0 -0
  920. /package/{cookie → types/cookie}/cookie.d.ts +0 -0
  921. /package/{cookie → types/cookie}/index.d.ts +0 -0
  922. /package/{core.d.ts → types/core.d.ts} +0 -0
  923. /package/{data-structures → types/data-structures}/array-dictionary.d.ts +0 -0
  924. /package/{data-structures → types/data-structures}/cache.d.ts +0 -0
  925. /package/{data-structures → types/data-structures}/dictionary.d.ts +0 -0
  926. /package/{data-structures → types/data-structures}/distinct-collection.d.ts +0 -0
  927. /package/{data-structures → types/data-structures}/index.d.ts +0 -0
  928. /package/{data-structures → types/data-structures}/iterable-weak-map.d.ts +0 -0
  929. /package/{data-structures → types/data-structures}/map-dictionary.d.ts +0 -0
  930. /package/{data-structures → types/data-structures}/multi-key-map.d.ts +0 -0
  931. /package/{data-structures → types/data-structures}/multi-key-set.d.ts +0 -0
  932. /package/{data-structures → types/data-structures}/set-collection.d.ts +0 -0
  933. /package/{data-structures → types/data-structures}/weak-ref-map.d.ts +0 -0
  934. /package/{database → types/database}/entity-repository.d.ts +0 -0
  935. /package/{database → types/database}/entity.d.ts +0 -0
  936. /package/{database → types/database}/id.d.ts +0 -0
  937. /package/{database → types/database}/index.d.ts +0 -0
  938. /package/{database → types/database}/mongo/index.d.ts +0 -0
  939. /package/{database → types/database}/mongo/model/index.d.ts +0 -0
  940. /package/{database → types/database}/mongo/module.d.ts +0 -0
  941. /package/{database → types/database}/utils.d.ts +0 -0
  942. /package/{decorators → types/decorators}/index.d.ts +0 -0
  943. /package/{disposable → types/disposable}/disposable.d.ts +0 -0
  944. /package/{disposable → types/disposable}/index.d.ts +0 -0
  945. /package/{disposable → types/disposable}/using.d.ts +0 -0
  946. /package/{distributed-loop → types/distributed-loop}/controller.d.ts +0 -0
  947. /package/{distributed-loop → types/distributed-loop}/index.d.ts +0 -0
  948. /package/{document-management → types/document-management}/api/index.d.ts +0 -0
  949. /package/{document-management → types/document-management}/index.d.ts +0 -0
  950. /package/{document-management → types/document-management}/localizations/english.d.ts +0 -0
  951. /package/{document-management → types/document-management}/localizations/german.d.ts +0 -0
  952. /package/{document-management → types/document-management}/localizations/index.d.ts +0 -0
  953. /package/{document-management → types/document-management}/models/document-management-table.d.ts +0 -0
  954. /package/{document-management → types/document-management}/models/service-models/document-requests-template.view-model.d.ts +0 -0
  955. /package/{document-management → types/document-management}/server/drizzle.config.d.ts +0 -0
  956. /package/{document-management → types/document-management}/server/index.d.ts +0 -0
  957. /package/{dom → types/dom}/file-download.d.ts +0 -0
  958. /package/{dom → types/dom}/index.d.ts +0 -0
  959. /package/{dom → types/dom}/observation/index.d.ts +0 -0
  960. /package/{dom → types/dom}/observation/mutation-observer.d.ts +0 -0
  961. /package/{dom → types/dom}/observation/performance-observer.d.ts +0 -0
  962. /package/{dom → types/dom}/observation/touch-observer.d.ts +0 -0
  963. /package/{enumerable → types/enumerable}/enumerable-methods.d.ts +0 -0
  964. /package/{enumerable → types/enumerable}/index.d.ts +0 -0
  965. /package/{enumeration → types/enumeration}/index.d.ts +0 -0
  966. /package/{environment.d.ts → types/environment.d.ts} +0 -0
  967. /package/{errors → types/errors}/api.error.d.ts +0 -0
  968. /package/{errors → types/errors}/assertion.error.d.ts +0 -0
  969. /package/{errors → types/errors}/bad-request.error.d.ts +0 -0
  970. /package/{errors → types/errors}/custom.error.d.ts +0 -0
  971. /package/{errors → types/errors}/details.error.d.ts +0 -0
  972. /package/{errors → types/errors}/forbidden.error.d.ts +0 -0
  973. /package/{errors → types/errors}/index.d.ts +0 -0
  974. /package/{errors → types/errors}/invalid-credentials.error.d.ts +0 -0
  975. /package/{errors → types/errors}/invalid-token.error.d.ts +0 -0
  976. /package/{errors → types/errors}/max-bytes-exceeded.error.d.ts +0 -0
  977. /package/{errors → types/errors}/method-not-allowed.error.d.ts +0 -0
  978. /package/{errors → types/errors}/multi.error.d.ts +0 -0
  979. /package/{errors → types/errors}/not-found.error.d.ts +0 -0
  980. /package/{errors → types/errors}/not-implemented.error.d.ts +0 -0
  981. /package/{errors → types/errors}/timeout.error.d.ts +0 -0
  982. /package/{errors → types/errors}/unauthorized.error.d.ts +0 -0
  983. /package/{errors → types/errors}/unsupported-media-type.error.d.ts +0 -0
  984. /package/{errors → types/errors}/utils.d.ts +0 -0
  985. /package/{examples → types/examples}/mail/basic.d.ts +0 -0
  986. /package/{examples → types/examples}/orm/drizzle.config.d.ts +0 -0
  987. /package/{examples → types/examples}/orm/test.d.ts +0 -0
  988. /package/{examples → types/examples}/pdf/basic.d.ts +0 -0
  989. /package/{examples → types/examples}/template/basic.d.ts +0 -0
  990. /package/{file → types/file}/index.d.ts +0 -0
  991. /package/{file → types/file}/mime-type.d.ts +0 -0
  992. /package/{file → types/file}/mime-types.d.ts +0 -0
  993. /package/{file → types/file}/server/index.d.ts +0 -0
  994. /package/{file → types/file}/server/temporary-file.d.ts +0 -0
  995. /package/{function → types/function}/index.d.ts +0 -0
  996. /package/{http → types/http}/client/http-client-options.d.ts +0 -0
  997. /package/{http → types/http}/client/http-client.adapter.d.ts +0 -0
  998. /package/{http → types/http}/client/index.d.ts +0 -0
  999. /package/{http → types/http}/cookie-parser.d.ts +0 -0
  1000. /package/{http → types/http}/http-form.d.ts +0 -0
  1001. /package/{http → types/http}/http-headers.d.ts +0 -0
  1002. /package/{http → types/http}/http-query.d.ts +0 -0
  1003. /package/{http → types/http}/http-url-parameters.d.ts +0 -0
  1004. /package/{http → types/http}/index.d.ts +0 -0
  1005. /package/{http → types/http}/server/index.d.ts +0 -0
  1006. /package/{http → types/http}/server/node/index.d.ts +0 -0
  1007. /package/{http → types/http}/server/node/module.d.ts +0 -0
  1008. /package/{image-service → types/image-service}/image-service.d.ts +0 -0
  1009. /package/{image-service → types/image-service}/imgproxy/index.d.ts +0 -0
  1010. /package/{image-service → types/image-service}/index.d.ts +0 -0
  1011. /package/{import.d.ts → types/import.d.ts} +0 -0
  1012. /package/{injector → types/injector}/index.d.ts +0 -0
  1013. /package/{injector → types/injector}/inject.d.ts +0 -0
  1014. /package/{injector → types/injector}/symbols.d.ts +0 -0
  1015. /package/{interfaces.d.ts → types/interfaces.d.ts} +0 -0
  1016. /package/{intl → types/intl}/index.d.ts +0 -0
  1017. /package/{intl → types/intl}/number-parser.d.ts +0 -0
  1018. /package/{json-path → types/json-path}/index.d.ts +0 -0
  1019. /package/{json-path → types/json-path}/json-path.d.ts +0 -0
  1020. /package/{jsx → types/jsx}/index.d.ts +0 -0
  1021. /package/{jsx → types/jsx}/is-component-class.d.ts +0 -0
  1022. /package/{jsx → types/jsx}/render-to-string.d.ts +0 -0
  1023. /package/{key-value-store → types/key-value-store}/index.d.ts +0 -0
  1024. /package/{key-value-store → types/key-value-store}/key-value-store.provider.d.ts +0 -0
  1025. /package/{key-value-store → types/key-value-store}/mongo/index.d.ts +0 -0
  1026. /package/{lock → types/lock}/index.d.ts +0 -0
  1027. /package/{lock → types/lock}/mongo/index.d.ts +0 -0
  1028. /package/{lock → types/lock}/web/index.d.ts +0 -0
  1029. /package/{lock → types/lock}/web/module.d.ts +0 -0
  1030. /package/{lock → types/lock}/web/web-lock.d.ts +0 -0
  1031. /package/{logger → types/logger}/console/index.d.ts +0 -0
  1032. /package/{logger → types/logger}/console/logger.d.ts +0 -0
  1033. /package/{logger → types/logger}/index.d.ts +0 -0
  1034. /package/{logger → types/logger}/level.d.ts +0 -0
  1035. /package/{logger → types/logger}/noop/index.d.ts +0 -0
  1036. /package/{logger → types/logger}/noop/logger.d.ts +0 -0
  1037. /package/{mail → types/mail}/clients/index.d.ts +0 -0
  1038. /package/{mail → types/mail}/drizzle.config.d.ts +0 -0
  1039. /package/{mail → types/mail}/index.d.ts +0 -0
  1040. /package/{mail → types/mail}/models/index.d.ts +0 -0
  1041. /package/{mail → types/mail}/models/mail-address.model.d.ts +0 -0
  1042. /package/{mail → types/mail}/models/mail-content.model.d.ts +0 -0
  1043. /package/{mail → types/mail}/models/mail-send-result.model.d.ts +0 -0
  1044. /package/{memory → types/memory}/finalization.d.ts +0 -0
  1045. /package/{memory → types/memory}/index.d.ts +0 -0
  1046. /package/{memory → types/memory}/observable-finalization-registry.d.ts +0 -0
  1047. /package/{message-bus → types/message-bus}/broadcast-channel/index.d.ts +0 -0
  1048. /package/{message-bus → types/message-bus}/broadcast-channel/module.d.ts +0 -0
  1049. /package/{message-bus → types/message-bus}/index.d.ts +0 -0
  1050. /package/{message-bus → types/message-bus}/local/index.d.ts +0 -0
  1051. /package/{message-bus → types/message-bus}/local/module.d.ts +0 -0
  1052. /package/{message-bus → types/message-bus}/local/types.d.ts +0 -0
  1053. /package/{message-bus → types/message-bus}/message-bus-provider.d.ts +0 -0
  1054. /package/{migration → types/migration}/index.d.ts +0 -0
  1055. /package/{migration → types/migration}/migrator.d.ts +0 -0
  1056. /package/{migration → types/migration}/mongo/index.d.ts +0 -0
  1057. /package/{module → types/module}/index.d.ts +0 -0
  1058. /package/{module → types/module}/modules/index.d.ts +0 -0
  1059. /package/{object-storage → types/object-storage}/index.d.ts +0 -0
  1060. /package/{object-storage → types/object-storage}/object-storage-provider.d.ts +0 -0
  1061. /package/{object-storage → types/object-storage}/s3/index.d.ts +0 -0
  1062. /package/{openid-connect → types/openid-connect}/index.d.ts +0 -0
  1063. /package/{openid-connect → types/openid-connect}/oidc.service-model.d.ts +0 -0
  1064. /package/{orm → types/orm}/schemas/index.d.ts +0 -0
  1065. /package/{orm → types/orm}/server/drizzle/index.d.ts +0 -0
  1066. /package/{password → types/password}/have-i-been-pwned.d.ts +0 -0
  1067. /package/{password → types/password}/index.d.ts +0 -0
  1068. /package/{password → types/password}/password-check.d.ts +0 -0
  1069. /package/{pdf → types/pdf}/index.d.ts +0 -0
  1070. /package/{polyfills.d.ts → types/polyfills.d.ts} +0 -0
  1071. /package/{pool → types/pool}/index.d.ts +0 -0
  1072. /package/{process → types/process}/index.d.ts +0 -0
  1073. /package/{promise → types/promise}/custom-promise.d.ts +0 -0
  1074. /package/{promise → types/promise}/deferred-promise.d.ts +0 -0
  1075. /package/{promise → types/promise}/index.d.ts +0 -0
  1076. /package/{promise → types/promise}/lazy-promise.d.ts +0 -0
  1077. /package/{promise → types/promise}/types.d.ts +0 -0
  1078. /package/{queue → types/queue}/enqueue-batch.d.ts +0 -0
  1079. /package/{queue → types/queue}/index.d.ts +0 -0
  1080. /package/{queue → types/queue}/mongo/index.d.ts +0 -0
  1081. /package/{queue → types/queue}/postgres/drizzle.config.d.ts +0 -0
  1082. /package/{queue → types/queue}/postgres/index.d.ts +0 -0
  1083. /package/{random → types/random}/index.d.ts +0 -0
  1084. /package/{random → types/random}/number-generator/index.d.ts +0 -0
  1085. /package/{random → types/random}/number-generator/mulberry32.d.ts +0 -0
  1086. /package/{random → types/random}/number-generator/random-number-generator-function.d.ts +0 -0
  1087. /package/{random → types/random}/number-generator/random-number-generator.d.ts +0 -0
  1088. /package/{random → types/random}/number-generator/seeded-random-number-generator.d.ts +0 -0
  1089. /package/{random → types/random}/number-generator/sfc32.d.ts +0 -0
  1090. /package/{random → types/random}/number-generator/utils.d.ts +0 -0
  1091. /package/{random → types/random}/series.d.ts +0 -0
  1092. /package/{reflection → types/reflection}/decorator-data.d.ts +0 -0
  1093. /package/{reflection → types/reflection}/index.d.ts +0 -0
  1094. /package/{require.d.ts → types/require.d.ts} +0 -0
  1095. /package/{rpc → types/rpc}/adapters/index.d.ts +0 -0
  1096. /package/{rpc → types/rpc}/adapters/readable-stream.adapter.d.ts +0 -0
  1097. /package/{rpc → types/rpc}/endpoints/index.d.ts +0 -0
  1098. /package/{rpc → types/rpc}/endpoints/message-port.rpc-endpoint.d.ts +0 -0
  1099. /package/{rpc → types/rpc}/index.d.ts +0 -0
  1100. /package/{rpc → types/rpc}/rpc.endpoint.d.ts +0 -0
  1101. /package/{rxjs-utils → types/rxjs-utils}/cast.d.ts +0 -0
  1102. /package/{rxjs-utils → types/rxjs-utils}/index.d.ts +0 -0
  1103. /package/{rxjs-utils → types/rxjs-utils}/noop.d.ts +0 -0
  1104. /package/{rxjs-utils → types/rxjs-utils}/reject-error.d.ts +0 -0
  1105. /package/{rxjs-utils → types/rxjs-utils}/slow-array.d.ts +0 -0
  1106. /package/{rxjs-utils → types/rxjs-utils}/start-with-provider.d.ts +0 -0
  1107. /package/{rxjs-utils → types/rxjs-utils}/teardown.d.ts +0 -0
  1108. /package/{rxjs-utils → types/rxjs-utils}/timing.d.ts +0 -0
  1109. /package/{rxjs-utils → types/rxjs-utils}/untrack.d.ts +0 -0
  1110. /package/{schema → types/schema}/converters/index.d.ts +0 -0
  1111. /package/{schema → types/schema}/decorators/index.d.ts +0 -0
  1112. /package/{schema → types/schema}/index.d.ts +0 -0
  1113. /package/{schema → types/schema}/schemas/any.d.ts +0 -0
  1114. /package/{schema → types/schema}/schemas/bigint.d.ts +0 -0
  1115. /package/{schema → types/schema}/schemas/boolean.d.ts +0 -0
  1116. /package/{schema → types/schema}/schemas/date.d.ts +0 -0
  1117. /package/{schema → types/schema}/schemas/index.d.ts +0 -0
  1118. /package/{schema → types/schema}/schemas/readable-stream.d.ts +0 -0
  1119. /package/{schema → types/schema}/schemas/regexp.d.ts +0 -0
  1120. /package/{schema → types/schema}/schemas/string.d.ts +0 -0
  1121. /package/{schema → types/schema}/schemas/symbol.d.ts +0 -0
  1122. /package/{schema → types/schema}/schemas/uint8-array.d.ts +0 -0
  1123. /package/{schema → types/schema}/schemas/unknown.d.ts +0 -0
  1124. /package/{schema → types/schema}/testable.d.ts +0 -0
  1125. /package/{schema → types/schema}/types.d.ts +0 -0
  1126. /package/{search-index → types/search-index}/elastic/index.d.ts +0 -0
  1127. /package/{search-index → types/search-index}/elastic/keyword-rewriter.d.ts +0 -0
  1128. /package/{search-index → types/search-index}/elastic/model/elastic-query.d.ts +0 -0
  1129. /package/{search-index → types/search-index}/elastic/model/index.d.ts +0 -0
  1130. /package/{search-index → types/search-index}/elastic/query-builder/boolean-query-builder.d.ts +0 -0
  1131. /package/{search-index → types/search-index}/elastic/query-builder/index.d.ts +0 -0
  1132. /package/{search-index → types/search-index}/elastic/types.d.ts +0 -0
  1133. /package/{search-index → types/search-index}/index.d.ts +0 -0
  1134. /package/{search-index → types/search-index}/memory/index.d.ts +0 -0
  1135. /package/{serializer → types/serializer}/handlers/date.d.ts +0 -0
  1136. /package/{serializer → types/serializer}/handlers/error.d.ts +0 -0
  1137. /package/{serializer → types/serializer}/handlers/index.d.ts +0 -0
  1138. /package/{serializer → types/serializer}/handlers/map.d.ts +0 -0
  1139. /package/{serializer → types/serializer}/handlers/regex.d.ts +0 -0
  1140. /package/{serializer → types/serializer}/handlers/register.d.ts +0 -0
  1141. /package/{serializer → types/serializer}/handlers/set.d.ts +0 -0
  1142. /package/{serializer → types/serializer}/index.d.ts +0 -0
  1143. /package/{signals → types/signals}/api.d.ts +0 -0
  1144. /package/{signals → types/signals}/computed-with-dependencies.d.ts +0 -0
  1145. /package/{signals → types/signals}/effect-with-dependencies.d.ts +0 -0
  1146. /package/{signals → types/signals}/implementation/api.d.ts +0 -0
  1147. /package/{signals → types/signals}/implementation/asserts.d.ts +0 -0
  1148. /package/{signals → types/signals}/implementation/computed.d.ts +0 -0
  1149. /package/{signals → types/signals}/implementation/configure.d.ts +0 -0
  1150. /package/{signals → types/signals}/implementation/effect.d.ts +0 -0
  1151. /package/{signals → types/signals}/implementation/equality.d.ts +0 -0
  1152. /package/{signals → types/signals}/implementation/errors.d.ts +0 -0
  1153. /package/{signals → types/signals}/implementation/graph.d.ts +0 -0
  1154. /package/{signals → types/signals}/implementation/index.d.ts +0 -0
  1155. /package/{signals → types/signals}/implementation/signal.d.ts +0 -0
  1156. /package/{signals → types/signals}/implementation/to-observable.d.ts +0 -0
  1157. /package/{signals → types/signals}/implementation/to-signal.d.ts +0 -0
  1158. /package/{signals → types/signals}/implementation/untracked.d.ts +0 -0
  1159. /package/{signals → types/signals}/implementation/watch.d.ts +0 -0
  1160. /package/{signals → types/signals}/implementation/writable-signal.d.ts +0 -0
  1161. /package/{signals → types/signals}/index.d.ts +0 -0
  1162. /package/{signals → types/signals}/notifier.d.ts +0 -0
  1163. /package/{signals → types/signals}/operators/combine.d.ts +0 -0
  1164. /package/{signals → types/signals}/operators/defer.d.ts +0 -0
  1165. /package/{signals → types/signals}/operators/derive-async.d.ts +0 -0
  1166. /package/{signals → types/signals}/operators/index.d.ts +0 -0
  1167. /package/{signals → types/signals}/operators/map.d.ts +0 -0
  1168. /package/{signals → types/signals}/operators/switchAll.d.ts +0 -0
  1169. /package/{signals → types/signals}/pipe.d.ts +0 -0
  1170. /package/{signals → types/signals}/symbol.d.ts +0 -0
  1171. /package/{signals → types/signals}/to-lazy-signal.d.ts +0 -0
  1172. /package/{signals → types/signals}/types.d.ts +0 -0
  1173. /package/{signals → types/signals}/untracked-operator.d.ts +0 -0
  1174. /package/{sse → types/sse}/index.d.ts +0 -0
  1175. /package/{sse → types/sse}/model.d.ts +0 -0
  1176. /package/{sse → types/sse}/server-sent-events.d.ts +0 -0
  1177. /package/{supports.d.ts → types/supports.d.ts} +0 -0
  1178. /package/{templates → types/templates}/index.d.ts +0 -0
  1179. /package/{templates → types/templates}/providers/index.d.ts +0 -0
  1180. /package/{templates → types/templates}/providers/memory.template-provider.d.ts +0 -0
  1181. /package/{templates → types/templates}/renderers/index.d.ts +0 -0
  1182. /package/{templates → types/templates}/resolvers/index.d.ts +0 -0
  1183. /package/{templates → types/templates}/template-renderer.provider.d.ts +0 -0
  1184. /package/{templates → types/templates}/template-resolver.provider.d.ts +0 -0
  1185. /package/{templates → types/templates}/template.provider.d.ts +0 -0
  1186. /package/{templates → types/templates}/template.resolver.d.ts +0 -0
  1187. /package/{templates → types/templates}/types/index.d.ts +0 -0
  1188. /package/{templates → types/templates}/types/jsx.intrinsic-elements.d.ts +0 -0
  1189. /package/{text → types/text}/common-localization.d.ts +0 -0
  1190. /package/{text → types/text}/index.d.ts +0 -0
  1191. /package/{text → types/text}/localizable-text.model.d.ts +0 -0
  1192. /package/{theme → types/theme}/adapters/css-adapter.d.ts +0 -0
  1193. /package/{theme → types/theme}/adapters/index.d.ts +0 -0
  1194. /package/{theme → types/theme}/index.d.ts +0 -0
  1195. /package/{threading → types/threading}/index.d.ts +0 -0
  1196. /package/{threading → types/threading}/thread-worker.d.ts +0 -0
  1197. /package/{tokens.d.ts → types/tokens.d.ts} +0 -0
  1198. /package/{utils → types/utils}/alphabet.d.ts +0 -0
  1199. /package/{utils → types/utils}/any-iterable-iterator.d.ts +0 -0
  1200. /package/{utils → types/utils}/array/array-backtracker.d.ts +0 -0
  1201. /package/{utils → types/utils}/array/array.d.ts +0 -0
  1202. /package/{utils → types/utils}/array/index.d.ts +0 -0
  1203. /package/{utils → types/utils}/async-iterable-helpers/all.d.ts +0 -0
  1204. /package/{utils → types/utils}/async-iterable-helpers/any.d.ts +0 -0
  1205. /package/{utils → types/utils}/async-iterable-helpers/assert.d.ts +0 -0
  1206. /package/{utils → types/utils}/async-iterable-helpers/batch.d.ts +0 -0
  1207. /package/{utils → types/utils}/async-iterable-helpers/buffer.d.ts +0 -0
  1208. /package/{utils → types/utils}/async-iterable-helpers/concat.d.ts +0 -0
  1209. /package/{utils → types/utils}/async-iterable-helpers/default-if-empty.d.ts +0 -0
  1210. /package/{utils → types/utils}/async-iterable-helpers/deferred.d.ts +0 -0
  1211. /package/{utils → types/utils}/async-iterable-helpers/difference.d.ts +0 -0
  1212. /package/{utils → types/utils}/async-iterable-helpers/distinct.d.ts +0 -0
  1213. /package/{utils → types/utils}/async-iterable-helpers/drain.d.ts +0 -0
  1214. /package/{utils → types/utils}/async-iterable-helpers/filter.d.ts +0 -0
  1215. /package/{utils → types/utils}/async-iterable-helpers/first-or-default.d.ts +0 -0
  1216. /package/{utils → types/utils}/async-iterable-helpers/first.d.ts +0 -0
  1217. /package/{utils → types/utils}/async-iterable-helpers/for-each.d.ts +0 -0
  1218. /package/{utils → types/utils}/async-iterable-helpers/group-single.d.ts +0 -0
  1219. /package/{utils → types/utils}/async-iterable-helpers/group-to-map.d.ts +0 -0
  1220. /package/{utils → types/utils}/async-iterable-helpers/group-to-single-map.d.ts +0 -0
  1221. /package/{utils → types/utils}/async-iterable-helpers/group.d.ts +0 -0
  1222. /package/{utils → types/utils}/async-iterable-helpers/includes.d.ts +0 -0
  1223. /package/{utils → types/utils}/async-iterable-helpers/index.d.ts +0 -0
  1224. /package/{utils → types/utils}/async-iterable-helpers/interrupt.d.ts +0 -0
  1225. /package/{utils → types/utils}/async-iterable-helpers/is-async-iterable.d.ts +0 -0
  1226. /package/{utils → types/utils}/async-iterable-helpers/last-or-default.d.ts +0 -0
  1227. /package/{utils → types/utils}/async-iterable-helpers/last.d.ts +0 -0
  1228. /package/{utils → types/utils}/async-iterable-helpers/map-many.d.ts +0 -0
  1229. /package/{utils → types/utils}/async-iterable-helpers/map.d.ts +0 -0
  1230. /package/{utils → types/utils}/async-iterable-helpers/materialize.d.ts +0 -0
  1231. /package/{utils → types/utils}/async-iterable-helpers/metadata.d.ts +0 -0
  1232. /package/{utils → types/utils}/async-iterable-helpers/multiplex.d.ts +0 -0
  1233. /package/{utils → types/utils}/async-iterable-helpers/observable-iterable.d.ts +0 -0
  1234. /package/{utils → types/utils}/async-iterable-helpers/pairwise.d.ts +0 -0
  1235. /package/{utils → types/utils}/async-iterable-helpers/parallel/feed.d.ts +0 -0
  1236. /package/{utils → types/utils}/async-iterable-helpers/parallel/filter.d.ts +0 -0
  1237. /package/{utils → types/utils}/async-iterable-helpers/parallel/for-each.d.ts +0 -0
  1238. /package/{utils → types/utils}/async-iterable-helpers/parallel/group.d.ts +0 -0
  1239. /package/{utils → types/utils}/async-iterable-helpers/parallel/index.d.ts +0 -0
  1240. /package/{utils → types/utils}/async-iterable-helpers/parallel/map.d.ts +0 -0
  1241. /package/{utils → types/utils}/async-iterable-helpers/parallel/tap.d.ts +0 -0
  1242. /package/{utils → types/utils}/async-iterable-helpers/parallel/types.d.ts +0 -0
  1243. /package/{utils → types/utils}/async-iterable-helpers/reduce.d.ts +0 -0
  1244. /package/{utils → types/utils}/async-iterable-helpers/retry.d.ts +0 -0
  1245. /package/{utils → types/utils}/async-iterable-helpers/single-or-default.d.ts +0 -0
  1246. /package/{utils → types/utils}/async-iterable-helpers/single.d.ts +0 -0
  1247. /package/{utils → types/utils}/async-iterable-helpers/skip.d.ts +0 -0
  1248. /package/{utils → types/utils}/async-iterable-helpers/sort.d.ts +0 -0
  1249. /package/{utils → types/utils}/async-iterable-helpers/take-while.d.ts +0 -0
  1250. /package/{utils → types/utils}/async-iterable-helpers/take.d.ts +0 -0
  1251. /package/{utils → types/utils}/async-iterable-helpers/tap.d.ts +0 -0
  1252. /package/{utils → types/utils}/async-iterable-helpers/throttle.d.ts +0 -0
  1253. /package/{utils → types/utils}/async-iterable-helpers/to-array.d.ts +0 -0
  1254. /package/{utils → types/utils}/async-iterable-helpers/to-async-iterable-iterator.d.ts +0 -0
  1255. /package/{utils → types/utils}/async-iterable-helpers/to-async-iterator.d.ts +0 -0
  1256. /package/{utils → types/utils}/async-iterable-helpers/to-set.d.ts +0 -0
  1257. /package/{utils → types/utils}/async-iterable-helpers/to-sync-iterable.d.ts +0 -0
  1258. /package/{utils → types/utils}/async-iterable-helpers/types.d.ts +0 -0
  1259. /package/{utils → types/utils}/async-iterable-helpers/while.d.ts +0 -0
  1260. /package/{utils → types/utils}/async-iterator-iterable-iterator.d.ts +0 -0
  1261. /package/{utils → types/utils}/base64.d.ts +0 -0
  1262. /package/{utils → types/utils}/benchmark.d.ts +0 -0
  1263. /package/{utils → types/utils}/binary-search.d.ts +0 -0
  1264. /package/{utils → types/utils}/clone.d.ts +0 -0
  1265. /package/{utils → types/utils}/comparison.d.ts +0 -0
  1266. /package/{utils → types/utils}/compression.d.ts +0 -0
  1267. /package/{utils → types/utils}/config-parser.d.ts +0 -0
  1268. /package/{utils → types/utils}/crc32.d.ts +0 -0
  1269. /package/{utils → types/utils}/date-time.d.ts +0 -0
  1270. /package/{utils → types/utils}/factory-map.d.ts +0 -0
  1271. /package/{utils → types/utils}/feedable-async-iterable.d.ts +0 -0
  1272. /package/{utils → types/utils}/file-reader.d.ts +0 -0
  1273. /package/{utils → types/utils}/format.d.ts +0 -0
  1274. /package/{utils → types/utils}/function/throttle.d.ts +0 -0
  1275. /package/{utils → types/utils}/helpers.d.ts +0 -0
  1276. /package/{utils → types/utils}/html-link-utils.d.ts +0 -0
  1277. /package/{utils → types/utils}/image.d.ts +0 -0
  1278. /package/{utils → types/utils}/index.d.ts +0 -0
  1279. /package/{utils → types/utils}/iterable-helpers/all.d.ts +0 -0
  1280. /package/{utils → types/utils}/iterable-helpers/any.d.ts +0 -0
  1281. /package/{utils → types/utils}/iterable-helpers/assert.d.ts +0 -0
  1282. /package/{utils → types/utils}/iterable-helpers/batch.d.ts +0 -0
  1283. /package/{utils → types/utils}/iterable-helpers/concat.d.ts +0 -0
  1284. /package/{utils → types/utils}/iterable-helpers/default-if-empty.d.ts +0 -0
  1285. /package/{utils → types/utils}/iterable-helpers/deferred.d.ts +0 -0
  1286. /package/{utils → types/utils}/iterable-helpers/difference.d.ts +0 -0
  1287. /package/{utils → types/utils}/iterable-helpers/distinct.d.ts +0 -0
  1288. /package/{utils → types/utils}/iterable-helpers/drain.d.ts +0 -0
  1289. /package/{utils → types/utils}/iterable-helpers/filter.d.ts +0 -0
  1290. /package/{utils → types/utils}/iterable-helpers/first-or-default.d.ts +0 -0
  1291. /package/{utils → types/utils}/iterable-helpers/first.d.ts +0 -0
  1292. /package/{utils → types/utils}/iterable-helpers/for-each.d.ts +0 -0
  1293. /package/{utils → types/utils}/iterable-helpers/group-single.d.ts +0 -0
  1294. /package/{utils → types/utils}/iterable-helpers/group-to-map.d.ts +0 -0
  1295. /package/{utils → types/utils}/iterable-helpers/group-to-single-map.d.ts +0 -0
  1296. /package/{utils → types/utils}/iterable-helpers/group.d.ts +0 -0
  1297. /package/{utils → types/utils}/iterable-helpers/includes.d.ts +0 -0
  1298. /package/{utils → types/utils}/iterable-helpers/index.d.ts +0 -0
  1299. /package/{utils → types/utils}/iterable-helpers/is-iterable.d.ts +0 -0
  1300. /package/{utils → types/utils}/iterable-helpers/last-or-default.d.ts +0 -0
  1301. /package/{utils → types/utils}/iterable-helpers/last.d.ts +0 -0
  1302. /package/{utils → types/utils}/iterable-helpers/map-many.d.ts +0 -0
  1303. /package/{utils → types/utils}/iterable-helpers/map.d.ts +0 -0
  1304. /package/{utils → types/utils}/iterable-helpers/materialize.d.ts +0 -0
  1305. /package/{utils → types/utils}/iterable-helpers/metadata.d.ts +0 -0
  1306. /package/{utils → types/utils}/iterable-helpers/pairwise.d.ts +0 -0
  1307. /package/{utils → types/utils}/iterable-helpers/range.d.ts +0 -0
  1308. /package/{utils → types/utils}/iterable-helpers/reduce.d.ts +0 -0
  1309. /package/{utils → types/utils}/iterable-helpers/single-or-default.d.ts +0 -0
  1310. /package/{utils → types/utils}/iterable-helpers/single.d.ts +0 -0
  1311. /package/{utils → types/utils}/iterable-helpers/skip.d.ts +0 -0
  1312. /package/{utils → types/utils}/iterable-helpers/sort.d.ts +0 -0
  1313. /package/{utils → types/utils}/iterable-helpers/take-while.d.ts +0 -0
  1314. /package/{utils → types/utils}/iterable-helpers/take.d.ts +0 -0
  1315. /package/{utils → types/utils}/iterable-helpers/tap.d.ts +0 -0
  1316. /package/{utils → types/utils}/iterable-helpers/types.d.ts +0 -0
  1317. /package/{utils → types/utils}/iterable-helpers/while.d.ts +0 -0
  1318. /package/{utils → types/utils}/map.d.ts +0 -0
  1319. /package/{utils → types/utils}/middleware.d.ts +0 -0
  1320. /package/{utils → types/utils}/moving-metric.d.ts +0 -0
  1321. /package/{utils → types/utils}/noop.d.ts +0 -0
  1322. /package/{utils → types/utils}/object/index.d.ts +0 -0
  1323. /package/{utils → types/utils}/object/merge.d.ts +0 -0
  1324. /package/{utils → types/utils}/ordered-feedable-async-iterable.d.ts +0 -0
  1325. /package/{utils → types/utils}/patterns.d.ts +0 -0
  1326. /package/{utils → types/utils}/periodic-reporter.d.ts +0 -0
  1327. /package/{utils → types/utils}/periodic-sampler.d.ts +0 -0
  1328. /package/{utils → types/utils}/provider-function-iterable.d.ts +0 -0
  1329. /package/{utils → types/utils}/proxy.d.ts +0 -0
  1330. /package/{utils → types/utils}/random.d.ts +0 -0
  1331. /package/{utils → types/utils}/set.d.ts +0 -0
  1332. /package/{utils → types/utils}/sort.d.ts +0 -0
  1333. /package/{utils → types/utils}/stream/finalize-stream.d.ts +0 -0
  1334. /package/{utils → types/utils}/stream/readable-stream-adapter.d.ts +0 -0
  1335. /package/{utils → types/utils}/stream/slice.d.ts +0 -0
  1336. /package/{utils → types/utils}/stream/stream-helper-types.d.ts +0 -0
  1337. /package/{utils → types/utils}/stream/stream-reader.d.ts +0 -0
  1338. /package/{utils → types/utils}/stream/to-bytes-stream.d.ts +0 -0
  1339. /package/{utils → types/utils}/stream/to-readable-stream.d.ts +0 -0
  1340. /package/{utils → types/utils}/string/hypenate.d.ts +0 -0
  1341. /package/{utils → types/utils}/string/index.d.ts +0 -0
  1342. /package/{utils → types/utils}/string/normalize.d.ts +0 -0
  1343. /package/{utils → types/utils}/string/snake-case.d.ts +0 -0
  1344. /package/{utils → types/utils}/string/title-case.d.ts +0 -0
  1345. /package/{utils → types/utils}/string/trim.d.ts +0 -0
  1346. /package/{utils → types/utils}/throw.d.ts +0 -0
  1347. /package/{utils → types/utils}/timer.d.ts +0 -0
  1348. /package/{utils → types/utils}/type/index.d.ts +0 -0
  1349. /package/{utils → types/utils}/type-of.d.ts +0 -0
  1350. /package/{utils → types/utils}/units.d.ts +0 -0
  1351. /package/{utils → types/utils}/url-builder.d.ts +0 -0
  1352. /package/{utils → types/utils}/value-or-provider.d.ts +0 -0
  1353. /package/{web-types.d.ts → types/web-types.d.ts} +0 -0
@@ -0,0 +1,87 @@
1
+ import { and, isNotNull as drizzleIsNotNull, eq, inArray } from 'drizzle-orm';
2
+ import { DocumentPropertyDataType, DocumentPropertyValue, DocumentTypeProperty } from '../../../document-management/models/index.js';
3
+ import { BadRequestError } from '../../../errors/bad-request.error.js';
4
+ import { coalesce, getEntityMap, toJsonb } from '../../../orm/index.js';
5
+ import { Transactional } from '../../../orm/server/index.js';
6
+ import { injectRepository } from '../../../orm/server/repository.js';
7
+ import { toArray } from '../../../utils/array/index.js';
8
+ import { assertBooleanPass, assertDefinedPass, assertNumberPass, assertStringPass, isBoolean, isNotNull, isNull, isNumber, isString } from '../../../utils/type-guards.js';
9
+ import { Document, DocumentProperty } from '../../models/index.js';
10
+ import { document, documentProperty, documentPropertyValue, documentType, documentTypeProperty } from '../schemas.js';
11
+ const documentPropertyValueValidators = {
12
+ [DocumentPropertyDataType.Text]: (value) => isString(value) || isNull(value),
13
+ [DocumentPropertyDataType.Integer]: (value) => isNumber(value) || isNull(value),
14
+ [DocumentPropertyDataType.Decimal]: (value) => isNumber(value) || isNull(value),
15
+ [DocumentPropertyDataType.Boolean]: (value) => isBoolean(value) || isNull(value),
16
+ [DocumentPropertyDataType.Date]: (value) => isNumber(value) || isNull(value),
17
+ };
18
+ export class DocumentPropertyService extends Transactional {
19
+ #documentPropertyRepository = injectRepository(DocumentProperty);
20
+ #documentPropertyValueRepository = injectRepository(DocumentPropertyValue);
21
+ #documentTypePropertyRepository = injectRepository(DocumentTypeProperty);
22
+ repository = injectRepository(Document).withSession(this.session);
23
+ documentProperties = this.session.$with('documentProperties').as(this.session
24
+ .select({
25
+ documentId: document.id,
26
+ propertyId: documentProperty.id,
27
+ label: documentProperty.label,
28
+ dataType: documentProperty.dataType,
29
+ value: coalesce(toJsonb(documentPropertyValue.text), toJsonb(documentPropertyValue.integer), toJsonb(documentPropertyValue.decimal), toJsonb(documentPropertyValue.boolean), toJsonb(documentPropertyValue.date)).as('value'),
30
+ })
31
+ .from(document)
32
+ .innerJoin(documentType, eq(documentType.id, document.typeId))
33
+ .innerJoin(documentTypeProperty, eq(documentTypeProperty.typeId, documentType.id))
34
+ .innerJoin(documentProperty, eq(documentProperty.id, documentTypeProperty.propertyId))
35
+ .leftJoin(documentPropertyValue, and(eq(documentPropertyValue.documentId, document.id), eq(documentPropertyValue.propertyId, documentProperty.id))));
36
+ async createProperty(label, dataType) {
37
+ return this.#documentPropertyRepository.insert({ label, dataType });
38
+ }
39
+ async assignPropertyToType(typeId, propertyId) {
40
+ await this.#documentTypePropertyRepository.insert({ typeId, propertyId });
41
+ }
42
+ async loadDocumentProperties(documentId, includeNulls = false) {
43
+ return this.session
44
+ .select({
45
+ documentId: this.documentProperties.documentId,
46
+ propertyId: this.documentProperties.propertyId,
47
+ label: this.documentProperties.label,
48
+ dataType: this.documentProperties.dataType,
49
+ value: this.documentProperties.value,
50
+ })
51
+ .from(this.documentProperties)
52
+ .where(and(inArray(this.documentProperties.documentId, toArray(documentId)), includeNulls ? undefined : drizzleIsNotNull(this.documentProperties.value)));
53
+ }
54
+ async setPropertyValues(documentId, propertyValues) {
55
+ if ((propertyValues.length == 0)) {
56
+ return;
57
+ }
58
+ await this.transaction(async (tx) => {
59
+ const propertyIds = propertyValues.map((property) => property.propertyId);
60
+ const properties = await this.#documentPropertyRepository.withTransaction(tx).loadManyByQuery({ id: { $in: propertyIds } });
61
+ const propertiesMap = getEntityMap(properties);
62
+ const upserts = propertyValues.filter((value) => isNotNull(value.value)).map(({ propertyId, value, metadata }) => {
63
+ const property = assertDefinedPass(propertiesMap.get(propertyId));
64
+ validatePropertyValue(propertyId, property.dataType, value);
65
+ return {
66
+ documentId,
67
+ propertyId,
68
+ text: (property.dataType == 'text') ? assertStringPass(value) : null,
69
+ integer: (property.dataType == 'integer') ? assertNumberPass(value) : null,
70
+ decimal: (property.dataType == 'decimal') ? assertNumberPass(value) : null,
71
+ boolean: (property.dataType == 'boolean') ? assertBooleanPass(value) : null,
72
+ date: (property.dataType == 'date') ? assertNumberPass(value) : null,
73
+ metadata,
74
+ };
75
+ });
76
+ const deletePropertyIds = propertyValues.filter((value) => isNull(value.value)).map(({ propertyId }) => propertyId);
77
+ await this.#documentPropertyValueRepository.withTransaction(tx).hardDeleteManyByQuery({ documentId, propertyId: { $in: deletePropertyIds } });
78
+ await this.#documentPropertyValueRepository.withTransaction(tx).upsertMany(['documentId', 'propertyId'], upserts);
79
+ });
80
+ }
81
+ }
82
+ function validatePropertyValue(propertyId, dataType, value) {
83
+ const valid = documentPropertyValueValidators[dataType](value);
84
+ if (!valid) {
85
+ throw new BadRequestError(`Invalid value for data type ${dataType} for property ${propertyId}.`);
86
+ }
87
+ }
@@ -0,0 +1,138 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { count, isNotNull as dbIsNotNull, isNull as dbIsNull, eq, inArray, sql } from 'drizzle-orm';
8
+ import { BadRequestError } from '../../../errors/index.js';
9
+ import { Injectable } from '../../../injector/index.js';
10
+ import { Transactional, injectRepository } from '../../../orm/server/index.js';
11
+ import { toArray } from '../../../utils/array/index.js';
12
+ import { assertDefinedPass, isNotNull } from '../../../utils/type-guards.js';
13
+ import { DocumentApproval, DocumentCollectionAssignment, DocumentRequest, DocumentRequestCollection, DocumentRequestState, DocumentRequestTemplate, DocumentRequestsTemplate } from '../../models/index.js';
14
+ import { document, documentRequest, documentRequestCollection } from '../schemas.js';
15
+ let DocumentRequestService = class DocumentRequestService extends Transactional {
16
+ #documentRequestCollectionRepository = injectRepository(DocumentRequestCollection);
17
+ #documentRequestRepository = injectRepository(DocumentRequest);
18
+ #documentRequestTemplateRepository = injectRepository(DocumentRequestTemplate);
19
+ #documentRequestsTemplateRepository = injectRepository(DocumentRequestsTemplate);
20
+ #documentCollectionAssignmentRepository = injectRepository(DocumentCollectionAssignment);
21
+ async getRequestStats(collectionIds) {
22
+ const relevantRequests = this.session.$with('relevant_requests').as(this.session.selectDistinct({ id: documentRequest.id })
23
+ .from(documentRequest)
24
+ .innerJoin(documentRequestCollection, eq(documentRequestCollection.requestId, documentRequest.id))
25
+ .where(inArray(documentRequestCollection.collectionId, toArray(collectionIds))));
26
+ const [result] = await this.session.with(relevantRequests)
27
+ .select({
28
+ total: count(sql `${documentRequest.id})`),
29
+ documentPending: count(sql `CASE WHEN ${eq(documentRequest.state, DocumentRequestState.Open)} AND ${dbIsNull(documentRequest.documentId)} THEN 1 END`),
30
+ approvalPending: count(sql `CASE WHEN ${eq(documentRequest.state, DocumentRequestState.Open)} AND ${dbIsNotNull(documentRequest.documentId)} AND ${eq(document.approval, DocumentApproval.Pending)} THEN 1 END`),
31
+ approvals: count(sql `CASE WHEN ${eq(documentRequest.state, DocumentRequestState.Closed)} AND ${dbIsNotNull(documentRequest.documentId)} AND ${eq(document.approval, DocumentApproval.Approved)} THEN 1 END`),
32
+ rejections: count(sql `CASE WHEN ${eq(documentRequest.state, DocumentRequestState.Closed)} AND ${dbIsNotNull(documentRequest.documentId)} AND ${eq(document.approval, DocumentApproval.Rejected)} THEN 1 END`),
33
+ closedWithoutDocument: count(sql `CASE WHEN ${eq(documentRequest.state, DocumentRequestState.Closed)} AND ${dbIsNull(documentRequest.documentId)} THEN 1 END`),
34
+ })
35
+ .from(documentRequest)
36
+ .leftJoin(document, eq(document.id, documentRequest.documentId))
37
+ .where(inArray(documentRequest.id, this.session.select({ id: relevantRequests.id }).from(relevantRequests)));
38
+ return assertDefinedPass(result);
39
+ }
40
+ async createRequestsTemplate(parameters) {
41
+ return this.#documentRequestsTemplateRepository.insert(parameters);
42
+ }
43
+ async updateRequestsTemplate(id, parameters) {
44
+ return this.#documentRequestsTemplateRepository.update(id, parameters);
45
+ }
46
+ async applyRequestsTemplate(id, collectionIds) {
47
+ const requestTemplates = await this.#documentRequestTemplateRepository.loadManyByQuery({ requestsTemplateId: id });
48
+ await this.transaction(async (tx) => {
49
+ for (const { typeId, comment } of requestTemplates) {
50
+ await this.withTransaction(tx).createRequest(typeId, collectionIds, comment);
51
+ }
52
+ });
53
+ }
54
+ async deleteRequestsTemplate(id) {
55
+ return this.#documentRequestsTemplateRepository.delete(id);
56
+ }
57
+ async createRequestTemplate(requestsTemplateId, typeId, comment) {
58
+ return this.#documentRequestTemplateRepository.insert({ requestsTemplateId, typeId, comment });
59
+ }
60
+ async updateRequestTemplate(id, parameters) {
61
+ return this.#documentRequestTemplateRepository.update(id, parameters);
62
+ }
63
+ async deleteRequestTemplate(id) {
64
+ return this.#documentRequestTemplateRepository.delete(id);
65
+ }
66
+ async createRequest(typeId, collectionIds, comment) {
67
+ if (collectionIds.length == 0) {
68
+ throw new BadRequestError('No target collectionId specified.');
69
+ }
70
+ return this.transaction(async (tx) => {
71
+ const request = await this.#documentRequestRepository.withTransaction(tx).insert({ typeId, documentId: null, comment, state: DocumentRequestState.Open });
72
+ const newDocumentRequestCollections = collectionIds.map((collectionId) => ({ requestId: request.id, collectionId }));
73
+ await this.#documentRequestCollectionRepository.withTransaction(tx).insertMany(newDocumentRequestCollections);
74
+ return request;
75
+ });
76
+ }
77
+ async updateRequest(id, update) {
78
+ await this.transaction(async (tx) => {
79
+ const request = await this.#documentRequestRepository.withTransaction(tx).load(id);
80
+ if (isNotNull(request.documentId)) {
81
+ throw new BadRequestError('Cannot update document requests which have an assigned document.');
82
+ }
83
+ await this.#documentRequestRepository.withTransaction(tx).update(id, update);
84
+ });
85
+ }
86
+ async deleteRequest(id) {
87
+ await this.transaction(async (tx) => {
88
+ const request = await this.#documentRequestRepository.withTransaction(tx).load(id);
89
+ if (isNotNull(request.documentId)) {
90
+ throw new BadRequestError('Cannot delete requests which have an assigned document.');
91
+ }
92
+ await this.#documentRequestCollectionRepository.withTransaction(tx).deleteManyByQuery({ requestId: id });
93
+ await this.#documentRequestRepository.withTransaction(tx).delete(id);
94
+ });
95
+ }
96
+ async assignDocument(requestId, documentId) {
97
+ await this.transaction(async (tx) => {
98
+ const request = await this.#documentRequestRepository.withTransaction(tx).load(requestId);
99
+ if (isNotNull(request.documentId)) {
100
+ throw new BadRequestError('Document request already has a document assigned.');
101
+ }
102
+ await this.#documentRequestRepository.withTransaction(tx).update(requestId, { documentId });
103
+ });
104
+ }
105
+ /**
106
+ * Fulfills a document request.
107
+ * Marks the request as fulfilled and creates associations between the document
108
+ * and the target collections defined in the request.
109
+ *
110
+ * @param requestId The ID of the DocumentRequest to fulfill.
111
+ * @param documentId The ID of the Document fulfilling the request.
112
+ * @param userId The ID of the user performing the action (for audit purposes).
113
+ * @throws NotFoundError if the DocumentRequest with the given ID does not exist.
114
+ */
115
+ async fulfillRequest(requestId, documentId) {
116
+ await this.transaction(async (tx) => {
117
+ const request = await this.#documentRequestRepository.withTransaction(tx).load(requestId);
118
+ if (request.state == DocumentRequestState.Fulfilled) {
119
+ throw new BadRequestError('Document request is already fulfilled.');
120
+ }
121
+ const targetCollectionIds = await this.#documentRequestCollectionRepository.withTransaction(tx).loadManyByQuery({ requestId });
122
+ if (targetCollectionIds.length == 0) {
123
+ throw new Error('No document request collection for document request found.');
124
+ }
125
+ const links = targetCollectionIds.map((target) => ({
126
+ collectionId: target.collectionId,
127
+ documentId,
128
+ archiveTimestamp: null,
129
+ }));
130
+ await this.#documentCollectionAssignmentRepository.withTransaction(tx).insertMany(links);
131
+ await this.#documentRequestRepository.withTransaction(tx).update(requestId, { state: DocumentRequestState.Fulfilled });
132
+ });
133
+ }
134
+ };
135
+ DocumentRequestService = __decorate([
136
+ Injectable()
137
+ ], DocumentRequestService);
138
+ export { DocumentRequestService };
@@ -0,0 +1,145 @@
1
+ var _a;
2
+ import { DocumentWorkflowStep } from '../../../document-management/models/document-workflow.model.js';
3
+ import { Document, DocumentCategory, DocumentCollection, DocumentCollectionAssignment, DocumentProperty, DocumentPropertyValue, DocumentType, DocumentTypeProperty, DocumentTypeValidation, DocumentValidationDefinition, DocumentValidationExecution, DocumentValidationExecutionRelatedDocument, DocumentValidationExecutionState, DocumentValidationResultStatus } from '../../../document-management/models/index.js';
4
+ import { BadRequestError } from '../../../errors/bad-request.error.js';
5
+ import { inject, injectAll } from '../../../injector/inject.js';
6
+ import { Injector } from '../../../injector/injector.js';
7
+ import { afterResolve } from '../../../injector/interfaces.js';
8
+ import { injectionToken } from '../../../injector/token.js';
9
+ import { Logger } from '../../../logger/logger.js';
10
+ import { injectRepository } from '../../../orm/server/repository.js';
11
+ import { getEntityIds } from '../../../orm/utils.js';
12
+ import { Queue } from '../../../queue/queue.js';
13
+ import { currentTimestamp } from '../../../utils/date-time.js';
14
+ import { isNull, isUndefined } from '../../../utils/type-guards.js';
15
+ import { millisecondsPerMinute } from '../../../utils/units.js';
16
+ import { DocumentWorkflowService } from './document-workflow.service.js';
17
+ const DOCUMENT_VALIDATION_EXECUTORS = injectionToken('DocumentValidationExecutors');
18
+ export class DocumentValidationService {
19
+ #documentManagementService = injectRepository(DocumentCollection);
20
+ #documentCollectionAssignmentRepository = injectRepository(DocumentCollectionAssignment);
21
+ #documentService = injectRepository(Document);
22
+ #documentCategoryService = injectRepository(DocumentCategory);
23
+ #documentTypeService = injectRepository(DocumentType);
24
+ #documentTypePropertyService = injectRepository(DocumentTypeProperty);
25
+ #documentPropertyService = injectRepository(DocumentProperty);
26
+ #documentPropertyValueService = injectRepository(DocumentPropertyValue);
27
+ #documentWorkflowService = inject(DocumentWorkflowService);
28
+ #validationDefinitionService = injectRepository(DocumentValidationDefinition);
29
+ #validationExecutionService = injectRepository(DocumentValidationExecution);
30
+ #validationExecutionRelatedDocumentService = injectRepository(DocumentValidationExecutionRelatedDocument);
31
+ #documentTypeValidationService = injectRepository(DocumentTypeValidation);
32
+ #queue = inject((Queue), { name: 'DocumentManagement: validation', processTimeout: 5 * millisecondsPerMinute, maxTries: 3 });
33
+ #executors = injectAll(DOCUMENT_VALIDATION_EXECUTORS);
34
+ #logger = inject(Logger, _a.name);
35
+ #executorMap = new Map(this.#executors.map((executor) => [executor.identifier, executor]));
36
+ [afterResolve](_, { cancellationSignal }) {
37
+ this.processQueue(cancellationSignal);
38
+ }
39
+ processQueue(cancellationSignal) {
40
+ this.#queue.process({ concurrency: 5, cancellationSignal }, async (job) => {
41
+ this.#logger.verbose(`Processing validation execution "${job.data.executionId}"`);
42
+ await this.processValidationExecution(job.data.executionId);
43
+ }, this.#logger);
44
+ }
45
+ async startValidationWorkflow(documentId) {
46
+ const document = await this.#documentService.load(documentId);
47
+ if (isNull(document.typeId)) {
48
+ throw new BadRequestError('Document has no type');
49
+ }
50
+ const workflow = await this.#documentWorkflowService.initiateWorkflow(documentId, DocumentWorkflowStep.Validation);
51
+ const typeValidations = await this.#documentTypeValidationService.loadManyByQuery({ typeId: document.typeId });
52
+ for (const typeValidation of typeValidations) {
53
+ const validationDefinition = await this.#validationDefinitionService.load(typeValidation.validationId);
54
+ const execution = await this.#validationExecutionService.insert({
55
+ definitionId: validationDefinition.id,
56
+ workflowId: workflow.id,
57
+ state: DocumentValidationExecutionState.Pending,
58
+ resultStatus: null,
59
+ resultMessage: null,
60
+ startedAt: null,
61
+ completedAt: null,
62
+ });
63
+ await this.#queue.enqueue({ executionId: execution.id });
64
+ }
65
+ }
66
+ async setExecutionRunning(executionId) {
67
+ await this.#validationExecutionService.update(executionId, { state: DocumentValidationExecutionState.Running, resultStatus: null, resultMessage: null, startedAt: currentTimestamp(), completedAt: null });
68
+ }
69
+ async setExecutionCompleted(executionId, status, message) {
70
+ await this.#validationExecutionService.update(executionId, { state: DocumentValidationExecutionState.Completed, resultStatus: status, resultMessage: message, completedAt: currentTimestamp() });
71
+ }
72
+ async setExecutionError(executionId, reason) {
73
+ await this.#validationExecutionService.update(executionId, { state: DocumentValidationExecutionState.Error, resultStatus: DocumentValidationResultStatus.Failed, resultMessage: reason, completedAt: currentTimestamp() });
74
+ }
75
+ async loadRelatedDocument(executionId, documentId) {
76
+ const execution = await this.#validationExecutionService.load(executionId);
77
+ const workflow = await this.#documentWorkflowService.repository.load(execution.workflowId);
78
+ const documentData = await this.loadDocumentData(documentId);
79
+ await this.#validationExecutionRelatedDocumentService.upsert(['executionId', 'documentId'], { executionId, documentId: workflow.documentId });
80
+ return documentData;
81
+ }
82
+ async loadDocumentData(documentId) {
83
+ const document = await this.#documentService.load(documentId);
84
+ if (isNull(document.typeId)) {
85
+ throw new Error('Document has no type');
86
+ }
87
+ const [documentCollections, documentTypeProperties] = await Promise.all([
88
+ this.#documentCollectionAssignmentRepository.loadManyByQuery({ documentId: document.id }),
89
+ this.#documentTypePropertyService.loadManyByQuery({ typeId: document.typeId }),
90
+ ]);
91
+ const documentCollectionIds = getEntityIds(documentCollections);
92
+ const documentPropertyIds = getEntityIds(documentTypeProperties);
93
+ const [collections, category, type, properties, propertyValues] = await Promise.all([
94
+ this.#documentManagementService.loadManyByQuery({ id: { $in: documentCollectionIds } }),
95
+ this.#documentCategoryService.load(document.typeId),
96
+ this.#documentTypeService.load(document.typeId),
97
+ this.#documentPropertyService.loadManyByQuery({ id: { $in: documentPropertyIds } }),
98
+ this.#documentPropertyValueService.loadManyByQuery({ documentId: document.id }),
99
+ ]);
100
+ return {
101
+ document,
102
+ collections,
103
+ category,
104
+ type,
105
+ properties,
106
+ propertyValues,
107
+ };
108
+ }
109
+ async loadDocumentValidationExecutorContext(executionId) {
110
+ const execution = await this.#validationExecutionService.load(executionId);
111
+ const [definition, workflow] = await Promise.all([
112
+ this.#validationDefinitionService.load(execution.definitionId),
113
+ this.#documentWorkflowService.repository.load(execution.workflowId),
114
+ ]);
115
+ const documentData = await this.loadDocumentData(workflow.documentId);
116
+ return {
117
+ execution,
118
+ definition,
119
+ ...documentData,
120
+ };
121
+ }
122
+ async processValidationExecution(executionId) {
123
+ const context = await this.loadDocumentValidationExecutorContext(executionId);
124
+ const executor = this.#executorMap.get(context.definition.identifier);
125
+ if (isUndefined(executor)) {
126
+ await this.setExecutionError(executionId, `Invalid validation identifier`);
127
+ return;
128
+ }
129
+ try {
130
+ await this.setExecutionRunning(executionId);
131
+ const result = await executor.execute(context);
132
+ await this.setExecutionCompleted(executionId, result.status, result.message ?? null);
133
+ }
134
+ catch (error) {
135
+ this.#logger.error(error);
136
+ await this.setExecutionError(executionId, 'Internal error');
137
+ }
138
+ }
139
+ }
140
+ _a = DocumentValidationService;
141
+ export function registerDocumentValidationExecutor(...executors) {
142
+ for (const executor of executors) {
143
+ Injector.register(DOCUMENT_VALIDATION_EXECUTORS, { useToken: executor }, { multi: true });
144
+ }
145
+ }
@@ -0,0 +1,132 @@
1
+ var _a;
2
+ import { match } from 'ts-pattern';
3
+ import { DocumentAssignmentScope } from '../../../document-management/models/document-assignment-scope.model.js';
4
+ import { DocumentAssignmentTask } from '../../../document-management/models/document-assignment-task.model.js';
5
+ import { DocumentWorkflow, DocumentWorkflowFailReason, DocumentWorkflowState, DocumentWorkflowStep } from '../../../document-management/models/document-workflow.model.js';
6
+ import { DocumentApproval } from '../../../document-management/models/document.model.js';
7
+ import { BadRequestError } from '../../../errors/bad-request.error.js';
8
+ import { NotImplementedError } from '../../../errors/not-implemented.error.js';
9
+ import { inject } from '../../../injector/inject.js';
10
+ import { afterResolve } from '../../../injector/interfaces.js';
11
+ import { Logger } from '../../../logger/index.js';
12
+ import { injectRepository } from '../../../orm/server/repository.js';
13
+ import { Transactional } from '../../../orm/server/transactional.js';
14
+ import { Queue } from '../../../queue/queue.js';
15
+ import { _throw } from '../../../utils/throw.js';
16
+ import { isNotNull, isNull } from '../../../utils/type-guards.js';
17
+ import { DocumentCollectionService } from './document-collection.service.js';
18
+ import { DocumentManagementAiService } from './document-management-ai.service.js';
19
+ import { DocumentRequestService } from './document-request.service.js';
20
+ import { DocumentService } from './document.service.js';
21
+ export class DocumentWorkflowService extends Transactional {
22
+ #documentManagementAiService = inject(DocumentManagementAiService);
23
+ #documentService = inject(DocumentService);
24
+ #documentCollectionService = inject(DocumentCollectionService);
25
+ #documentRequestService = inject(DocumentRequestService);
26
+ #documentAssignmentTaskRepository = injectRepository(DocumentAssignmentTask);
27
+ #documentAssignmentScopeRepository = injectRepository(DocumentAssignmentScope);
28
+ #queue = inject((Queue), { name: 'DocumentWorkflow', processTimeout: 5 * 60 * 1000, maxTries: 3 });
29
+ #logger = inject(Logger, _a.name);
30
+ repository = injectRepository(DocumentWorkflow).withSession(this.session);
31
+ [afterResolve](_, { cancellationSignal }) {
32
+ if (this.isInTransaction) {
33
+ return;
34
+ }
35
+ this.#queue.process({ concurrency: 5, cancellationSignal }, async (job) => this.processWorkflowJob(job), this.#logger);
36
+ }
37
+ async loadLatestWorkflow(documentId) {
38
+ return this.repository.loadByQuery({ documentId }, { order: { 'metadata.createTimestamp': 'desc' } });
39
+ }
40
+ async tryLoadLatestWorkflow(documentId) {
41
+ return this.repository.tryLoadByQuery({ documentId }, { order: { 'metadata.createTimestamp': 'desc' } });
42
+ }
43
+ async loadLatestWorkflows(documentIds) {
44
+ return this.repository.loadManyByQuery({ documentId: { $in: documentIds } }, { distinct: ['documentId'], order: { 'metadata.createTimestamp': 'desc' } });
45
+ }
46
+ async proceedWorkflow(documentId, userId) {
47
+ return this.transaction(async (tx) => {
48
+ const workflow = await this.withTransaction(tx).loadLatestWorkflow(documentId);
49
+ if (workflow.state != DocumentWorkflowState.Completed) {
50
+ throw new BadRequestError('Current workflow is not completed');
51
+ }
52
+ if (isNotNull(workflow.completeUserId)) {
53
+ throw new BadRequestError('Latest workflow is already completed');
54
+ }
55
+ await this.repository.withTransaction(tx).update(workflow.id, { completeUserId: userId });
56
+ await match(workflow.step)
57
+ .with(DocumentWorkflowStep.Classification, () => _throw(new BadRequestError('Proceeding from classification occurs automatically.')))
58
+ .with(DocumentWorkflowStep.Extraction, async () => this.withTransaction(tx).initiateWorkflow(documentId, DocumentWorkflowStep.Assignment))
59
+ .with(DocumentWorkflowStep.Assignment, async () => this.withTransaction(tx).initiateWorkflow(documentId, DocumentWorkflowStep.Validation))
60
+ .with(DocumentWorkflowStep.Validation, () => { })
61
+ .exhaustive();
62
+ });
63
+ }
64
+ async initiateWorkflow(documentId, step) {
65
+ const workflow = await this.repository.insert({ documentId, step, state: 'pending', failReason: null, completeUserId: null });
66
+ await this.#queue.enqueue({ workflowId: workflow.id });
67
+ return workflow;
68
+ }
69
+ async setWorkflowState(id, state, failReason = null) {
70
+ await this.repository.update(id, { state, failReason });
71
+ }
72
+ async processWorkflowJob(job) {
73
+ this.#logger.verbose(`Processing workflow job for workflow "${job.data.workflowId}"`);
74
+ const workflow = await this.repository.load(job.data.workflowId);
75
+ try {
76
+ await this.setWorkflowState(workflow.id, DocumentWorkflowState.Running);
77
+ await match(workflow.step)
78
+ .with(DocumentWorkflowStep.Classification, async () => this.processClassificationWorkflow(workflow))
79
+ .with(DocumentWorkflowStep.Extraction, async () => this.processExtractionWorkflow(workflow))
80
+ .with(DocumentWorkflowStep.Assignment, async () => this.processAssignmentWorkflow(workflow))
81
+ .with(DocumentWorkflowStep.Validation, async () => this.processValidationWorkflow(workflow))
82
+ .exhaustive();
83
+ await this.setWorkflowState(workflow.id, DocumentWorkflowState.Completed);
84
+ if (workflow.step == DocumentWorkflowStep.Classification) {
85
+ // automatically start extraction after classification
86
+ await this.initiateWorkflow(workflow.documentId, DocumentWorkflowStep.Extraction);
87
+ }
88
+ }
89
+ catch (error) {
90
+ this.#logger.error(error);
91
+ const isLastTry = job.tries == this.#queue.maxTries;
92
+ if (isLastTry) {
93
+ await this.repository.update(workflow.id, { state: DocumentWorkflowState.Error });
94
+ }
95
+ }
96
+ }
97
+ async processClassificationWorkflow(workflow) {
98
+ const typeId = await this.#documentManagementAiService.classifyDocumentType(workflow.documentId);
99
+ await this.#documentService.repository.update(workflow.documentId, { typeId, approval: DocumentApproval.Pending });
100
+ }
101
+ async processExtractionWorkflow(workflow) {
102
+ const extraction = await this.#documentManagementAiService.extractDocumentInformation(workflow.documentId);
103
+ await this.#documentService.updateDocument(workflow.documentId, extraction);
104
+ }
105
+ async processAssignmentWorkflow(workflow) {
106
+ const assignmentTask = await this.#documentAssignmentTaskRepository.loadByQuery({ documentId: workflow.documentId });
107
+ const assignmentScopes = await this.#documentAssignmentScopeRepository.loadManyByQuery({ taskId: assignmentTask.id });
108
+ const collectionIds = assignmentScopes.map((scope) => scope.collectionId);
109
+ await match(assignmentTask.target)
110
+ .with('collection', async () => {
111
+ const suitableCollectionIds = await this.#documentManagementAiService.findSuitableCollectionsForDocument(workflow.documentId, collectionIds);
112
+ if (suitableCollectionIds.length == 0) {
113
+ await this.setWorkflowState(workflow.id, DocumentWorkflowState.Failed, DocumentWorkflowFailReason.NoSuitableCollection);
114
+ return;
115
+ }
116
+ await this.#documentCollectionService.assignDocument(workflow.documentId, suitableCollectionIds);
117
+ })
118
+ .with('request', async () => {
119
+ const suitableRequestId = await this.#documentManagementAiService.findSuitableRequestForDocument(workflow.documentId, collectionIds);
120
+ if (isNull(suitableRequestId)) {
121
+ await this.setWorkflowState(workflow.id, DocumentWorkflowState.Failed, DocumentWorkflowFailReason.NoSuitableRequest);
122
+ return;
123
+ }
124
+ await this.#documentRequestService.assignDocument(suitableRequestId, workflow.documentId);
125
+ })
126
+ .exhaustive();
127
+ }
128
+ async processValidationWorkflow(_workflow) {
129
+ throw new NotImplementedError();
130
+ }
131
+ }
132
+ _a = DocumentWorkflowService;
@@ -0,0 +1,81 @@
1
+ var _a;
2
+ import { match, P } from 'ts-pattern';
3
+ import { DocumentApproval, DocumentAssignmentScope, DocumentAssignmentTask, DocumentWorkflowStep } from '../../../document-management/models/index.js';
4
+ import { BadRequestError } from '../../../errors/bad-request.error.js';
5
+ import { inject } from '../../../injector/inject.js';
6
+ import { Logger } from '../../../logger/logger.js';
7
+ import { Transactional } from '../../../orm/server/index.js';
8
+ import { injectRepository } from '../../../orm/server/repository.js';
9
+ import { getPdfPageCount } from '../../../pdf/utils.js';
10
+ import { toArray } from '../../../utils/array/index.js';
11
+ import { objectKeys } from '../../../utils/object/object.js';
12
+ import { tryIgnoreLogAsync } from '../../../utils/try-ignore.js';
13
+ import { isDefined, isUndefined } from '../../../utils/type-guards.js';
14
+ import { Document } from '../../models/index.js';
15
+ import { DocumentCollectionService } from './document-collection.service.js';
16
+ import { DocumentFileService } from './document-file.service.js';
17
+ import { DocumentPropertyService } from './document-property.service.js';
18
+ import { DocumentRequestService } from './document-request.service.js';
19
+ import { DocumentWorkflowService } from './document-workflow.service.js';
20
+ export class DocumentService extends Transactional {
21
+ #documentFileService = inject(DocumentFileService);
22
+ #requestService = inject(DocumentRequestService);
23
+ #workflowService = inject(DocumentWorkflowService, undefined, { forwardRef: true });
24
+ #documentPropertyService = inject(DocumentPropertyService);
25
+ #documentCollectionService = inject(DocumentCollectionService);
26
+ #documentAssignmentTaskRepository = injectRepository(DocumentAssignmentTask);
27
+ #documentAssignmentScopeRepository = injectRepository(DocumentAssignmentScope);
28
+ #logger = inject(Logger, _a.name);
29
+ repository = injectRepository(Document).withSession(this.session);
30
+ async createDocument({ typeId, title, subtitle, date, summary, tags, approval, comment, createUserId, originalFileName, assignment, properties, metadata }, content) {
31
+ const document = await this.transaction(async (tx) => {
32
+ const documentFile = await this.#documentFileService.withTransaction(tx).create(content, originalFileName);
33
+ const pages = documentFile.mimeType.includes('pdf') ? await tryIgnoreLogAsync(this.#logger, async () => getPdfPageCount(content), null) : null;
34
+ const document = await this.repository.withTransaction(tx).insert({ fileId: documentFile.id, typeId, title, subtitle, pages, date, summary, tags, metadata, approval, comment, createUserId });
35
+ if (isDefined(properties)) {
36
+ await this.#documentPropertyService.withTransaction(tx).setPropertyValues(document.id, properties);
37
+ }
38
+ await this.withTransaction(tx).createAssignment(document.id, assignment, tx);
39
+ await this.#workflowService.withTransaction(tx).initiateWorkflow(document.id, DocumentWorkflowStep.Classification);
40
+ return document;
41
+ });
42
+ return document;
43
+ }
44
+ async updateDocument(id, update) {
45
+ await this.transaction(async (tx) => {
46
+ const document = await this.repository.withTransaction(tx).load(id);
47
+ if (document.approval == DocumentApproval.Approved) {
48
+ throw new BadRequestError('Cannot update approved documents.');
49
+ }
50
+ const updateKeyLength = objectKeys(update).length;
51
+ if ((updateKeyLength > 1) || (isUndefined(update.properties) && (updateKeyLength > 0))) {
52
+ await this.repository.withTransaction(tx).update(id, update);
53
+ }
54
+ if (isDefined(update.properties)) {
55
+ await this.#documentPropertyService.withTransaction(tx).setPropertyValues(id, update.properties);
56
+ }
57
+ });
58
+ }
59
+ /**
60
+ * @returns collectionIds from either direct assignment or automatic assignment scope
61
+ */
62
+ async createAssignment(documentId, assignment, transaction) {
63
+ return match(assignment)
64
+ .with({ collections: P.select() }, async (collectionIds) => {
65
+ const collectionIdsArray = toArray(collectionIds);
66
+ await this.#documentCollectionService.withTransaction(transaction).assignDocument(documentId, collectionIdsArray);
67
+ })
68
+ .with({ request: P.select() }, async (requestId) => {
69
+ await this.#requestService.withTransaction(transaction).assignDocument(requestId, documentId);
70
+ })
71
+ .with({ automatic: P.select() }, async ({ target, scope }) => {
72
+ const collectionIdsArray = toArray(scope);
73
+ const assignmentTask = await this.#documentAssignmentTaskRepository.withTransaction(transaction).insert({ documentId: documentId, target });
74
+ for (const collectionId of collectionIdsArray) {
75
+ await this.#documentAssignmentScopeRepository.withTransaction(transaction).insert({ taskId: assignmentTask.id, collectionId });
76
+ }
77
+ })
78
+ .exhaustive();
79
+ }
80
+ }
81
+ _a = DocumentService;
@@ -1,2 +1,11 @@
1
+ export * from './document-category-type.service.js';
2
+ export * from './document-collection.service.js';
3
+ export * from './document-file.service.js';
4
+ export * from './document-management-ai.service.js';
1
5
  export * from './document-management-ancillary.service.js';
2
6
  export * from './document-management.service.js';
7
+ export * from './document-property.service.js';
8
+ export * from './document-request.service.js';
9
+ export * from './document-validation.service.js';
10
+ export * from './document-workflow.service.js';
11
+ export * from './document.service.js';
@@ -0,0 +1,51 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { AiService } from '../../../ai/index.js';
8
+ import { defineEnum } from '../../../enumeration/enumeration.js';
9
+ import { Singleton } from '../../../injector/decorators.js';
10
+ import { inject } from '../../../injector/inject.js';
11
+ import { match } from 'ts-pattern';
12
+ import { DocumentValidationExecutor } from './validator.js';
13
+ export const AiValidationDifficulty = defineEnum('AiValidationDifficulty', {
14
+ Easy: 'easy',
15
+ MediumLow: 'medium-low',
16
+ MediumHigh: 'medium-high',
17
+ Hard: 'hard',
18
+ });
19
+ let AiValidationExecutor = class AiValidationExecutor extends DocumentValidationExecutor {
20
+ aiService = inject(AiService);
21
+ async execute(context) {
22
+ const validationPrompt = await this.getPrompt(context);
23
+ const model = match(this.difficulty)
24
+ .with('easy', () => 'gemini-2.0-flash-lite')
25
+ .with('medium-low', () => 'gemini-2.5-flash-exp-04-17')
26
+ .with('medium-high', () => 'gemini-2.5-flash-exp-04-17')
27
+ .with('hard', () => 'gemini-2.5-pro-exp-03-25')
28
+ .exhaustive();
29
+ const prompt = `Deine Aufgabe ist es ein Dokument zu validieren.
30
+
31
+ Validierungsaufgabe:
32
+ ${validationPrompt}`;
33
+ const generation = await this.aiService.generate({
34
+ model,
35
+ generationOptions: {
36
+ temperature: 0.2,
37
+ topK: 20,
38
+ },
39
+ generationSchema: this.schema,
40
+ contents: [{
41
+ role: 'user',
42
+ parts: [{ text: prompt }],
43
+ }],
44
+ });
45
+ return await this.getResult(generation.json);
46
+ }
47
+ };
48
+ AiValidationExecutor = __decorate([
49
+ Singleton()
50
+ ], AiValidationExecutor);
51
+ export { AiValidationExecutor };