@flutchai/flutch-sdk 0.1.0

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 (191) hide show
  1. package/README.md +287 -0
  2. package/dist/api/callback-token.guard.d.ts +17 -0
  3. package/dist/api/callback-token.guard.js +80 -0
  4. package/dist/api/callback-token.guard.js.map +1 -0
  5. package/dist/api/callback.controller.d.ts +7 -0
  6. package/dist/api/callback.controller.js +44 -0
  7. package/dist/api/callback.controller.js.map +1 -0
  8. package/dist/api/graph.controller.d.ts +32 -0
  9. package/dist/api/graph.controller.js +187 -0
  10. package/dist/api/graph.controller.js.map +1 -0
  11. package/dist/api/ui-dispatch.controller.d.ts +34 -0
  12. package/dist/api/ui-dispatch.controller.js +178 -0
  13. package/dist/api/ui-dispatch.controller.js.map +1 -0
  14. package/dist/bootstrap.d.ts +4 -0
  15. package/dist/bootstrap.js +177 -0
  16. package/dist/bootstrap.js.map +1 -0
  17. package/dist/callbacks/callback-acl.service.d.ts +24 -0
  18. package/dist/callbacks/callback-acl.service.js +144 -0
  19. package/dist/callbacks/callback-acl.service.js.map +1 -0
  20. package/dist/callbacks/callback-auditor.service.d.ts +47 -0
  21. package/dist/callbacks/callback-auditor.service.js +286 -0
  22. package/dist/callbacks/callback-auditor.service.js.map +1 -0
  23. package/dist/callbacks/callback-metrics.service.d.ts +34 -0
  24. package/dist/callbacks/callback-metrics.service.js +216 -0
  25. package/dist/callbacks/callback-metrics.service.js.map +1 -0
  26. package/dist/callbacks/callback-patch.service.d.ts +13 -0
  27. package/dist/callbacks/callback-patch.service.js +51 -0
  28. package/dist/callbacks/callback-patch.service.js.map +1 -0
  29. package/dist/callbacks/callback-rate-limiter.d.ts +27 -0
  30. package/dist/callbacks/callback-rate-limiter.js +129 -0
  31. package/dist/callbacks/callback-rate-limiter.js.map +1 -0
  32. package/dist/callbacks/callback-registry.d.ts +7 -0
  33. package/dist/callbacks/callback-registry.js +29 -0
  34. package/dist/callbacks/callback-registry.js.map +1 -0
  35. package/dist/callbacks/callback-store.d.ts +19 -0
  36. package/dist/callbacks/callback-store.js +145 -0
  37. package/dist/callbacks/callback-store.js.map +1 -0
  38. package/dist/callbacks/example.callback.d.ts +2 -0
  39. package/dist/callbacks/example.callback.js +10 -0
  40. package/dist/callbacks/example.callback.js.map +1 -0
  41. package/dist/callbacks/idempotency-manager.d.ts +54 -0
  42. package/dist/callbacks/idempotency-manager.js +230 -0
  43. package/dist/callbacks/idempotency-manager.js.map +1 -0
  44. package/dist/callbacks/index.d.ts +13 -0
  45. package/dist/callbacks/index.js +30 -0
  46. package/dist/callbacks/index.js.map +1 -0
  47. package/dist/callbacks/smart-callback.router.d.ts +52 -0
  48. package/dist/callbacks/smart-callback.router.js +213 -0
  49. package/dist/callbacks/smart-callback.router.js.map +1 -0
  50. package/dist/callbacks/telegram-patch.handler.d.ts +6 -0
  51. package/dist/callbacks/telegram-patch.handler.js +24 -0
  52. package/dist/callbacks/telegram-patch.handler.js.map +1 -0
  53. package/dist/callbacks/universal-callback.service.d.ts +14 -0
  54. package/dist/callbacks/universal-callback.service.js +20 -0
  55. package/dist/callbacks/universal-callback.service.js.map +1 -0
  56. package/dist/callbacks/web-patch.handler.d.ts +6 -0
  57. package/dist/callbacks/web-patch.handler.js +24 -0
  58. package/dist/callbacks/web-patch.handler.js.map +1 -0
  59. package/dist/core/abstract-graph.builder.d.ts +128 -0
  60. package/dist/core/abstract-graph.builder.js +488 -0
  61. package/dist/core/abstract-graph.builder.js.map +1 -0
  62. package/dist/core/builder-registry.service.d.ts +6 -0
  63. package/dist/core/builder-registry.service.js +29 -0
  64. package/dist/core/builder-registry.service.js.map +1 -0
  65. package/dist/core/universal-graph.module.d.ts +10 -0
  66. package/dist/core/universal-graph.module.js +294 -0
  67. package/dist/core/universal-graph.module.js.map +1 -0
  68. package/dist/decorators/callback.decorators.d.ts +21 -0
  69. package/dist/decorators/callback.decorators.js +73 -0
  70. package/dist/decorators/callback.decorators.js.map +1 -0
  71. package/dist/endpoint-registry/endpoint.decorators.d.ts +35 -0
  72. package/dist/endpoint-registry/endpoint.decorators.js +115 -0
  73. package/dist/endpoint-registry/endpoint.decorators.js.map +1 -0
  74. package/dist/endpoint-registry/endpoint.registry.d.ts +44 -0
  75. package/dist/endpoint-registry/endpoint.registry.js +90 -0
  76. package/dist/endpoint-registry/endpoint.registry.js.map +1 -0
  77. package/dist/endpoint-registry/index.d.ts +3 -0
  78. package/dist/endpoint-registry/index.js +20 -0
  79. package/dist/endpoint-registry/index.js.map +1 -0
  80. package/dist/endpoint-registry/ui-endpoints.discovery.d.ts +11 -0
  81. package/dist/endpoint-registry/ui-endpoints.discovery.js +72 -0
  82. package/dist/endpoint-registry/ui-endpoints.discovery.js.map +1 -0
  83. package/dist/engine/api-call-tracer.utils.d.ts +8 -0
  84. package/dist/engine/api-call-tracer.utils.js +184 -0
  85. package/dist/engine/api-call-tracer.utils.js.map +1 -0
  86. package/dist/engine/event-processor.utils.d.ts +49 -0
  87. package/dist/engine/event-processor.utils.js +314 -0
  88. package/dist/engine/event-processor.utils.js.map +1 -0
  89. package/dist/engine/graph-engine.factory.d.ts +12 -0
  90. package/dist/engine/graph-engine.factory.js +43 -0
  91. package/dist/engine/graph-engine.factory.js.map +1 -0
  92. package/dist/engine/langgraph-engine.d.ts +14 -0
  93. package/dist/engine/langgraph-engine.js +261 -0
  94. package/dist/engine/langgraph-engine.js.map +1 -0
  95. package/dist/index.d.ts +27 -0
  96. package/dist/index.js +48 -0
  97. package/dist/index.js.map +1 -0
  98. package/dist/interfaces/callback.interface.d.ts +46 -0
  99. package/dist/interfaces/callback.interface.js +3 -0
  100. package/dist/interfaces/callback.interface.js.map +1 -0
  101. package/dist/interfaces/graph-registry.interface.d.ts +8 -0
  102. package/dist/interfaces/graph-registry.interface.js +3 -0
  103. package/dist/interfaces/graph-registry.interface.js.map +1 -0
  104. package/dist/interfaces/graph-service.interface.d.ts +43 -0
  105. package/dist/interfaces/graph-service.interface.js +9 -0
  106. package/dist/interfaces/graph-service.interface.js.map +1 -0
  107. package/dist/interfaces/index.d.ts +3 -0
  108. package/dist/interfaces/index.js +20 -0
  109. package/dist/interfaces/index.js.map +1 -0
  110. package/dist/llm/index.d.ts +6 -0
  111. package/dist/llm/index.js +23 -0
  112. package/dist/llm/index.js.map +1 -0
  113. package/dist/llm/llm.initializer.d.ts +14 -0
  114. package/dist/llm/llm.initializer.js +167 -0
  115. package/dist/llm/llm.initializer.js.map +1 -0
  116. package/dist/llm/llm.interface.d.ts +6 -0
  117. package/dist/llm/llm.interface.js +3 -0
  118. package/dist/llm/llm.interface.js.map +1 -0
  119. package/dist/llm/llm.types.d.ts +32 -0
  120. package/dist/llm/llm.types.js +3 -0
  121. package/dist/llm/llm.types.js.map +1 -0
  122. package/dist/llm/model.initializer.d.ts +45 -0
  123. package/dist/llm/model.initializer.js +630 -0
  124. package/dist/llm/model.initializer.js.map +1 -0
  125. package/dist/llm/model.interface.d.ts +38 -0
  126. package/dist/llm/model.interface.js +4 -0
  127. package/dist/llm/model.interface.js.map +1 -0
  128. package/dist/llm/rerankers/voyageai-rerank.d.ts +17 -0
  129. package/dist/llm/rerankers/voyageai-rerank.js +56 -0
  130. package/dist/llm/rerankers/voyageai-rerank.js.map +1 -0
  131. package/dist/retriever/database-factory.d.ts +15 -0
  132. package/dist/retriever/database-factory.js +83 -0
  133. package/dist/retriever/database-factory.js.map +1 -0
  134. package/dist/retriever/index.d.ts +2 -0
  135. package/dist/retriever/index.js +19 -0
  136. package/dist/retriever/index.js.map +1 -0
  137. package/dist/retriever/retriever.client.d.ts +28 -0
  138. package/dist/retriever/retriever.client.js +97 -0
  139. package/dist/retriever/retriever.client.js.map +1 -0
  140. package/dist/retriever/retriever.service.d.ts +25 -0
  141. package/dist/retriever/retriever.service.js +265 -0
  142. package/dist/retriever/retriever.service.js.map +1 -0
  143. package/dist/retriever/types.d.ts +22 -0
  144. package/dist/retriever/types.js +3 -0
  145. package/dist/retriever/types.js.map +1 -0
  146. package/dist/schemas/graph-manifest.schema.d.ts +134 -0
  147. package/dist/schemas/graph-manifest.schema.js +180 -0
  148. package/dist/schemas/graph-manifest.schema.js.map +1 -0
  149. package/dist/schemas/index.d.ts +1 -0
  150. package/dist/schemas/index.js +18 -0
  151. package/dist/schemas/index.js.map +1 -0
  152. package/dist/shared-types/index.d.ts +199 -0
  153. package/dist/shared-types/index.js +58 -0
  154. package/dist/shared-types/index.js.map +1 -0
  155. package/dist/tools/index.d.ts +3 -0
  156. package/dist/tools/index.js +20 -0
  157. package/dist/tools/index.js.map +1 -0
  158. package/dist/tools/mcp-converter.d.ts +15 -0
  159. package/dist/tools/mcp-converter.js +133 -0
  160. package/dist/tools/mcp-converter.js.map +1 -0
  161. package/dist/tools/mcp-tool-filter.d.ts +11 -0
  162. package/dist/tools/mcp-tool-filter.js +123 -0
  163. package/dist/tools/mcp-tool-filter.js.map +1 -0
  164. package/dist/tools/mcp.interfaces.d.ts +19 -0
  165. package/dist/tools/mcp.interfaces.js +3 -0
  166. package/dist/tools/mcp.interfaces.js.map +1 -0
  167. package/dist/types/graph-types.d.ts +82 -0
  168. package/dist/types/graph-types.js +6 -0
  169. package/dist/types/graph-types.js.map +1 -0
  170. package/dist/utils/error.utils.d.ts +18 -0
  171. package/dist/utils/error.utils.js +78 -0
  172. package/dist/utils/error.utils.js.map +1 -0
  173. package/dist/utils/graph-type.utils.d.ts +14 -0
  174. package/dist/utils/graph-type.utils.js +71 -0
  175. package/dist/utils/graph-type.utils.js.map +1 -0
  176. package/dist/utils/index.d.ts +1 -0
  177. package/dist/utils/index.js +18 -0
  178. package/dist/utils/index.js.map +1 -0
  179. package/dist/utils/usage-recorder.d.ts +23 -0
  180. package/dist/utils/usage-recorder.js +29 -0
  181. package/dist/utils/usage-recorder.js.map +1 -0
  182. package/dist/versioning/index.d.ts +2 -0
  183. package/dist/versioning/index.js +19 -0
  184. package/dist/versioning/index.js.map +1 -0
  185. package/dist/versioning/versioned-graph.service.d.ts +16 -0
  186. package/dist/versioning/versioned-graph.service.js +132 -0
  187. package/dist/versioning/versioned-graph.service.js.map +1 -0
  188. package/dist/versioning/versioning.types.d.ts +21 -0
  189. package/dist/versioning/versioning.types.js +3 -0
  190. package/dist/versioning/versioning.types.js.map +1 -0
  191. package/package.json +70 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-graph.builder.js","sourceRoot":"","sources":["../../src/core/abstract-graph.builder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { AbstractGraphBuilder } from "./abstract-graph.builder";
