@tstdl/base 0.93.125 → 0.93.127

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 (198) hide show
  1. package/ai/genkit/tests/multi-region.test.js +6 -6
  2. package/ai/index.d.ts +2 -6
  3. package/ai/index.js +2 -6
  4. package/ai/parser/index.d.ts +1 -0
  5. package/ai/parser/index.js +1 -0
  6. package/ai/parser/parser.d.ts +12 -0
  7. package/ai/parser/parser.js +28 -0
  8. package/ai/prompts/build.d.ts +21 -0
  9. package/ai/prompts/build.js +25 -0
  10. package/ai/prompts/index.d.ts +2 -0
  11. package/ai/prompts/index.js +2 -0
  12. package/ai/prompts/instructions-formatter.d.ts +9 -22
  13. package/ai/prompts/instructions-formatter.js +20 -7
  14. package/ai/prompts/instructions.js +1 -1
  15. package/ai/prompts/steering.d.ts +27 -0
  16. package/ai/prompts/steering.js +54 -0
  17. package/ai/tests/instructions-formatter.test.js +115 -0
  18. package/ai/tests/steering.test.js +37 -0
  19. package/application/application.d.ts +2 -1
  20. package/application/application.js +3 -0
  21. package/authentication/client/module.d.ts +1 -1
  22. package/authentication/client/module.js +4 -5
  23. package/authentication/tests/authentication-ancillary.service.test.js +1 -1
  24. package/authentication/tests/authentication.api-controller.test.js +3 -1
  25. package/authentication/tests/authentication.api-request-token.provider.test.js +1 -1
  26. package/authentication/tests/authentication.client-service.test.js +1 -1
  27. package/authentication/tests/authentication.service.test.js +1 -1
  28. package/authentication/tests/subject.service.test.js +1 -1
  29. package/circuit-breaker/tests/circuit-breaker.test.js +1 -1
  30. package/document-management/api/document-management.api.d.ts +16 -16
  31. package/document-management/api/document-management.api.js +12 -12
  32. package/document-management/models/ai-configuration.d.ts +59 -0
  33. package/document-management/models/ai-configuration.js +1 -0
  34. package/document-management/models/document-assignment-scope.model.js +2 -4
  35. package/document-management/models/document-assignment-task.model.js +2 -4
  36. package/document-management/models/document-collection-assignment.model.js +2 -4
  37. package/document-management/models/document-collection.model.js +2 -3
  38. package/document-management/models/document-content.model.d.ts +6 -0
  39. package/document-management/models/document-content.model.js +32 -0
  40. package/document-management/models/document-property-value.model.js +1 -2
  41. package/document-management/models/document-request-collection-assignment.model.js +2 -4
  42. package/document-management/models/document-request.model.js +2 -4
  43. package/document-management/models/document-tag-assignment.model.js +2 -3
  44. package/document-management/models/document-validation-execution-related-document.model.js +2 -4
  45. package/document-management/models/document-validation-execution.model.js +2 -5
  46. package/document-management/models/document-workflow.model.d.ts +2 -1
  47. package/document-management/models/document-workflow.model.js +4 -5
  48. package/document-management/models/document.model.js +2 -3
  49. package/document-management/models/index.d.ts +2 -0
  50. package/document-management/models/index.js +2 -0
  51. package/document-management/server/api/document-management.api.d.ts +7 -7
  52. package/document-management/server/api/document-management.api.js +9 -9
  53. package/document-management/server/configure.d.ts +4 -1
  54. package/document-management/server/configure.js +9 -4
  55. package/document-management/server/drizzle/{0000_complex_black_bird.sql → 0000_curious_nighthawk.sql} +7 -27
  56. package/document-management/server/drizzle/meta/0000_snapshot.json +12 -284
  57. package/document-management/server/drizzle/meta/_journal.json +2 -2
  58. package/document-management/server/module.d.ts +2 -0
  59. package/document-management/server/module.js +1 -0
  60. package/document-management/server/schemas.d.ts +2 -1
  61. package/document-management/server/services/document-file.service.d.ts +6 -6
  62. package/document-management/server/services/document-file.service.js +7 -81
  63. package/document-management/server/services/document-management-ai-provider.service.d.ts +66 -0
  64. package/document-management/server/services/document-management-ai-provider.service.js +2 -0
  65. package/document-management/server/services/document-management-ai.service.d.ts +44 -7
  66. package/document-management/server/services/document-management-ai.service.js +332 -329
  67. package/document-management/server/services/document-validation.service.d.ts +1 -1
  68. package/document-management/server/services/document-workflow.service.d.ts +4 -3
  69. package/document-management/server/services/document-workflow.service.js +26 -9
  70. package/document-management/server/services/document.service.d.ts +7 -3
  71. package/document-management/server/services/document.service.js +13 -4
  72. package/document-management/server/services/index.d.ts +1 -0
  73. package/document-management/server/services/index.js +1 -0
  74. package/document-management/server/validators/ai-validation-executor.d.ts +419 -12
  75. package/document-management/server/validators/ai-validation-executor.js +51 -46
  76. package/document-management/server/validators/single-document-validation-executor.d.ts +1 -3
  77. package/document-management/server/validators/single-document-validation-executor.js +2 -4
  78. package/document-management/service-models/document.service-model.d.ts +3 -3
  79. package/document-management/service-models/document.service-model.js +1 -1
  80. package/document-management/tests/ai-config-hierarchy.test.d.ts +1 -0
  81. package/document-management/tests/ai-config-hierarchy.test.js +64 -0
  82. package/document-management/tests/ai-config-integration.test.d.ts +1 -0
  83. package/document-management/tests/ai-config-integration.test.js +125 -0
  84. package/document-management/tests/ai-config-merge.test.d.ts +1 -0
  85. package/document-management/tests/ai-config-merge.test.js +38 -0
  86. package/document-management/tests/document-management-ai-overrides.test.d.ts +1 -0
  87. package/document-management/tests/document-management-ai-overrides.test.js +64 -0
  88. package/document-management/tests/document-management-core.test.js +6 -6
  89. package/document-management/tests/document-management.api.test.js +5 -5
  90. package/document-management/tests/document-statistics.service.test.js +10 -6
  91. package/document-management/tests/document-validation-ai-overrides.test.d.ts +1 -0
  92. package/document-management/tests/document-validation-ai-overrides.test.js +85 -0
  93. package/document-management/tests/document.service.test.js +15 -11
  94. package/document-management/tests/enum-helpers.test.js +5 -5
  95. package/examples/document-management/ai-provider.d.ts +20 -0
  96. package/examples/document-management/ai-provider.js +74 -0
  97. package/examples/document-management/main.js +9 -6
  98. package/examples/injector/graph-example.d.ts +1 -0
  99. package/examples/injector/graph-example.js +340 -0
  100. package/injector/decorators.d.ts +4 -4
  101. package/injector/decorators.js +5 -6
  102. package/injector/forward-ref.d.ts +15 -0
  103. package/injector/forward-ref.js +20 -0
  104. package/injector/graph.d.ts +113 -0
  105. package/injector/graph.js +652 -0
  106. package/injector/index.d.ts +2 -0
  107. package/injector/index.js +2 -0
  108. package/injector/inject.d.ts +15 -15
  109. package/injector/injector.d.ts +101 -13
  110. package/injector/injector.js +103 -59
  111. package/injector/resolve-chain.d.ts +20 -6
  112. package/injector/resolve-chain.js +39 -14
  113. package/injector/tests/advanced.test.d.ts +1 -0
  114. package/injector/tests/advanced.test.js +116 -0
  115. package/injector/tests/async-init.test.d.ts +1 -0
  116. package/injector/tests/async-init.test.js +77 -0
  117. package/injector/tests/basic.test.d.ts +1 -0
  118. package/injector/tests/basic.test.js +114 -0
  119. package/injector/tests/hierarchical.test.d.ts +1 -0
  120. package/injector/tests/hierarchical.test.js +59 -0
  121. package/injector/tests/lifecycles.test.d.ts +1 -0
  122. package/injector/tests/lifecycles.test.js +109 -0
  123. package/injector/token.d.ts +2 -1
  124. package/injector/token.js +4 -1
  125. package/injector/type-info.d.ts +1 -5
  126. package/injector/types.d.ts +4 -10
  127. package/logger/tests/pretty-print.test.d.ts +1 -0
  128. package/logger/{formatters → tests}/pretty-print.test.js +1 -1
  129. package/logger/transports/console.d.ts +3 -2
  130. package/logger/transports/console.js +4 -3
  131. package/notification/tests/notification-api.test.js +8 -5
  132. package/notification/tests/notification-client.test.d.ts +1 -0
  133. package/notification/tests/{unit/notification-client.test.js → notification-client.test.js} +5 -5
  134. package/notification/tests/notification-flow.test.js +6 -5
  135. package/notification/tests/notification-sse.service.test.js +1 -1
  136. package/notification/tests/notification-type.service.test.js +1 -1
  137. package/object-storage/s3/s3.object-storage.js +3 -0
  138. package/object-storage/s3/tests/s3.object-storage.integration.test.js +1 -1
  139. package/orm/tests/repository-attributes.test.js +10 -17
  140. package/orm/tests/repository-cti-mapping.test.js +2 -2
  141. package/orm/tests/repository-cti-soft-delete.test.js +1 -1
  142. package/orm/tests/repository-cti.test.js +19 -33
  143. package/orm/tests/repository-extra-coverage.test.js +1 -1
  144. package/orm/tests/repository-search.test.js +5 -2
  145. package/orm/tests/transaction-safety.test.js +1 -1
  146. package/package.json +7 -9
  147. package/rate-limit/tests/postgres-rate-limiter.test.js +6 -16
  148. package/renderer/d2.d.ts +77 -0
  149. package/renderer/d2.js +68 -0
  150. package/renderer/graphviz.d.ts +47 -0
  151. package/renderer/graphviz.js +58 -0
  152. package/renderer/index.d.ts +4 -0
  153. package/renderer/index.js +4 -0
  154. package/renderer/typst.d.ts +57 -0
  155. package/renderer/typst.js +62 -0
  156. package/rpc/adapters/readable-stream.adapter.d.ts +3 -0
  157. package/rpc/adapters/readable-stream.adapter.js +5 -1
  158. package/rpc/rpc.js +28 -3
  159. package/rpc/tests/rpc.integration.test.js +3 -1
  160. package/schema/schemas/nullable.js +1 -1
  161. package/task-queue/task-queue.d.ts +2 -0
  162. package/task-queue/task-queue.js +6 -2
  163. package/task-queue/tests/complex.test.js +1 -1
  164. package/task-queue/tests/dependencies.test.js +3 -3
  165. package/task-queue/tests/extensive-dependencies.test.js +1 -1
  166. package/task-queue/tests/queue.test.js +1 -1
  167. package/task-queue/tests/worker.test.js +4 -7
  168. package/test5.js +52 -8
  169. package/{unit-test → testing}/integration-setup.d.ts +1 -0
  170. package/{unit-test → testing}/integration-setup.js +13 -0
  171. package/utils/base64.d.ts +7 -0
  172. package/utils/base64.js +10 -1
  173. package/utils/noop.d.ts +7 -1
  174. package/utils/noop.js +7 -1
  175. package/ai/ai-file.service.d.ts +0 -57
  176. package/ai/ai-file.service.js +0 -233
  177. package/ai/ai-session.d.ts +0 -38
  178. package/ai/ai-session.js +0 -50
  179. package/ai/ai.service.d.ts +0 -126
  180. package/ai/ai.service.js +0 -481
  181. package/ai/functions.d.ts +0 -9
  182. package/ai/functions.js +0 -38
  183. package/ai/module.d.ts +0 -26
  184. package/ai/module.js +0 -25
  185. package/ai/types.d.ts +0 -229
  186. package/ai/types.js +0 -33
  187. package/latex/index.d.ts +0 -1
  188. package/latex/index.js +0 -1
  189. package/typst/index.d.ts +0 -1
  190. package/typst/index.js +0 -1
  191. package/typst/render.d.ts +0 -23
  192. package/typst/render.js +0 -32
  193. /package/{logger/formatters/pretty-print.test.d.ts → ai/tests/instructions-formatter.test.d.ts} +0 -0
  194. /package/{notification/tests/unit/notification-client.test.d.ts → ai/tests/steering.test.d.ts} +0 -0
  195. /package/{latex/render.d.ts → renderer/latex.d.ts} +0 -0
  196. /package/{latex/render.js → renderer/latex.js} +0 -0
  197. /package/{unit-test → testing}/index.d.ts +0 -0
  198. /package/{unit-test → testing}/index.js +0 -0
