@flutchai/flutch-sdk 0.1.4 → 0.1.6
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/README.md +237 -17
- package/dist/index.cjs +6887 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +1560 -0
- package/dist/index.d.ts +1560 -27
- package/dist/index.js +6814 -47
- package/dist/index.js.map +1 -1
- package/package.json +67 -13
- package/dist/api/callback-token.guard.d.ts +0 -17
- package/dist/api/callback-token.guard.js +0 -80
- package/dist/api/callback-token.guard.js.map +0 -1
- package/dist/api/callback.controller.d.ts +0 -7
- package/dist/api/callback.controller.js +0 -44
- package/dist/api/callback.controller.js.map +0 -1
- package/dist/api/graph.controller.d.ts +0 -32
- package/dist/api/graph.controller.js +0 -187
- package/dist/api/graph.controller.js.map +0 -1
- package/dist/api/ui-dispatch.controller.d.ts +0 -34
- package/dist/api/ui-dispatch.controller.js +0 -178
- package/dist/api/ui-dispatch.controller.js.map +0 -1
- package/dist/bootstrap.d.ts +0 -4
- package/dist/bootstrap.js +0 -99
- package/dist/bootstrap.js.map +0 -1
- package/dist/callbacks/callback-acl.service.d.ts +0 -24
- package/dist/callbacks/callback-acl.service.js +0 -144
- package/dist/callbacks/callback-acl.service.js.map +0 -1
- package/dist/callbacks/callback-auditor.service.d.ts +0 -47
- package/dist/callbacks/callback-auditor.service.js +0 -286
- package/dist/callbacks/callback-auditor.service.js.map +0 -1
- package/dist/callbacks/callback-metrics.service.d.ts +0 -34
- package/dist/callbacks/callback-metrics.service.js +0 -216
- package/dist/callbacks/callback-metrics.service.js.map +0 -1
- package/dist/callbacks/callback-patch.service.d.ts +0 -13
- package/dist/callbacks/callback-patch.service.js +0 -51
- package/dist/callbacks/callback-patch.service.js.map +0 -1
- package/dist/callbacks/callback-rate-limiter.d.ts +0 -27
- package/dist/callbacks/callback-rate-limiter.js +0 -129
- package/dist/callbacks/callback-rate-limiter.js.map +0 -1
- package/dist/callbacks/callback-registry.d.ts +0 -7
- package/dist/callbacks/callback-registry.js +0 -29
- package/dist/callbacks/callback-registry.js.map +0 -1
- package/dist/callbacks/callback-store.d.ts +0 -19
- package/dist/callbacks/callback-store.js +0 -145
- package/dist/callbacks/callback-store.js.map +0 -1
- package/dist/callbacks/example.callback.d.ts +0 -2
- package/dist/callbacks/example.callback.js +0 -10
- package/dist/callbacks/example.callback.js.map +0 -1
- package/dist/callbacks/idempotency-manager.d.ts +0 -54
- package/dist/callbacks/idempotency-manager.js +0 -230
- package/dist/callbacks/idempotency-manager.js.map +0 -1
- package/dist/callbacks/index.d.ts +0 -13
- package/dist/callbacks/index.js +0 -30
- package/dist/callbacks/index.js.map +0 -1
- package/dist/callbacks/smart-callback.router.d.ts +0 -52
- package/dist/callbacks/smart-callback.router.js +0 -213
- package/dist/callbacks/smart-callback.router.js.map +0 -1
- package/dist/callbacks/telegram-patch.handler.d.ts +0 -6
- package/dist/callbacks/telegram-patch.handler.js +0 -24
- package/dist/callbacks/telegram-patch.handler.js.map +0 -1
- package/dist/callbacks/universal-callback.service.d.ts +0 -14
- package/dist/callbacks/universal-callback.service.js +0 -20
- package/dist/callbacks/universal-callback.service.js.map +0 -1
- package/dist/callbacks/web-patch.handler.d.ts +0 -6
- package/dist/callbacks/web-patch.handler.js +0 -24
- package/dist/callbacks/web-patch.handler.js.map +0 -1
- package/dist/core/abstract-graph.builder.d.ts +0 -128
- package/dist/core/abstract-graph.builder.js +0 -488
- package/dist/core/abstract-graph.builder.js.map +0 -1
- package/dist/core/builder-registry.service.d.ts +0 -6
- package/dist/core/builder-registry.service.js +0 -29
- package/dist/core/builder-registry.service.js.map +0 -1
- package/dist/core/universal-graph.module.d.ts +0 -10
- package/dist/core/universal-graph.module.js +0 -294
- package/dist/core/universal-graph.module.js.map +0 -1
- package/dist/decorators/callback.decorators.d.ts +0 -21
- package/dist/decorators/callback.decorators.js +0 -73
- package/dist/decorators/callback.decorators.js.map +0 -1
- package/dist/endpoint-registry/endpoint.decorators.d.ts +0 -35
- package/dist/endpoint-registry/endpoint.decorators.js +0 -115
- package/dist/endpoint-registry/endpoint.decorators.js.map +0 -1
- package/dist/endpoint-registry/endpoint.registry.d.ts +0 -44
- package/dist/endpoint-registry/endpoint.registry.js +0 -90
- package/dist/endpoint-registry/endpoint.registry.js.map +0 -1
- package/dist/endpoint-registry/index.d.ts +0 -3
- package/dist/endpoint-registry/index.js +0 -20
- package/dist/endpoint-registry/index.js.map +0 -1
- package/dist/endpoint-registry/ui-endpoints.discovery.d.ts +0 -11
- package/dist/endpoint-registry/ui-endpoints.discovery.js +0 -72
- package/dist/endpoint-registry/ui-endpoints.discovery.js.map +0 -1
- package/dist/engine/api-call-tracer.utils.d.ts +0 -8
- package/dist/engine/api-call-tracer.utils.js +0 -184
- package/dist/engine/api-call-tracer.utils.js.map +0 -1
- package/dist/engine/event-processor.utils.d.ts +0 -49
- package/dist/engine/event-processor.utils.js +0 -314
- package/dist/engine/event-processor.utils.js.map +0 -1
- package/dist/engine/graph-engine.factory.d.ts +0 -12
- package/dist/engine/graph-engine.factory.js +0 -43
- package/dist/engine/graph-engine.factory.js.map +0 -1
- package/dist/engine/langgraph-engine.d.ts +0 -14
- package/dist/engine/langgraph-engine.js +0 -261
- package/dist/engine/langgraph-engine.js.map +0 -1
- package/dist/interfaces/callback.interface.d.ts +0 -46
- package/dist/interfaces/callback.interface.js +0 -3
- package/dist/interfaces/callback.interface.js.map +0 -1
- package/dist/interfaces/graph-registry.interface.d.ts +0 -8
- package/dist/interfaces/graph-registry.interface.js +0 -3
- package/dist/interfaces/graph-registry.interface.js.map +0 -1
- package/dist/interfaces/graph-service.interface.d.ts +0 -43
- package/dist/interfaces/graph-service.interface.js +0 -9
- package/dist/interfaces/graph-service.interface.js.map +0 -1
- package/dist/interfaces/index.d.ts +0 -3
- package/dist/interfaces/index.js +0 -20
- package/dist/interfaces/index.js.map +0 -1
- package/dist/llm/index.d.ts +0 -6
- package/dist/llm/index.js +0 -23
- package/dist/llm/index.js.map +0 -1
- package/dist/llm/llm.initializer.d.ts +0 -14
- package/dist/llm/llm.initializer.js +0 -167
- package/dist/llm/llm.initializer.js.map +0 -1
- package/dist/llm/llm.interface.d.ts +0 -6
- package/dist/llm/llm.interface.js +0 -3
- package/dist/llm/llm.interface.js.map +0 -1
- package/dist/llm/llm.types.d.ts +0 -32
- package/dist/llm/llm.types.js +0 -3
- package/dist/llm/llm.types.js.map +0 -1
- package/dist/llm/model.initializer.d.ts +0 -45
- package/dist/llm/model.initializer.js +0 -630
- package/dist/llm/model.initializer.js.map +0 -1
- package/dist/llm/model.interface.d.ts +0 -38
- package/dist/llm/model.interface.js +0 -4
- package/dist/llm/model.interface.js.map +0 -1
- package/dist/llm/rerankers/voyageai-rerank.d.ts +0 -17
- package/dist/llm/rerankers/voyageai-rerank.js +0 -56
- package/dist/llm/rerankers/voyageai-rerank.js.map +0 -1
- package/dist/retriever/database-factory.d.ts +0 -15
- package/dist/retriever/database-factory.js +0 -83
- package/dist/retriever/database-factory.js.map +0 -1
- package/dist/retriever/index.d.ts +0 -2
- package/dist/retriever/index.js +0 -19
- package/dist/retriever/index.js.map +0 -1
- package/dist/retriever/retriever.client.d.ts +0 -28
- package/dist/retriever/retriever.client.js +0 -97
- package/dist/retriever/retriever.client.js.map +0 -1
- package/dist/retriever/retriever.service.d.ts +0 -25
- package/dist/retriever/retriever.service.js +0 -265
- package/dist/retriever/retriever.service.js.map +0 -1
- package/dist/retriever/types.d.ts +0 -22
- package/dist/retriever/types.js +0 -3
- package/dist/retriever/types.js.map +0 -1
- package/dist/schemas/graph-manifest.schema.d.ts +0 -134
- package/dist/schemas/graph-manifest.schema.js +0 -180
- package/dist/schemas/graph-manifest.schema.js.map +0 -1
- package/dist/schemas/index.d.ts +0 -1
- package/dist/schemas/index.js +0 -18
- package/dist/schemas/index.js.map +0 -1
- package/dist/shared-types/index.d.ts +0 -199
- package/dist/shared-types/index.js +0 -58
- package/dist/shared-types/index.js.map +0 -1
- package/dist/tools/index.d.ts +0 -3
- package/dist/tools/index.js +0 -20
- package/dist/tools/index.js.map +0 -1
- package/dist/tools/mcp-converter.d.ts +0 -15
- package/dist/tools/mcp-converter.js +0 -133
- package/dist/tools/mcp-converter.js.map +0 -1
- package/dist/tools/mcp-tool-filter.d.ts +0 -11
- package/dist/tools/mcp-tool-filter.js +0 -123
- package/dist/tools/mcp-tool-filter.js.map +0 -1
- package/dist/tools/mcp.interfaces.d.ts +0 -19
- package/dist/tools/mcp.interfaces.js +0 -3
- package/dist/tools/mcp.interfaces.js.map +0 -1
- package/dist/types/graph-types.d.ts +0 -82
- package/dist/types/graph-types.js +0 -6
- package/dist/types/graph-types.js.map +0 -1
- package/dist/utils/error.utils.d.ts +0 -18
- package/dist/utils/error.utils.js +0 -78
- package/dist/utils/error.utils.js.map +0 -1
- package/dist/utils/graph-type.utils.d.ts +0 -14
- package/dist/utils/graph-type.utils.js +0 -71
- package/dist/utils/graph-type.utils.js.map +0 -1
- package/dist/utils/index.d.ts +0 -1
- package/dist/utils/index.js +0 -18
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/usage-recorder.d.ts +0 -23
- package/dist/utils/usage-recorder.js +0 -29
- package/dist/utils/usage-recorder.js.map +0 -1
- package/dist/versioning/index.d.ts +0 -2
- package/dist/versioning/index.js +0 -19
- package/dist/versioning/index.js.map +0 -1
- package/dist/versioning/versioned-graph.service.d.ts +0 -16
- package/dist/versioning/versioned-graph.service.js +0 -132
- package/dist/versioning/versioned-graph.service.js.map +0 -1
- package/dist/versioning/versioning.types.d.ts +0 -21
- package/dist/versioning/versioning.types.js +0 -3
- package/dist/versioning/versioning.types.js.map +0 -1
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
export interface IGraphTracer {
|
|
2
|
-
log(data: any): void;
|
|
3
|
-
error(data: any): void;
|
|
4
|
-
}
|
|
5
|
-
export interface IUsageRecorder {
|
|
6
|
-
recordModelExecution(record: any): void;
|
|
7
|
-
}
|
|
8
|
-
import { BaseChannel, CompiledStateGraph, LangGraphRunnableConfig } from "@langchain/langgraph";
|
|
9
|
-
export type MappedChannels<T> = {
|
|
10
|
-
[K in keyof T]: BaseChannel<T[K], T[K]>;
|
|
11
|
-
};
|
|
12
|
-
declare global {
|
|
13
|
-
namespace GraphTypes {
|
|
14
|
-
interface Registry {
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
export type IGraphTypeRegistry = GraphTypes.Registry;
|
|
19
|
-
export interface IGenericGraphType {
|
|
20
|
-
Params: any;
|
|
21
|
-
State: any;
|
|
22
|
-
Config: any;
|
|
23
|
-
Input: any;
|
|
24
|
-
Definition: any;
|
|
25
|
-
ConfigDefinition: any;
|
|
26
|
-
InputDefinition: any;
|
|
27
|
-
StateValues: any;
|
|
28
|
-
ConfigValues: any;
|
|
29
|
-
InputValues: any;
|
|
30
|
-
OutputValues: any;
|
|
31
|
-
}
|
|
32
|
-
export type CompiledGraphFor<T extends string> = T extends keyof IGraphTypeRegistry ? CompiledStateGraph<IGraphTypeRegistry[T]["State"], IGraphTypeRegistry[T]["State"], string, IGraphTypeRegistry[T]["Input"], IGraphTypeRegistry[T]["State"], IGraphTypeRegistry[T]["Config"]> : CompiledStateGraph<any, any, string, any, any, any>;
|
|
33
|
-
export interface IGraphBuilder<T extends string> {
|
|
34
|
-
buildGraph(config?: any): Promise<CompiledGraphFor<T>>;
|
|
35
|
-
}
|
|
36
|
-
export interface IGraphCompiler {
|
|
37
|
-
getConfiguredGraph<T extends string>(type: T, thread?: any): Promise<CompiledGraphFor<T>>;
|
|
38
|
-
}
|
|
39
|
-
export type BaseGraphState = {};
|
|
40
|
-
export interface IGraphMetadata {
|
|
41
|
-
userId: string;
|
|
42
|
-
applicationId: string;
|
|
43
|
-
workflowType: string;
|
|
44
|
-
version: string;
|
|
45
|
-
}
|
|
46
|
-
export interface IGraphConfigurable<TGraphSettings = any> {
|
|
47
|
-
thread_id?: string;
|
|
48
|
-
metadata?: IGraphMetadata;
|
|
49
|
-
graphSettings: TGraphSettings;
|
|
50
|
-
}
|
|
51
|
-
export type IGraphRunnableConfig<TGraphSettings = any> = LangGraphRunnableConfig<IGraphConfigurable<TGraphSettings>> & {
|
|
52
|
-
configurable: IGraphConfigurable<TGraphSettings>;
|
|
53
|
-
};
|
|
54
|
-
export type StrictGraphRunnableConfig<TGraphSettings = any> = LangGraphRunnableConfig<TGraphSettings> & {
|
|
55
|
-
configurable: IGraphConfigurable<TGraphSettings>;
|
|
56
|
-
};
|
|
57
|
-
export interface LLMConfig {
|
|
58
|
-
modelId: string;
|
|
59
|
-
temperature?: number;
|
|
60
|
-
maxTokens?: number;
|
|
61
|
-
prompt?: string;
|
|
62
|
-
}
|
|
63
|
-
export interface IGraphTypeMetadata {
|
|
64
|
-
type: string;
|
|
65
|
-
metadata: {
|
|
66
|
-
title: string;
|
|
67
|
-
description: string;
|
|
68
|
-
detailedDescription: string;
|
|
69
|
-
icon?: string;
|
|
70
|
-
recommendations?: string[];
|
|
71
|
-
tags?: string[];
|
|
72
|
-
category?: string;
|
|
73
|
-
};
|
|
74
|
-
schema: {
|
|
75
|
-
properties: Record<string, any>;
|
|
76
|
-
required: string[];
|
|
77
|
-
};
|
|
78
|
-
defaultSettings: any;
|
|
79
|
-
formFields?: any[];
|
|
80
|
-
}
|
|
81
|
-
export type IGraphMetadataRegistry = Record<string, IGraphTypeMetadata>;
|
|
82
|
-
export { StreamChannel } from "../shared-types";
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.StreamChannel = void 0;
|
|
4
|
-
var shared_types_1 = require("../shared-types");
|
|
5
|
-
Object.defineProperty(exports, "StreamChannel", { enumerable: true, get: function () { return shared_types_1.StreamChannel; } });
|
|
6
|
-
//# sourceMappingURL=graph-types.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"graph-types.js","sourceRoot":"","sources":["../../src/types/graph-types.ts"],"names":[],"mappings":";;;AA6IA,gDAAgD;AAAvC,6GAAA,aAAa,OAAA"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export declare function isError(error: unknown): error is Error;
|
|
2
|
-
export declare function getErrorMessage(error: unknown): string;
|
|
3
|
-
export declare function getErrorStack(error: unknown): string | undefined;
|
|
4
|
-
export declare function formatError(error: unknown): {
|
|
5
|
-
message: string;
|
|
6
|
-
stack?: string;
|
|
7
|
-
code?: string;
|
|
8
|
-
statusCode?: number;
|
|
9
|
-
details?: any;
|
|
10
|
-
};
|
|
11
|
-
export declare function formatErrorForProduction(error: unknown): {
|
|
12
|
-
message: string;
|
|
13
|
-
code?: string;
|
|
14
|
-
statusCode?: number;
|
|
15
|
-
};
|
|
16
|
-
export declare function logError(logger: {
|
|
17
|
-
error: (message: string, ...args: any[]) => void;
|
|
18
|
-
}, error: unknown, context: string, additionalData?: Record<string, any>): void;
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isError = isError;
|
|
4
|
-
exports.getErrorMessage = getErrorMessage;
|
|
5
|
-
exports.getErrorStack = getErrorStack;
|
|
6
|
-
exports.formatError = formatError;
|
|
7
|
-
exports.formatErrorForProduction = formatErrorForProduction;
|
|
8
|
-
exports.logError = logError;
|
|
9
|
-
function isError(error) {
|
|
10
|
-
return error instanceof Error;
|
|
11
|
-
}
|
|
12
|
-
function getErrorMessage(error) {
|
|
13
|
-
if (error instanceof Error)
|
|
14
|
-
return error.message;
|
|
15
|
-
if (typeof error === "string")
|
|
16
|
-
return error;
|
|
17
|
-
if (typeof error === "object" && error !== null) {
|
|
18
|
-
if ("message" in error && typeof error.message === "string") {
|
|
19
|
-
return error.message;
|
|
20
|
-
}
|
|
21
|
-
return JSON.stringify(error);
|
|
22
|
-
}
|
|
23
|
-
return String(error);
|
|
24
|
-
}
|
|
25
|
-
function getErrorStack(error) {
|
|
26
|
-
if (error instanceof Error)
|
|
27
|
-
return error.stack;
|
|
28
|
-
if (typeof error === "object" && error !== null && "stack" in error) {
|
|
29
|
-
return String(error.stack);
|
|
30
|
-
}
|
|
31
|
-
return undefined;
|
|
32
|
-
}
|
|
33
|
-
function formatError(error) {
|
|
34
|
-
if (error instanceof Error) {
|
|
35
|
-
const formatted = {
|
|
36
|
-
message: error.message,
|
|
37
|
-
stack: error.stack,
|
|
38
|
-
};
|
|
39
|
-
if ("code" in error)
|
|
40
|
-
formatted.code = error.code;
|
|
41
|
-
if ("statusCode" in error)
|
|
42
|
-
formatted.statusCode = error.statusCode;
|
|
43
|
-
if ("response" in error)
|
|
44
|
-
formatted.details = error.response;
|
|
45
|
-
return formatted;
|
|
46
|
-
}
|
|
47
|
-
if (typeof error === "string") {
|
|
48
|
-
return { message: error };
|
|
49
|
-
}
|
|
50
|
-
if (typeof error === "object" && error !== null) {
|
|
51
|
-
const formatted = {
|
|
52
|
-
message: "message" in error && typeof error.message === "string"
|
|
53
|
-
? error.message
|
|
54
|
-
: JSON.stringify(error),
|
|
55
|
-
};
|
|
56
|
-
if ("stack" in error)
|
|
57
|
-
formatted.stack = String(error.stack);
|
|
58
|
-
if ("code" in error)
|
|
59
|
-
formatted.code = String(error.code);
|
|
60
|
-
if ("statusCode" in error && typeof error.statusCode === "number") {
|
|
61
|
-
formatted.statusCode = error.statusCode;
|
|
62
|
-
}
|
|
63
|
-
return formatted;
|
|
64
|
-
}
|
|
65
|
-
return { message: String(error) };
|
|
66
|
-
}
|
|
67
|
-
function formatErrorForProduction(error) {
|
|
68
|
-
const formatted = formatError(error);
|
|
69
|
-
delete formatted.stack;
|
|
70
|
-
delete formatted.details;
|
|
71
|
-
return formatted;
|
|
72
|
-
}
|
|
73
|
-
function logError(logger, error, context, additionalData) {
|
|
74
|
-
const errorInfo = formatError(error);
|
|
75
|
-
logger.error(context, process.env.ENV === "prod"
|
|
76
|
-
? Object.assign(Object.assign({}, formatErrorForProduction(error)), additionalData) : Object.assign(Object.assign({}, errorInfo), additionalData));
|
|
77
|
-
}
|
|
78
|
-
//# sourceMappingURL=error.utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"error.utils.js","sourceRoot":"","sources":["../../src/utils/error.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export declare class GraphTypeUtils {
|
|
2
|
-
static parse(fullType: string): {
|
|
3
|
-
companyId: string;
|
|
4
|
-
name: string;
|
|
5
|
-
version?: string;
|
|
6
|
-
};
|
|
7
|
-
static build(companyId: string, name: string, version?: string): string;
|
|
8
|
-
static normalize(graphType: string): string;
|
|
9
|
-
static getBaseType(graphType: string): string;
|
|
10
|
-
static getVersion(graphType: string): string | undefined;
|
|
11
|
-
static isValidVersion(version: string): boolean;
|
|
12
|
-
static isSystemGraph(graphType: string): boolean;
|
|
13
|
-
static compareVersions(a: string, b: string): number;
|
|
14
|
-
}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GraphTypeUtils = void 0;
|
|
4
|
-
class GraphTypeUtils {
|
|
5
|
-
static parse(fullType) {
|
|
6
|
-
if (fullType.includes("::")) {
|
|
7
|
-
const [baseType, version] = fullType.split("::");
|
|
8
|
-
const [companyId, name] = baseType.split(".");
|
|
9
|
-
return { companyId, name, version };
|
|
10
|
-
}
|
|
11
|
-
const parts = fullType.split(".");
|
|
12
|
-
if (parts.length === 1) {
|
|
13
|
-
return { companyId: "global", name: parts[0] };
|
|
14
|
-
}
|
|
15
|
-
return { companyId: parts[0], name: parts[1] };
|
|
16
|
-
}
|
|
17
|
-
static build(companyId, name, version) {
|
|
18
|
-
const base = `${companyId}.${name}`;
|
|
19
|
-
return version ? `${base}::${version}` : base;
|
|
20
|
-
}
|
|
21
|
-
static normalize(graphType) {
|
|
22
|
-
const { companyId, name, version } = this.parse(graphType);
|
|
23
|
-
return this.build(companyId, name, version);
|
|
24
|
-
}
|
|
25
|
-
static getBaseType(graphType) {
|
|
26
|
-
if (graphType.includes("::")) {
|
|
27
|
-
return graphType.split("::")[0];
|
|
28
|
-
}
|
|
29
|
-
const { companyId, name } = this.parse(graphType);
|
|
30
|
-
return `${companyId}.${name}`;
|
|
31
|
-
}
|
|
32
|
-
static getVersion(graphType) {
|
|
33
|
-
return graphType.includes("::") ? graphType.split("::")[1] : undefined;
|
|
34
|
-
}
|
|
35
|
-
static isValidVersion(version) {
|
|
36
|
-
const semverRegex = /^\d+\.\d+\.\d+(-[a-zA-Z0-9.-]+)?$/;
|
|
37
|
-
return semverRegex.test(version);
|
|
38
|
-
}
|
|
39
|
-
static isSystemGraph(graphType) {
|
|
40
|
-
const { companyId } = this.parse(graphType);
|
|
41
|
-
return companyId === "global";
|
|
42
|
-
}
|
|
43
|
-
static compareVersions(a, b) {
|
|
44
|
-
const parseVersion = (v) => {
|
|
45
|
-
const [main, prerelease] = v.split("-");
|
|
46
|
-
const [major, minor, patch] = main.split(".").map(Number);
|
|
47
|
-
return { major, minor, patch, prerelease };
|
|
48
|
-
};
|
|
49
|
-
const versionA = parseVersion(a);
|
|
50
|
-
const versionB = parseVersion(b);
|
|
51
|
-
if (versionA.major !== versionB.major) {
|
|
52
|
-
return versionA.major - versionB.major;
|
|
53
|
-
}
|
|
54
|
-
if (versionA.minor !== versionB.minor) {
|
|
55
|
-
return versionA.minor - versionB.minor;
|
|
56
|
-
}
|
|
57
|
-
if (versionA.patch !== versionB.patch) {
|
|
58
|
-
return versionA.patch - versionB.patch;
|
|
59
|
-
}
|
|
60
|
-
if (versionA.prerelease && !versionB.prerelease)
|
|
61
|
-
return -1;
|
|
62
|
-
if (!versionA.prerelease && versionB.prerelease)
|
|
63
|
-
return 1;
|
|
64
|
-
if (versionA.prerelease && versionB.prerelease) {
|
|
65
|
-
return versionA.prerelease.localeCompare(versionB.prerelease);
|
|
66
|
-
}
|
|
67
|
-
return 0;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
exports.GraphTypeUtils = GraphTypeUtils;
|
|
71
|
-
//# sourceMappingURL=graph-type.utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"graph-type.utils.js","sourceRoot":"","sources":["../../src/utils/graph-type.utils.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./graph-type.utils";
|
package/dist/utils/index.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./graph-type.utils"), exports);
|
|
18
|
-
//# sourceMappingURL=index.js.map
|
package/dist/utils/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,qDAAmC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export declare class UsageRecorder {
|
|
2
|
-
private modelCalls;
|
|
3
|
-
recordModelExecution(record: {
|
|
4
|
-
modelId: string;
|
|
5
|
-
promptTokens: number;
|
|
6
|
-
completionTokens: number;
|
|
7
|
-
totalTokens?: number;
|
|
8
|
-
[key: string]: any;
|
|
9
|
-
}): void;
|
|
10
|
-
getRecords(): {
|
|
11
|
-
modelCalls: Array<{
|
|
12
|
-
modelId: string;
|
|
13
|
-
promptTokens: number;
|
|
14
|
-
completionTokens: number;
|
|
15
|
-
totalTokens: number;
|
|
16
|
-
timestamp: string;
|
|
17
|
-
[key: string]: any;
|
|
18
|
-
}>;
|
|
19
|
-
};
|
|
20
|
-
clear(): void;
|
|
21
|
-
getTotalTokens(): number;
|
|
22
|
-
getTotalCalls(): number;
|
|
23
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.UsageRecorder = void 0;
|
|
4
|
-
class UsageRecorder {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.modelCalls = [];
|
|
7
|
-
}
|
|
8
|
-
recordModelExecution(record) {
|
|
9
|
-
var _a;
|
|
10
|
-
const totalTokens = (_a = record.totalTokens) !== null && _a !== void 0 ? _a : record.promptTokens + record.completionTokens;
|
|
11
|
-
this.modelCalls.push(Object.assign(Object.assign({}, record), { totalTokens, timestamp: new Date().toISOString() }));
|
|
12
|
-
}
|
|
13
|
-
getRecords() {
|
|
14
|
-
return {
|
|
15
|
-
modelCalls: [...this.modelCalls],
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
clear() {
|
|
19
|
-
this.modelCalls = [];
|
|
20
|
-
}
|
|
21
|
-
getTotalTokens() {
|
|
22
|
-
return this.modelCalls.reduce((sum, call) => sum + call.totalTokens, 0);
|
|
23
|
-
}
|
|
24
|
-
getTotalCalls() {
|
|
25
|
-
return this.modelCalls.length;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
exports.UsageRecorder = UsageRecorder;
|
|
29
|
-
//# sourceMappingURL=usage-recorder.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"usage-recorder.js","sourceRoot":"","sources":["../../src/utils/usage-recorder.ts"],"names":[],"mappings":";;;AAGA,MAAa,aAAa;IAA1B;QACU,eAAU,GAOb,EAAE,CAAC;IA4CV,CAAC;IA1CC,oBAAoB,CAAC,MAMpB;;QACC,MAAM,WAAW,GACf,MAAA,MAAM,CAAC,WAAW,mCAAI,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,gBAAgB,CAAC;QACtE,IAAI,CAAC,UAAU,CAAC,IAAI,iCACf,MAAM,KACT,WAAW,EACX,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IACnC,CAAC;IACL,CAAC;IAED,UAAU;QAUR,OAAO;YACL,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC;SACjC,CAAC;IACJ,CAAC;IAED,KAAK;QACH,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;IACvB,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IAChC,CAAC;CACF;AApDD,sCAoDC"}
|
package/dist/versioning/index.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./versioned-graph.service"), exports);
|
|
18
|
-
__exportStar(require("./versioning.types"), exports);
|
|
19
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/versioning/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,4DAA0C;AAC1C,qDAAmC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { ModuleRef } from "@nestjs/core";
|
|
2
|
-
import { AbstractGraphBuilder } from "../core/abstract-graph.builder";
|
|
3
|
-
import { VersioningConfig, VersionResolution, VersionResolutionOptions } from "./versioning.types";
|
|
4
|
-
export declare class VersionedGraphService {
|
|
5
|
-
private readonly logger;
|
|
6
|
-
private readonly versionConfigs;
|
|
7
|
-
constructor();
|
|
8
|
-
registerVersioning(config: VersioningConfig): void;
|
|
9
|
-
resolveVersion(graphType: string, options?: VersionResolutionOptions): Promise<VersionResolution>;
|
|
10
|
-
createVersionedBuilder(graphType: string, moduleRef?: ModuleRef, options?: VersionResolutionOptions): Promise<AbstractGraphBuilder<any>>;
|
|
11
|
-
getAvailableVersions(baseGraphType: string): string[];
|
|
12
|
-
isVersionSupported(graphType: string, options?: VersionResolutionOptions): boolean;
|
|
13
|
-
private findBestVersionRoute;
|
|
14
|
-
private isVersionCompatible;
|
|
15
|
-
getVersioningInfo(baseGraphType: string): VersioningConfig | null;
|
|
16
|
-
}
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
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;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
var VersionedGraphService_1;
|
|
12
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.VersionedGraphService = void 0;
|
|
14
|
-
const common_1 = require("@nestjs/common");
|
|
15
|
-
const graph_type_utils_1 = require("../utils/graph-type.utils");
|
|
16
|
-
let VersionedGraphService = VersionedGraphService_1 = class VersionedGraphService {
|
|
17
|
-
constructor() {
|
|
18
|
-
this.logger = new common_1.Logger(VersionedGraphService_1.name);
|
|
19
|
-
this.versionConfigs = new Map();
|
|
20
|
-
}
|
|
21
|
-
registerVersioning(config) {
|
|
22
|
-
this.versionConfigs.set(config.baseGraphType, config);
|
|
23
|
-
this.logger.log(`Registered versioning for ${config.baseGraphType} with ${config.versions.length} versions`);
|
|
24
|
-
}
|
|
25
|
-
async resolveVersion(graphType, options = {}) {
|
|
26
|
-
const parsed = graph_type_utils_1.GraphTypeUtils.parse(graphType);
|
|
27
|
-
const baseType = graph_type_utils_1.GraphTypeUtils.getBaseType(graphType);
|
|
28
|
-
const requestedVersion = graph_type_utils_1.GraphTypeUtils.getVersion(graphType) || options.requestedVersion;
|
|
29
|
-
const config = this.versionConfigs.get(baseType);
|
|
30
|
-
if (!config) {
|
|
31
|
-
throw new Error(`No versioning configuration found for ${baseType}`);
|
|
32
|
-
}
|
|
33
|
-
const route = this.findBestVersionRoute(config, requestedVersion, options);
|
|
34
|
-
if (!route) {
|
|
35
|
-
throw new Error(`No compatible version found for ${graphType} with options: ${JSON.stringify(options)}`);
|
|
36
|
-
}
|
|
37
|
-
const fullGraphType = graph_type_utils_1.GraphTypeUtils.build(parsed.companyId, parsed.name, route.version);
|
|
38
|
-
return {
|
|
39
|
-
version: route.version,
|
|
40
|
-
builderClass: route.builderClass,
|
|
41
|
-
fullGraphType,
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
async createVersionedBuilder(graphType, moduleRef, options = {}) {
|
|
45
|
-
const resolution = await this.resolveVersion(graphType, options);
|
|
46
|
-
try {
|
|
47
|
-
if (!moduleRef) {
|
|
48
|
-
throw new Error("ModuleRef is not available - falling back to direct instantiation");
|
|
49
|
-
}
|
|
50
|
-
const builder = await moduleRef.create(resolution.builderClass);
|
|
51
|
-
this.logger.debug(`Created versioned builder for ${resolution.fullGraphType}`);
|
|
52
|
-
return builder;
|
|
53
|
-
}
|
|
54
|
-
catch (error) {
|
|
55
|
-
this.logger.error(`Failed to create builder for ${resolution.fullGraphType}: ${error.message}`);
|
|
56
|
-
throw new Error(`Failed to create versioned builder: ${error.message}`);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
getAvailableVersions(baseGraphType) {
|
|
60
|
-
const config = this.versionConfigs.get(baseGraphType);
|
|
61
|
-
if (!config) {
|
|
62
|
-
return [];
|
|
63
|
-
}
|
|
64
|
-
return config.versions
|
|
65
|
-
.map(route => route.version)
|
|
66
|
-
.sort((a, b) => graph_type_utils_1.GraphTypeUtils.compareVersions(b, a));
|
|
67
|
-
}
|
|
68
|
-
isVersionSupported(graphType, options = {}) {
|
|
69
|
-
try {
|
|
70
|
-
const baseType = graph_type_utils_1.GraphTypeUtils.getBaseType(graphType);
|
|
71
|
-
const requestedVersion = graph_type_utils_1.GraphTypeUtils.getVersion(graphType);
|
|
72
|
-
const config = this.versionConfigs.get(baseType);
|
|
73
|
-
if (!config) {
|
|
74
|
-
return false;
|
|
75
|
-
}
|
|
76
|
-
const route = this.findBestVersionRoute(config, requestedVersion, options);
|
|
77
|
-
return route !== null;
|
|
78
|
-
}
|
|
79
|
-
catch (_a) {
|
|
80
|
-
return false;
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
findBestVersionRoute(config, requestedVersion, options = {}) {
|
|
84
|
-
const { strict = false } = options;
|
|
85
|
-
let candidates = [...config.versions];
|
|
86
|
-
if (requestedVersion) {
|
|
87
|
-
const exactMatch = candidates.find(route => route.version === requestedVersion);
|
|
88
|
-
if (exactMatch) {
|
|
89
|
-
return exactMatch;
|
|
90
|
-
}
|
|
91
|
-
if (strict) {
|
|
92
|
-
return null;
|
|
93
|
-
}
|
|
94
|
-
const compatibleVersions = candidates.filter(route => this.isVersionCompatible(requestedVersion, route.version));
|
|
95
|
-
if (compatibleVersions.length > 0) {
|
|
96
|
-
return compatibleVersions.sort((a, b) => graph_type_utils_1.GraphTypeUtils.compareVersions(b.version, a.version))[0];
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
const defaultRoute = candidates.find(route => route.isDefault);
|
|
100
|
-
if (defaultRoute) {
|
|
101
|
-
return defaultRoute;
|
|
102
|
-
}
|
|
103
|
-
if (config.defaultVersionStrategy === "latest" ||
|
|
104
|
-
!config.defaultVersionStrategy) {
|
|
105
|
-
const sortedVersions = candidates.sort((a, b) => graph_type_utils_1.GraphTypeUtils.compareVersions(b.version, a.version));
|
|
106
|
-
return sortedVersions[0] || null;
|
|
107
|
-
}
|
|
108
|
-
return null;
|
|
109
|
-
}
|
|
110
|
-
isVersionCompatible(requested, available) {
|
|
111
|
-
try {
|
|
112
|
-
const requestedParts = requested.split(".").map(Number);
|
|
113
|
-
const availableParts = available.split(".").map(Number);
|
|
114
|
-
if (requestedParts[0] !== availableParts[0]) {
|
|
115
|
-
return false;
|
|
116
|
-
}
|
|
117
|
-
return graph_type_utils_1.GraphTypeUtils.compareVersions(available, requested) >= 0;
|
|
118
|
-
}
|
|
119
|
-
catch (_a) {
|
|
120
|
-
return false;
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
getVersioningInfo(baseGraphType) {
|
|
124
|
-
return this.versionConfigs.get(baseGraphType) || null;
|
|
125
|
-
}
|
|
126
|
-
};
|
|
127
|
-
exports.VersionedGraphService = VersionedGraphService;
|
|
128
|
-
exports.VersionedGraphService = VersionedGraphService = VersionedGraphService_1 = __decorate([
|
|
129
|
-
(0, common_1.Injectable)(),
|
|
130
|
-
__metadata("design:paramtypes", [])
|
|
131
|
-
], VersionedGraphService);
|
|
132
|
-
//# sourceMappingURL=versioned-graph.service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"versioned-graph.service.js","sourceRoot":"","sources":["../../src/versioning/versioned-graph.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Type } from "@nestjs/common";
|
|
2
|
-
import { AbstractGraphBuilder } from "../core/abstract-graph.builder";
|
|
3
|
-
export interface VersionRoute {
|
|
4
|
-
version: string;
|
|
5
|
-
builderClass: Type<AbstractGraphBuilder<any>>;
|
|
6
|
-
isDefault?: boolean;
|
|
7
|
-
}
|
|
8
|
-
export interface VersioningConfig {
|
|
9
|
-
baseGraphType: string;
|
|
10
|
-
versions: VersionRoute[];
|
|
11
|
-
defaultVersionStrategy?: "latest" | "explicit";
|
|
12
|
-
}
|
|
13
|
-
export interface VersionResolution {
|
|
14
|
-
version: string;
|
|
15
|
-
builderClass: Type<AbstractGraphBuilder<any>>;
|
|
16
|
-
fullGraphType: string;
|
|
17
|
-
}
|
|
18
|
-
export interface VersionResolutionOptions {
|
|
19
|
-
requestedVersion?: string;
|
|
20
|
-
strict?: boolean;
|
|
21
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"versioning.types.js","sourceRoot":"","sources":["../../src/versioning/versioning.types.ts"],"names":[],"mappings":""}
|