@tstdl/base 0.93.125 → 0.93.126
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.
- package/ai/genkit/tests/multi-region.test.js +6 -6
- package/ai/index.d.ts +2 -6
- package/ai/index.js +2 -6
- package/ai/parser/index.d.ts +1 -0
- package/ai/parser/index.js +1 -0
- package/ai/parser/parser.d.ts +12 -0
- package/ai/parser/parser.js +28 -0
- package/ai/prompts/build.d.ts +21 -0
- package/ai/prompts/build.js +25 -0
- package/ai/prompts/index.d.ts +2 -0
- package/ai/prompts/index.js +2 -0
- package/ai/prompts/instructions-formatter.d.ts +9 -22
- package/ai/prompts/instructions-formatter.js +20 -7
- package/ai/prompts/instructions.js +1 -1
- package/ai/prompts/steering.d.ts +27 -0
- package/ai/prompts/steering.js +54 -0
- package/ai/tests/instructions-formatter.test.js +115 -0
- package/ai/tests/steering.test.js +37 -0
- package/application/application.d.ts +2 -1
- package/application/application.js +3 -0
- package/authentication/client/module.d.ts +1 -1
- package/authentication/client/module.js +4 -5
- package/authentication/tests/authentication-ancillary.service.test.js +1 -1
- package/authentication/tests/authentication.api-controller.test.js +3 -1
- package/authentication/tests/authentication.api-request-token.provider.test.js +1 -1
- package/authentication/tests/authentication.client-service.test.js +1 -1
- package/authentication/tests/authentication.service.test.js +1 -1
- package/authentication/tests/subject.service.test.js +1 -1
- package/circuit-breaker/tests/circuit-breaker.test.js +1 -1
- package/document-management/api/document-management.api.d.ts +16 -16
- package/document-management/api/document-management.api.js +12 -12
- package/document-management/models/ai-configuration.d.ts +59 -0
- package/document-management/models/ai-configuration.js +1 -0
- package/document-management/models/document-assignment-scope.model.js +2 -4
- package/document-management/models/document-assignment-task.model.js +2 -4
- package/document-management/models/document-collection-assignment.model.js +2 -4
- package/document-management/models/document-collection.model.js +2 -3
- package/document-management/models/document-content.model.d.ts +6 -0
- package/document-management/models/document-content.model.js +32 -0
- package/document-management/models/document-property-value.model.js +1 -2
- package/document-management/models/document-request-collection-assignment.model.js +2 -4
- package/document-management/models/document-request.model.js +2 -4
- package/document-management/models/document-tag-assignment.model.js +2 -3
- package/document-management/models/document-validation-execution-related-document.model.js +2 -4
- package/document-management/models/document-validation-execution.model.js +2 -5
- package/document-management/models/document-workflow.model.d.ts +2 -1
- package/document-management/models/document-workflow.model.js +4 -5
- package/document-management/models/document.model.js +2 -3
- package/document-management/models/index.d.ts +2 -0
- package/document-management/models/index.js +2 -0
- package/document-management/server/api/document-management.api.d.ts +7 -7
- package/document-management/server/api/document-management.api.js +9 -9
- package/document-management/server/configure.d.ts +4 -1
- package/document-management/server/configure.js +9 -4
- package/document-management/server/drizzle/{0000_complex_black_bird.sql → 0000_curious_nighthawk.sql} +7 -27
- package/document-management/server/drizzle/meta/0000_snapshot.json +12 -284
- package/document-management/server/drizzle/meta/_journal.json +2 -2
- package/document-management/server/module.d.ts +2 -0
- package/document-management/server/module.js +1 -0
- package/document-management/server/schemas.d.ts +2 -1
- package/document-management/server/services/document-file.service.d.ts +6 -6
- package/document-management/server/services/document-file.service.js +7 -81
- package/document-management/server/services/document-management-ai-provider.service.d.ts +66 -0
- package/document-management/server/services/document-management-ai-provider.service.js +2 -0
- package/document-management/server/services/document-management-ai.service.d.ts +44 -7
- package/document-management/server/services/document-management-ai.service.js +332 -329
- package/document-management/server/services/document-validation.service.d.ts +1 -1
- package/document-management/server/services/document-workflow.service.d.ts +4 -3
- package/document-management/server/services/document-workflow.service.js +26 -9
- package/document-management/server/services/document.service.d.ts +7 -3
- package/document-management/server/services/document.service.js +13 -4
- package/document-management/server/services/index.d.ts +1 -0
- package/document-management/server/services/index.js +1 -0
- package/document-management/server/validators/ai-validation-executor.d.ts +419 -12
- package/document-management/server/validators/ai-validation-executor.js +51 -46
- package/document-management/server/validators/single-document-validation-executor.d.ts +1 -3
- package/document-management/server/validators/single-document-validation-executor.js +2 -4
- package/document-management/service-models/document.service-model.d.ts +3 -3
- package/document-management/service-models/document.service-model.js +1 -1
- package/document-management/tests/ai-config-hierarchy.test.d.ts +1 -0
- package/document-management/tests/ai-config-hierarchy.test.js +64 -0
- package/document-management/tests/ai-config-integration.test.d.ts +1 -0
- package/document-management/tests/ai-config-integration.test.js +125 -0
- package/document-management/tests/ai-config-merge.test.d.ts +1 -0
- package/document-management/tests/ai-config-merge.test.js +38 -0
- package/document-management/tests/document-management-ai-overrides.test.d.ts +1 -0
- package/document-management/tests/document-management-ai-overrides.test.js +64 -0
- package/document-management/tests/document-management-core.test.js +6 -6
- package/document-management/tests/document-management.api.test.js +5 -5
- package/document-management/tests/document-statistics.service.test.js +10 -6
- package/document-management/tests/document-validation-ai-overrides.test.d.ts +1 -0
- package/document-management/tests/document-validation-ai-overrides.test.js +85 -0
- package/document-management/tests/document.service.test.js +15 -11
- package/document-management/tests/enum-helpers.test.js +5 -5
- package/examples/document-management/ai-provider.d.ts +20 -0
- package/examples/document-management/ai-provider.js +74 -0
- package/examples/document-management/main.js +9 -6
- package/examples/injector/graph-example.d.ts +1 -0
- package/examples/injector/graph-example.js +340 -0
- package/injector/decorators.d.ts +4 -4
- package/injector/decorators.js +5 -6
- package/injector/forward-ref.d.ts +15 -0
- package/injector/forward-ref.js +20 -0
- package/injector/graph.d.ts +113 -0
- package/injector/graph.js +631 -0
- package/injector/index.d.ts +2 -0
- package/injector/index.js +2 -0
- package/injector/inject.d.ts +15 -15
- package/injector/injector.d.ts +101 -13
- package/injector/injector.js +103 -59
- package/injector/resolve-chain.d.ts +20 -6
- package/injector/resolve-chain.js +39 -14
- package/injector/tests/advanced.test.d.ts +1 -0
- package/injector/tests/advanced.test.js +116 -0
- package/injector/tests/async-init.test.d.ts +1 -0
- package/injector/tests/async-init.test.js +77 -0
- package/injector/tests/basic.test.d.ts +1 -0
- package/injector/tests/basic.test.js +114 -0
- package/injector/tests/hierarchical.test.d.ts +1 -0
- package/injector/tests/hierarchical.test.js +59 -0
- package/injector/tests/lifecycles.test.d.ts +1 -0
- package/injector/tests/lifecycles.test.js +109 -0
- package/injector/token.d.ts +2 -1
- package/injector/token.js +4 -1
- package/injector/type-info.d.ts +1 -5
- package/injector/types.d.ts +4 -10
- package/logger/tests/pretty-print.test.d.ts +1 -0
- package/logger/{formatters → tests}/pretty-print.test.js +1 -1
- package/logger/transports/console.d.ts +3 -2
- package/logger/transports/console.js +4 -3
- package/notification/tests/notification-api.test.js +8 -5
- package/notification/tests/notification-client.test.d.ts +1 -0
- package/notification/tests/{unit/notification-client.test.js → notification-client.test.js} +5 -5
- package/notification/tests/notification-flow.test.js +6 -5
- package/notification/tests/notification-sse.service.test.js +1 -1
- package/notification/tests/notification-type.service.test.js +1 -1
- package/object-storage/s3/s3.object-storage.js +3 -0
- package/object-storage/s3/tests/s3.object-storage.integration.test.js +1 -1
- package/orm/tests/repository-attributes.test.js +10 -17
- package/orm/tests/repository-cti-mapping.test.js +2 -2
- package/orm/tests/repository-cti-soft-delete.test.js +1 -1
- package/orm/tests/repository-cti.test.js +19 -33
- package/orm/tests/repository-extra-coverage.test.js +1 -1
- package/orm/tests/repository-search.test.js +5 -2
- package/orm/tests/transaction-safety.test.js +1 -1
- package/package.json +7 -9
- package/rate-limit/tests/postgres-rate-limiter.test.js +6 -16
- package/renderer/d2.d.ts +77 -0
- package/renderer/d2.js +68 -0
- package/renderer/graphviz.d.ts +47 -0
- package/renderer/graphviz.js +58 -0
- package/renderer/index.d.ts +4 -0
- package/renderer/index.js +4 -0
- package/renderer/typst.d.ts +57 -0
- package/renderer/typst.js +62 -0
- package/rpc/adapters/readable-stream.adapter.d.ts +3 -0
- package/rpc/adapters/readable-stream.adapter.js +5 -1
- package/rpc/rpc.js +28 -3
- package/rpc/tests/rpc.integration.test.js +3 -1
- package/schema/schemas/nullable.js +1 -1
- package/task-queue/task-queue.d.ts +2 -0
- package/task-queue/task-queue.js +6 -2
- package/task-queue/tests/complex.test.js +1 -1
- package/task-queue/tests/dependencies.test.js +3 -3
- package/task-queue/tests/extensive-dependencies.test.js +1 -1
- package/task-queue/tests/queue.test.js +1 -1
- package/task-queue/tests/worker.test.js +4 -7
- package/test5.js +52 -8
- package/{unit-test → testing}/integration-setup.d.ts +1 -0
- package/{unit-test → testing}/integration-setup.js +13 -0
- package/utils/base64.d.ts +7 -0
- package/utils/base64.js +10 -1
- package/utils/noop.d.ts +7 -1
- package/utils/noop.js +7 -1
- package/ai/ai-file.service.d.ts +0 -57
- package/ai/ai-file.service.js +0 -233
- package/ai/ai-session.d.ts +0 -38
- package/ai/ai-session.js +0 -50
- package/ai/ai.service.d.ts +0 -126
- package/ai/ai.service.js +0 -481
- package/ai/functions.d.ts +0 -9
- package/ai/functions.js +0 -38
- package/ai/module.d.ts +0 -26
- package/ai/module.js +0 -25
- package/ai/types.d.ts +0 -229
- package/ai/types.js +0 -33
- package/latex/index.d.ts +0 -1
- package/latex/index.js +0 -1
- package/typst/index.d.ts +0 -1
- package/typst/index.js +0 -1
- package/typst/render.d.ts +0 -23
- package/typst/render.js +0 -32
- /package/{logger/formatters/pretty-print.test.d.ts → ai/tests/instructions-formatter.test.d.ts} +0 -0
- /package/{notification/tests/unit/notification-client.test.d.ts → ai/tests/steering.test.d.ts} +0 -0
- /package/{latex/render.d.ts → renderer/latex.d.ts} +0 -0
- /package/{latex/render.js → renderer/latex.js} +0 -0
- /package/{unit-test → testing}/index.d.ts +0 -0
- /package/{unit-test → testing}/index.js +0 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type { DocumentCategoryView } from '../../../document-management/service-models/categories-and-types.view-model.js';
|
|
2
|
+
import type { DocumentPropertyValueView } from '../../../document-management/service-models/document-management.view-model.js';
|
|
3
|
+
import type { AiConfiguration, Document, DocumentManagementAiConfiguration, DocumentProperty, DocumentType, DocumentWorkflowStep } from '../../models/index.js';
|
|
4
|
+
import type { DocumentValidationExecutorContext } from '../validators/validator.js';
|
|
5
|
+
export type AiConfigurationResolveDataMap = {
|
|
6
|
+
[DocumentWorkflowStep.ContentExtraction]: {
|
|
7
|
+
document: Document;
|
|
8
|
+
};
|
|
9
|
+
[DocumentWorkflowStep.Classification]: {
|
|
10
|
+
document: Document;
|
|
11
|
+
categories: DocumentCategoryView[];
|
|
12
|
+
};
|
|
13
|
+
[DocumentWorkflowStep.DataExtraction]: {
|
|
14
|
+
document: Document;
|
|
15
|
+
type: DocumentType;
|
|
16
|
+
properties: DocumentProperty[] | undefined;
|
|
17
|
+
};
|
|
18
|
+
[DocumentWorkflowStep.Assignment]: {
|
|
19
|
+
document: Document;
|
|
20
|
+
properties: DocumentPropertyValueView[] | undefined;
|
|
21
|
+
collectionIds: string[];
|
|
22
|
+
};
|
|
23
|
+
[DocumentWorkflowStep.Validation]: DocumentValidationExecutorContext;
|
|
24
|
+
};
|
|
25
|
+
export declare abstract class DocumentManagementAiProviderService {
|
|
26
|
+
/**
|
|
27
|
+
* Resolves the global AI configuration (e.g. language, global defaults).
|
|
28
|
+
* @param tenantId The tenant ID.
|
|
29
|
+
* @returns The resolved global AI configuration, or undefined if no configuration is found.
|
|
30
|
+
*/
|
|
31
|
+
abstract getGlobalConfiguration(tenantId: string): DocumentManagementAiConfiguration | undefined | Promise<DocumentManagementAiConfiguration | undefined>;
|
|
32
|
+
/**
|
|
33
|
+
* Resolves the AI configuration for the content extraction step.
|
|
34
|
+
* @param tenantId The tenant ID.
|
|
35
|
+
* @param data The content extraction data.
|
|
36
|
+
* @returns The resolved AI configuration, or undefined if no specific configuration is found.
|
|
37
|
+
*/
|
|
38
|
+
abstract getContentExtractionConfiguration(tenantId: string, data: AiConfigurationResolveDataMap[typeof DocumentWorkflowStep.ContentExtraction]): AiConfiguration | undefined | Promise<AiConfiguration | undefined>;
|
|
39
|
+
/**
|
|
40
|
+
* Resolves the AI configuration for the classification step.
|
|
41
|
+
* @param tenantId The tenant ID.
|
|
42
|
+
* @returns The resolved AI configuration, or undefined if no specific configuration is found.
|
|
43
|
+
*/
|
|
44
|
+
abstract getClassificationConfiguration(tenantId: string, data: AiConfigurationResolveDataMap[typeof DocumentWorkflowStep.Classification]): AiConfiguration | undefined | Promise<AiConfiguration | undefined>;
|
|
45
|
+
/**
|
|
46
|
+
* Resolves the AI configuration for the data extraction step.
|
|
47
|
+
* @param tenantId The tenant ID.
|
|
48
|
+
* @param data The data extraction data.
|
|
49
|
+
* @returns The resolved AI configuration, or undefined if no specific configuration is found.
|
|
50
|
+
*/
|
|
51
|
+
abstract getDataExtractionConfiguration(tenantId: string, data: AiConfigurationResolveDataMap[typeof DocumentWorkflowStep.DataExtraction]): AiConfiguration | undefined | Promise<AiConfiguration | undefined>;
|
|
52
|
+
/**
|
|
53
|
+
* Resolves the AI configuration for the assignment step.
|
|
54
|
+
* @param tenantId The tenant ID.
|
|
55
|
+
* @param data The assignment data.
|
|
56
|
+
* @returns The resolved AI configuration, or undefined if no specific configuration is found.
|
|
57
|
+
*/
|
|
58
|
+
abstract getAssignmentConfiguration(tenantId: string, data: AiConfigurationResolveDataMap[typeof DocumentWorkflowStep.Assignment]): AiConfiguration | undefined | Promise<AiConfiguration | undefined>;
|
|
59
|
+
/**
|
|
60
|
+
* Resolves the AI configuration for a specific validation.
|
|
61
|
+
* @param tenantId The tenant ID.
|
|
62
|
+
* @param data The validation data.
|
|
63
|
+
* @returns The resolved AI configuration, or undefined if no specific configuration is found.
|
|
64
|
+
*/
|
|
65
|
+
abstract getValidationConfiguration(tenantId: string, data: AiConfigurationResolveDataMap[typeof DocumentWorkflowStep.Validation]): AiConfiguration | undefined | Promise<AiConfiguration | undefined>;
|
|
66
|
+
}
|
|
@@ -1,24 +1,61 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import {
|
|
3
|
-
type
|
|
1
|
+
import { type TstdlGenkitGenerationOptions } from '../../../ai/genkit/index.js';
|
|
2
|
+
import { type Instructions } from '../../../ai/prompts/index.js';
|
|
3
|
+
import { type SchemaTestable } from '../../../schema/index.js';
|
|
4
|
+
import type { ObjectLiteral } from '../../../types/types.js';
|
|
5
|
+
import type { ModelReference } from 'genkit';
|
|
6
|
+
import type { AiConfiguration, DocumentPropertyDataType, InstructionOverride } from '../../models/index.js';
|
|
7
|
+
import { Document, DocumentWorkflowStep } from '../../models/index.js';
|
|
8
|
+
import { type AiConfigurationResolveDataMap } from './document-management-ai-provider.service.js';
|
|
9
|
+
type DocumentDataExtractionPropertyResult = {
|
|
4
10
|
propertyId: string;
|
|
5
11
|
dataType: DocumentPropertyDataType;
|
|
6
12
|
value: string | number | boolean;
|
|
7
13
|
};
|
|
8
|
-
export type
|
|
14
|
+
export type DocumentDataExtractionResult = {
|
|
9
15
|
title: string;
|
|
10
16
|
subtitle: string | null;
|
|
11
17
|
date: number | null;
|
|
12
18
|
summary: string;
|
|
13
19
|
tags: string[];
|
|
14
|
-
properties:
|
|
20
|
+
properties: DocumentDataExtractionPropertyResult[];
|
|
21
|
+
};
|
|
22
|
+
declare const dataExtractionInstructionsRaw: {
|
|
23
|
+
'JSON Output': import("../../../ai/prompts/index.js").InstructionsList;
|
|
24
|
+
Role: string;
|
|
25
|
+
Task: string;
|
|
26
|
+
'Field Specific Instructions': {
|
|
27
|
+
Title: string;
|
|
28
|
+
Subtitle: string;
|
|
29
|
+
Summary: string;
|
|
30
|
+
Tags: string;
|
|
31
|
+
Date: string;
|
|
32
|
+
};
|
|
33
|
+
'Property Extraction': string[];
|
|
15
34
|
};
|
|
16
35
|
export declare class DocumentManagementAiService {
|
|
17
36
|
#private;
|
|
18
|
-
|
|
37
|
+
extractContent(tenantId: string, documentId: string): Promise<string>;
|
|
19
38
|
classifyDocumentType(tenantId: string, documentId: string): Promise<string>;
|
|
20
|
-
|
|
39
|
+
extractData(tenantId: string, documentId: string): Promise<DocumentDataExtractionResult>;
|
|
21
40
|
findSuitableCollectionsForDocument(document: Document, collectionIds: string[]): Promise<string[]>;
|
|
22
41
|
findSuitableRequestForDocument(document: Document, collectionIds: string[]): Promise<string | null>;
|
|
42
|
+
protected runAi<T, Step extends DocumentWorkflowStep>(tenantId: string, step: Step, stepData: AiConfigurationResolveDataMap[Step], options: {
|
|
43
|
+
targetId?: string;
|
|
44
|
+
defaultModel: ModelReference<any>;
|
|
45
|
+
system: Instructions;
|
|
46
|
+
user: Instructions;
|
|
47
|
+
data?: ObjectLiteral;
|
|
48
|
+
schema: SchemaTestable<T>;
|
|
49
|
+
document?: Document;
|
|
50
|
+
config?: TstdlGenkitGenerationOptions<T, any>['config'];
|
|
51
|
+
aiConfig?: AiConfiguration;
|
|
52
|
+
}): Promise<T>;
|
|
53
|
+
private resolveAiConfiguration;
|
|
54
|
+
private mergeExtractionConfigs;
|
|
55
|
+
private resolveContextKeys;
|
|
23
56
|
}
|
|
57
|
+
export declare function mergeFieldInstructions(instructionsKey: keyof typeof dataExtractionInstructionsRaw['Field Specific Instructions'], field: keyof NonNullable<AiConfiguration['extraction']>, aiConfig: AiConfiguration): string;
|
|
58
|
+
export declare function mergeInstructions(base: string, overrides: (InstructionOverride | undefined)[], options?: {
|
|
59
|
+
formatTemplate?: (format: string) => string;
|
|
60
|
+
}): string;
|
|
24
61
|
export {};
|