@@ -8,7 +8,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import { defineEnum } from '../../enumeration/enumeration.js';
11
- import { NumericDateProperty, TenantEntity, TenantReference, Unique, UuidProperty } from '../../orm/index.js';
11
+ import { NumericDateProperty, TenantEntity, TenantReference, UuidProperty } from '../../orm/index.js';
12
12
  import { Enumeration, Integer, StringProperty } from '../../schema/index.js';
13
13
  import { DocumentManagementTable } from './document-management-table.js';
14
14
  import { DocumentType } from './document-type.model.js';
@@ -82,7 +82,6 @@ __decorate([
82
82
  __metadata("design:type", Number)
83
83
  ], Document.prototype, "size", void 0);
84
84
  Document = __decorate([
85
- DocumentManagementTable(),
86
- Unique(['tenantId', 'id'])
85
+ DocumentManagementTable()
87
86
  ], Document);
88
87
  export { Document };
@@ -1,8 +1,10 @@
1
+ export * from './ai-configuration.js';
1
2
  export * from './document-assignment-scope.model.js';
2
3
  export * from './document-assignment-task.model.js';
3
4
  export * from './document-category.model.js';
4
5
  export * from './document-collection-assignment.model.js';
5
6
  export * from './document-collection.model.js';
7
+ export * from './document-content.model.js';
6
8
  export * from './document-management-table.js';
