@carlonicora/nestjs-neo4jsonapi 4.11.0 → 4.13.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 (257) hide show
  1. package/dist/agents/common/inline-entity-links.d.ts +22 -0
  2. package/dist/agents/common/inline-entity-links.d.ts.map +1 -0
  3. package/dist/agents/common/inline-entity-links.js +60 -0
  4. package/dist/agents/common/inline-entity-links.js.map +1 -0
  5. package/dist/agents/community.detector/services/community.detector.service.d.ts.map +1 -1
  6. package/dist/agents/community.detector/services/community.detector.service.js +4 -0
  7. package/dist/agents/community.detector/services/community.detector.service.js.map +1 -1
  8. package/dist/agents/graph/interfaces/graph.catalog.interface.d.ts +17 -0
  9. package/dist/agents/graph/interfaces/graph.catalog.interface.d.ts.map +1 -1
  10. package/dist/agents/graph/services/graph.catalog.service.d.ts +15 -2
  11. package/dist/agents/graph/services/graph.catalog.service.d.ts.map +1 -1
  12. package/dist/agents/graph/services/graph.catalog.service.js +87 -0
  13. package/dist/agents/graph/services/graph.catalog.service.js.map +1 -1
  14. package/dist/agents/graph/services/graph.index.manager.d.ts +18 -1
  15. package/dist/agents/graph/services/graph.index.manager.d.ts.map +1 -1
  16. package/dist/agents/graph/services/graph.index.manager.js +16 -2
  17. package/dist/agents/graph/services/graph.index.manager.js.map +1 -1
  18. package/dist/agents/graph/services/graph.search.service.d.ts +38 -1
  19. package/dist/agents/graph/services/graph.search.service.d.ts.map +1 -1
  20. package/dist/agents/graph/services/graph.search.service.js +126 -7
  21. package/dist/agents/graph/services/graph.search.service.js.map +1 -1
  22. package/dist/agents/graph/services/scope.guard.d.ts +30 -1
  23. package/dist/agents/graph/services/scope.guard.d.ts.map +1 -1
  24. package/dist/agents/graph/services/scope.guard.js +53 -2
  25. package/dist/agents/graph/services/scope.guard.js.map +1 -1
  26. package/dist/agents/graph/tools/search-entities.tool.d.ts.map +1 -1
  27. package/dist/agents/graph/tools/search-entities.tool.js +3 -1
  28. package/dist/agents/graph/tools/search-entities.tool.js.map +1 -1
  29. package/dist/agents/graph/tools/traverse.tool.d.ts.map +1 -1
  30. package/dist/agents/graph/tools/traverse.tool.js +18 -8
  31. package/dist/agents/graph/tools/traverse.tool.js.map +1 -1
  32. package/dist/agents/index.d.ts +1 -0
  33. package/dist/agents/index.d.ts.map +1 -1
  34. package/dist/agents/index.js +6 -2
  35. package/dist/agents/index.js.map +1 -1
  36. package/dist/agents/operator/contexts/operator.context.d.ts +8 -1
  37. package/dist/agents/operator/contexts/operator.context.d.ts.map +1 -1
  38. package/dist/agents/operator/contexts/operator.context.js +6 -0
  39. package/dist/agents/operator/contexts/operator.context.js.map +1 -1
  40. package/dist/agents/operator/controllers/operator.controller.d.ts +4 -1
  41. package/dist/agents/operator/controllers/operator.controller.d.ts.map +1 -1
  42. package/dist/agents/operator/controllers/operator.controller.js +15 -8
  43. package/dist/agents/operator/controllers/operator.controller.js.map +1 -1
  44. package/dist/agents/operator/services/operator.service.d.ts +15 -0
  45. package/dist/agents/operator/services/operator.service.d.ts.map +1 -1
  46. package/dist/agents/operator/services/operator.service.js +31 -8
  47. package/dist/agents/operator/services/operator.service.js.map +1 -1
  48. package/dist/agents/operator/tools/operator.tool.registry.d.ts +2 -1
  49. package/dist/agents/operator/tools/operator.tool.registry.d.ts.map +1 -1
  50. package/dist/agents/operator/tools/operator.tool.registry.js +8 -3
  51. package/dist/agents/operator/tools/operator.tool.registry.js.map +1 -1
  52. package/dist/agents/responder/contexts/responder.context.d.ts +6 -0
  53. package/dist/agents/responder/contexts/responder.context.d.ts.map +1 -1
  54. package/dist/agents/responder/contexts/responder.context.js +2 -0
  55. package/dist/agents/responder/contexts/responder.context.js.map +1 -1
  56. package/dist/agents/responder/nodes/responder.answer.node.service.d.ts.map +1 -1
  57. package/dist/agents/responder/nodes/responder.answer.node.service.js +8 -2
  58. package/dist/agents/responder/nodes/responder.answer.node.service.js.map +1 -1
  59. package/dist/agents/responder/services/responder.service.d.ts +2 -0
  60. package/dist/agents/responder/services/responder.service.d.ts.map +1 -1
  61. package/dist/agents/responder/services/responder.service.js +1 -0
  62. package/dist/agents/responder/services/responder.service.js.map +1 -1
  63. package/dist/common/decorators/oauth.scopes.decorator.d.ts +2 -2
  64. package/dist/common/decorators/oauth.scopes.decorator.js +2 -2
  65. package/dist/common/helpers/credit-gate.d.ts +8 -0
  66. package/dist/common/helpers/credit-gate.d.ts.map +1 -1
  67. package/dist/common/helpers/credit-gate.js +11 -0
  68. package/dist/common/helpers/credit-gate.js.map +1 -1
  69. package/dist/common/helpers/define-entity.d.ts.map +1 -1
  70. package/dist/common/helpers/define-entity.js +6 -0
  71. package/dist/common/helpers/define-entity.js.map +1 -1
  72. package/dist/common/interfaces/assistant.scope.interface.d.ts +47 -0
  73. package/dist/common/interfaces/assistant.scope.interface.d.ts.map +1 -0
  74. package/dist/common/interfaces/assistant.scope.interface.js +14 -0
  75. package/dist/common/interfaces/assistant.scope.interface.js.map +1 -0
  76. package/dist/common/interfaces/assistant.title.interface.d.ts +30 -0
  77. package/dist/common/interfaces/assistant.title.interface.d.ts.map +1 -0
  78. package/dist/common/interfaces/assistant.title.interface.js +18 -0
  79. package/dist/common/interfaces/assistant.title.interface.js.map +1 -0
  80. package/dist/common/interfaces/datamodel.interface.d.ts +1 -0
  81. package/dist/common/interfaces/datamodel.interface.d.ts.map +1 -1
  82. package/dist/common/interfaces/entity.schema.interface.d.ts +63 -6
  83. package/dist/common/interfaces/entity.schema.interface.d.ts.map +1 -1
  84. package/dist/common/interfaces/external.entity.source.interface.d.ts +43 -0
  85. package/dist/common/interfaces/external.entity.source.interface.d.ts.map +1 -0
  86. package/dist/common/interfaces/external.entity.source.interface.js +17 -0
  87. package/dist/common/interfaces/external.entity.source.interface.js.map +1 -0
  88. package/dist/common/interfaces/index.d.ts +4 -0
  89. package/dist/common/interfaces/index.d.ts.map +1 -1
  90. package/dist/common/interfaces/index.js +4 -0
  91. package/dist/common/interfaces/index.js.map +1 -1
  92. package/dist/common/interfaces/s3.key-access.policy.interface.d.ts +48 -0
  93. package/dist/common/interfaces/s3.key-access.policy.interface.d.ts.map +1 -0
  94. package/dist/common/interfaces/s3.key-access.policy.interface.js +36 -0
  95. package/dist/common/interfaces/s3.key-access.policy.interface.js.map +1 -0
  96. package/dist/common/tokens.d.ts +13 -0
  97. package/dist/common/tokens.d.ts.map +1 -1
  98. package/dist/common/tokens.js +14 -1
  99. package/dist/common/tokens.js.map +1 -1
  100. package/dist/config/base.config.d.ts +13 -0
  101. package/dist/config/base.config.d.ts.map +1 -1
  102. package/dist/config/base.config.js +2 -0
  103. package/dist/config/base.config.js.map +1 -1
  104. package/dist/config/interfaces/base.config.interface.d.ts +2 -0
  105. package/dist/config/interfaces/base.config.interface.d.ts.map +1 -1
  106. package/dist/config/interfaces/config.assistant.interface.d.ts +9 -0
  107. package/dist/config/interfaces/config.assistant.interface.d.ts.map +1 -0
  108. package/dist/config/interfaces/config.assistant.interface.js +3 -0
  109. package/dist/config/interfaces/config.assistant.interface.js.map +1 -0
  110. package/dist/config/interfaces/config.oauth.interface.d.ts +8 -0
  111. package/dist/config/interfaces/config.oauth.interface.d.ts.map +1 -1
  112. package/dist/config/interfaces/config.operator.interface.d.ts +5 -0
  113. package/dist/config/interfaces/config.operator.interface.d.ts.map +1 -1
  114. package/dist/config/interfaces/index.d.ts +1 -0
  115. package/dist/config/interfaces/index.d.ts.map +1 -1
  116. package/dist/config/interfaces/index.js +1 -0
  117. package/dist/config/interfaces/index.js.map +1 -1
  118. package/dist/core/neo4j/abstracts/abstract.repository.d.ts +26 -0
  119. package/dist/core/neo4j/abstracts/abstract.repository.d.ts.map +1 -1
  120. package/dist/core/neo4j/abstracts/abstract.repository.js +70 -37
  121. package/dist/core/neo4j/abstracts/abstract.repository.js.map +1 -1
  122. package/dist/core/neo4j/index.d.ts +2 -0
  123. package/dist/core/neo4j/index.d.ts.map +1 -1
  124. package/dist/core/neo4j/index.js +5 -1
  125. package/dist/core/neo4j/index.js.map +1 -1
  126. package/dist/core/neo4j/queries/update.relationship.d.ts +8 -0
  127. package/dist/core/neo4j/queries/update.relationship.d.ts.map +1 -1
  128. package/dist/core/neo4j/queries/update.relationship.js +4 -1
  129. package/dist/core/neo4j/queries/update.relationship.js.map +1 -1
  130. package/dist/core/neo4j/services/neo4j.service.d.ts +10 -0
  131. package/dist/core/neo4j/services/neo4j.service.d.ts.map +1 -1
  132. package/dist/core/neo4j/services/neo4j.service.js +12 -1
  133. package/dist/core/neo4j/services/neo4j.service.js.map +1 -1
  134. package/dist/foundations/assistant/assistant.module.d.ts +7 -2
  135. package/dist/foundations/assistant/assistant.module.d.ts.map +1 -1
  136. package/dist/foundations/assistant/assistant.module.js +37 -1
  137. package/dist/foundations/assistant/assistant.module.js.map +1 -1
  138. package/dist/foundations/assistant/controllers/assistant.controller.d.ts +4 -1
  139. package/dist/foundations/assistant/controllers/assistant.controller.d.ts.map +1 -1
  140. package/dist/foundations/assistant/controllers/assistant.controller.js +15 -8
  141. package/dist/foundations/assistant/controllers/assistant.controller.js.map +1 -1
  142. package/dist/foundations/assistant/services/assistant.service.d.ts +37 -1
  143. package/dist/foundations/assistant/services/assistant.service.d.ts.map +1 -1
  144. package/dist/foundations/assistant/services/assistant.service.js +144 -11
  145. package/dist/foundations/assistant/services/assistant.service.js.map +1 -1
  146. package/dist/foundations/assistant-action/controllers/assistant-action.controller.d.ts +7 -1
  147. package/dist/foundations/assistant-action/controllers/assistant-action.controller.d.ts.map +1 -1
  148. package/dist/foundations/assistant-action/controllers/assistant-action.controller.js +15 -5
  149. package/dist/foundations/assistant-action/controllers/assistant-action.controller.js.map +1 -1
  150. package/dist/foundations/assistant-message/assistant-message.module.d.ts +4 -0
  151. package/dist/foundations/assistant-message/assistant-message.module.d.ts.map +1 -1
  152. package/dist/foundations/assistant-message/assistant-message.module.js +27 -2
  153. package/dist/foundations/assistant-message/assistant-message.module.js.map +1 -1
  154. package/dist/foundations/company/entities/company.d.ts +4 -4
  155. package/dist/foundations/company/entities/company.d.ts.map +1 -1
  156. package/dist/foundations/company/entities/company.js +2 -2
  157. package/dist/foundations/company/entities/company.js.map +1 -1
  158. package/dist/foundations/content/interfaces/content.extension.interface.d.ts +22 -0
  159. package/dist/foundations/content/interfaces/content.extension.interface.d.ts.map +1 -1
  160. package/dist/foundations/content/interfaces/content.extension.interface.js.map +1 -1
  161. package/dist/foundations/content/services/content.cypher.service.d.ts +27 -0
  162. package/dist/foundations/content/services/content.cypher.service.d.ts.map +1 -1
  163. package/dist/foundations/content/services/content.cypher.service.js +68 -9
  164. package/dist/foundations/content/services/content.cypher.service.js.map +1 -1
  165. package/dist/foundations/oauth/constants/oauth.scopes.d.ts +26 -11
  166. package/dist/foundations/oauth/constants/oauth.scopes.d.ts.map +1 -1
  167. package/dist/foundations/oauth/constants/oauth.scopes.js +13 -18
  168. package/dist/foundations/oauth/constants/oauth.scopes.js.map +1 -1
  169. package/dist/foundations/oauth/controllers/oauth.authorize.controller.d.ts.map +1 -1
  170. package/dist/foundations/oauth/controllers/oauth.authorize.controller.js +3 -0
  171. package/dist/foundations/oauth/controllers/oauth.authorize.controller.js.map +1 -1
  172. package/dist/foundations/oauth/controllers/oauth.registration.controller.d.ts.map +1 -1
  173. package/dist/foundations/oauth/controllers/oauth.registration.controller.js +2 -0
  174. package/dist/foundations/oauth/controllers/oauth.registration.controller.js.map +1 -1
  175. package/dist/foundations/oauth/controllers/oauth.token.controller.d.ts.map +1 -1
  176. package/dist/foundations/oauth/controllers/oauth.token.controller.js +2 -0
  177. package/dist/foundations/oauth/controllers/oauth.token.controller.js.map +1 -1
  178. package/dist/foundations/oauth/dtos/oauth.authorize.dto.d.ts +1 -0
  179. package/dist/foundations/oauth/dtos/oauth.authorize.dto.d.ts.map +1 -1
  180. package/dist/foundations/oauth/dtos/oauth.authorize.dto.js +5 -0
  181. package/dist/foundations/oauth/dtos/oauth.authorize.dto.js.map +1 -1
  182. package/dist/foundations/oauth/entities/oauth.authorization.code.entity.d.ts +2 -0
  183. package/dist/foundations/oauth/entities/oauth.authorization.code.entity.d.ts.map +1 -1
  184. package/dist/foundations/oauth/entities/oauth.authorization.code.entity.js.map +1 -1
  185. package/dist/foundations/oauth/entities/oauth.authorization.code.model.d.ts.map +1 -1
  186. package/dist/foundations/oauth/entities/oauth.authorization.code.model.js +1 -0
  187. package/dist/foundations/oauth/entities/oauth.authorization.code.model.js.map +1 -1
  188. package/dist/foundations/oauth/filters/oauth.error.filter.d.ts +16 -0
  189. package/dist/foundations/oauth/filters/oauth.error.filter.d.ts.map +1 -0
  190. package/dist/foundations/oauth/filters/oauth.error.filter.js +70 -0
  191. package/dist/foundations/oauth/filters/oauth.error.filter.js.map +1 -0
  192. package/dist/foundations/oauth/guards/oauth.token.guard.d.ts +2 -2
  193. package/dist/foundations/oauth/guards/oauth.token.guard.js +2 -2
  194. package/dist/foundations/oauth/index.d.ts +2 -1
  195. package/dist/foundations/oauth/index.d.ts.map +1 -1
  196. package/dist/foundations/oauth/index.js +3 -1
  197. package/dist/foundations/oauth/index.js.map +1 -1
  198. package/dist/foundations/oauth/oauth.module.d.ts +2 -2
  199. package/dist/foundations/oauth/oauth.module.d.ts.map +1 -1
  200. package/dist/foundations/oauth/oauth.module.js +11 -5
  201. package/dist/foundations/oauth/oauth.module.js.map +1 -1
  202. package/dist/foundations/oauth/repositories/oauth.repository.d.ts +20 -1
  203. package/dist/foundations/oauth/repositories/oauth.repository.d.ts.map +1 -1
  204. package/dist/foundations/oauth/repositories/oauth.repository.js +54 -10
  205. package/dist/foundations/oauth/repositories/oauth.repository.js.map +1 -1
  206. package/dist/foundations/oauth/services/index.d.ts +1 -0
  207. package/dist/foundations/oauth/services/index.d.ts.map +1 -1
  208. package/dist/foundations/oauth/services/index.js +1 -0
  209. package/dist/foundations/oauth/services/index.js.map +1 -1
  210. package/dist/foundations/oauth/services/oauth.client.service.d.ts +3 -1
  211. package/dist/foundations/oauth/services/oauth.client.service.d.ts.map +1 -1
  212. package/dist/foundations/oauth/services/oauth.client.service.js +7 -5
  213. package/dist/foundations/oauth/services/oauth.client.service.js.map +1 -1
  214. package/dist/foundations/oauth/services/oauth.scope.service.d.ts +32 -0
  215. package/dist/foundations/oauth/services/oauth.scope.service.d.ts.map +1 -0
  216. package/dist/foundations/oauth/services/oauth.scope.service.js +71 -0
  217. package/dist/foundations/oauth/services/oauth.scope.service.js.map +1 -0
  218. package/dist/foundations/oauth/services/oauth.service.d.ts +13 -1
  219. package/dist/foundations/oauth/services/oauth.service.d.ts.map +1 -1
  220. package/dist/foundations/oauth/services/oauth.service.js +18 -8
  221. package/dist/foundations/oauth/services/oauth.service.js.map +1 -1
  222. package/dist/foundations/relevancy/queries/relevance.d.ts +20 -0
  223. package/dist/foundations/relevancy/queries/relevance.d.ts.map +1 -1
  224. package/dist/foundations/relevancy/queries/relevance.js +44 -8
  225. package/dist/foundations/relevancy/queries/relevance.js.map +1 -1
  226. package/dist/foundations/relevancy/repositories/relevancy.repository.d.ts +41 -2
  227. package/dist/foundations/relevancy/repositories/relevancy.repository.d.ts.map +1 -1
  228. package/dist/foundations/relevancy/repositories/relevancy.repository.js +89 -6
  229. package/dist/foundations/relevancy/repositories/relevancy.repository.js.map +1 -1
  230. package/dist/foundations/relevancy/services/relevancy.service.js +1 -1
  231. package/dist/foundations/relevancy/services/relevancy.service.js.map +1 -1
  232. package/dist/foundations/s3/controllers/s3.controller.d.ts +10 -1
  233. package/dist/foundations/s3/controllers/s3.controller.d.ts.map +1 -1
  234. package/dist/foundations/s3/controllers/s3.controller.js +33 -2
  235. package/dist/foundations/s3/controllers/s3.controller.js.map +1 -1
  236. package/dist/foundations/user/controllers/user.controller.d.ts +1 -1
  237. package/dist/foundations/user/controllers/user.controller.d.ts.map +1 -1
  238. package/dist/foundations/user/controllers/user.controller.js +4 -4
  239. package/dist/foundations/user/controllers/user.controller.js.map +1 -1
  240. package/dist/foundations/user/entities/user.d.ts +17 -17
  241. package/dist/foundations/user/entities/user.d.ts.map +1 -1
  242. package/dist/foundations/user/entities/user.js +7 -7
  243. package/dist/foundations/user/entities/user.js.map +1 -1
  244. package/dist/foundations/user/user.module.js +2 -2
  245. package/dist/foundations/user/user.module.js.map +1 -1
  246. package/dist/mcp/services/mcp.entity.write.service.d.ts +9 -4
  247. package/dist/mcp/services/mcp.entity.write.service.d.ts.map +1 -1
  248. package/dist/mcp/services/mcp.entity.write.service.js +12 -4
  249. package/dist/mcp/services/mcp.entity.write.service.js.map +1 -1
  250. package/dist/mcp/services/mcp.errors.d.ts +1 -1
  251. package/dist/mcp/services/mcp.errors.d.ts.map +1 -1
  252. package/dist/mcp/services/mcp.errors.js.map +1 -1
  253. package/dist/mcp/services/mcp.tool.registry.d.ts +10 -1
  254. package/dist/mcp/services/mcp.tool.registry.d.ts.map +1 -1
  255. package/dist/mcp/services/mcp.tool.registry.js +24 -2
  256. package/dist/mcp/services/mcp.tool.registry.js.map +1 -1
  257. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.assistant.interface.d.ts","sourceRoot":"","sources":["../../../src/config/interfaces/config.assistant.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,wBAAwB;IACvC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=config.assistant.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.assistant.interface.js","sourceRoot":"","sources":["../../../src/config/interfaces/config.assistant.interface.ts"],"names":[],"mappings":""}