2
+ export declare class BuilderRegistryService {
3
+ private builders;
4
+ registerBuilder(builder: AbstractGraphBuilder<string>): void;
5
+ getBuilders(): AbstractGraphBuilder<string>[];
6
+ }
@@ -0,0 +1,29 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.BuilderRegistryService = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ let BuilderRegistryService = class BuilderRegistryService {
12
+ constructor() {
13
+ this.builders = [];
14
+ }
15
+ registerBuilder(builder) {
16
+ const existingBuilder = this.builders.find(b => b.graphType === builder.graphType);
17
+ if (!existingBuilder) {
18
+ this.builders.push(builder);
19
+ }
20
+ }
21
+ getBuilders() {
22
+ return this.builders;
23
+ }
24
+ };
25
+ exports.BuilderRegistryService = BuilderRegistryService;
26
+ exports.BuilderRegistryService = BuilderRegistryService = __decorate([
27
+ (0, common_1.Injectable)()
28
+ ], BuilderRegistryService);
29
+ //# sourceMappingURL=builder-registry.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder-registry.service.js","sourceRoot":"","sources":["../../src/core/builder-registry.service.ts"],"names":[],"mappings":";;;;;;;;;AACA,2CAA4C;AAIrC,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAA5B;QACG,aAAQ,GAAmC,EAAE,CAAC;IAiBxD,CAAC;IAfC,eAAe,CAAC,OAAqC;QAEnD,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CACxC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,CACvC,CAAC;QAEF,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC;IAEH,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;CACF,CAAA;AAlBY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,mBAAU,GAAE;GACA,sBAAsB,CAkBlC"}
@@ -0,0 +1,10 @@
1
+ import { DynamicModule } from "@nestjs/common";
2
+ import { GraphEngineType } from "../engine/graph-engine.factory";
3
+ import { VersioningConfig } from "../versioning";
4
+ export interface UniversalGraphModuleOptions {
5
+ engineType?: GraphEngineType;
6
+ versioning?: VersioningConfig[];
7
+ }
8
+ export declare class UniversalGraphModule {
9
+ static forRoot(options: UniversalGraphModuleOptions): DynamicModule;
10
+ }
@@ -0,0 +1,294 @@
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 UniversalGraphModule_1;
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.UniversalGraphModule = void 0;
11
+ const common_1 = require("@nestjs/common");
12
+ const core_1 = require("@nestjs/core");
13
+ const config_1 = require("@nestjs/config");
14
+ const abstract_graph_builder_1 = require("./abstract-graph.builder");
15
+ const graph_engine_factory_1 = require("../engine/graph-engine.factory");
16
+ const builder_registry_service_1 = require("./builder-registry.service");
17
+ const graph_controller_1 = require("../api/graph.controller");
18
+ const versioning_1 = require("../versioning");
19
+ const event_processor_utils_1 = require("../engine/event-processor.utils");
20
+ const prom_client_1 = require("prom-client");
21
+ const core_2 = require("@nestjs/core");
22
+ const langgraph_engine_1 = require("../engine/langgraph-engine");
23
+ const callbacks_1 = require("../callbacks");
24
+ const callback_controller_1 = require("../api/callback.controller");
25
+ const ui_dispatch_controller_1 = require("../api/ui-dispatch.controller");
26
+ const callback_token_guard_1 = require("../api/callback-token.guard");
27
+ const endpoint_registry_1 = require("../endpoint-registry");
28
+ const ui_endpoints_discovery_1 = require("../endpoint-registry/ui-endpoints.discovery");
29
+ function createMetaBuilder(config, versionedGraphService, moduleRef, callbackRegistry, endpointRegistry) {
30
+ const className = `${config.baseGraphType.replace(/\./g, "")}VersionRouter`;
31
+ class VersionRouter extends abstract_graph_builder_1.AbstractGraphBuilder {
32
+ constructor() {
33
+ super();
34
+ this.version = "router";
35
+ this.callbackRegistry = callbackRegistry;
36
+ this.endpointRegistry = endpointRegistry;
37
+ }
38
+ get graphType() {
39
+ return config.baseGraphType;
40
+ }
41
+ async buildGraph(payload) {
42
+ var _a;
43
+ const graphType = (_a = payload.graphSettings) === null || _a === void 0 ? void 0 : _a.graphType;
44
+ if (!graphType) {
45
+ throw new Error("GraphType is required in payload.graphSettings");
46
+ }
47
+ const resolution = await versionedGraphService.resolveVersion(graphType, {
48
+ strict: false,
49
+ });
50
+ try {
51
+ const versionedBuilder = moduleRef.get(resolution.builderClass, {
52
+ strict: false,
53
+ });
54
+ return versionedBuilder.buildGraph(payload);
55
+ }
56
+ catch (error) {
57
+ const versionedBuilder = await moduleRef.create(resolution.builderClass);
58
+ return versionedBuilder.buildGraph(payload);
59
+ }
60
+ }
61
+ async prepareConfig(payload) {
62
+ var _a;
63
+ const graphType = (_a = payload.graphSettings) === null || _a === void 0 ? void 0 : _a.graphType;
64
+ if (!graphType) {
65
+ throw new Error("GraphType is required in payload.graphSettings");
66
+ }
67
+ const resolution = await versionedGraphService.resolveVersion(graphType, {
68
+ strict: false,
69
+ });
70
+ let versionedBuilder;
71
+ try {
72
+ versionedBuilder = moduleRef.get(resolution.builderClass, {
73
+ strict: false,
74
+ });
75
+ }
76
+ catch (error) {
77
+ versionedBuilder = await moduleRef.create(resolution.builderClass);
78
+ }
79
+ const updatedPayload = Object.assign(Object.assign({}, payload), { graphSettings: Object.assign(Object.assign({}, payload.graphSettings), { graphType: resolution.fullGraphType }) });
80
+ return versionedBuilder.prepareConfig(updatedPayload);
81
+ }
82
+ }
83
+ Object.defineProperty(VersionRouter, "name", { value: className });
84
+ return VersionRouter;
85
+ }
86
+ let UniversalGraphModule = UniversalGraphModule_1 = class UniversalGraphModule {
87
+ static forRoot(options) {
88
+ const providers = [
89
+ event_processor_utils_1.EventProcessor,
90
+ langgraph_engine_1.LangGraphEngine,
91
+ builder_registry_service_1.BuilderRegistryService,
92
+ graph_engine_factory_1.GraphEngineFactory,
93
+ versioning_1.VersionedGraphService,
94
+ abstract_graph_builder_1.UniversalGraphService,
95
+ {
96
+ provide: "REDIS_CLIENT",
97
+ useFactory: () => {
98
+ const Redis = require("ioredis");
99
+ return new Redis(process.env.REDIS_URL || "redis://redis:6379");
100
+ },
101
+ },
102
+ {
103
+ provide: "PROMETHEUS_REGISTRY",
104
+ useValue: new prom_client_1.Registry(),
105
+ },
106
+ {
107
+ provide: callbacks_1.CallbackStore,
108
+ useFactory: (redis) => new callbacks_1.CallbackStore(redis),
109
+ inject: ["REDIS_CLIENT"],
110
+ },
111
+ {
112
+ provide: callbacks_1.CallbackRegistry,
113
+ useClass: callbacks_1.CallbackRegistry,
114
+ },
115
+ {
116
+ provide: endpoint_registry_1.EndpointRegistry,
117
+ useClass: endpoint_registry_1.EndpointRegistry,
118
+ },
119
+ {
120
+ provide: ui_endpoints_discovery_1.UIEndpointsDiscoveryService,
121
+ useClass: ui_endpoints_discovery_1.UIEndpointsDiscoveryService,
122
+ },
123
+ {
124
+ provide: callbacks_1.CallbackACL,
125
+ useClass: callbacks_1.CallbackACL,
126
+ },
127
+ {
128
+ provide: callbacks_1.CallbackAuditor,
129
+ useClass: callbacks_1.CallbackAuditor,
130
+ },
131
+ {
132
+ provide: callbacks_1.CallbackMetrics,
133
+ useFactory: (registry) => new callbacks_1.CallbackMetrics(registry),
134
+ inject: ["PROMETHEUS_REGISTRY"],
135
+ },
136
+ {
137
+ provide: callbacks_1.CallbackRateLimiter,
138
+ useFactory: (redis) => new callbacks_1.CallbackRateLimiter(redis),
139
+ inject: ["REDIS_CLIENT"],
140
+ },
141
+ {
142
+ provide: callbacks_1.IdempotencyManager,
143
+ useFactory: (redis) => new callbacks_1.IdempotencyManager(redis),
144
+ inject: ["REDIS_CLIENT"],
145
+ },
146
+ {
147
+ provide: callbacks_1.TelegramPatchHandler,
148
+ useClass: callbacks_1.TelegramPatchHandler,
149
+ },
150
+ {
151
+ provide: callbacks_1.WebPatchHandler,
152
+ useClass: callbacks_1.WebPatchHandler,
153
+ },
154
+ {
155
+ provide: callbacks_1.CallbackPatchService,
156
+ useFactory: (telegram, web) => new callbacks_1.CallbackPatchService(telegram, web),
157
+ inject: [callbacks_1.TelegramPatchHandler, callbacks_1.WebPatchHandler],
158
+ },
159
+ {
160
+ provide: callbacks_1.SmartCallbackRouter,
161
+ useFactory: (registry, store, acl, auditor, metrics, rateLimiter, idempotencyManager, patchService) => new callbacks_1.SmartCallbackRouter(registry, store, acl, auditor, metrics, rateLimiter, idempotencyManager, patchService),
162
+ inject: [
163
+ callbacks_1.CallbackRegistry,
164
+ callbacks_1.CallbackStore,
165
+ callbacks_1.CallbackACL,
166
+ callbacks_1.CallbackAuditor,
167
+ callbacks_1.CallbackMetrics,
168
+ callbacks_1.CallbackRateLimiter,
169
+ callbacks_1.IdempotencyManager,
170
+ callbacks_1.CallbackPatchService,
171
+ ],
172
+ },
173
+ {
174
+ provide: callbacks_1.UniversalCallbackService,
175
+ useFactory: (store, router) => new callbacks_1.UniversalCallbackService(store, router),
176
+ inject: [callbacks_1.CallbackStore, callbacks_1.SmartCallbackRouter],
177
+ },
178
+ {
179
+ provide: callback_token_guard_1.CallbackTokenGuard,
180
+ useFactory: (store, acl) => new callback_token_guard_1.CallbackTokenGuard(store, acl),
181
+ inject: [callbacks_1.CallbackStore, callbacks_1.CallbackACL],
182
+ },
183
+ {
184
+ provide: "CALLBACK_EXAMPLE_REGISTRATION",
185
+ useFactory: (registry) => {
186
+ (0, callbacks_1.registerFinanceExampleCallback)(registry);
187
+ },
188
+ inject: [callbacks_1.CallbackRegistry],
189
+ },
190
+ {
191
+ provide: "UI_ENDPOINTS_DISCOVERY",
192
+ useFactory: async (discoveryService) => {
193
+ await discoveryService.discoverUIEndpoints();
194
+ return true;
195
+ },
196
+ inject: [ui_endpoints_discovery_1.UIEndpointsDiscoveryService],
197
+ },
198
+ {
199
+ provide: "GRAPH_ENGINE",
200
+ useFactory: (factory) => {
201
+ return factory.getEngine(options.engineType || graph_engine_factory_1.GraphEngineType.LANGGRAPH);
202
+ },
203
+ inject: [graph_engine_factory_1.GraphEngineFactory],
204
+ },
205
+ {
206
+ provide: "GRAPH_BUILDERS",
207
+ useFactory: (registry) => {
208
+ return registry.getBuilders();
209
+ },
210
+ inject: [builder_registry_service_1.BuilderRegistryService],
211
+ },
212
+ {
213
+ provide: "GRAPH_SERVICE",
214
+ useExisting: abstract_graph_builder_1.UniversalGraphService,
215
+ },
216
+ {
217
+ provide: "VERSIONING_CONFIGS",
218
+ useValue: options.versioning || [],
219
+ },
220
+ {
221
+ provide: "VERSIONING_INITIALIZER",
222
+ useFactory: (builderRegistry, versionedGraphService, configs, callbackRegistry, moduleRef, endpointRegistry) => {
223
+ console.log("🔧 VERSIONING_INITIALIZER running with configs:", (configs === null || configs === void 0 ? void 0 : configs.length) || 0);
224
+ console.log("🔧 ModuleRef available:", !!moduleRef);
225
+ console.log("🔧 BuilderRegistry available:", !!builderRegistry);
226
+ configs.forEach(config => versionedGraphService.registerVersioning(config));
227
+ configs.forEach(config => {
228
+ if (moduleRef) {
229
+ const VersionRouterClass = createMetaBuilder(config, versionedGraphService, moduleRef, callbackRegistry, endpointRegistry);
230
+ const versionRouter = new VersionRouterClass();
231
+ console.log("🔧 Registering VersionRouter for", config.baseGraphType);
232
+ builderRegistry.registerBuilder(versionRouter);
233
+ }
234
+ else {
235
+ class SimpleVersionRouter extends abstract_graph_builder_1.AbstractGraphBuilder {
236
+ constructor() {
237
+ super();
238
+ this.version = "router";
239
+ this.callbackRegistry = callbackRegistry;
240
+ this.endpointRegistry = endpointRegistry;
241
+ }
242
+ get graphType() {
243
+ return config.baseGraphType;
244
+ }
245
+ async buildGraph(payload) {
246
+ throw new Error("ModuleRef not available - cannot build graph");
247
+ }
248
+ async prepareConfig(payload) {
249
+ throw new Error("ModuleRef not available - cannot prepare config");
250
+ }
251
+ }
252
+ const simpleRouter = new SimpleVersionRouter();
253
+ console.log("🔧 Registering SimpleRouter for", config.baseGraphType, "(no ModuleRef)");
254
+ builderRegistry.registerBuilder(simpleRouter);
255
+ }
256
+ });
257
+ return true;
258
+ },
259
+ inject: [
260
+ builder_registry_service_1.BuilderRegistryService,
261
+ versioning_1.VersionedGraphService,
262
+ "VERSIONING_CONFIGS",
263
+ callbacks_1.CallbackRegistry,
264
+ core_1.ModuleRef,
265
+ endpoint_registry_1.EndpointRegistry,
266
+ ],
267
+ },
268
+ ];
269
+ return {
270
+ global: true,
271
+ module: UniversalGraphModule_1,
272
+ imports: [config_1.ConfigModule.forRoot({ isGlobal: true }), core_2.DiscoveryModule],
273
+ controllers: [graph_controller_1.GraphController, callback_controller_1.CallbackController, ui_dispatch_controller_1.UIDispatchController],
274
+ providers,
275
+ exports: [
276
+ "GRAPH_SERVICE",
277
+ "GRAPH_ENGINE",
278
+ abstract_graph_builder_1.UniversalGraphService,
279
+ builder_registry_service_1.BuilderRegistryService,
280
+ versioning_1.VersionedGraphService,
281
+ callbacks_1.UniversalCallbackService,
282
+ callbacks_1.CallbackStore,
283
+ callbacks_1.CallbackRegistry,
284
+ endpoint_registry_1.EndpointRegistry,
285
+ ui_endpoints_discovery_1.UIEndpointsDiscoveryService,
286
+ ],
287
+ };
288
+ }
289
+ };
290
+ exports.UniversalGraphModule = UniversalGraphModule;
291
+ exports.UniversalGraphModule = UniversalGraphModule = UniversalGraphModule_1 = __decorate([
292
+ (0, common_1.Module)({})
293
+ ], UniversalGraphModule);
294
+ //# sourceMappingURL=universal-graph.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"universal-graph.module.js","sourceRoot":"","sources":["../../src/core/universal-graph.module.ts"],"names":[],"mappings":";;;;;;;;;;AACA,2CAMwB;AACxB,uCAAyC;AACzC,2CAA8C;AAC9C,qEAGkC;AAClC,yEAGwC;AACxC,yEAAoE;AACpE,8DAA0D;AAE1D,8CAAwE;AAGxE,2EAAiE;AAEjE,6CAAuC;AACvC,uCAAgE;AAChE,iEAA6D;AAC7D,4CAcsB;AACtB,oEAAgE;AAChE,0EAAqE;AACrE,sEAAiE;AACjE,4DAAwD;AACxD,wFAA0F;AAe1F,SAAS,iBAAiB,CACxB,MAAwB,EACxB,qBAA4C,EAC5C,SAAoB,EACpB,gBAAkC,EAClC,gBAAkC;IAGlC,MAAM,SAAS,GAAG,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC;IAE5E,MAAM,aAAc,SAAQ,6CAAyB;QAInD;YACE,KAAK,EAAE,CAAC;YAJD,YAAO,GAAG,QAAe,CAAC;YAMhC,IAAY,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;YACjD,IAAY,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACpD,CAAC;QAGD,IAAI,SAAS;YACX,OAAO,MAAM,CAAC,aAAa,CAAC;QAC9B,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,OAA6B;;YAC5C,MAAM,SAAS,GAAG,MAAA,OAAO,CAAC,aAAa,0CAAE,SAAS,CAAC;YACnD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACpE,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,cAAc,CAAC,SAAS,EAAE;gBACvE,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;YAGH,IAAI,CAAC;gBACH,MAAM,gBAAgB,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,EAAE;oBAC9D,MAAM,EAAE,KAAK;iBACd,CAAC,CAAC;gBACH,OAAO,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC9C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAEf,MAAM,gBAAgB,GAAG,MAAM,SAAS,CAAC,MAAM,CAC7C,UAAU,CAAC,YAAY,CACxB,CAAC;gBACF,OAAO,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QAED,KAAK,CAAC,aAAa,CAAC,OAA6B;;YAC/C,MAAM,SAAS,GAAG,MAAA,OAAO,CAAC,aAAa,0CAAE,SAAS,CAAC;YACnD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACpE,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,cAAc,CAAC,SAAS,EAAE;gBACvE,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;YAGH,IAAI,gBAAgB,CAAC;YACrB,IAAI,CAAC;gBACH,gBAAgB,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,EAAE;oBACxD,MAAM,EAAE,KAAK;iBACd,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,gBAAgB,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YACrE,CAAC;YAED,MAAM,cAAc,mCACf,OAAO,KACV,aAAa,kCACR,OAAO,CAAC,aAAa,KACxB,SAAS,EAAE,UAAU,CAAC,aAAa,MAEtC,CAAC;YAEF,OAAO,gBAAgB,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;QACxD,CAAC;KACF;IAGD,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAEnE,OAAO,aAAa,CAAC;AACvB,CAAC;AAGM,IAAM,oBAAoB,4BAA1B,MAAM,oBAAoB;IAC/B,MAAM,CAAC,OAAO,CAAC,OAAoC;QACjD,MAAM,SAAS,GAAe;YAE5B,sCAAc;YAEd,kCAAe;YACf,iDAAsB;YACtB,yCAAkB;YAClB,kCAAqB;YACrB,8CAAqB;YAErB;gBACE,OAAO,EAAE,cAAc;gBACvB,UAAU,EAAE,GAAG,EAAE;oBACf,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;oBACjC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,oBAAoB,CAAC,CAAC;gBAClE,CAAC;aACF;YACD;gBACE,OAAO,EAAE,qBAAqB;gBAC9B,QAAQ,EAAE,IAAI,sBAAQ,EAAE;aACzB;YACD;gBACE,OAAO,EAAE,yBAAa;gBACtB,UAAU,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,IAAI,yBAAa,CAAC,KAAK,CAAC;gBACpD,MAAM,EAAE,CAAC,cAAc,CAAC;aACzB;YACD;gBACE,OAAO,EAAE,4BAAgB;gBACzB,QAAQ,EAAE,4BAAgB;aAC3B;YACD;gBACE,OAAO,EAAE,oCAAgB;gBACzB,QAAQ,EAAE,oCAAgB;aAC3B;YACD;gBACE,OAAO,EAAE,oDAA2B;gBACpC,QAAQ,EAAE,oDAA2B;aACtC;YACD;gBACE,OAAO,EAAE,uBAAW;gBACpB,QAAQ,EAAE,uBAAW;aACtB;YACD;gBACE,OAAO,EAAE,2BAAe;gBACxB,QAAQ,EAAE,2BAAe;aAC1B;YACD;gBACE,OAAO,EAAE,2BAAe;gBACxB,UAAU,EAAE,CAAC,QAAkB,EAAE,EAAE,CAAC,IAAI,2BAAe,CAAC,QAAQ,CAAC;gBACjE,MAAM,EAAE,CAAC,qBAAqB,CAAC;aAChC;YACD;gBACE,OAAO,EAAE,+BAAmB;gBAC5B,UAAU,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,IAAI,+BAAmB,CAAC,KAAK,CAAC;gBAC1D,MAAM,EAAE,CAAC,cAAc,CAAC;aACzB;YACD;gBACE,OAAO,EAAE,8BAAkB;gBAC3B,UAAU,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,IAAI,8BAAkB,CAAC,KAAK,CAAC;gBACzD,MAAM,EAAE,CAAC,cAAc,CAAC;aACzB;YACD;gBACE,OAAO,EAAE,gCAAoB;gBAC7B,QAAQ,EAAE,gCAAoB;aAC/B;YACD;gBACE,OAAO,EAAE,2BAAe;gBACxB,QAAQ,EAAE,2BAAe;aAC1B;YACD;gBACE,OAAO,EAAE,gCAAoB;gBAC7B,UAAU,EAAE,CAAC,QAA8B,EAAE,GAAoB,EAAE,EAAE,CACnE,IAAI,gCAAoB,CAAC,QAAQ,EAAE,GAAG,CAAC;gBACzC,MAAM,EAAE,CAAC,gCAAoB,EAAE,2BAAe,CAAC;aAChD;YACD;gBACE,OAAO,EAAE,+BAAmB;gBAC5B,UAAU,EAAE,CACV,QAA0B,EAC1B,KAAoB,EACpB,GAAgB,EAChB,OAAwB,EACxB,OAAwB,EACxB,WAAgC,EAChC,kBAAsC,EACtC,YAAkC,EAClC,EAAE,CACF,IAAI,+BAAmB,CACrB,QAAQ,EACR,KAAK,EACL,GAAG,EACH,OAAO,EACP,OAAO,EACP,WAAW,EACX,kBAAkB,EAClB,YAAY,CACb;gBACH,MAAM,EAAE;oBACN,4BAAgB;oBAChB,yBAAa;oBACb,uBAAW;oBACX,2BAAe;oBACf,2BAAe;oBACf,+BAAmB;oBACnB,8BAAkB;oBAClB,gCAAoB;iBACrB;aACF;YACD;gBACE,OAAO,EAAE,oCAAwB;gBACjC,UAAU,EAAE,CAAC,KAAoB,EAAE,MAA2B,EAAE,EAAE,CAChE,IAAI,oCAAwB,CAAC,KAAK,EAAE,MAAM,CAAC;gBAC7C,MAAM,EAAE,CAAC,yBAAa,EAAE,+BAAmB,CAAC;aAC7C;YACD;gBACE,OAAO,EAAE,yCAAkB;gBAC3B,UAAU,EAAE,CAAC,KAAoB,EAAE,GAAgB,EAAE,EAAE,CACrD,IAAI,yCAAkB,CAAC,KAAK,EAAE,GAAG,CAAC;gBACpC,MAAM,EAAE,CAAC,yBAAa,EAAE,uBAAW,CAAC;aACrC;YACD;gBACE,OAAO,EAAE,+BAA+B;gBACxC,UAAU,EAAE,CAAC,QAA0B,EAAE,EAAE;oBACzC,IAAA,0CAA8B,EAAC,QAAQ,CAAC,CAAC;gBAC3C,CAAC;gBACD,MAAM,EAAE,CAAC,4BAAgB,CAAC;aAC3B;YACD;gBACE,OAAO,EAAE,wBAAwB;gBACjC,UAAU,EAAE,KAAK,EAAE,gBAA6C,EAAE,EAAE;oBAElE,MAAM,gBAAgB,CAAC,mBAAmB,EAAE,CAAC;oBAC7C,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,MAAM,EAAE,CAAC,oDAA2B,CAAC;aACtC;YACD;gBACE,OAAO,EAAE,cAAc;gBACvB,UAAU,EAAE,CAAC,OAA2B,EAAE,EAAE;oBAC1C,OAAO,OAAO,CAAC,SAAS,CACtB,OAAO,CAAC,UAAU,IAAI,sCAAe,CAAC,SAAS,CAChD,CAAC;gBACJ,CAAC;gBACD,MAAM,EAAE,CAAC,yCAAkB,CAAC;aAC7B;YACD;gBACE,OAAO,EAAE,gBAAgB;gBACzB,UAAU,EAAE,CAAC,QAAgC,EAAE,EAAE;oBAC/C,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC;gBAChC,CAAC;gBACD,MAAM,EAAE,CAAC,iDAAsB,CAAC;aACjC;YACD;gBACE,OAAO,EAAE,eAAe;gBACxB,WAAW,EAAE,8CAAqB;aACnC;YACD;gBACE,OAAO,EAAE,oBAAoB;gBAC7B,QAAQ,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE;aACnC;YAED;gBACE,OAAO,EAAE,wBAAwB;gBACjC,UAAU,EAAE,CACV,eAAuC,EACvC,qBAA4C,EAC5C,OAA2B,EAC3B,gBAAkC,EAClC,SAAoB,EACpB,gBAAkC,EAClC,EAAE;oBACF,OAAO,CAAC,GAAG,CACT,iDAAiD,EACjD,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,KAAI,CAAC,CACrB,CAAC;oBACF,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;oBACpD,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC;oBAGhE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CACvB,qBAAqB,CAAC,kBAAkB,CAAC,MAAM,CAAC,CACjD,CAAC;oBAGF,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;wBACvB,IAAI,SAAS,EAAE,CAAC;4BACd,MAAM,kBAAkB,GAAG,iBAAiB,CAC1C,MAAM,EACN,qBAAqB,EACrB,SAAS,EACT,gBAAgB,EAChB,gBAAgB,CACjB,CAAC;4BACF,MAAM,aAAa,GAAG,IAAI,kBAAkB,EAAE,CAAC;4BAC/C,OAAO,CAAC,GAAG,CACT,kCAAkC,EAClC,MAAM,CAAC,aAAa,CACrB,CAAC;4BACF,eAAe,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;wBACjD,CAAC;6BAAM,CAAC;4BAEN,MAAM,mBAAoB,SAAQ,6CAAyB;gCAGzD;oCACE,KAAK,EAAE,CAAC;oCAHD,YAAO,GAAG,QAAe,CAAC;oCAKhC,IAAY,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;oCACjD,IAAY,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;gCACpD,CAAC;gCAED,IAAI,SAAS;oCACX,OAAO,MAAM,CAAC,aAAa,CAAC;gCAC9B,CAAC;gCAED,KAAK,CAAC,UAAU,CAAC,OAAY;oCAC3B,MAAM,IAAI,KAAK,CACb,8CAA8C,CAC/C,CAAC;gCACJ,CAAC;gCAED,KAAK,CAAC,aAAa,CAAC,OAAY;oCAC9B,MAAM,IAAI,KAAK,CACb,iDAAiD,CAClD,CAAC;gCACJ,CAAC;6BACF;4BAED,MAAM,YAAY,GAAG,IAAI,mBAAmB,EAAE,CAAC;4BAC/C,OAAO,CAAC,GAAG,CACT,iCAAiC,EACjC,MAAM,CAAC,aAAa,EACpB,gBAAgB,CACjB,CAAC;4BACF,eAAe,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;wBAChD,CAAC;oBACH,CAAC,CAAC,CAAC;oBAEH,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,MAAM,EAAE;oBACN,iDAAsB;oBACtB,kCAAqB;oBACrB,oBAAoB;oBACpB,4BAAgB;oBAChB,gBAAS;oBACT,oCAAgB;iBACjB;aACF;SACF,CAAC;QAEF,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,sBAAoB;YAC5B,OAAO,EAAE,CAAC,qBAAY,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,sBAAe,CAAC;YACpE,WAAW,EAAE,CAAC,kCAAe,EAAE,wCAAkB,EAAE,6CAAoB,CAAC;YACxE,SAAS;YACT,OAAO,EAAE;gBACP,eAAe;gBACf,cAAc;gBACd,8CAAqB;gBACrB,iDAAsB;gBACtB,kCAAqB;gBACrB,oCAAwB;gBACxB,yBAAa;gBACb,4BAAgB;gBAChB,oCAAgB;gBAChB,oDAA2B;aAC5B;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAjRY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,oBAAoB,CAiRhC"}
@@ -0,0 +1,21 @@
1
+ import "reflect-metadata";
2
+ import { CallbackContext, CallbackResult } from "../interfaces/callback.interface";
3
+ export interface CallbackMetadata {
4
+ handler: string;
5
+ method: string | symbol;
6
+ target: any;
7
+ }
8
+ export interface ExtendedCallbackContext extends CallbackContext {
9
+ builder?: any;
10
+ }
11
+ export type { CallbackHandler } from "../interfaces/callback.interface";
12
+ export type ExtendedCallbackHandler = (context: ExtendedCallbackContext) => Promise<CallbackResult>;
13
+ export declare function Callback(handler: string): (target: any, propertyKey: string | symbol, descriptor: PropertyDescriptor) => PropertyDescriptor;
14
+ export declare function WithCallbacks<T extends {
15
+ new (...args: any[]): {};
16
+ }>(CallbacksClass: T): <U extends {
17
+ new (...args: any[]): {};
18
+ }>(BuilderClass: U) => any;
19
+ export declare function getCallbackMetadata(target: any): CallbackMetadata[];
20
+ export declare function hasCallbacks(target: any): boolean;
21
+ export declare function findCallbackMethod(target: any, handler: string): string | symbol | null;
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Callback = Callback;
4
+ exports.WithCallbacks = WithCallbacks;
5
+ exports.getCallbackMetadata = getCallbackMetadata;
6
+ exports.hasCallbacks = hasCallbacks;
7
+ exports.findCallbackMethod = findCallbackMethod;
8
+ require("reflect-metadata");
9
+ const CALLBACK_METADATA_KEY = Symbol("callbacks");
10
+ const CALLBACK_CLASS_METADATA_KEY = Symbol("callback_class");
11
+ function Callback(handler) {
12
+ return function (target, propertyKey, descriptor) {
13
+ const existingCallbacks = Reflect.getMetadata(CALLBACK_METADATA_KEY, target.constructor) || [];
14
+ const callbackMetadata = {
15
+ handler,
16
+ method: propertyKey,
17
+ target: target.constructor,
18
+ };
19
+ existingCallbacks.push(callbackMetadata);
20
+ Reflect.defineMetadata(CALLBACK_METADATA_KEY, existingCallbacks, target.constructor);
21
+ if (descriptor.value && typeof descriptor.value === "function") {
22
+ const originalMethod = descriptor.value;
23
+ descriptor.value = function (context) {
24
+ return originalMethod.call(this, context);
25
+ };
26
+ }
27
+ return descriptor;
28
+ };
29
+ }
30
+ function WithCallbacks(CallbacksClass) {
31
+ return function (BuilderClass) {
32
+ const callbackMetadata = Reflect.getMetadata(CALLBACK_METADATA_KEY, CallbacksClass) || [];
33
+ class WithCallbacksBuilder extends BuilderClass {
34
+ constructor(...args) {
35
+ super(...args);
36
+ const callbacksInstance = new CallbacksClass();
37
+ callbackMetadata.forEach(({ method, handler }) => {
38
+ const callbackMethod = callbacksInstance[method];
39
+ if (typeof callbackMethod === "function") {
40
+ this[method] = async (context) => {
41
+ const enhancedContext = Object.assign(Object.assign({}, context), { builder: this });
42
+ return callbackMethod.call(callbacksInstance, enhancedContext);
43
+ };
44
+ }
45
+ });
46
+ }
47
+ }
48
+ Reflect.defineMetadata(CALLBACK_METADATA_KEY, callbackMetadata, WithCallbacksBuilder);
49
+ Reflect.defineMetadata(CALLBACK_CLASS_METADATA_KEY, true, WithCallbacksBuilder);
50
+ Object.setPrototypeOf(WithCallbacksBuilder, BuilderClass);
51
+ Object.getOwnPropertyNames(BuilderClass).forEach(name => {
52
+ if (name !== "length" && name !== "prototype" && name !== "name") {
53
+ const descriptor = Object.getOwnPropertyDescriptor(BuilderClass, name);
54
+ if (descriptor) {
55
+ Object.defineProperty(WithCallbacksBuilder, name, descriptor);
56
+ }
57
+ }
58
+ });
59
+ return WithCallbacksBuilder;
60
+ };
61
+ }
62
+ function getCallbackMetadata(target) {
63
+ return Reflect.getMetadata(CALLBACK_METADATA_KEY, target) || [];
64
+ }
65
+ function hasCallbacks(target) {
66
+ return Reflect.getMetadata(CALLBACK_CLASS_METADATA_KEY, target) === true;
67
+ }
68
+ function findCallbackMethod(target, handler) {
69
+ const callbacks = getCallbackMetadata(target);
70
+ const callback = callbacks.find(cb => cb.handler === handler);
71
+ return callback ? callback.method : null;
72
+ }
73
+ //# sourceMappingURL=callback.decorators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callback.decorators.js","sourceRoot":"","sources":["../../src/decorators/callback.decorators.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import "reflect-metadata";
2
+ import { JSONSchema7 } from "json-schema";
3
+ import { EndpointDescriptor } from "./endpoint.registry";
4
+ export declare const ENDPOINT_METADATA_KEY = "graph:endpoints";
5
+ export interface EndpointMetadata {
6
+ name: string;
7
+ method: "GET" | "POST";
8
+ methodName: string;
9
+ schema?: JSONSchema7;
10
+ }
11
+ export interface EndpointOptions {
12
+ method: "GET" | "POST";
13
+ schema?: JSONSchema7;
14
+ }
15
+ export declare function Endpoint(name: string, options: EndpointOptions): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => void;
16
+ export declare function WithEndpoints(target: any): void;
17
+ export declare function getEndpointMetadata(constructor: any): EndpointMetadata[];
18
+ export declare function createEndpointDescriptors(instance: any, metadata: EndpointMetadata[]): EndpointDescriptor[];
19
+ export declare function findEndpointMethod(constructor: any, endpointName: string): string | undefined;
20
+ export interface UIEndpointClassMetadata {
21
+ graphType: string;
22
+ }
23
+ export interface UIEndpointMethodMetadata {
24
+ endpointName: string;
25
+ method: "GET" | "POST";
26
+ methodName: string | symbol;
27
+ }
28
+ export declare function WithUIEndpoints(graphType: string): <T extends {
29
+ new (...args: any[]): {};
30
+ }>(constructor: T) => T;
31
+ export declare function UIEndpoint(endpointName: string, method?: "GET" | "POST"): (target: any, propertyKey: string | symbol, descriptor: PropertyDescriptor) => PropertyDescriptor;
32
+ export declare function getUIEndpointClassMetadata(constructor: any): UIEndpointClassMetadata | null;
33
+ export declare function getUIEndpointMethodsMetadata(constructor: any): UIEndpointMethodMetadata[];
34
+ export declare function hasUIEndpoints(constructor: any): boolean;
35
+ export declare function registerUIEndpointsFromClass(endpointRegistry: any, EndpointClass: any, instance?: any): void;