@carlonicora/nestjs-neo4jsonapi 1.62.6 → 1.63.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.
- package/dist/agents/agents.modules.d.ts.map +1 -1
- package/dist/agents/agents.modules.js +3 -0
- package/dist/agents/agents.modules.js.map +1 -1
- package/dist/agents/chatbot/chatbot.module.d.ts +3 -0
- package/dist/agents/chatbot/chatbot.module.d.ts.map +1 -0
- package/dist/agents/chatbot/chatbot.module.js +65 -0
- package/dist/agents/chatbot/chatbot.module.js.map +1 -0
- package/dist/agents/chatbot/interfaces/chatbot.response.interface.d.ts +25 -0
- package/dist/agents/chatbot/interfaces/chatbot.response.interface.d.ts.map +1 -0
- package/dist/agents/chatbot/interfaces/chatbot.response.interface.js +3 -0
- package/dist/agents/chatbot/interfaces/chatbot.response.interface.js.map +1 -0
- package/dist/agents/chatbot/interfaces/graph.catalog.interface.d.ts +50 -0
- package/dist/agents/chatbot/interfaces/graph.catalog.interface.d.ts.map +1 -0
- package/dist/agents/chatbot/interfaces/graph.catalog.interface.js +3 -0
- package/dist/agents/chatbot/interfaces/graph.catalog.interface.js.map +1 -0
- package/dist/agents/chatbot/prompts/chatbot.system.prompt.d.ts +3 -0
- package/dist/agents/chatbot/prompts/chatbot.system.prompt.d.ts.map +1 -0
- package/dist/agents/chatbot/prompts/chatbot.system.prompt.js +60 -0
- package/dist/agents/chatbot/prompts/chatbot.system.prompt.js.map +1 -0
- package/dist/agents/chatbot/repositories/user-modules.repository.d.ts +28 -0
- package/dist/agents/chatbot/repositories/user-modules.repository.d.ts.map +1 -0
- package/dist/agents/chatbot/repositories/user-modules.repository.js +76 -0
- package/dist/agents/chatbot/repositories/user-modules.repository.js.map +1 -0
- package/dist/agents/chatbot/services/chatbot.index.manager.d.ts +17 -0
- package/dist/agents/chatbot/services/chatbot.index.manager.d.ts.map +1 -0
- package/dist/agents/chatbot/services/chatbot.index.manager.js +84 -0
- package/dist/agents/chatbot/services/chatbot.index.manager.js.map +1 -0
- package/dist/agents/chatbot/services/chatbot.search.service.d.ts +46 -0
- package/dist/agents/chatbot/services/chatbot.search.service.d.ts.map +1 -0
- package/dist/agents/chatbot/services/chatbot.search.service.js +148 -0
- package/dist/agents/chatbot/services/chatbot.search.service.js.map +1 -0
- package/dist/agents/chatbot/services/chatbot.service.d.ts +36 -0
- package/dist/agents/chatbot/services/chatbot.service.d.ts.map +1 -0
- package/dist/agents/chatbot/services/chatbot.service.js +220 -0
- package/dist/agents/chatbot/services/chatbot.service.js.map +1 -0
- package/dist/agents/chatbot/services/descriptor.source.d.ts +18 -0
- package/dist/agents/chatbot/services/descriptor.source.d.ts.map +1 -0
- package/dist/agents/chatbot/services/descriptor.source.js +41 -0
- package/dist/agents/chatbot/services/descriptor.source.js.map +1 -0
- package/dist/agents/chatbot/services/field-formatting.d.ts +18 -0
- package/dist/agents/chatbot/services/field-formatting.d.ts.map +1 -0
- package/dist/agents/chatbot/services/field-formatting.js +43 -0
- package/dist/agents/chatbot/services/field-formatting.js.map +1 -0
- package/dist/agents/chatbot/services/graph.catalog.service.d.ts +60 -0
- package/dist/agents/chatbot/services/graph.catalog.service.d.ts.map +1 -0
- package/dist/agents/chatbot/services/graph.catalog.service.js +217 -0
- package/dist/agents/chatbot/services/graph.catalog.service.js.map +1 -0
- package/dist/agents/chatbot/services/humanize-tool.d.ts +9 -0
- package/dist/agents/chatbot/services/humanize-tool.d.ts.map +1 -0
- package/dist/agents/chatbot/services/humanize-tool.js +35 -0
- package/dist/agents/chatbot/services/humanize-tool.js.map +1 -0
- package/dist/agents/chatbot/tools/describe-entity.tool.d.ts +14 -0
- package/dist/agents/chatbot/tools/describe-entity.tool.d.ts.map +1 -0
- package/dist/agents/chatbot/tools/describe-entity.tool.js +63 -0
- package/dist/agents/chatbot/tools/describe-entity.tool.js.map +1 -0
- package/dist/agents/chatbot/tools/read-entity.tool.d.ts +16 -0
- package/dist/agents/chatbot/tools/read-entity.tool.d.ts.map +1 -0
- package/dist/agents/chatbot/tools/read-entity.tool.js +102 -0
- package/dist/agents/chatbot/tools/read-entity.tool.js.map +1 -0
- package/dist/agents/chatbot/tools/resolve-entity.tool.d.ts +16 -0
- package/dist/agents/chatbot/tools/resolve-entity.tool.d.ts.map +1 -0
- package/dist/agents/chatbot/tools/resolve-entity.tool.js +48 -0
- package/dist/agents/chatbot/tools/resolve-entity.tool.js.map +1 -0
- package/dist/agents/chatbot/tools/search-entities.tool.d.ts +20 -0
- package/dist/agents/chatbot/tools/search-entities.tool.d.ts.map +1 -0
- package/dist/agents/chatbot/tools/search-entities.tool.js +122 -0
- package/dist/agents/chatbot/tools/search-entities.tool.js.map +1 -0
- package/dist/agents/chatbot/tools/tool.factory.d.ts +29 -0
- package/dist/agents/chatbot/tools/tool.factory.d.ts.map +1 -0
- package/dist/agents/chatbot/tools/tool.factory.js +72 -0
- package/dist/agents/chatbot/tools/tool.factory.js.map +1 -0
- package/dist/agents/chatbot/tools/traverse.tool.d.ts +58 -0
- package/dist/agents/chatbot/tools/traverse.tool.d.ts.map +1 -0
- package/dist/agents/chatbot/tools/traverse.tool.js +212 -0
- package/dist/agents/chatbot/tools/traverse.tool.js.map +1 -0
- package/dist/agents/index.d.ts +9 -0
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +17 -1
- package/dist/agents/index.js.map +1 -1
- package/dist/common/helpers/define-entity.d.ts.map +1 -1
- package/dist/common/helpers/define-entity.js +5 -1
- package/dist/common/helpers/define-entity.js.map +1 -1
- package/dist/common/interfaces/datamodel.interface.d.ts +10 -0
- package/dist/common/interfaces/datamodel.interface.d.ts.map +1 -1
- package/dist/common/interfaces/datamodel.interface.js.map +1 -1
- package/dist/common/interfaces/entity.descriptor.interface.d.ts +1 -1
- package/dist/common/interfaces/entity.descriptor.interface.d.ts.map +1 -1
- package/dist/common/interfaces/entity.descriptor.interface.js.map +1 -1
- package/dist/common/interfaces/entity.schema.interface.d.ts +48 -0
- package/dist/common/interfaces/entity.schema.interface.d.ts.map +1 -1
- package/dist/common/registries/entity.service.registry.d.ts +13 -0
- package/dist/common/registries/entity.service.registry.d.ts.map +1 -0
- package/dist/common/registries/entity.service.registry.js +52 -0
- package/dist/common/registries/entity.service.registry.js.map +1 -0
- package/dist/common/registries/index.d.ts +1 -0
- package/dist/common/registries/index.d.ts.map +1 -1
- package/dist/common/registries/index.js +1 -0
- package/dist/common/registries/index.js.map +1 -1
- package/dist/core/core.module.d.ts.map +1 -1
- package/dist/core/core.module.js +6 -2
- package/dist/core/core.module.js.map +1 -1
- package/dist/core/llm/services/llm.service.d.ts.map +1 -1
- package/dist/core/llm/services/llm.service.js +8 -0
- package/dist/core/llm/services/llm.service.js.map +1 -1
- package/dist/core/neo4j/abstracts/abstract.repository.d.ts +48 -1
- package/dist/core/neo4j/abstracts/abstract.repository.d.ts.map +1 -1
- package/dist/core/neo4j/abstracts/abstract.repository.js +147 -9
- package/dist/core/neo4j/abstracts/abstract.repository.js.map +1 -1
- package/dist/core/neo4j/abstracts/abstract.service.d.ts +47 -0
- package/dist/core/neo4j/abstracts/abstract.service.d.ts.map +1 -1
- package/dist/core/neo4j/abstracts/abstract.service.js +57 -0
- package/dist/core/neo4j/abstracts/abstract.service.js.map +1 -1
- package/dist/core/neo4j/factories/entity.factory.d.ts.map +1 -1
- package/dist/core/neo4j/factories/entity.factory.js +27 -6
- package/dist/core/neo4j/factories/entity.factory.js.map +1 -1
- package/dist/core/neo4j/helpers/build-filter-clauses.d.ts +11 -0
- package/dist/core/neo4j/helpers/build-filter-clauses.d.ts.map +1 -0
- package/dist/core/neo4j/helpers/build-filter-clauses.js +69 -0
- package/dist/core/neo4j/helpers/build-filter-clauses.js.map +1 -0
- package/dist/core/neo4j/helpers/build-order-by.d.ts +6 -0
- package/dist/core/neo4j/helpers/build-order-by.d.ts.map +1 -0
- package/dist/core/neo4j/helpers/build-order-by.js +20 -0
- package/dist/core/neo4j/helpers/build-order-by.js.map +1 -0
- package/dist/core/neo4j/index.d.ts +1 -0
- package/dist/core/neo4j/index.d.ts.map +1 -1
- package/dist/core/neo4j/index.js +2 -0
- package/dist/core/neo4j/index.js.map +1 -1
- package/dist/core/neo4j/types/filter.criterion.d.ts +20 -0
- package/dist/core/neo4j/types/filter.criterion.d.ts.map +1 -0
- package/dist/core/neo4j/types/filter.criterion.js +3 -0
- package/dist/core/neo4j/types/filter.criterion.js.map +1 -0
- package/dist/core/neo4j/types/index.d.ts +2 -0
- package/dist/core/neo4j/types/index.d.ts.map +1 -0
- package/dist/core/neo4j/types/index.js +3 -0
- package/dist/core/neo4j/types/index.js.map +1 -0
- package/dist/foundations/assistant/assistant.module.d.ts +5 -0
- package/dist/foundations/assistant/assistant.module.d.ts.map +1 -0
- package/dist/foundations/assistant/assistant.module.js +32 -0
- package/dist/foundations/assistant/assistant.module.js.map +1 -0
- package/dist/foundations/assistant/controllers/assistant.controller.d.ts +67 -0
- package/dist/foundations/assistant/controllers/assistant.controller.d.ts.map +1 -0
- package/dist/foundations/assistant/controllers/assistant.controller.js +226 -0
- package/dist/foundations/assistant/controllers/assistant.controller.js.map +1 -0
- package/dist/foundations/assistant/dtos/assistant-append.dto.d.ts +11 -0
- package/dist/foundations/assistant/dtos/assistant-append.dto.d.ts.map +1 -0
- package/dist/foundations/assistant/dtos/assistant-append.dto.js +44 -0
- package/dist/foundations/assistant/dtos/assistant-append.dto.js.map +1 -0
- package/dist/foundations/assistant/dtos/assistant-patch.dto.d.ts +12 -0
- package/dist/foundations/assistant/dtos/assistant-patch.dto.d.ts.map +1 -0
- package/dist/foundations/assistant/dtos/assistant-patch.dto.js +52 -0
- package/dist/foundations/assistant/dtos/assistant-patch.dto.js.map +1 -0
- package/dist/foundations/assistant/dtos/assistant-post.dto.d.ts +12 -0
- package/dist/foundations/assistant/dtos/assistant-post.dto.d.ts.map +1 -0
- package/dist/foundations/assistant/dtos/assistant-post.dto.js +51 -0
- package/dist/foundations/assistant/dtos/assistant-post.dto.js.map +1 -0
- package/dist/foundations/assistant/entities/assistant.d.ts +48 -0
- package/dist/foundations/assistant/entities/assistant.d.ts.map +1 -0
- package/dist/foundations/assistant/entities/assistant.js +44 -0
- package/dist/foundations/assistant/entities/assistant.js.map +1 -0
- package/dist/foundations/assistant/entities/assistant.meta.d.ts +3 -0
- package/dist/foundations/assistant/entities/assistant.meta.d.ts.map +1 -0
- package/dist/foundations/assistant/entities/assistant.meta.js +10 -0
- package/dist/foundations/assistant/entities/assistant.meta.js.map +1 -0
- package/dist/foundations/assistant/index.d.ts +7 -0
- package/dist/foundations/assistant/index.d.ts.map +1 -0
- package/dist/foundations/assistant/index.js +12 -0
- package/dist/foundations/assistant/index.js.map +1 -0
- package/dist/foundations/assistant/repositories/assistant.repository.d.ts +50 -0
- package/dist/foundations/assistant/repositories/assistant.repository.d.ts.map +1 -0
- package/dist/foundations/assistant/repositories/assistant.repository.js +65 -0
- package/dist/foundations/assistant/repositories/assistant.repository.js.map +1 -0
- package/dist/foundations/assistant/services/assistant.service.d.ts +113 -0
- package/dist/foundations/assistant/services/assistant.service.d.ts.map +1 -0
- package/dist/foundations/assistant/services/assistant.service.js +395 -0
- package/dist/foundations/assistant/services/assistant.service.js.map +1 -0
- package/dist/foundations/assistant-message/assistant-message.module.d.ts +6 -0
- package/dist/foundations/assistant-message/assistant-message.module.d.ts.map +1 -0
- package/dist/foundations/assistant-message/assistant-message.module.js +36 -0
- package/dist/foundations/assistant-message/assistant-message.module.js.map +1 -0
- package/dist/foundations/assistant-message/controllers/assistant-message.controller.d.ts +16 -0
- package/dist/foundations/assistant-message/controllers/assistant-message.controller.d.ts.map +1 -0
- package/dist/foundations/assistant-message/controllers/assistant-message.controller.js +84 -0
- package/dist/foundations/assistant-message/controllers/assistant-message.controller.js.map +1 -0
- package/dist/foundations/assistant-message/dtos/assistant-message.dto.d.ts +11 -0
- package/dist/foundations/assistant-message/dtos/assistant-message.dto.d.ts.map +1 -0
- package/dist/foundations/assistant-message/dtos/assistant-message.dto.js +45 -0
- package/dist/foundations/assistant-message/dtos/assistant-message.dto.js.map +1 -0
- package/dist/foundations/assistant-message/entities/assistant-message.d.ts +49 -0
- package/dist/foundations/assistant-message/entities/assistant-message.d.ts.map +1 -0
- package/dist/foundations/assistant-message/entities/assistant-message.js +52 -0
- package/dist/foundations/assistant-message/entities/assistant-message.js.map +1 -0
- package/dist/foundations/assistant-message/entities/assistant-message.meta.d.ts +3 -0
- package/dist/foundations/assistant-message/entities/assistant-message.meta.d.ts.map +1 -0
- package/dist/foundations/assistant-message/entities/assistant-message.meta.js +10 -0
- package/dist/foundations/assistant-message/entities/assistant-message.meta.js.map +1 -0
- package/dist/foundations/assistant-message/index.d.ts +8 -0
- package/dist/foundations/assistant-message/index.d.ts.map +1 -0
- package/dist/foundations/assistant-message/index.js +24 -0
- package/dist/foundations/assistant-message/index.js.map +1 -0
- package/dist/foundations/assistant-message/repositories/assistant-message.repository.d.ts +70 -0
- package/dist/foundations/assistant-message/repositories/assistant-message.repository.d.ts.map +1 -0
- package/dist/foundations/assistant-message/repositories/assistant-message.repository.js +119 -0
- package/dist/foundations/assistant-message/repositories/assistant-message.repository.js.map +1 -0
- package/dist/foundations/assistant-message/services/assistant-message.service.d.ts +31 -0
- package/dist/foundations/assistant-message/services/assistant-message.service.d.ts.map +1 -0
- package/dist/foundations/assistant-message/services/assistant-message.service.js +32 -0
- package/dist/foundations/assistant-message/services/assistant-message.service.js.map +1 -0
- package/dist/foundations/foundations.modules.d.ts.map +1 -1
- package/dist/foundations/foundations.modules.js +2 -0
- package/dist/foundations/foundations.modules.js.map +1 -1
- package/dist/foundations/index.d.ts +2 -0
- package/dist/foundations/index.d.ts.map +1 -1
- package/dist/foundations/index.js +2 -0
- package/dist/foundations/index.js.map +1 -1
- package/dist/foundations/stripe/__tests__/mocks/stripe.mock.d.ts +62 -62
- package/package.json +1 -1
|
@@ -165,7 +165,7 @@ function createSerialiserForDescriptor(descriptor, labelName) {
|
|
|
165
165
|
*/
|
|
166
166
|
function defineEntity() {
|
|
167
167
|
return function (schema) {
|
|
168
|
-
const { type, endpoint, nodeName, labelName, fields, relationships, computed = {}, virtualFields = {}, serialiser: customSerialiser, injectServices = [], isCompanyScoped = true, } = schema;
|
|
168
|
+
const { type, endpoint, nodeName, labelName, fields, relationships, computed = {}, virtualFields = {}, serialiser: customSerialiser, injectServices = [], isCompanyScoped = true, description, chat, } = schema;
|
|
169
169
|
// Extract field information
|
|
170
170
|
const fieldEntries = Object.entries(fields);
|
|
171
171
|
const fieldNames = fieldEntries.map(([name]) => name);
|
|
@@ -203,6 +203,7 @@ function defineEntity() {
|
|
|
203
203
|
singleChildrenRelationships.push({
|
|
204
204
|
nodeName: rel.model.nodeName,
|
|
205
205
|
relationshipName: name,
|
|
206
|
+
polymorphic: rel.polymorphic,
|
|
206
207
|
});
|
|
207
208
|
}
|
|
208
209
|
else {
|
|
@@ -210,6 +211,7 @@ function defineEntity() {
|
|
|
210
211
|
childrenRelationships.push({
|
|
211
212
|
nodeName: rel.model.nodeName,
|
|
212
213
|
relationshipName: name,
|
|
214
|
+
polymorphic: rel.polymorphic,
|
|
213
215
|
});
|
|
214
216
|
}
|
|
215
217
|
}
|
|
@@ -290,6 +292,8 @@ function defineEntity() {
|
|
|
290
292
|
: [],
|
|
291
293
|
fulltextIndexName: stringFields.length > 0 ? fulltextIndexName : "",
|
|
292
294
|
defaultOrderBy: "updatedAt DESC",
|
|
295
|
+
description,
|
|
296
|
+
chat,
|
|
293
297
|
};
|
|
294
298
|
// Auto-generate serialiser if not provided
|
|
295
299
|
const serialiserClass = customSerialiser || createSerialiserForDescriptor(descriptor, labelName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define-entity.js","sourceRoot":"","sources":["../../../src/common/helpers/define-entity.ts"],"names":[],"mappings":";;;;;;;;;;;AAoLA,
|
|
1
|
+
{"version":3,"file":"define-entity.js","sourceRoot":"","sources":["../../../src/common/helpers/define-entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AbstractJsonApiSerialiser } from "../../core/jsonapi/abstracts/abstract.jsonapi.serialiser";
|
|
2
2
|
import { JsonApiServiceInterface } from "../../core/jsonapi/interfaces/jsonapi.service.interface";
|
|
3
|
+
import { PolymorphicConfig } from "./entity.schema.interface";
|
|
3
4
|
export declare function getEndpoint(modelGetter: () => DataModelInterface<any>): string;
|
|
4
5
|
export type SerialiserType = AbstractJsonApiSerialiser & JsonApiServiceInterface;
|
|
5
6
|
export type DataMeta = {
|
|
@@ -12,10 +13,19 @@ export type DataMeta = {
|
|
|
12
13
|
* Relationship info for proper self-referential relationship support.
|
|
13
14
|
* Tracks both the model's nodeName (for registry lookup) and the
|
|
14
15
|
* relationship name (for Cypher column matching and property assignment).
|
|
16
|
+
*
|
|
17
|
+
* For polymorphic relationships whose targets span multiple Neo4j labels
|
|
18
|
+
* (i.e. polymorphic WITHOUT `discriminatorRelationship`), `polymorphic`
|
|
19
|
+
* carries the config so the entity factory can resolve the correct model
|
|
20
|
+
* per row via the discriminator. For same-label polymorphism (phlow's
|
|
21
|
+
* taxonomy case, with `discriminatorRelationship`) this field is still
|
|
22
|
+
* populated, but the entity factory's existing single-mapper path applies
|
|
23
|
+
* because all candidates share the same Neo4j shape.
|
|
15
24
|
*/
|
|
16
25
|
export type RelationshipInfo = {
|
|
17
26
|
nodeName: string;
|
|
18
27
|
relationshipName: string;
|
|
28
|
+
polymorphic?: PolymorphicConfig;
|
|
19
29
|
};
|
|
20
30
|
export type DataModelInterface<T> = DataMeta & {
|
|
21
31
|
entity: T;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datamodel.interface.d.ts","sourceRoot":"","sources":["../../../src/common/interfaces/datamodel.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;
|
|
1
|
+
{"version":3,"file":"datamodel.interface.d.ts","sourceRoot":"","sources":["../../../src/common/interfaces/datamodel.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,kBAAkB,CAAC,GAAG,CAAC,GAAG,MAAM,CAE9E;AAED,MAAM,MAAM,cAAc,GAAG,yBAAyB,GAAG,uBAAuB,CAAC;AAEjF,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,iBAAiB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,QAAQ,GAAG;IAC7C,MAAM,EAAE,CAAC,CAAC;IACV,MAAM,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,GAAG,CAAC;QAAC,MAAM,EAAE,GAAG,CAAC;QAAC,aAAa,EAAE,GAAG,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,CAAC,CAAC;IACrF,UAAU,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,cAAc,CAAC;IACpD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;IACnC,6BAA6B,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzC,qBAAqB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC3C,2BAA2B,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAClD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datamodel.interface.js","sourceRoot":"","sources":["../../../src/common/interfaces/datamodel.interface.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"datamodel.interface.js","sourceRoot":"","sources":["../../../src/common/interfaces/datamodel.interface.ts"],"names":[],"mappings":";;AAIA,kCAEC;AAFD,SAAgB,WAAW,CAAC,WAA0C;IACpE,OAAO,WAAW,EAAE,CAAC,QAAQ,CAAC;AAChC,CAAC"}
|
|
@@ -29,6 +29,6 @@
|
|
|
29
29
|
* GlossaryDescriptor.stringFields
|
|
30
30
|
* ```
|
|
31
31
|
*/
|
|
32
|
-
export type { CypherType, EntityDescriptor, EntitySchemaInput, FieldDef, RelationshipDef, VirtualFieldDef, } from "./entity.schema.interface";
|
|
32
|
+
export type { CypherType, EntityDescriptor, EntitySchemaInput, FieldDef, FieldKind, RelationshipDef, VirtualFieldDef, } from "./entity.schema.interface";
|
|
33
33
|
export { defineEntity, defineEntityAlias } from "../helpers/define-entity";
|
|
34
34
|
//# sourceMappingURL=entity.descriptor.interface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.descriptor.interface.d.ts","sourceRoot":"","sources":["../../../src/common/interfaces/entity.descriptor.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,QAAQ,EACR,eAAe,EACf,eAAe,GAChB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"entity.descriptor.interface.d.ts","sourceRoot":"","sources":["../../../src/common/interfaces/entity.descriptor.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,QAAQ,EACR,SAAS,EACT,eAAe,EACf,eAAe,GAChB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.descriptor.interface.js","sourceRoot":"","sources":["../../../src/common/interfaces/entity.descriptor.interface.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"entity.descriptor.interface.js","sourceRoot":"","sources":["../../../src/common/interfaces/entity.descriptor.interface.ts"],"names":[],"mappings":";;;AAyCA,0DAA2E;AAAlE,6GAAA,YAAY,OAAA;AAAE,kHAAA,iBAAiB,OAAA"}
|
|
@@ -17,6 +17,16 @@ export type CypherType = CypherBaseType | CypherArrayType;
|
|
|
17
17
|
* Receives the entity data and any injected services
|
|
18
18
|
*/
|
|
19
19
|
export type FieldTransformFn = (data: any, services: Record<string, any>) => Promise<any> | any;
|
|
20
|
+
/**
|
|
21
|
+
* Semantic kind of a scalar field, used by the chatbot layer to render unit
|
|
22
|
+
* markers in the graph catalogue and to format values for LLM narration.
|
|
23
|
+
* The discriminator shape leaves room for non-money kinds (percent, duration,
|
|
24
|
+
* etc.) without widening a plain string literal later.
|
|
25
|
+
*/
|
|
26
|
+
export type FieldKind = {
|
|
27
|
+
type: "money";
|
|
28
|
+
minorUnits?: number;
|
|
29
|
+
};
|
|
20
30
|
/**
|
|
21
31
|
* Field definition for entity schema
|
|
22
32
|
* Defines a single property with its type and constraints
|
|
@@ -34,6 +44,15 @@ export interface FieldDef {
|
|
|
34
44
|
transform?: FieldTransformFn;
|
|
35
45
|
/** If true, field is excluded from JSONAPI serialization entirely (default: false) */
|
|
36
46
|
excludeFromJsonApi?: boolean;
|
|
47
|
+
/** Human-readable description. Required for the field to be visible to the chatbot. */
|
|
48
|
+
description?: string;
|
|
49
|
+
/**
|
|
50
|
+
* Semantic kind for chatbot rendering. When set to `{ type: "money" }`,
|
|
51
|
+
* the field is stored as an integer in the currency's minor unit (cents by
|
|
52
|
+
* default). The catalogue annotates it and tool returns emit a companion
|
|
53
|
+
* `<name>_formatted` string so the LLM can narrate the human value safely.
|
|
54
|
+
*/
|
|
55
|
+
kind?: FieldKind;
|
|
37
56
|
}
|
|
38
57
|
/**
|
|
39
58
|
* Function signature for computed field calculation
|
|
@@ -59,6 +78,8 @@ export interface ComputedFieldDef<T = any> {
|
|
|
59
78
|
meta?: boolean;
|
|
60
79
|
/** If true, field is excluded from JSONAPI serialization entirely (default: false) */
|
|
61
80
|
excludeFromJsonApi?: boolean;
|
|
81
|
+
/** Human-readable description. Required for the field to be visible to the chatbot. */
|
|
82
|
+
description?: string;
|
|
62
83
|
}
|
|
63
84
|
/**
|
|
64
85
|
* Virtual field definition for output-only computed values.
|
|
@@ -74,6 +95,8 @@ export interface VirtualFieldDef {
|
|
|
74
95
|
meta?: boolean;
|
|
75
96
|
/** If true, field is excluded from JSONAPI serialization entirely (default: false) */
|
|
76
97
|
excludeFromJsonApi?: boolean;
|
|
98
|
+
/** Human-readable description. Required for the field to be visible to the chatbot. */
|
|
99
|
+
description?: string;
|
|
77
100
|
}
|
|
78
101
|
/**
|
|
79
102
|
* Field definition for relationship properties
|
|
@@ -114,6 +137,13 @@ export interface RelationshipDef {
|
|
|
114
137
|
polymorphic?: PolymorphicConfig;
|
|
115
138
|
/** If true, relationship is set only on creation and skipped during PUT (default: false) */
|
|
116
139
|
immutable?: boolean;
|
|
140
|
+
/** Human-readable description. Required for the relationship to be visible to the chatbot. */
|
|
141
|
+
description?: string;
|
|
142
|
+
/** Opts in reverse traversal from the target entity. Omit to keep one-way. */
|
|
143
|
+
reverse?: {
|
|
144
|
+
name: string;
|
|
145
|
+
description: string;
|
|
146
|
+
};
|
|
117
147
|
}
|
|
118
148
|
/**
|
|
119
149
|
* Data available to polymorphic discriminator function
|
|
@@ -179,6 +209,15 @@ export interface EntitySchemaInput<T, R extends Record<string, RelationshipDef>
|
|
|
179
209
|
serialiser?: new (...args: any[]) => any;
|
|
180
210
|
/** Services to inject into auto-generated serialiser for field transformers */
|
|
181
211
|
injectServices?: Type<any>[];
|
|
212
|
+
/** Entity purpose for the chatbot. Required for the entity to be visible to the LLM. */
|
|
213
|
+
description?: string;
|
|
214
|
+
/** Optional LLM-facing presentation hints. */
|
|
215
|
+
chat?: {
|
|
216
|
+
/** One-line summary renderer used in chatbot search/traverse results. */
|
|
217
|
+
summary?: (data: any) => string;
|
|
218
|
+
/** Described string fields used for the `text` parameter in `search_entities`. */
|
|
219
|
+
textSearchFields?: string[];
|
|
220
|
+
};
|
|
182
221
|
}
|
|
183
222
|
/**
|
|
184
223
|
* Computed entity descriptor - output of defineEntity()
|
|
@@ -233,5 +272,14 @@ export interface EntityDescriptor<T, R extends Record<string, RelationshipDef> =
|
|
|
233
272
|
fulltextIndexName: string;
|
|
234
273
|
/** Default ordering for queries */
|
|
235
274
|
defaultOrderBy: string;
|
|
275
|
+
/** Entity purpose for the chatbot. Required for the entity to be visible to the LLM. */
|
|
276
|
+
description?: string;
|
|
277
|
+
/** Optional LLM-facing presentation hints. */
|
|
278
|
+
chat?: {
|
|
279
|
+
/** One-line summary renderer used in chatbot search/traverse results. */
|
|
280
|
+
summary?: (data: any) => string;
|
|
281
|
+
/** Described string fields used for the `text` parameter in `search_entities`. */
|
|
282
|
+
textSearchFields?: string[];
|
|
283
|
+
};
|
|
236
284
|
}
|
|
237
285
|
//# sourceMappingURL=entity.schema.interface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.schema.interface.d.ts","sourceRoot":"","sources":["../../../src/common/interfaces/entity.schema.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAErE;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;AAE5F;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,YAAY,GAAG,QAAQ,CAAC;AAEzG;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,cAAc,GAAG,eAAe,CAAC;AAE1D;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;AAEhG;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,6BAA6B;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mDAAmD;IACnD,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,kFAAkF;IAClF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,yFAAyF;IACzF,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,sFAAsF;IACtF,kBAAkB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"entity.schema.interface.d.ts","sourceRoot":"","sources":["../../../src/common/interfaces/entity.schema.interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { OnModuleInit } from "@nestjs/common";
|
|
2
|
+
import { DiscoveryService } from "@nestjs/core";
|
|
3
|
+
import { AbstractService } from "../../core/neo4j/abstracts/abstract.service";
|
|
4
|
+
export declare class EntityServiceRegistry implements OnModuleInit {
|
|
5
|
+
private readonly discovery;
|
|
6
|
+
private readonly logger;
|
|
7
|
+
private readonly byType;
|
|
8
|
+
constructor(discovery: DiscoveryService);
|
|
9
|
+
onModuleInit(): void;
|
|
10
|
+
get(type: string): AbstractService<any, any> | undefined;
|
|
11
|
+
listTypes(): string[];
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=entity.service.registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entity.service.registry.d.ts","sourceRoot":"","sources":["../../../src/common/registries/entity.service.registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAE9E,qBACa,qBAAsB,YAAW,YAAY;IAI5C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAHtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0C;IACjE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgD;gBAE1C,SAAS,EAAE,gBAAgB;IAExD,YAAY,IAAI,IAAI;IAgBpB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS;IAIxD,SAAS,IAAI,MAAM,EAAE;CAGtB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
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 EntityServiceRegistry_1;
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.EntityServiceRegistry = void 0;
|
|
14
|
+
const common_1 = require("@nestjs/common");
|
|
15
|
+
const core_1 = require("@nestjs/core");
|
|
16
|
+
const abstract_service_1 = require("../../core/neo4j/abstracts/abstract.service");
|
|
17
|
+
let EntityServiceRegistry = EntityServiceRegistry_1 = class EntityServiceRegistry {
|
|
18
|
+
constructor(discovery) {
|
|
19
|
+
this.discovery = discovery;
|
|
20
|
+
this.logger = new common_1.Logger(EntityServiceRegistry_1.name);
|
|
21
|
+
this.byType = new Map();
|
|
22
|
+
}
|
|
23
|
+
onModuleInit() {
|
|
24
|
+
const wrappers = this.discovery.getProviders();
|
|
25
|
+
for (const wrapper of wrappers) {
|
|
26
|
+
const instance = wrapper.instance;
|
|
27
|
+
if (!instance || !(instance instanceof abstract_service_1.AbstractService))
|
|
28
|
+
continue;
|
|
29
|
+
const type = instance.model?.type;
|
|
30
|
+
if (!type)
|
|
31
|
+
continue;
|
|
32
|
+
if (this.byType.has(type)) {
|
|
33
|
+
this.logger.warn(`Duplicate AbstractService for type "${type}"; keeping first registered.`);
|
|
34
|
+
continue;
|
|
35
|
+
}
|
|
36
|
+
this.byType.set(type, instance);
|
|
37
|
+
}
|
|
38
|
+
this.logger.log(`Registered ${this.byType.size} entity services.`);
|
|
39
|
+
}
|
|
40
|
+
get(type) {
|
|
41
|
+
return this.byType.get(type);
|
|
42
|
+
}
|
|
43
|
+
listTypes() {
|
|
44
|
+
return Array.from(this.byType.keys());
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
exports.EntityServiceRegistry = EntityServiceRegistry;
|
|
48
|
+
exports.EntityServiceRegistry = EntityServiceRegistry = EntityServiceRegistry_1 = __decorate([
|
|
49
|
+
(0, common_1.Injectable)(),
|
|
50
|
+
__metadata("design:paramtypes", [core_1.DiscoveryService])
|
|
51
|
+
], EntityServiceRegistry);
|
|
52
|
+
//# sourceMappingURL=entity.service.registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entity.service.registry.js","sourceRoot":"","sources":["../../../src/common/registries/entity.service.registry.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAkE;AAClE,uCAAgD;AAChD,kFAA8E;AAGvE,IAAM,qBAAqB,6BAA3B,MAAM,qBAAqB;IAIhC,YAA6B,SAA2B;QAA3B,cAAS,GAAT,SAAS,CAAkB;QAHvC,WAAM,GAAG,IAAI,eAAM,CAAC,uBAAqB,CAAC,IAAI,CAAC,CAAC;QAChD,WAAM,GAAG,IAAI,GAAG,EAAqC,CAAC;IAEZ,CAAC;IAE5D,YAAY;QACV,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;QAC/C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YAClC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,YAAY,kCAAe,CAAC;gBAAE,SAAS;YAClE,MAAM,IAAI,GAAI,QAAgB,CAAC,KAAK,EAAE,IAAI,CAAC;YAC3C,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,IAAI,8BAA8B,CAAC,CAAC;gBAC5F,SAAS;YACX,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,MAAM,CAAC,IAAI,mBAAmB,CAAC,CAAC;IACrE,CAAC;IAED,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,SAAS;QACP,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;CACF,CAAA;AA7BY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,mBAAU,GAAE;qCAK6B,uBAAgB;GAJ7C,qBAAqB,CA6BjC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/common/registries/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/common/registries/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,2BAA2B,CAAC"}
|
|
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./registry"), exports);
|
|
18
|
+
__exportStar(require("./entity.service.registry"), exports);
|
|
18
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/registries/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/registries/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,4DAA0C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.module.d.ts","sourceRoot":"","sources":["../../src/core/core.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA4B,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"core.module.d.ts","sourceRoot":"","sources":["../../src/core/core.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA4B,MAAM,gBAAgB,CAAC;AAiHzE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAEa,UAAU;IACrB;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,aAAa;CAW3D"}
|
package/dist/core/core.module.js
CHANGED
|
@@ -10,8 +10,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
10
10
|
exports.CoreModule = void 0;
|
|
11
11
|
const common_1 = require("@nestjs/common");
|
|
12
12
|
const config_1 = require("@nestjs/config");
|
|
13
|
+
const core_1 = require("@nestjs/core");
|
|
13
14
|
const jwt_1 = require("@nestjs/jwt");
|
|
14
15
|
const passport_1 = require("@nestjs/passport");
|
|
16
|
+
const entity_service_registry_1 = require("../common/registries/entity.service.registry");
|
|
15
17
|
// Import all core modules
|
|
16
18
|
const blocknote_module_1 = require("./blocknote/blocknote.module");
|
|
17
19
|
const cache_module_1 = require("./cache/cache.module");
|
|
@@ -47,6 +49,8 @@ const websocket_module_1 = require("./websocket/websocket.module");
|
|
|
47
49
|
*/
|
|
48
50
|
function getCoreModules(queueIds = []) {
|
|
49
51
|
return [
|
|
52
|
+
// Discovery module - required by EntityServiceRegistry to enumerate providers
|
|
53
|
+
core_1.DiscoveryModule,
|
|
50
54
|
// JWT and Passport for authentication - uses ConfigService async
|
|
51
55
|
jwt_1.JwtModule.registerAsync({
|
|
52
56
|
imports: [config_1.ConfigModule],
|
|
@@ -134,12 +138,12 @@ let CoreModule = CoreModule_1 = class CoreModule {
|
|
|
134
138
|
* Configure CoreModule with all core infrastructure modules
|
|
135
139
|
*/
|
|
136
140
|
static forRoot(options) {
|
|
137
|
-
const providers = [];
|
|
141
|
+
const providers = [entity_service_registry_1.EntityServiceRegistry];
|
|
138
142
|
return {
|
|
139
143
|
module: CoreModule_1,
|
|
140
144
|
imports: getCoreModules(options?.queueIds ?? []),
|
|
141
145
|
providers,
|
|
142
|
-
exports: [...getCoreModuleExports()],
|
|
146
|
+
exports: [...getCoreModuleExports(), entity_service_registry_1.EntityServiceRegistry],
|
|
143
147
|
global: true,
|
|
144
148
|
};
|
|
145
149
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.module.js","sourceRoot":"","sources":["../../src/core/core.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAyE;AACzE,2CAA6D;AAC7D,qCAAwC;AACxC,+CAAkD;
|
|
1
|
+
{"version":3,"file":"core.module.js","sourceRoot":"","sources":["../../src/core/core.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAyE;AACzE,2CAA6D;AAC7D,uCAA+C;AAC/C,qCAAwC;AACxC,+CAAkD;AAClD,0FAAqF;AAGrF,0BAA0B;AAC1B,mEAA+D;AAC/D,uDAAmD;AACnD,0DAAsD;AACtD,oDAAgD;AAChD,uDAAmD;AACnD,uDAAmD;AACnD,6DAAyD;AACzD,iDAA6C;AAC7C,6DAAyD;AACzD,gEAA4D;AAC5D,uDAAmD;AACnD,uDAAmD;AACnD,uDAAmD;AACnD,gEAA4D;AAC5D,6DAAyD;AACzD,6DAAyD;AACzD,mEAA+D;AAE/D;;;;;;;;;;;;;;GAcG;AACH,SAAS,cAAc,CAAC,WAAqB,EAAE;IAC7C,OAAO;QACL,8EAA8E;QAC9E,sBAAe;QACf,iEAAiE;QACjE,eAAS,CAAC,aAAa,CAAC;YACtB,OAAO,EAAE,CAAC,qBAAY,CAAC;YACvB,MAAM,EAAE,CAAC,sBAAa,CAAC;YACvB,UAAU,EAAE,CAAC,aAAiD,EAAE,EAAE;gBAChE,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAqB,KAAK,CAAC,CAAC;gBACzD,OAAO;oBACL,MAAM,EAAE,GAAG,EAAE,MAAM;oBACnB,WAAW,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,SAAgB,EAAE;iBAClD,CAAC;YACJ,CAAC;SACF,CAAC;QACF,yBAAc;QACd,kDAAkD;QAClD,gCAAc;QACd,wBAAU,CAAC,OAAO,EAAE;QACpB,8BAAa,CAAC,OAAO,EAAE;QACvB,8BAAa;QACb,0BAAW;QACX,8BAAa,CAAC,OAAO,EAAE;QACvB,8BAAa,CAAC,OAAO,EAAE;QACvB,iDAAiD;QACjD,0BAAW;QACX,0BAAW;QACX,0BAAW;QACX,6DAA6D;QAC7D,4BAAY;QACZ,sFAAsF;QACtF,0BAAW,CAAC,iBAAiB,CAAC,QAAQ,CAAC;QACvC,yCAAyC;QACzC,0BAAW,CAAC,OAAO,EAAE;QACrB,kCAAe;QACf,sBAAS;QACT,kCAAe;QACf,gCAAc;QACd,8BAAa;KACd,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,oBAAoB;IAC3B,OAAO;QACL,eAAS;QACT,yBAAc;QACd,0BAAW;QACX,0BAAW;QACX,0BAAW;QACX,gCAAc;QACd,0BAAW;QACX,wBAAU;QACV,8BAAa;QACb,4BAAY;QACZ,kCAAe;QACf,sBAAS;QACT,kCAAe;QACf,0BAAW;QACX,8BAAa;QACb,8BAAa;QACb,8BAAa;QACb,0BAAW;QACX,8BAAa;KACd,CAAC;AACJ,CAAC;AAcD;;;;;;;;;;;;;;;;GAgBG;AAGI,IAAM,UAAU,kBAAhB,MAAM,UAAU;IACrB;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,OAA2B;QACxC,MAAM,SAAS,GAAe,CAAC,+CAAqB,CAAC,CAAC;QAEtD,OAAO;YACL,MAAM,EAAE,YAAU;YAClB,OAAO,EAAE,cAAc,CAAC,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAC;YAChD,SAAS;YACT,OAAO,EAAE,CAAC,GAAG,oBAAoB,EAAE,EAAE,+CAAqB,CAAC;YAC3D,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;CACF,CAAA;AAfY,gCAAU;qBAAV,UAAU;IAFtB,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,UAAU,CAetB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm.service.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/services/llm.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAqB,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AA8BhE;;GAEG;AACH,UAAU,aAAa,CAAC,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,gBAAgB,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAChC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,UAAU,YAAY;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAUD,qBACa,UAAU;IAInB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJzB,OAAO,CAAC,cAAc,CAAe;gBAGlB,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC;IAU7D;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAa7B;;OAEG;IACH,OAAO,CAAC,YAAY;IAcpB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,yBAAyB;IA6CjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,OAAO,CAAC,iCAAiC;IA0BzC;;OAEG;IACH,OAAO,CAAC,eAAe;IA6CvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqEG;IACG,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG;QAAE,UAAU,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"llm.service.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/services/llm.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAqB,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AA8BhE;;GAEG;AACH,UAAU,aAAa,CAAC,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,gBAAgB,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAChC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,UAAU,YAAY;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAUD,qBACa,UAAU;IAInB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJzB,OAAO,CAAC,cAAc,CAAe;gBAGlB,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC;IAU7D;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAa7B;;OAEG;IACH,OAAO,CAAC,YAAY;IAcpB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,yBAAyB;IA6CjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,OAAO,CAAC,iCAAiC;IA0BzC;;OAEG;IACH,OAAO,CAAC,eAAe;IA6CvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqEG;IACG,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG;QAAE,UAAU,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IA+RvG;;;;OAIG;IACH,eAAe,IAAI,YAAY;IAI/B;;;;OAIG;IACH,YAAY,IAAI,IAAI;CAQrB"}
|
|
@@ -370,6 +370,14 @@ let LLMService = class LLMService {
|
|
|
370
370
|
}
|
|
371
371
|
}
|
|
372
372
|
}
|
|
373
|
+
// Nudge the model out of tool-use mode before asking for the final structured
|
|
374
|
+
// answer. Without this, some models (notably gpt-oss) emit another tool_calls
|
|
375
|
+
// response instead of producing the structured output, and parsing fails with
|
|
376
|
+
// "No content" / finish_reason=tool_calls. The nudge is only appended when the
|
|
377
|
+
// tool-calling loop ran at all.
|
|
378
|
+
if (params.tools && params.tools.length > 0 && conversationMessages.length > 0) {
|
|
379
|
+
conversationMessages.push(new messages_1.HumanMessage("You have gathered enough information from the tool calls above to answer the user's question. Produce your final answer now as the structured output the system expects. Do not request any further tool calls."));
|
|
380
|
+
}
|
|
373
381
|
// Get final structured response (unified path for both tool and non-tool flows)
|
|
374
382
|
// For Requesty + Gemini: sanitize schema to remove $schema, $defs, etc. that Gemini rejects
|
|
375
383
|
const aiConfig = this.config.get("ai").ai;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm.service.js","sourceRoot":"","sources":["../../../../src/core/llm/services/llm.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"llm.service.js","sourceRoot":"","sources":["../../../../src/core/llm/services/llm.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import { EntityDescriptor, RelationshipDef } from "../../../common/interfaces/en
|
|
|
4
4
|
import { JsonApiCursorInterface } from "../../jsonapi/interfaces/jsonapi.cursor.interface";
|
|
5
5
|
import { SecurityService } from "../../security/services/security.service";
|
|
6
6
|
import { Neo4jService } from "../services/neo4j.service";
|
|
7
|
+
import { FilterCriterion, SortCriterion } from "../types/filter.criterion";
|
|
7
8
|
/**
|
|
8
9
|
* Abstract base repository for Neo4j entities
|
|
9
10
|
*
|
|
@@ -57,6 +58,18 @@ export declare abstract class AbstractRepository<T, R extends Record<string, Rel
|
|
|
57
58
|
* This ensures readOne() gets complete edge props collections even with multiple related entities.
|
|
58
59
|
*/
|
|
59
60
|
protected buildReturnStatement(): string;
|
|
61
|
+
/**
|
|
62
|
+
* Returns the Cypher query parameters that `buildReturnStatement` references
|
|
63
|
+
* for multi-label polymorphic relationships. Each entry maps
|
|
64
|
+
* `polyLabels_<relationshipName>` → the list of Neo4j labels accepted as
|
|
65
|
+
* candidates for that relationship's polymorphic target.
|
|
66
|
+
*
|
|
67
|
+
* Call sites that issue a query using `buildReturnStatement()` must spread
|
|
68
|
+
* this into `query.queryParams`. Returns an empty object when no multi-label
|
|
69
|
+
* polymorphic relationships exist, making it a no-op for every descriptor
|
|
70
|
+
* that does not use this shape.
|
|
71
|
+
*/
|
|
72
|
+
protected getPolyLabelParams(): Record<string, string[]>;
|
|
60
73
|
/**
|
|
61
74
|
* Validates if the user has access to the entity
|
|
62
75
|
* Throws Forbidden exception if entity exists but user doesn't have access
|
|
@@ -67,12 +80,19 @@ export declare abstract class AbstractRepository<T, R extends Record<string, Rel
|
|
|
67
80
|
searchValue: string;
|
|
68
81
|
}): Promise<T | null>;
|
|
69
82
|
/**
|
|
70
|
-
* Find entities with optional search term, ordering, and
|
|
83
|
+
* Find entities with optional search term, ordering, pagination, and structured filters.
|
|
84
|
+
*
|
|
85
|
+
* Backwards-compatible: callers that only pass { term, orderBy, cursor, fetchAll } continue to work.
|
|
86
|
+
* New callers may pass:
|
|
87
|
+
* - filters: FilterCriterion[] → appended to WHERE as AND-joined parameterised fragments
|
|
88
|
+
* - orderByFields: SortCriterion[] → multi-key ORDER BY; overrides legacy orderBy string when present
|
|
71
89
|
*/
|
|
72
90
|
find(params: {
|
|
73
91
|
fetchAll?: boolean;
|
|
74
92
|
term?: string;
|
|
75
93
|
orderBy?: string;
|
|
94
|
+
orderByFields?: SortCriterion[];
|
|
95
|
+
filters?: FilterCriterion[];
|
|
76
96
|
cursor?: JsonApiCursorInterface;
|
|
77
97
|
}): Promise<T[]>;
|
|
78
98
|
/**
|
|
@@ -109,6 +129,33 @@ export declare abstract class AbstractRepository<T, R extends Record<string, Rel
|
|
|
109
129
|
orderBy?: string;
|
|
110
130
|
fetchAll?: boolean;
|
|
111
131
|
cursor?: JsonApiCursorInterface;
|
|
132
|
+
filters?: FilterCriterion[];
|
|
133
|
+
orderByFields?: SortCriterion[];
|
|
134
|
+
}): Promise<T[]>;
|
|
135
|
+
/**
|
|
136
|
+
* Find entities connected to a related node by an arbitrary Cypher edge,
|
|
137
|
+
* without requiring the relationship to be declared in THIS descriptor.
|
|
138
|
+
*
|
|
139
|
+
* Necessary for the chatbot traverse/read-entity tools, which walk
|
|
140
|
+
* relationships using catalog-level metadata. When a relationship is
|
|
141
|
+
* declared only on the source side via `reverse: {}`, the target's own
|
|
142
|
+
* descriptor does not list it — so `findByRelated` (which keys off
|
|
143
|
+
* `this.descriptor.relationships`) fails. This method accepts the raw
|
|
144
|
+
* edge spec instead.
|
|
145
|
+
*
|
|
146
|
+
* Direction is from THIS node's perspective:
|
|
147
|
+
* - "out": MATCH (this)-[:cypherLabel]->(related)
|
|
148
|
+
* - "in": MATCH (this)<-[:cypherLabel]-(related)
|
|
149
|
+
*/
|
|
150
|
+
findByRelatedEdge(params: {
|
|
151
|
+
cypherLabel: string;
|
|
152
|
+
cypherDirection: "out" | "in";
|
|
153
|
+
relatedLabel: string;
|
|
154
|
+
relatedId: string | string[];
|
|
155
|
+
cursor?: JsonApiCursorInterface;
|
|
156
|
+
filters?: FilterCriterion[];
|
|
157
|
+
orderByFields?: SortCriterion[];
|
|
158
|
+
fetchAll?: boolean;
|
|
112
159
|
}): Promise<T[]>;
|
|
113
160
|
/**
|
|
114
161
|
* Create a new entity with relationships
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract.repository.d.ts","sourceRoot":"","sources":["../../../../src/core/neo4j/abstracts/abstract.repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oDAAoD,CAAC;AACvG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;
|
|
1
|
+
{"version":3,"file":"abstract.repository.d.ts","sourceRoot":"","sources":["../../../../src/core/neo4j/abstracts/abstract.repository.ts"],"names":[],"mappings":"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"}
|