@@ -1,3 +1,4 @@
1
+ import { OAuthScopeDefinition } from "../../foundations/oauth/constants/oauth.scopes";
1
2
  /**
2
3
  * OAuth2 Server Configuration Interface
3
4
  *
@@ -46,5 +47,12 @@ export interface ConfigOAuthInterface {
46
47
  * @default true
47
48
  */
48
49
  rotateRefreshTokens: boolean;
50
+ /**
51
+ * App-specific scopes registered on top of the built-ins
52
+ * (read, write, profile, mcp, admin).
53
+ * A scope string that duplicates a built-in or another entry is rejected at boot.
54
+ * @default []
55
+ */
56
+ additionalScopes: OAuthScopeDefinition[];
49
57
  }
50
58
  //# sourceMappingURL=config.oauth.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.oauth.interface.d.ts","sourceRoot":"","sources":["../../../src/config/interfaces/config.oauth.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;IACH,yBAAyB,EAAE,MAAM,CAAC;IAElC;;;;OAIG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAE5B;;;;OAIG;IACH,oBAAoB,EAAE,MAAM,CAAC;IAE7B;;;;;OAKG;IACH,2BAA2B,EAAE,OAAO,CAAC;IAErC;;;;;OAKG;IACH,mBAAmB,EAAE,OAAO,CAAC;CAC9B"}