7
9
  export * from './document-property-value.model.js';
8
10
  export * from './document-property.model.js';
@@ -1,8 +1,10 @@
1
+ export * from './ai-configuration.js';
1
2
  export * from './document-assignment-scope.model.js';
2
3
  export * from './document-assignment-task.model.js';
3
4
  export * from './document-category.model.js';
4
5
  export * from './document-collection-assignment.model.js';
5
6
  export * from './document-collection.model.js';
7
+ export * from './document-content.model.js';
6
8
  export * from './document-management-table.js';
7
9
  export * from './document-property-value.model.js';
8
10
  export * from './document-property.model.js';
@@ -2,15 +2,15 @@ import type { ApiController, ApiRequestContext, ApiServerResult } from '../../..
2
2
  import { type DocumentManagementApiDefinition } from '../../api/index.js';
3
3
  export declare class DocumentManagementApiController implements ApiController<DocumentManagementApiDefinition> {
4
4
  #private;
5
- loadData(context: ApiRequestContext<DocumentManagementApiDefinition, 'loadData'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'loadData'>>;
5
+ getData(context: ApiRequestContext<DocumentManagementApiDefinition, 'getData'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'getData'>>;
6
6
  getStatistics(context: ApiRequestContext<DocumentManagementApiDefinition, 'getStatistics'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'getStatistics'>>;
7
- loadDataStream(context: ApiRequestContext<DocumentManagementApiDefinition, 'loadDataStream'>): ApiServerResult<DocumentManagementApiDefinition, 'loadDataStream'>;
8
- loadDocumentRequestsTemplateData(context: ApiRequestContext<DocumentManagementApiDefinition, 'loadDocumentRequestsTemplateData'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'loadDocumentRequestsTemplateData'>>;
7
+ getDataStream(context: ApiRequestContext<DocumentManagementApiDefinition, 'getDataStream'>): ApiServerResult<DocumentManagementApiDefinition, 'getDataStream'>;
8
+ getDocumentRequestsTemplateData(context: ApiRequestContext<DocumentManagementApiDefinition, 'getDocumentRequestsTemplateData'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'getDocumentRequestsTemplateData'>>;
9
9
  getCategoriesAndTypes(context: ApiRequestContext<DocumentManagementApiDefinition, 'getCategoriesAndTypes'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'getCategoriesAndTypes'>>;
10
- loadAvailableCategories(context: ApiRequestContext<DocumentManagementApiDefinition, 'loadAvailableCategories'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'loadAvailableCategories'>>;
11
- loadContent(context: ApiRequestContext<DocumentManagementApiDefinition, 'loadContent'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'loadContent'>>;
12
- getContentUrl(context: ApiRequestContext<DocumentManagementApiDefinition, 'getContentUrl'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'getContentUrl'>>;
13
- loadPreview(context: ApiRequestContext<DocumentManagementApiDefinition, 'loadPreview'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'loadPreview'>>;
10
+ getAvailableCategories(context: ApiRequestContext<DocumentManagementApiDefinition, 'getAvailableCategories'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'getAvailableCategories'>>;
11
+ getFileContent(context: ApiRequestContext<DocumentManagementApiDefinition, 'getFileContent'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'getFileContent'>>;
12
+ getFileContentUrl(context: ApiRequestContext<DocumentManagementApiDefinition, 'getFileContentUrl'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'getFileContentUrl'>>;
13
+ getPreview(context: ApiRequestContext<DocumentManagementApiDefinition, 'getPreview'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'getPreview'>>;
14
14
  getPreviewUrl(context: ApiRequestContext<DocumentManagementApiDefinition, 'getPreviewUrl'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'getPreviewUrl'>>;
15
15
  createCategory(context: ApiRequestContext<DocumentManagementApiDefinition, 'createCategory'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'createCategory'>>;
16
16
  createType(context: ApiRequestContext<DocumentManagementApiDefinition, 'createType'>): Promise<ApiServerResult<DocumentManagementApiDefinition, 'createType'>>;
@@ -27,7 +27,7 @@ let DocumentManagementApiController = class DocumentManagementApiController {
27
27
  #documentService = inject(DocumentService);
28
28
  #workflowService = inject(DocumentWorkflowService);
29
29
  #cancellationSignal = inject(CancellationSignal);
30
- async loadData(context) {
30
+ async getData(context) {
31
31
  const token = await context.getToken();
32
32
  const tenantId = await this.#authorizationService.getTenantId(token);
33
33
  const collectionIdArray = toArray(context.parameters.collectionIds);
@@ -50,7 +50,7 @@ let DocumentManagementApiController = class DocumentManagementApiController {
50
50
  }
51
51
  return await this.#documentStatisticsService.getStatistics(tenantId, context.parameters);
52
52
  }
53
- async *loadDataStream(context) {
53
+ async *getDataStream(context) {
54
54
  const token = await context.getToken();
55
55
  const tenantId = await this.#authorizationService.getTenantId(token);
56
56
  const collectionIdArray = toArray(context.parameters.collectionIds);
@@ -62,7 +62,7 @@ let DocumentManagementApiController = class DocumentManagementApiController {
62
62
  }
63
63
  yield* this.#documentManagementService.loadDataStream(tenantId, collectionIdArray, this.#cancellationSignal);
64
64
  }
65
- async loadDocumentRequestsTemplateData(context) {
65
+ async getDocumentRequestsTemplateData(context) {
66
66
  const token = await context.getToken();
67
67
  const tenantId = await this.#authorizationService.getTenantId(token);
68
68
  const allowed = await this.#authorizationService.canReadDocumentRequestsTemplates(token);
@@ -76,31 +76,31 @@ let DocumentManagementApiController = class DocumentManagementApiController {
76
76
  const tenantId = await this.#authorizationService.getTenantId(token);
77
77
  return await this.#documentCategoryTypeService.loadCategoriesAndTypes(tenantId);
78
78
  }
79
- async loadAvailableCategories(context) {
79
+ async getAvailableCategories(context) {
80
80
  const token = await context.getToken();
81
81
  const tenantId = await this.#authorizationService.getTenantId(token);
82
82
  return await this.#documentCategoryTypeService.loadCategoryViews(tenantId);
83
83
  }
84
- async loadContent(context) {
84
+ async getFileContent(context) {
85
85
  const token = await context.getToken();
86
86
  const tenantId = await this.#authorizationService.getTenantId(token);
87
87
  const allowed = await this.canReadDocument(tenantId, context.parameters.id, token);
88
88
  if (!allowed) {
89
89
  throw new ForbiddenError(`You are not allowed to load content for document ${context.parameters.id}.`);
90
90
  }
91
- const url = await this.#documentService.getContentUrl(tenantId, context.parameters.id, context.parameters.download);
91
+ const url = await this.#documentService.getFileContentUrl(tenantId, context.parameters.id, context.parameters.download);
92
92
  return HttpServerResponse.redirect(url);
93
93
  }
94
- async getContentUrl(context) {
94
+ async getFileContentUrl(context) {
95
95
  const token = await context.getToken();
96
96
  const tenantId = await this.#authorizationService.getTenantId(token);
97
97
  const allowed = await this.canReadDocument(tenantId, context.parameters.id, token);
98
98
  if (!allowed) {
99
99
  throw new ForbiddenError(`You are not allowed to get content URL for document ${context.parameters.id}.`);
100
100
  }
101
- return await this.#documentService.getContentUrl(tenantId, context.parameters.id, context.parameters.download);
101
+ return await this.#documentService.getFileContentUrl(tenantId, context.parameters.id, context.parameters.download);
102
102
  }
103
- async loadPreview(context) {
103
+ async getPreview(context) {
104
104
  const token = await context.getToken();
105
105
  const tenantId = await this.#authorizationService.getTenantId(token);
106
106
  const allowed = await this.canReadDocument(tenantId, context.parameters.id, token);
@@ -1,2 +1,5 @@
1
+ import { Injector } from '../../injector/injector.js';
1
2
  import { DocumentManagementConfiguration } from './module.js';
2
- export declare function configureDocumentManagement(configuration: DocumentManagementConfiguration): void;
3
+ export declare function configureDocumentManagement(configuration: DocumentManagementConfiguration & {
4
+ injector?: Injector;
5
+ }): void;
@@ -1,9 +1,14 @@
1
1
  import { Injector } from '../../injector/injector.js';
2
+ import { isDefined } from '../../utils/type-guards.js';
2
3
  import { DocumentManagementAuthorizationService } from '../authorization/document-management-authorization.service.js';
3
4
  import { DocumentManagementConfiguration } from './module.js';
4
- import { DocumentManagementAncillaryService } from './services/index.js';
5
+ import { DocumentManagementAiProviderService, DocumentManagementAncillaryService } from './services/index.js';
5
6
  export function configureDocumentManagement(configuration) {
6
- Injector.register(DocumentManagementConfiguration, { useValue: configuration });
7
- Injector.register(DocumentManagementAncillaryService, { useToken: configuration.ancillaryService });
8
- Injector.register(DocumentManagementAuthorizationService, { useToken: configuration.authorizationService });
7
+ const targetInjector = configuration.injector ?? Injector;
8
+ targetInjector.register(DocumentManagementConfiguration, { useValue: configuration });
9
+ targetInjector.register(DocumentManagementAncillaryService, { useToken: configuration.ancillaryService });
10
+ targetInjector.register(DocumentManagementAuthorizationService, { useToken: configuration.authorizationService });
11
+ if (isDefined(configuration.aiProvider)) {
12
+ targetInjector.register(DocumentManagementAiProviderService, { useToken: configuration.aiProvider });
13
+ }
9
14
  }
@@ -6,7 +6,7 @@ CREATE TYPE "document_management"."validation_execution_state" AS ENUM('pending'
6
6
  CREATE TYPE "document_management"."validation_result_status" AS ENUM('passed', 'failed', 'warning');--> statement-breakpoint
7
7
  CREATE TYPE "document_management"."workflow_fail_reason" AS ENUM('no-suitable-collection', 'no-suitable-request');--> statement-breakpoint
8
8
  CREATE TYPE "document_management"."workflow_state" AS ENUM('pending', 'running', 'review', 'completed', 'error', 'failed');--> statement-breakpoint
9
- CREATE TYPE "document_management"."workflow_step" AS ENUM('classification', 'extraction', 'assignment', 'validation');--> statement-breakpoint
9
+ CREATE TYPE "document_management"."workflow_step" AS ENUM('content-extraction', 'classification', 'data-extraction', 'assignment', 'validation');--> statement-breakpoint
10
10
  CREATE TABLE "document_management"."document" (
11
11
  "id" uuid DEFAULT gen_random_uuid() NOT NULL,
12
12
  "tenant_id" uuid NOT NULL,
@@ -27,8 +27,7 @@ CREATE TABLE "document_management"."document" (
27
27
  "create_timestamp" timestamp with time zone NOT NULL,
28
28
  "delete_timestamp" timestamp with time zone,
29
29
  "attributes" jsonb DEFAULT '{}'::jsonb NOT NULL,
30
- CONSTRAINT "document_tenant_id_id_pk" PRIMARY KEY("tenant_id","id"),
31
- CONSTRAINT "document_tenant_id_id_unique" UNIQUE("tenant_id","id")
30
+ CONSTRAINT "document_tenant_id_id_pk" PRIMARY KEY("tenant_id","id")
32
31
  );
33
32
  --> statement-breakpoint
34
33
  CREATE TABLE "document_management"."assignment_scope" (
@@ -56,8 +55,7 @@ CREATE TABLE "document_management"."assignment_task" (
56
55
  "delete_timestamp" timestamp with time zone,
57
56
  "attributes" jsonb DEFAULT '{}'::jsonb NOT NULL,
58
57
  CONSTRAINT "assignment_task_tenant_id_id_pk" PRIMARY KEY("tenant_id","id"),
59
- CONSTRAINT "assignment_task_document_id_unique" UNIQUE("document_id"),
60
- CONSTRAINT "assignment_task_tenant_id_id_unique" UNIQUE("tenant_id","id")
58
+ CONSTRAINT "assignment_task_tenant_id_document_id_unique" UNIQUE("tenant_id","document_id")
61
59
  );
62
60
  --> statement-breakpoint
63
61
  CREATE TABLE "document_management"."category" (
@@ -85,8 +83,7 @@ CREATE TABLE "document_management"."collection" (
85
83
  "create_timestamp" timestamp with time zone NOT NULL,
86
84
  "delete_timestamp" timestamp with time zone,
87
85
  "attributes" jsonb DEFAULT '{}'::jsonb NOT NULL,
88
- CONSTRAINT "collection_tenant_id_id_pk" PRIMARY KEY("tenant_id","id"),
89
- CONSTRAINT "collection_tenant_id_id_unique" UNIQUE("tenant_id","id")
86
+ CONSTRAINT "collection_tenant_id_id_pk" PRIMARY KEY("tenant_id","id")
90
87
  );
91
88
  --> statement-breakpoint
92
89
  CREATE TABLE "document_management"."collection_assignment" (
@@ -153,8 +150,7 @@ CREATE TABLE "document_management"."request" (
153
150
  "delete_timestamp" timestamp with time zone,
154
151
  "attributes" jsonb DEFAULT '{}'::jsonb NOT NULL,
155
152
  CONSTRAINT "request_tenant_id_id_pk" PRIMARY KEY("tenant_id","id"),
156
- CONSTRAINT "request_document_id_unique" UNIQUE("document_id"),
157
- CONSTRAINT "request_tenant_id_id_unique" UNIQUE("tenant_id","id")
153
+ CONSTRAINT "request_tenant_id_document_id_unique" UNIQUE("tenant_id","document_id")
158
154
  );
159
155
  --> statement-breakpoint
160
156
  CREATE TABLE "document_management"."request_collection_assignment" (
@@ -300,8 +296,7 @@ CREATE TABLE "document_management"."validation_execution" (
300
296
  "delete_timestamp" timestamp with time zone,
301
297
  "attributes" jsonb DEFAULT '{}'::jsonb NOT NULL,
302
298
  CONSTRAINT "validation_execution_tenant_id_id_pk" PRIMARY KEY("tenant_id","id"),
303
- CONSTRAINT "validation_execution_tenant_id_workflow_id_definition_id_unique" UNIQUE("tenant_id","workflow_id","definition_id"),
304
- CONSTRAINT "validation_execution_tenant_id_id_unique" UNIQUE("tenant_id","id")
299
+ CONSTRAINT "validation_execution_tenant_id_workflow_id_definition_id_unique" UNIQUE("tenant_id","workflow_id","definition_id")
305
300
  );
306
301
  --> statement-breakpoint
307
302
  CREATE TABLE "document_management"."validation_execution_related_document" (
@@ -333,38 +328,27 @@ CREATE TABLE "document_management"."workflow" (
333
328
  "create_timestamp" timestamp with time zone NOT NULL,
334
329
  "delete_timestamp" timestamp with time zone,
335
330
  "attributes" jsonb DEFAULT '{}'::jsonb NOT NULL,
336
- CONSTRAINT "workflow_tenant_id_id_pk" PRIMARY KEY("tenant_id","id"),
337
- CONSTRAINT "workflow_tenant_id_id_unique" UNIQUE("tenant_id","id")
331
+ CONSTRAINT "workflow_tenant_id_id_pk" PRIMARY KEY("tenant_id","id")
338
332
  );
339
333
  --> statement-breakpoint
340
334
  ALTER TABLE "document_management"."document" ADD CONSTRAINT "document_id_type_fkey" FOREIGN KEY ("tenant_id","type_id") REFERENCES "document_management"."type"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
341
335
  ALTER TABLE "document_management"."assignment_scope" ADD CONSTRAINT "assignment_scope_id_assignment_task_fkey" FOREIGN KEY ("tenant_id","task_id") REFERENCES "document_management"."assignment_task"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
342
336
  ALTER TABLE "document_management"."assignment_scope" ADD CONSTRAINT "assignment_scope_id_collection_fkey" FOREIGN KEY ("tenant_id","collection_id") REFERENCES "document_management"."collection"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
343
- ALTER TABLE "document_management"."assignment_scope" ADD CONSTRAINT "assignment_scope_tenantId_collectionId_collection_fkey" FOREIGN KEY ("tenant_id","collection_id") REFERENCES "document_management"."collection"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
344
- ALTER TABLE "document_management"."assignment_scope" ADD CONSTRAINT "assignment_scope_tenantId_taskId_assignment_task_fkey" FOREIGN KEY ("tenant_id","task_id") REFERENCES "document_management"."assignment_task"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
345
337
  ALTER TABLE "document_management"."assignment_task" ADD CONSTRAINT "assignment_task_id_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
346
- ALTER TABLE "document_management"."assignment_task" ADD CONSTRAINT "assignment_task_tenantId_documentId_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
347
338
  ALTER TABLE "document_management"."category" ADD CONSTRAINT "category_id_category_fkey" FOREIGN KEY ("tenant_id","parent_id") REFERENCES "document_management"."category"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
348
339
  ALTER TABLE "document_management"."collection" ADD CONSTRAINT "collection_id_collection_fkey" FOREIGN KEY ("tenant_id","parent_id") REFERENCES "document_management"."collection"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
349
340
  ALTER TABLE "document_management"."collection_assignment" ADD CONSTRAINT "collection_assignment_id_collection_fkey" FOREIGN KEY ("tenant_id","collection_id") REFERENCES "document_management"."collection"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
350
341
  ALTER TABLE "document_management"."collection_assignment" ADD CONSTRAINT "collection_assignment_id_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
351
- ALTER TABLE "document_management"."collection_assignment" ADD CONSTRAINT "collection_assignment_tenantId_documentId_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
352
- ALTER TABLE "document_management"."collection_assignment" ADD CONSTRAINT "collection_assignment_tenantId_collectionId_collection_fkey" FOREIGN KEY ("tenant_id","collection_id") REFERENCES "document_management"."collection"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
353
342
  ALTER TABLE "document_management"."property_value" ADD CONSTRAINT "property_value_id_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
354
343
  ALTER TABLE "document_management"."property_value" ADD CONSTRAINT "property_value_id_property_fkey" FOREIGN KEY ("tenant_id","property_id") REFERENCES "document_management"."property"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
355
- ALTER TABLE "document_management"."property_value" ADD CONSTRAINT "property_value_tenantId_documentId_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
356
344
  ALTER TABLE "document_management"."request" ADD CONSTRAINT "request_id_type_fkey" FOREIGN KEY ("tenant_id","type_id") REFERENCES "document_management"."type"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
357
345
  ALTER TABLE "document_management"."request" ADD CONSTRAINT "request_id_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
358
- ALTER TABLE "document_management"."request" ADD CONSTRAINT "request_tenantId_documentId_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
359
346
  ALTER TABLE "document_management"."request_collection_assignment" ADD CONSTRAINT "request_collection_assignment_id_request_fkey" FOREIGN KEY ("tenant_id","request_id") REFERENCES "document_management"."request"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
360
347
  ALTER TABLE "document_management"."request_collection_assignment" ADD CONSTRAINT "request_collection_assignment_id_collection_fkey" FOREIGN KEY ("tenant_id","collection_id") REFERENCES "document_management"."collection"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
361
- ALTER TABLE "document_management"."request_collection_assignment" ADD CONSTRAINT "rca_tenantId_collectionId_c_fkey" FOREIGN KEY ("tenant_id","collection_id") REFERENCES "document_management"."collection"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
362
- ALTER TABLE "document_management"."request_collection_assignment" ADD CONSTRAINT "request_collection_assignment_tenantId_requestId_request_fkey" FOREIGN KEY ("tenant_id","request_id") REFERENCES "document_management"."request"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
363
348
  ALTER TABLE "document_management"."request_template" ADD CONSTRAINT "request_template_id_requests_template_fkey" FOREIGN KEY ("tenant_id","requests_template_id") REFERENCES "document_management"."requests_template"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
364
349
  ALTER TABLE "document_management"."request_template" ADD CONSTRAINT "request_template_id_type_fkey" FOREIGN KEY ("tenant_id","type_id") REFERENCES "document_management"."type"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
365
350
  ALTER TABLE "document_management"."tag_assignment" ADD CONSTRAINT "tag_assignment_id_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
366
351
  ALTER TABLE "document_management"."tag_assignment" ADD CONSTRAINT "tag_assignment_id_tag_fkey" FOREIGN KEY ("tenant_id","tag_id") REFERENCES "document_management"."tag"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
367
- ALTER TABLE "document_management"."tag_assignment" ADD CONSTRAINT "tag_assignment_tenantId_documentId_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
368
352
  ALTER TABLE "document_management"."type" ADD CONSTRAINT "type_id_category_fkey" FOREIGN KEY ("tenant_id","category_id") REFERENCES "document_management"."category"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
369
353
  ALTER TABLE "document_management"."type_property" ADD CONSTRAINT "type_property_id_type_fkey" FOREIGN KEY ("tenant_id","type_id") REFERENCES "document_management"."type"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
370
354
  ALTER TABLE "document_management"."type_property" ADD CONSTRAINT "type_property_id_property_fkey" FOREIGN KEY ("tenant_id","property_id") REFERENCES "document_management"."property"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
@@ -372,13 +356,9 @@ ALTER TABLE "document_management"."document_type_validation" ADD CONSTRAINT "doc
372
356
  ALTER TABLE "document_management"."document_type_validation" ADD CONSTRAINT "document_type_validation_id_validation_definition_fkey" FOREIGN KEY ("tenant_id","validation_id") REFERENCES "document_management"."validation_definition"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
373
357
  ALTER TABLE "document_management"."validation_execution" ADD CONSTRAINT "validation_execution_id_workflow_fkey" FOREIGN KEY ("tenant_id","workflow_id") REFERENCES "document_management"."workflow"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
374
358
  ALTER TABLE "document_management"."validation_execution" ADD CONSTRAINT "validation_execution_id_validation_definition_fkey" FOREIGN KEY ("tenant_id","definition_id") REFERENCES "document_management"."validation_definition"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
375
- ALTER TABLE "document_management"."validation_execution" ADD CONSTRAINT "validation_execution_tenantId_workflowId_workflow_fkey" FOREIGN KEY ("tenant_id","workflow_id") REFERENCES "document_management"."workflow"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
376
359
  ALTER TABLE "document_management"."validation_execution_related_document" ADD CONSTRAINT "verd_id_ve_fkey" FOREIGN KEY ("tenant_id","execution_id") REFERENCES "document_management"."validation_execution"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
377
360
  ALTER TABLE "document_management"."validation_execution_related_document" ADD CONSTRAINT "validation_execution_related_document_id_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
378
- ALTER TABLE "document_management"."validation_execution_related_document" ADD CONSTRAINT "verd_tenantId_documentId_d_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
379
- ALTER TABLE "document_management"."validation_execution_related_document" ADD CONSTRAINT "verd_tenantId_executionId_ve_fkey" FOREIGN KEY ("tenant_id","execution_id") REFERENCES "document_management"."validation_execution"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
380
361
  ALTER TABLE "document_management"."workflow" ADD CONSTRAINT "workflow_id_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
381
- ALTER TABLE "document_management"."workflow" ADD CONSTRAINT "workflow_tenantId_documentId_document_fkey" FOREIGN KEY ("tenant_id","document_id") REFERENCES "document_management"."document"("tenant_id","id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
382
362
  CREATE INDEX "collection_assignment_collection_id_idx" ON "document_management"."collection_assignment" USING btree ("collection_id");--> statement-breakpoint
383
363
  CREATE INDEX "request_type_id_idx" ON "document_management"."request" USING btree ("type_id");--> statement-breakpoint
384
364
  CREATE INDEX "request_state_idx" ON "document_management"."request" USING btree ("state");--> statement-breakpoint