1
+ {"version":3,"file":"config.oauth.interface.d.ts","sourceRoot":"","sources":["../../../src/config/interfaces/config.oauth.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gDAAgD,CAAC;AAEtF;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;IACH,yBAAyB,EAAE,MAAM,CAAC;IAElC;;;;OAIG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAE5B;;;;OAIG;IACH,oBAAoB,EAAE,MAAM,CAAC;IAE7B;;;;;OAKG;IACH,2BAA2B,EAAE,OAAO,CAAC;IAErC;;;;;OAKG;IACH,mBAAmB,EAAE,OAAO,CAAC;IAE7B;;;;;OAKG;IACH,gBAAgB,EAAE,oBAAoB,EAAE,CAAC;CAC1C"}
@@ -5,5 +5,10 @@ export interface ConfigOperatorInterface {
5
5
  * @default 7
6
6
  */
7
7
  approvalTtlDays?: number;
8
+ /**
9
+ * Whether the operator gets the search_communities tool.
10
+ * @default true — set false to omit the search_communities (DRIFT) tool for hosts with no :Community nodes
11
+ */
12
+ communitySearch?: boolean;
8
13
  }
9
14
  //# sourceMappingURL=config.operator.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.operator.interface.d.ts","sourceRoot":"","sources":["../../../src/config/interfaces/config.operator.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B"}
1
+ {"version":3,"file":"config.operator.interface.d.ts","sourceRoot":"","sources":["../../../src/config/interfaces/config.operator.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B"}
@@ -5,6 +5,7 @@ export * from "./base.config.interface";
5
5
  export * from "./config.ai.interface";
6
6
  export * from "./config.api.interface";
7
7
  export * from "./config.app.interface";
8
+ export * from "./config.assistant.interface";
8
9
  export * from "./config.auth.interface";
9
10
  export * from "./config.cache.interface";
10
11
  export * from "./config.chunker.interface";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/interfaces/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sCAAsC,CAAC;AACrD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/interfaces/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sCAAsC,CAAC;AACrD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC"}
@@ -21,6 +21,7 @@ __exportStar(require("./base.config.interface"), exports);
21
21
  __exportStar(require("./config.ai.interface"), exports);
22
22
  __exportStar(require("./config.api.interface"), exports);
23
23
  __exportStar(require("./config.app.interface"), exports);
24
+ __exportStar(require("./config.assistant.interface"), exports);
24
25
  __exportStar(require("./config.auth.interface"), exports);
25
26
  __exportStar(require("./config.cache.interface"), exports);
26
27
  __exportStar(require("./config.chunker.interface"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/config/interfaces/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,0DAAwC;AACxC,wDAAsC;AACtC,yDAAuC;AACvC,yDAAuC;AACvC,0DAAwC;AACxC,2DAAyC;AACzC,6DAA2C;AAC3C,kEAAgD;AAChD,mEAAiD;AACjD,0DAAwC;AACxC,6DAA2C;AAC3C,6DAA2C;AAC3C,uEAAqD;AACrD,4DAA0C;AAC1C,2DAAyC;AACzC,gEAA8C;AAC9C,iEAA+C;AAC/C,qDAAmC;AACnC,+DAA6C;AAC7C,yDAAuC;AACvC,6DAA2C;AAC3C,yDAAuC;AACvC,mEAAiD;AACjD,2DAAyC;AACzC,2DAAyC;AACzC,8DAA4C;AAC5C,6DAA2C;AAC3C,+DAA6C;AAC7C,2DAAyC;AACzC,+DAA6C;AAC7C,wDAAsC;AACtC,4DAA0C;AAC1C,gEAA8C;AAC9C,2DAAyC;AACzC,gEAA8C;AAC9C,2DAAyC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/config/interfaces/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,0DAAwC;AACxC,wDAAsC;AACtC,yDAAuC;AACvC,yDAAuC;AACvC,+DAA6C;AAC7C,0DAAwC;AACxC,2DAAyC;AACzC,6DAA2C;AAC3C,kEAAgD;AAChD,mEAAiD;AACjD,0DAAwC;AACxC,6DAA2C;AAC3C,6DAA2C;AAC3C,uEAAqD;AACrD,4DAA0C;AAC1C,2DAAyC;AACzC,gEAA8C;AAC9C,iEAA+C;AAC/C,qDAAmC;AACnC,+DAA6C;AAC7C,yDAAuC;AACvC,6DAA2C;AAC3C,yDAAuC;AACvC,mEAAiD;AACjD,2DAAyC;AACzC,2DAAyC;AACzC,8DAA4C;AAC5C,6DAA2C;AAC3C,+DAA6C;AAC7C,2DAAyC;AACzC,+DAA6C;AAC7C,wDAAsC;AACtC,4DAA0C;AAC1C,gEAA8C;AAC9C,2DAAyC;AACzC,gEAA8C;AAC9C,2DAAyC"}
@@ -58,6 +58,15 @@ export declare abstract class AbstractRepository<T, R extends Record<string, Rel
58
58
  * This ensures readOne() gets complete edge props collections even with multiple related entities.
59
59
  */
60
60
  protected buildReturnStatement(): string;
61
+ /**
62
+ * Cypher map in the Neo4j node shape EntityFactory maps (`{ labels, properties }`),
63
+ * carrying only the node's id: used for `externalSource` relationships, whose
64
+ * records live outside this database, so no stored property is ever returned.
65
+ * Labels are kept because polymorphic discriminators resolve the target by label.
66
+ */
67
+ protected idOnlyNodeExpression(alias: string): string;
68
+ /** The RETURN part for a related node: the node itself, or its id-only projection for an externalSource relationship. */
69
+ protected projectRelatedNode(alias: string, externalSource?: boolean): string;
61
70
  /**
62
71
  * Returns the Cypher query parameters that `buildReturnStatement` references
63
72
  * for multi-label polymorphic relationships. Each entry maps
@@ -79,6 +88,23 @@ export declare abstract class AbstractRepository<T, R extends Record<string, Rel
79
88
  searchField: string;
80
89
  searchValue: string;
81
90
  }): Promise<T | null>;
91
+ /**
92
+ * Fulltext branch shared by `find` and `findByRelated`.
93
+ *
94
+ * Every hit passes the SAME `buildDefaultMatch()` + `buildUserHasAccess()` as the
95
+ * non-term branch, so a term search can never return a node the plain list would
96
+ * hide (another company's node, or one the current user has no access to). The
97
+ * access block runs inside a `CALL {}` per hit, restricted to that node, so the
98
+ * fulltext `score` survives the `WITH` clauses that subclass overrides emit, and
99
+ * results stay ordered by `score DESC`.
100
+ *
101
+ * @param hitFilter - optional predicate over the raw `node` yielded by the index
102
+ * @param filterClause - optional structured-filter clause over the entity alias
103
+ */
104
+ protected buildFulltextAccessCheckedMatch(params: {
105
+ hitFilter?: string;
106
+ filterClause?: string;
107
+ }): string;
82
108
  /**
83
109
  * Find entities with optional search term, ordering, pagination, and structured filters.
84
110
  *
@@ -1 +1 @@
1
- {"version":3,"file":"abstract.repository.d.ts","sourceRoot":"","sources":["../../../../src/core/neo4j/abstracts/abstract.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abstract.repository.d.ts","sourceRoot":"","sources":["../../../../src/core/neo4j/abstracts/abstract.repository.ts"],"names":[],"mappings":"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"}
@@ -187,14 +187,14 @@ class AbstractRepository {
187
187
  else {
188
188
  query += `OPTIONAL MATCH (${relatedNodeName})<-[:${discRel}]-(${discTargetNodeName}:${rel.model.labelName})\n`;
189
189
  }
190
- returnParts.push(discTargetNodeName);
190
+ returnParts.push(this.projectRelatedNode(discTargetNodeName, rel.externalSource));
191
191
  }
192
192
  }
193
193
  // Add edge properties handling
194
194
  if (hasFields) {
195
195
  if (rel.cardinality === "one") {
196
196
  // SINGLE relationship: aliased columns for edge properties (existing behavior)
197
- returnParts.push(relatedNodeName);
197
+ returnParts.push(this.projectRelatedNode(relatedNodeName, rel.externalSource));
198
198
  for (const field of rel.fields) {
199
199
  returnParts.push(`${relAlias}.${field.name} AS ${nodeName}_${name}_relationship_${field.name}`);
200
200
  }
@@ -203,14 +203,15 @@ class AbstractRepository {
203
203
  // MANY relationship with fields: aggregate nodes and edge props together
204
204
  // Don't add to returnParts yet - will UNWIND after aggregation
205
205
  manyRelationshipsWithFields.push({ name, relatedNodeName });
206
- collectParts.push(`COLLECT(DISTINCT ${relatedNodeName}) AS ${relatedNodeName}s`);
206
+ const collected = rel.externalSource ? this.idOnlyNodeExpression(relatedNodeName) : relatedNodeName;
207
+ collectParts.push(`COLLECT(DISTINCT ${collected}) AS ${relatedNodeName}s`);
207
208
  const edgePropsFields = rel.fields.map((f) => `${f.name}: ${relAlias}.${f.name}`).join(", ");
208
209
  collectParts.push(`COLLECT(CASE WHEN ${relatedNodeName} IS NOT NULL THEN { nodeId: ${relatedNodeName}.id, edgeProps: {${edgePropsFields}} } END) AS ${nodeName}_${name}_edgePropsCollection`);
209
210
  }
210
211
  }
211
212
  else {
212
213
  // No fields - just include the related node directly
213
- returnParts.push(relatedNodeName);
214
+ returnParts.push(this.projectRelatedNode(relatedNodeName, rel.externalSource));
214
215
  }
215
216
  // Nested include expansion — emits OPTIONAL MATCH clauses for each dot-path
216
217
  // declared on this relationship. Deduplicates shared path prefixes.
@@ -218,7 +219,8 @@ class AbstractRepository {
218
219
  for (const path of rel.include) {
219
220
  let currentAlias = relatedNodeName; // e.g. "round_turns"
220
221
  let currentNodeName = rel.model.nodeName; // e.g. "turn"
221
- for (const segment of path.split(".")) {
222
+ const segments = path.split(".");
223
+ for (const [segmentIndex, segment] of segments.entries()) {
222
224
  const targetModel = registry_1.modelRegistry.get(currentNodeName);
223
225
  const candidates = [
224
226
  ...(targetModel?.singleChildrenRelationships ?? []),
@@ -244,7 +246,11 @@ class AbstractRepository {
244
246
  ? `(${currentAlias})<-[:${nested.relationship}]-(${childAlias}:${nestedLabel})`
245
247
  : `(${currentAlias})-[:${nested.relationship}]->(${childAlias}:${nestedLabel})`;
246
248
  query += `OPTIONAL MATCH ${pattern}\n`;
247
- returnParts.push(childAlias);
249
+ returnParts.push(this.projectRelatedNode(childAlias, nested.externalSource));
250
+ }
251
+ if (nested.externalSource && segmentIndex < segments.length - 1) {
252
+ throw new Error(`include "${path}": relationship "${segment}" on "${currentNodeName}" is an externalSource ` +
253
+ `relationship; its node is projected as id + labels only and cannot be expanded further.`);
248
254
  }
249
255
  currentAlias = childAlias;
250
256
  currentNodeName = nested.nodeName;
@@ -279,6 +285,19 @@ class AbstractRepository {
279
285
  }
280
286
  return query;
281
287
  }
288
+ /**
289
+ * Cypher map in the Neo4j node shape EntityFactory maps (`{ labels, properties }`),
290
+ * carrying only the node's id: used for `externalSource` relationships, whose
291
+ * records live outside this database, so no stored property is ever returned.
292
+ * Labels are kept because polymorphic discriminators resolve the target by label.
293
+ */
294
+ idOnlyNodeExpression(alias) {
295
+ return `CASE WHEN ${alias} IS NULL THEN NULL ELSE { labels: labels(${alias}), properties: { id: ${alias}.id } } END`;
296
+ }
297
+ /** The RETURN part for a related node: the node itself, or its id-only projection for an externalSource relationship. */
298
+ projectRelatedNode(alias, externalSource) {
299
+ return externalSource ? `${this.idOnlyNodeExpression(alias)} AS ${alias}` : alias;
300
+ }
282
301
  /**
283
302
  * Returns the Cypher query parameters that `buildReturnStatement` references
284
303
  * for multi-label polymorphic relationships. Each entry maps
@@ -324,6 +343,40 @@ class AbstractRepository {
324
343
  throw new common_1.HttpException(`Forbidden`, common_1.HttpStatus.FORBIDDEN);
325
344
  return null;
326
345
  }
346
+ /**
347
+ * Fulltext branch shared by `find` and `findByRelated`.
348
+ *
349
+ * Every hit passes the SAME `buildDefaultMatch()` + `buildUserHasAccess()` as the
350
+ * non-term branch, so a term search can never return a node the plain list would
351
+ * hide (another company's node, or one the current user has no access to). The
352
+ * access block runs inside a `CALL {}` per hit, restricted to that node, so the
353
+ * fulltext `score` survives the `WITH` clauses that subclass overrides emit, and
354
+ * results stay ordered by `score DESC`.
355
+ *
356
+ * @param hitFilter - optional predicate over the raw `node` yielded by the index
357
+ * @param filterClause - optional structured-filter clause over the entity alias
358
+ */
359
+ buildFulltextAccessCheckedMatch(params) {
360
+ const { nodeName } = this.descriptor.model;
361
+ const companyId = this.clsService.get("companyId");
362
+ const currentUserId = this.clsService.get("userId");
363
+ const carried = `${nodeName}${companyId ? `, company` : ``}${currentUserId ? `, currentUser` : ``}`;
364
+ return `CALL db.index.fulltext.queryNodes("${this.descriptor.fulltextIndexName}", $term)
365
+ YIELD node, score
366
+ ${params.hitFilter ? `WHERE ${params.hitFilter}` : ``}
367
+ WITH node AS ${nodeName}, score${companyId ? `, company` : ``}${currentUserId ? `, currentUser` : ``}
368
+ CALL {
369
+ WITH ${carried}
370
+ ${this.buildDefaultMatch()}
371
+ ${this.securityService.userHasAccess({ validator: () => this.buildUserHasAccess() })}
372
+ RETURN true AS ${nodeName}_fulltextAccess
373
+ LIMIT 1
374
+ }
375
+ WITH ${carried}, score
376
+ ${params.filterClause ? `WHERE ${params.filterClause}` : ``}
377
+ ORDER BY score DESC
378
+ `;
379
+ }
327
380
  /**
328
381
  * Find entities with optional search term, ordering, pagination, and structured filters.
329
382
  *
@@ -354,18 +407,7 @@ class AbstractRepository {
354
407
  ? (0, build_order_by_1.buildOrderByClause)({ nodeAlias: nodeName, sort: params.orderByFields })
355
408
  : `ORDER BY ${nodeName}.${params.orderBy ?? this.descriptor.defaultOrderBy ?? "updatedAt DESC"}`;
356
409
  if (params.term && this.descriptor.fulltextIndexName) {
357
- const fulltextWhere = this.descriptor.isCompanyScoped
358
- ? `WHERE (node)-[:BELONGS_TO]->(company)${filterResult.clause ? ` AND ${filterResult.clause}` : ""}`
359
- : filterResult.clause
360
- ? `WHERE ${filterResult.clause}`
361
- : ``;
362
- query.query += `CALL db.index.fulltext.queryNodes("${this.descriptor.fulltextIndexName}", $term)
363
- YIELD node, score
364
- ${fulltextWhere}
365
-
366
- WITH node as ${nodeName}, score
367
- ORDER BY score DESC
368
- `;
410
+ query.query += this.buildFulltextAccessCheckedMatch({ filterClause: filterResult.clause });
369
411
  }
370
412
  else {
371
413
  query.query += `
@@ -472,25 +514,16 @@ class AbstractRepository {
472
514
  ? (0, build_order_by_1.buildOrderByClause)({ nodeAlias: nodeName, sort: params.orderByFields })
473
515
  : `ORDER BY ${nodeName}.${params.orderBy ?? this.descriptor.defaultOrderBy ?? "updatedAt DESC"}`;
474
516
  if (params.term && this.descriptor.fulltextIndexName) {
475
- // Use fulltext search with relationship filter
476
- query.query += `CALL db.index.fulltext.queryNodes("${this.descriptor.fulltextIndexName}", $term)
477
- YIELD node, score
478
- ${this.descriptor.isCompanyScoped ? `WHERE (node)-[:BELONGS_TO]->(company)` : `WHERE true`}
479
- `;
480
- // Add relationship filter based on direction.
481
- // Use EXISTS subquery — pattern expressions inside WHERE cannot
482
- // introduce new variables, so we cannot inline `WHERE related.id IN $relatedIds`
483
- // on the related node directly.
484
- if (rel.direction === "in") {
485
- query.query += `AND EXISTS { MATCH (node)<-[:${rel.relationship}]-(related:${rel.model.labelName}) WHERE related.id IN $relatedIds }\n`;
486
- }
487
- else {
488
- query.query += `AND EXISTS { MATCH (node)-[:${rel.relationship}]->(related:${rel.model.labelName}) WHERE related.id IN $relatedIds }\n`;
489
- }
490
- query.query += `WITH node as ${nodeName}, score
491
- ${filterResult.clause ? `WHERE ${filterResult.clause}` : ""}
492
- ORDER BY score DESC
493
- `;
517
+ // Fulltext search with relationship filter. Use EXISTS subquery — pattern
518
+ // expressions inside WHERE cannot introduce new variables, so we cannot
519
+ // inline `WHERE related.id IN $relatedIds` on the related node directly.
520
+ const relatedFilter = rel.direction === "in"
521
+ ? `EXISTS { MATCH (node)<-[:${rel.relationship}]-(related:${rel.model.labelName}) WHERE related.id IN $relatedIds }`
522
+ : `EXISTS { MATCH (node)-[:${rel.relationship}]->(related:${rel.model.labelName}) WHERE related.id IN $relatedIds }`;
523
+ query.query += this.buildFulltextAccessCheckedMatch({
524
+ hitFilter: relatedFilter,
525
+ filterClause: filterResult.clause,
526
+ });
494
527
  }
495
528
  else {
496
529
  // Use default query with relationship match
@@ -1 +1 @@
1
- {"version":3,"file":"abstract.repository.js","sourceRoot":"","sources":["../../../../src/core/neo4j/abstracts/abstract.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abstract.repository.js","sourceRoot":"","sources":["../../../../src/core/neo4j/abstracts/abstract.repository.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ export { TokenResolverService, type DynamicTokenResult } from "./services/token-
11
11
  export { EntityFactory } from "./factories/entity.factory";
12
12
  export { orderBy } from "./queries/order.by";
13
13
  export { buildFulltextTerm, escapeLuceneTerm } from "./helpers/build-fulltext-term";
14
+ export { buildFilterClauses, type BuildFilterClausesResult } from "./helpers/build-filter-clauses";
15
+ export { buildOrderByClause } from "./helpers/build-order-by";
14
16
  export { updateRelationshipQuery } from "./queries/update.relationship";
15
17
  export * from "./abstracts";
16
18
  export * from "./types";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/neo4j/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,KAAK,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAGxE,cAAc,aAAa,CAAC;AAG5B,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/neo4j/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,KAAK,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,KAAK,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AACnG,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAGxE,cAAc,aAAa,CAAC;AAG5B,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC"}
@@ -20,7 +20,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
20
20
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
21
  };
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
- exports.modelRegistry = exports.ModelRegistry = exports.updateRelationshipQuery = exports.escapeLuceneTerm = exports.buildFulltextTerm = exports.orderBy = exports.EntityFactory = exports.TokenResolverService = void 0;
23
+ exports.modelRegistry = exports.ModelRegistry = exports.updateRelationshipQuery = exports.buildOrderByClause = exports.buildFilterClauses = exports.escapeLuceneTerm = exports.buildFulltextTerm = exports.orderBy = exports.EntityFactory = exports.TokenResolverService = void 0;
24
24
  __exportStar(require("./neo4j.module"), exports);
25
25
  __exportStar(require("./services/neo4j.service"), exports);
26
26
  __exportStar(require("./services/cypher.service"), exports);
@@ -33,6 +33,10 @@ Object.defineProperty(exports, "orderBy", { enumerable: true, get: function () {
33
33
  var build_fulltext_term_1 = require("./helpers/build-fulltext-term");
34
34
  Object.defineProperty(exports, "buildFulltextTerm", { enumerable: true, get: function () { return build_fulltext_term_1.buildFulltextTerm; } });
35
35
  Object.defineProperty(exports, "escapeLuceneTerm", { enumerable: true, get: function () { return build_fulltext_term_1.escapeLuceneTerm; } });
36
+ var build_filter_clauses_1 = require("./helpers/build-filter-clauses");
37
+ Object.defineProperty(exports, "buildFilterClauses", { enumerable: true, get: function () { return build_filter_clauses_1.buildFilterClauses; } });
38
+ var build_order_by_1 = require("./helpers/build-order-by");
39
+ Object.defineProperty(exports, "buildOrderByClause", { enumerable: true, get: function () { return build_order_by_1.buildOrderByClause; } });
36
40
  var update_relationship_1 = require("./queries/update.relationship");
37
41
  Object.defineProperty(exports, "updateRelationshipQuery", { enumerable: true, get: function () { return update_relationship_1.updateRelationshipQuery; } });
38
42
  // Abstracts
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/neo4j/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;AAEH,iDAA+B;AAC/B,2DAAyC;AACzC,4DAA0C;AAC1C,4EAAkG;AAAzF,8HAAA,oBAAoB,OAAA;AAC7B,6DAA2D;AAAlD,+GAAA,aAAa,OAAA;AACtB,+CAA6C;AAApC,mGAAA,OAAO,OAAA;AAChB,qEAAoF;AAA3E,wHAAA,iBAAiB,OAAA;AAAE,uHAAA,gBAAgB,OAAA;AAC5C,qEAAwE;AAA/D,8HAAA,uBAAuB,OAAA;AAEhC,YAAY;AACZ,8CAA4B;AAE5B,iCAAiC;AACjC,0CAAwB;AAExB,sCAAsC;AACtC,6DAAgF;AAAvE,yGAAA,aAAa,OAAA;AAAE,yGAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/neo4j/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;AAEH,iDAA+B;AAC/B,2DAAyC;AACzC,4DAA0C;AAC1C,4EAAkG;AAAzF,8HAAA,oBAAoB,OAAA;AAC7B,6DAA2D;AAAlD,+GAAA,aAAa,OAAA;AACtB,+CAA6C;AAApC,mGAAA,OAAO,OAAA;AAChB,qEAAoF;AAA3E,wHAAA,iBAAiB,OAAA;AAAE,uHAAA,gBAAgB,OAAA;AAC5C,uEAAmG;AAA1F,0HAAA,kBAAkB,OAAA;AAC3B,2DAA8D;AAArD,oHAAA,kBAAkB,OAAA;AAC3B,qEAAwE;AAA/D,8HAAA,uBAAuB,OAAA;AAEhC,YAAY;AACZ,8CAA4B;AAE5B,iCAAiC;AACjC,0CAAwB;AAExB,sCAAsC;AACtC,6DAAgF;AAAvE,yGAAA,aAAa,OAAA;AAAE,yGAAA,aAAa,OAAA"}
@@ -11,5 +11,13 @@ export declare const updateRelationshipQuery: (params: {
11
11
  [key: string]: any;
12
12
  });
13
13
  queryParams?: any;
14
+ /**
15
+ * Opt-in: only link target nodes that BELONG_TO the company in `$companyId`
16
+ * (set by `Neo4jService.initQuery()`). For writes whose target ids come from
17
+ * request input, so an id of another firm's node never gets an edge. Pair it
18
+ * with `Neo4jService.validateExistingNodes()` (per-node `companyId`) to
19
+ * refuse the request instead of silently skipping the foreign id.
20
+ */
21
+ companyScoped?: boolean;
14
22
  }) => string;
15
23
  //# sourceMappingURL=update.relationship.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.relationship.d.ts","sourceRoot":"","sources":["../../../../src/core/neo4j/queries/update.relationship.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,GAAI,QAAQ;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,sBAAsB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,CAAC;IAC7F,WAAW,CAAC,EAAE,GAAG,CAAC;CACnB,KAAG,MAwEH,CAAC"}
1
+ {"version":3,"file":"update.relationship.d.ts","sourceRoot":"","sources":["../../../../src/core/neo4j/queries/update.relationship.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,GAAI,QAAQ;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,sBAAsB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,CAAC;IAC7F,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,KAAG,MA6EH,CAAC"}
@@ -54,7 +54,10 @@ const updateRelationshipQuery = (params) => {
54
54
  ? `
55
55
  WITH ${params.node}, $${paramAlias} AS ${paramAlias}
56
56
  UNWIND ${paramAlias} AS id
57
- MATCH (new:${params.label} {id: id})
57
+ MATCH (new:${params.label} {id: id})${params.companyScoped
58
+ ? `
59
+ WHERE EXISTS { (new)-[:BELONGS_TO]->(:Company {id: $companyId}) }`
60
+ : ``}
58
61
  MERGE (${params.node})${params.relationshipToNode ? "-" : "<-"}[rel:${params.relationshipName}]${params.relationshipToNode ? "->" : "-"}(new)
59
62
  ${relationshipProps ? `SET ${relationshipProps}, rel.updatedAt = datetime()` : `SET rel.updatedAt = datetime()`}
60
63
  `
@@ -1 +1 @@
1
- {"version":3,"file":"update.relationship.js","sourceRoot":"","sources":["../../../../src/core/neo4j/queries/update.relationship.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.relationship.js","sourceRoot":"","sources":["../../../../src/core/neo4j/queries/update.relationship.ts"],"names":[],"mappings":"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"}
@@ -50,10 +50,20 @@ export declare class Neo4jService implements OnModuleInit, OnModuleDestroy {
50
50
  writeAndReturnMany<T>(params: QueryType<T>): Promise<T[] | null>;
51
51
  readCount(query: string, params?: any): Promise<number>;
52
52
  read(query: string, params?: any): Promise<any>;
53
+ /**
54
+ * Throws `BadRequestException` unless every node exists.
55
+ *
56
+ * A node carrying `companyId` must also BELONG_TO that company (opt-in): a
57
+ * relationship write whose targets come from request input passes the
58
+ * caller's company here so another firm's node is refused like a missing
59
+ * one, before anything is written. Nodes without `companyId` are checked
60
+ * for existence only (the default).
61
+ */
53
62
  validateExistingNodes(params: {
54
63
  nodes: {
55
64
  id: string;
56
65
  label: string;
66
+ companyId?: string;
57
67
  }[];
58
68
  }): Promise<void>;
59
69
  private withRetry;