grafeo-ogm 1.0.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 (333) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1121 -0
  3. package/dist/cjs/compilers/fulltext.compiler.d.ts +67 -0
  4. package/dist/cjs/compilers/fulltext.compiler.d.ts.map +1 -0
  5. package/dist/cjs/compilers/fulltext.compiler.js +254 -0
  6. package/dist/cjs/compilers/fulltext.compiler.js.map +1 -0
  7. package/dist/cjs/compilers/mutation.compiler.d.ts +126 -0
  8. package/dist/cjs/compilers/mutation.compiler.d.ts.map +1 -0
  9. package/dist/cjs/compilers/mutation.compiler.js +1239 -0
  10. package/dist/cjs/compilers/mutation.compiler.js.map +1 -0
  11. package/dist/cjs/compilers/select-normalizer.d.ts +50 -0
  12. package/dist/cjs/compilers/select-normalizer.d.ts.map +1 -0
  13. package/dist/cjs/compilers/select-normalizer.js +225 -0
  14. package/dist/cjs/compilers/select-normalizer.js.map +1 -0
  15. package/dist/cjs/compilers/selection.compiler.d.ts +113 -0
  16. package/dist/cjs/compilers/selection.compiler.d.ts.map +1 -0
  17. package/dist/cjs/compilers/selection.compiler.js +410 -0
  18. package/dist/cjs/compilers/selection.compiler.js.map +1 -0
  19. package/dist/cjs/compilers/where.compiler.d.ts +39 -0
  20. package/dist/cjs/compilers/where.compiler.d.ts.map +1 -0
  21. package/dist/cjs/compilers/where.compiler.js +456 -0
  22. package/dist/cjs/compilers/where.compiler.js.map +1 -0
  23. package/dist/cjs/errors.d.ts +28 -0
  24. package/dist/cjs/errors.d.ts.map +1 -0
  25. package/dist/cjs/errors.js +42 -0
  26. package/dist/cjs/errors.js.map +1 -0
  27. package/dist/cjs/execution/executor.d.ts +38 -0
  28. package/dist/cjs/execution/executor.d.ts.map +1 -0
  29. package/dist/cjs/execution/executor.js +50 -0
  30. package/dist/cjs/execution/executor.js.map +1 -0
  31. package/dist/cjs/execution/result-mapper.d.ts +26 -0
  32. package/dist/cjs/execution/result-mapper.d.ts.map +1 -0
  33. package/dist/cjs/execution/result-mapper.js +92 -0
  34. package/dist/cjs/execution/result-mapper.js.map +1 -0
  35. package/dist/cjs/generator/generate-types.d.ts +55 -0
  36. package/dist/cjs/generator/generate-types.d.ts.map +1 -0
  37. package/dist/cjs/generator/generate-types.js +181 -0
  38. package/dist/cjs/generator/generate-types.js.map +1 -0
  39. package/dist/cjs/generator/index.d.ts +3 -0
  40. package/dist/cjs/generator/index.d.ts.map +1 -0
  41. package/dist/cjs/generator/index.js +6 -0
  42. package/dist/cjs/generator/index.js.map +1 -0
  43. package/dist/cjs/generator/type-emitters/aggregation-emitter.d.ts +7 -0
  44. package/dist/cjs/generator/type-emitters/aggregation-emitter.d.ts.map +1 -0
  45. package/dist/cjs/generator/type-emitters/aggregation-emitter.js +196 -0
  46. package/dist/cjs/generator/type-emitters/aggregation-emitter.js.map +1 -0
  47. package/dist/cjs/generator/type-emitters/connection-emitter.d.ts +22 -0
  48. package/dist/cjs/generator/type-emitters/connection-emitter.d.ts.map +1 -0
  49. package/dist/cjs/generator/type-emitters/connection-emitter.js +270 -0
  50. package/dist/cjs/generator/type-emitters/connection-emitter.js.map +1 -0
  51. package/dist/cjs/generator/type-emitters/enum-emitter.d.ts +7 -0
  52. package/dist/cjs/generator/type-emitters/enum-emitter.d.ts.map +1 -0
  53. package/dist/cjs/generator/type-emitters/enum-emitter.js +45 -0
  54. package/dist/cjs/generator/type-emitters/enum-emitter.js.map +1 -0
  55. package/dist/cjs/generator/type-emitters/fulltext-emitter.d.ts +15 -0
  56. package/dist/cjs/generator/type-emitters/fulltext-emitter.d.ts.map +1 -0
  57. package/dist/cjs/generator/type-emitters/fulltext-emitter.js +80 -0
  58. package/dist/cjs/generator/type-emitters/fulltext-emitter.js.map +1 -0
  59. package/dist/cjs/generator/type-emitters/helpers.d.ts +32 -0
  60. package/dist/cjs/generator/type-emitters/helpers.d.ts.map +1 -0
  61. package/dist/cjs/generator/type-emitters/helpers.js +69 -0
  62. package/dist/cjs/generator/type-emitters/helpers.js.map +1 -0
  63. package/dist/cjs/generator/type-emitters/input-emitter.d.ts +6 -0
  64. package/dist/cjs/generator/type-emitters/input-emitter.d.ts.map +1 -0
  65. package/dist/cjs/generator/type-emitters/input-emitter.js +560 -0
  66. package/dist/cjs/generator/type-emitters/input-emitter.js.map +1 -0
  67. package/dist/cjs/generator/type-emitters/interface-emitter.d.ts +10 -0
  68. package/dist/cjs/generator/type-emitters/interface-emitter.d.ts.map +1 -0
  69. package/dist/cjs/generator/type-emitters/interface-emitter.js +88 -0
  70. package/dist/cjs/generator/type-emitters/interface-emitter.js.map +1 -0
  71. package/dist/cjs/generator/type-emitters/model-map-emitter.d.ts +32 -0
  72. package/dist/cjs/generator/type-emitters/model-map-emitter.d.ts.map +1 -0
  73. package/dist/cjs/generator/type-emitters/model-map-emitter.js +154 -0
  74. package/dist/cjs/generator/type-emitters/model-map-emitter.js.map +1 -0
  75. package/dist/cjs/generator/type-emitters/mutation-response-emitter.d.ts +9 -0
  76. package/dist/cjs/generator/type-emitters/mutation-response-emitter.d.ts.map +1 -0
  77. package/dist/cjs/generator/type-emitters/mutation-response-emitter.js +69 -0
  78. package/dist/cjs/generator/type-emitters/mutation-response-emitter.js.map +1 -0
  79. package/dist/cjs/generator/type-emitters/node-type-emitter.d.ts +13 -0
  80. package/dist/cjs/generator/type-emitters/node-type-emitter.d.ts.map +1 -0
  81. package/dist/cjs/generator/type-emitters/node-type-emitter.js +123 -0
  82. package/dist/cjs/generator/type-emitters/node-type-emitter.js.map +1 -0
  83. package/dist/cjs/generator/type-emitters/select-fields-emitter.d.ts +8 -0
  84. package/dist/cjs/generator/type-emitters/select-fields-emitter.d.ts.map +1 -0
  85. package/dist/cjs/generator/type-emitters/select-fields-emitter.js +169 -0
  86. package/dist/cjs/generator/type-emitters/select-fields-emitter.js.map +1 -0
  87. package/dist/cjs/generator/type-emitters/select-result-emitter.d.ts +9 -0
  88. package/dist/cjs/generator/type-emitters/select-result-emitter.d.ts.map +1 -0
  89. package/dist/cjs/generator/type-emitters/select-result-emitter.js +61 -0
  90. package/dist/cjs/generator/type-emitters/select-result-emitter.js.map +1 -0
  91. package/dist/cjs/generator/type-emitters/sort-options-emitter.d.ts +8 -0
  92. package/dist/cjs/generator/type-emitters/sort-options-emitter.d.ts.map +1 -0
  93. package/dist/cjs/generator/type-emitters/sort-options-emitter.js +47 -0
  94. package/dist/cjs/generator/type-emitters/sort-options-emitter.js.map +1 -0
  95. package/dist/cjs/generator/type-emitters/utility-types.d.ts +10 -0
  96. package/dist/cjs/generator/type-emitters/utility-types.d.ts.map +1 -0
  97. package/dist/cjs/generator/type-emitters/utility-types.js +93 -0
  98. package/dist/cjs/generator/type-emitters/utility-types.js.map +1 -0
  99. package/dist/cjs/generator/type-emitters/where-emitter.d.ts +15 -0
  100. package/dist/cjs/generator/type-emitters/where-emitter.d.ts.map +1 -0
  101. package/dist/cjs/generator/type-emitters/where-emitter.js +189 -0
  102. package/dist/cjs/generator/type-emitters/where-emitter.js.map +1 -0
  103. package/dist/cjs/index.d.ts +30 -0
  104. package/dist/cjs/index.d.ts.map +1 -0
  105. package/dist/cjs/index.js +59 -0
  106. package/dist/cjs/index.js.map +1 -0
  107. package/dist/cjs/interface-model.d.ts +158 -0
  108. package/dist/cjs/interface-model.d.ts.map +1 -0
  109. package/dist/cjs/interface-model.js +214 -0
  110. package/dist/cjs/interface-model.js.map +1 -0
  111. package/dist/cjs/model.d.ts +354 -0
  112. package/dist/cjs/model.d.ts.map +1 -0
  113. package/dist/cjs/model.js +513 -0
  114. package/dist/cjs/model.js.map +1 -0
  115. package/dist/cjs/ogm.d.ts +97 -0
  116. package/dist/cjs/ogm.d.ts.map +1 -0
  117. package/dist/cjs/ogm.js +224 -0
  118. package/dist/cjs/ogm.js.map +1 -0
  119. package/dist/cjs/package.json +1 -0
  120. package/dist/cjs/schema/parser.d.ts +12 -0
  121. package/dist/cjs/schema/parser.d.ts.map +1 -0
  122. package/dist/cjs/schema/parser.js +331 -0
  123. package/dist/cjs/schema/parser.js.map +1 -0
  124. package/dist/cjs/schema/types.d.ts +66 -0
  125. package/dist/cjs/schema/types.d.ts.map +1 -0
  126. package/dist/cjs/schema/types.js +3 -0
  127. package/dist/cjs/schema/types.js.map +1 -0
  128. package/dist/cjs/schema/utils.d.ts +23 -0
  129. package/dist/cjs/schema/utils.d.ts.map +1 -0
  130. package/dist/cjs/schema/utils.js +92 -0
  131. package/dist/cjs/schema/utils.js.map +1 -0
  132. package/dist/cjs/subgraph/index.d.ts +3 -0
  133. package/dist/cjs/subgraph/index.d.ts.map +1 -0
  134. package/dist/cjs/subgraph/index.js +7 -0
  135. package/dist/cjs/subgraph/index.js.map +1 -0
  136. package/dist/cjs/subgraph/subgraph-operations.d.ts +34 -0
  137. package/dist/cjs/subgraph/subgraph-operations.d.ts.map +1 -0
  138. package/dist/cjs/subgraph/subgraph-operations.js +225 -0
  139. package/dist/cjs/subgraph/subgraph-operations.js.map +1 -0
  140. package/dist/cjs/subgraph/types.d.ts +23 -0
  141. package/dist/cjs/subgraph/types.d.ts.map +1 -0
  142. package/dist/cjs/subgraph/types.js +3 -0
  143. package/dist/cjs/subgraph/types.js.map +1 -0
  144. package/dist/cjs/testing/cypher-assert.d.ts +35 -0
  145. package/dist/cjs/testing/cypher-assert.d.ts.map +1 -0
  146. package/dist/cjs/testing/cypher-assert.js +72 -0
  147. package/dist/cjs/testing/cypher-assert.js.map +1 -0
  148. package/dist/cjs/testing/index.d.ts +4 -0
  149. package/dist/cjs/testing/index.d.ts.map +1 -0
  150. package/dist/cjs/testing/index.js +10 -0
  151. package/dist/cjs/testing/index.js.map +1 -0
  152. package/dist/cjs/testing/neo4j-record-factory.d.ts +25 -0
  153. package/dist/cjs/testing/neo4j-record-factory.d.ts.map +1 -0
  154. package/dist/cjs/testing/neo4j-record-factory.js +43 -0
  155. package/dist/cjs/testing/neo4j-record-factory.js.map +1 -0
  156. package/dist/cjs/testing/selection-set-factory.d.ts +24 -0
  157. package/dist/cjs/testing/selection-set-factory.d.ts.map +1 -0
  158. package/dist/cjs/testing/selection-set-factory.js +44 -0
  159. package/dist/cjs/testing/selection-set-factory.js.map +1 -0
  160. package/dist/cjs/utils/lucene.d.ts +9 -0
  161. package/dist/cjs/utils/lucene.d.ts.map +1 -0
  162. package/dist/cjs/utils/lucene.js +25 -0
  163. package/dist/cjs/utils/lucene.js.map +1 -0
  164. package/dist/cjs/utils/validation.d.ts +25 -0
  165. package/dist/cjs/utils/validation.d.ts.map +1 -0
  166. package/dist/cjs/utils/validation.js +53 -0
  167. package/dist/cjs/utils/validation.js.map +1 -0
  168. package/dist/esm/compilers/fulltext.compiler.d.ts +67 -0
  169. package/dist/esm/compilers/fulltext.compiler.d.ts.map +1 -0
  170. package/dist/esm/compilers/fulltext.compiler.js +250 -0
  171. package/dist/esm/compilers/fulltext.compiler.js.map +1 -0
  172. package/dist/esm/compilers/mutation.compiler.d.ts +126 -0
  173. package/dist/esm/compilers/mutation.compiler.d.ts.map +1 -0
  174. package/dist/esm/compilers/mutation.compiler.js +1235 -0
  175. package/dist/esm/compilers/mutation.compiler.js.map +1 -0
  176. package/dist/esm/compilers/select-normalizer.d.ts +50 -0
  177. package/dist/esm/compilers/select-normalizer.d.ts.map +1 -0
  178. package/dist/esm/compilers/select-normalizer.js +221 -0
  179. package/dist/esm/compilers/select-normalizer.js.map +1 -0
  180. package/dist/esm/compilers/selection.compiler.d.ts +113 -0
  181. package/dist/esm/compilers/selection.compiler.d.ts.map +1 -0
  182. package/dist/esm/compilers/selection.compiler.js +406 -0
  183. package/dist/esm/compilers/selection.compiler.js.map +1 -0
  184. package/dist/esm/compilers/where.compiler.d.ts +39 -0
  185. package/dist/esm/compilers/where.compiler.d.ts.map +1 -0
  186. package/dist/esm/compilers/where.compiler.js +452 -0
  187. package/dist/esm/compilers/where.compiler.js.map +1 -0
  188. package/dist/esm/errors.d.ts +28 -0
  189. package/dist/esm/errors.d.ts.map +1 -0
  190. package/dist/esm/errors.js +36 -0
  191. package/dist/esm/errors.js.map +1 -0
  192. package/dist/esm/execution/executor.d.ts +38 -0
  193. package/dist/esm/execution/executor.d.ts.map +1 -0
  194. package/dist/esm/execution/executor.js +46 -0
  195. package/dist/esm/execution/executor.js.map +1 -0
  196. package/dist/esm/execution/result-mapper.d.ts +26 -0
  197. package/dist/esm/execution/result-mapper.d.ts.map +1 -0
  198. package/dist/esm/execution/result-mapper.js +85 -0
  199. package/dist/esm/execution/result-mapper.js.map +1 -0
  200. package/dist/esm/generator/generate-types.d.ts +55 -0
  201. package/dist/esm/generator/generate-types.d.ts.map +1 -0
  202. package/dist/esm/generator/generate-types.js +141 -0
  203. package/dist/esm/generator/generate-types.js.map +1 -0
  204. package/dist/esm/generator/index.d.ts +3 -0
  205. package/dist/esm/generator/index.d.ts.map +1 -0
  206. package/dist/esm/generator/index.js +2 -0
  207. package/dist/esm/generator/index.js.map +1 -0
  208. package/dist/esm/generator/type-emitters/aggregation-emitter.d.ts +7 -0
  209. package/dist/esm/generator/type-emitters/aggregation-emitter.d.ts.map +1 -0
  210. package/dist/esm/generator/type-emitters/aggregation-emitter.js +193 -0
  211. package/dist/esm/generator/type-emitters/aggregation-emitter.js.map +1 -0
  212. package/dist/esm/generator/type-emitters/connection-emitter.d.ts +22 -0
  213. package/dist/esm/generator/type-emitters/connection-emitter.d.ts.map +1 -0
  214. package/dist/esm/generator/type-emitters/connection-emitter.js +266 -0
  215. package/dist/esm/generator/type-emitters/connection-emitter.js.map +1 -0
  216. package/dist/esm/generator/type-emitters/enum-emitter.d.ts +7 -0
  217. package/dist/esm/generator/type-emitters/enum-emitter.d.ts.map +1 -0
  218. package/dist/esm/generator/type-emitters/enum-emitter.js +42 -0
  219. package/dist/esm/generator/type-emitters/enum-emitter.js.map +1 -0
  220. package/dist/esm/generator/type-emitters/fulltext-emitter.d.ts +15 -0
  221. package/dist/esm/generator/type-emitters/fulltext-emitter.d.ts.map +1 -0
  222. package/dist/esm/generator/type-emitters/fulltext-emitter.js +77 -0
  223. package/dist/esm/generator/type-emitters/fulltext-emitter.js.map +1 -0
  224. package/dist/esm/generator/type-emitters/helpers.d.ts +32 -0
  225. package/dist/esm/generator/type-emitters/helpers.d.ts.map +1 -0
  226. package/dist/esm/generator/type-emitters/helpers.js +63 -0
  227. package/dist/esm/generator/type-emitters/helpers.js.map +1 -0
  228. package/dist/esm/generator/type-emitters/input-emitter.d.ts +6 -0
  229. package/dist/esm/generator/type-emitters/input-emitter.d.ts.map +1 -0
  230. package/dist/esm/generator/type-emitters/input-emitter.js +557 -0
  231. package/dist/esm/generator/type-emitters/input-emitter.js.map +1 -0
  232. package/dist/esm/generator/type-emitters/interface-emitter.d.ts +10 -0
  233. package/dist/esm/generator/type-emitters/interface-emitter.d.ts.map +1 -0
  234. package/dist/esm/generator/type-emitters/interface-emitter.js +85 -0
  235. package/dist/esm/generator/type-emitters/interface-emitter.js.map +1 -0
  236. package/dist/esm/generator/type-emitters/model-map-emitter.d.ts +32 -0
  237. package/dist/esm/generator/type-emitters/model-map-emitter.d.ts.map +1 -0
  238. package/dist/esm/generator/type-emitters/model-map-emitter.js +149 -0
  239. package/dist/esm/generator/type-emitters/model-map-emitter.js.map +1 -0
  240. package/dist/esm/generator/type-emitters/mutation-response-emitter.d.ts +9 -0
  241. package/dist/esm/generator/type-emitters/mutation-response-emitter.d.ts.map +1 -0
  242. package/dist/esm/generator/type-emitters/mutation-response-emitter.js +66 -0
  243. package/dist/esm/generator/type-emitters/mutation-response-emitter.js.map +1 -0
  244. package/dist/esm/generator/type-emitters/node-type-emitter.d.ts +13 -0
  245. package/dist/esm/generator/type-emitters/node-type-emitter.d.ts.map +1 -0
  246. package/dist/esm/generator/type-emitters/node-type-emitter.js +120 -0
  247. package/dist/esm/generator/type-emitters/node-type-emitter.js.map +1 -0
  248. package/dist/esm/generator/type-emitters/select-fields-emitter.d.ts +8 -0
  249. package/dist/esm/generator/type-emitters/select-fields-emitter.d.ts.map +1 -0
  250. package/dist/esm/generator/type-emitters/select-fields-emitter.js +166 -0
  251. package/dist/esm/generator/type-emitters/select-fields-emitter.js.map +1 -0
  252. package/dist/esm/generator/type-emitters/select-result-emitter.d.ts +9 -0
  253. package/dist/esm/generator/type-emitters/select-result-emitter.d.ts.map +1 -0
  254. package/dist/esm/generator/type-emitters/select-result-emitter.js +58 -0
  255. package/dist/esm/generator/type-emitters/select-result-emitter.js.map +1 -0
  256. package/dist/esm/generator/type-emitters/sort-options-emitter.d.ts +8 -0
  257. package/dist/esm/generator/type-emitters/sort-options-emitter.d.ts.map +1 -0
  258. package/dist/esm/generator/type-emitters/sort-options-emitter.js +44 -0
  259. package/dist/esm/generator/type-emitters/sort-options-emitter.js.map +1 -0
  260. package/dist/esm/generator/type-emitters/utility-types.d.ts +10 -0
  261. package/dist/esm/generator/type-emitters/utility-types.d.ts.map +1 -0
  262. package/dist/esm/generator/type-emitters/utility-types.js +88 -0
  263. package/dist/esm/generator/type-emitters/utility-types.js.map +1 -0
  264. package/dist/esm/generator/type-emitters/where-emitter.d.ts +15 -0
  265. package/dist/esm/generator/type-emitters/where-emitter.d.ts.map +1 -0
  266. package/dist/esm/generator/type-emitters/where-emitter.js +186 -0
  267. package/dist/esm/generator/type-emitters/where-emitter.js.map +1 -0
  268. package/dist/esm/index.d.ts +30 -0
  269. package/dist/esm/index.d.ts.map +1 -0
  270. package/dist/esm/index.js +29 -0
  271. package/dist/esm/index.js.map +1 -0
  272. package/dist/esm/interface-model.d.ts +158 -0
  273. package/dist/esm/interface-model.d.ts.map +1 -0
  274. package/dist/esm/interface-model.js +210 -0
  275. package/dist/esm/interface-model.js.map +1 -0
  276. package/dist/esm/model.d.ts +354 -0
  277. package/dist/esm/model.d.ts.map +1 -0
  278. package/dist/esm/model.js +507 -0
  279. package/dist/esm/model.js.map +1 -0
  280. package/dist/esm/ogm.d.ts +97 -0
  281. package/dist/esm/ogm.d.ts.map +1 -0
  282. package/dist/esm/ogm.js +220 -0
  283. package/dist/esm/ogm.js.map +1 -0
  284. package/dist/esm/package.json +1 -0
  285. package/dist/esm/schema/parser.d.ts +12 -0
  286. package/dist/esm/schema/parser.d.ts.map +1 -0
  287. package/dist/esm/schema/parser.js +324 -0
  288. package/dist/esm/schema/parser.js.map +1 -0
  289. package/dist/esm/schema/types.d.ts +66 -0
  290. package/dist/esm/schema/types.d.ts.map +1 -0
  291. package/dist/esm/schema/types.js +2 -0
  292. package/dist/esm/schema/types.js.map +1 -0
  293. package/dist/esm/schema/utils.d.ts +23 -0
  294. package/dist/esm/schema/utils.d.ts.map +1 -0
  295. package/dist/esm/schema/utils.js +87 -0
  296. package/dist/esm/schema/utils.js.map +1 -0
  297. package/dist/esm/subgraph/index.d.ts +3 -0
  298. package/dist/esm/subgraph/index.d.ts.map +1 -0
  299. package/dist/esm/subgraph/index.js +2 -0
  300. package/dist/esm/subgraph/index.js.map +1 -0
  301. package/dist/esm/subgraph/subgraph-operations.d.ts +34 -0
  302. package/dist/esm/subgraph/subgraph-operations.d.ts.map +1 -0
  303. package/dist/esm/subgraph/subgraph-operations.js +221 -0
  304. package/dist/esm/subgraph/subgraph-operations.js.map +1 -0
  305. package/dist/esm/subgraph/types.d.ts +23 -0
  306. package/dist/esm/subgraph/types.d.ts.map +1 -0
  307. package/dist/esm/subgraph/types.js +2 -0
  308. package/dist/esm/subgraph/types.js.map +1 -0
  309. package/dist/esm/testing/cypher-assert.d.ts +35 -0
  310. package/dist/esm/testing/cypher-assert.d.ts.map +1 -0
  311. package/dist/esm/testing/cypher-assert.js +68 -0
  312. package/dist/esm/testing/cypher-assert.js.map +1 -0
  313. package/dist/esm/testing/index.d.ts +4 -0
  314. package/dist/esm/testing/index.d.ts.map +1 -0
  315. package/dist/esm/testing/index.js +4 -0
  316. package/dist/esm/testing/index.js.map +1 -0
  317. package/dist/esm/testing/neo4j-record-factory.d.ts +25 -0
  318. package/dist/esm/testing/neo4j-record-factory.d.ts.map +1 -0
  319. package/dist/esm/testing/neo4j-record-factory.js +36 -0
  320. package/dist/esm/testing/neo4j-record-factory.js.map +1 -0
  321. package/dist/esm/testing/selection-set-factory.d.ts +24 -0
  322. package/dist/esm/testing/selection-set-factory.d.ts.map +1 -0
  323. package/dist/esm/testing/selection-set-factory.js +40 -0
  324. package/dist/esm/testing/selection-set-factory.js.map +1 -0
  325. package/dist/esm/utils/lucene.d.ts +9 -0
  326. package/dist/esm/utils/lucene.d.ts.map +1 -0
  327. package/dist/esm/utils/lucene.js +22 -0
  328. package/dist/esm/utils/lucene.js.map +1 -0
  329. package/dist/esm/utils/validation.d.ts +25 -0
  330. package/dist/esm/utils/validation.d.ts.map +1 -0
  331. package/dist/esm/utils/validation.js +46 -0
  332. package/dist/esm/utils/validation.js.map +1 -0
  333. package/package.json +88 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation.compiler.js","sourceRoot":"","sources":["../../../src/compilers/mutation.compiler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ import type { SchemaMetadata, NodeDefinition } from '../schema/types';
2
+ import type { SelectionNode } from './selection.compiler';
3
+ /**
4
+ * Converts a `select` object (used in the programmatic API) into the internal
5
+ * SelectionNode[] AST that the SelectionCompiler operates on.
6
+ *
7
+ * Normalization rules:
8
+ * - `{ field: true }` for a scalar → SelectionNode with isScalar: true
9
+ * - `{ field: true }` for a relationship → all scalar properties of the target node
10
+ * - `{ field: { select: { ... } } }` for a relationship → nested selection
11
+ * - `{ fieldConnection: { where: {...}, select: { edges: { node: { select: {...} }, properties: { select: {...} } } } } }` → connection node
12
+ * - `{ field: false }` or missing → omitted
13
+ */
14
+ export declare class SelectNormalizer {
15
+ private schema;
16
+ /**
17
+ * Cache of all-scalar-fields selections per type name.
18
+ * Bounded by the number of node types in the schema (~50-100 entries).
19
+ */
20
+ private scalarFieldsCache;
21
+ constructor(schema: SchemaMetadata);
22
+ /** Clear the scalar fields cache. Useful in tests to prevent cross-test pollution. */
23
+ clearCache(): void;
24
+ /**
25
+ * Normalize a select object into SelectionNode[].
26
+ *
27
+ * @param select - Object like \{ id: true, name: true, drugs: \{ select: \{ id: true \} \} \}
28
+ * @param nodeDef - Node definition from schema metadata
29
+ * @returns Normalized SelectionNode array
30
+ */
31
+ normalize(select: Record<string, unknown>, nodeDef: NodeDefinition): SelectionNode[];
32
+ /**
33
+ * Normalize a relationship field value into a SelectionNode.
34
+ */
35
+ private normalizeRelationship;
36
+ /**
37
+ * Normalize a connection field value into a SelectionNode.
38
+ */
39
+ private normalizeConnection;
40
+ /**
41
+ * Normalize edge property selections into SelectionNode[].
42
+ * Edge properties are always scalars.
43
+ */
44
+ private normalizeEdgeProperties;
45
+ /**
46
+ * Generate SelectionNode[] for all scalar (non-cypher) properties of a node.
47
+ */
48
+ private allScalarFields;
49
+ }
50
+ //# sourceMappingURL=select-normalizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-normalizer.d.ts","sourceRoot":"","sources":["../../../src/compilers/select-normalizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAG1D;;;;;;;;;;GAUG;AACH,qBAAa,gBAAgB;IAOf,OAAO,CAAC,MAAM;IAN1B;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CAAsC;gBAE3C,MAAM,EAAE,cAAc;IAE1C,sFAAsF;IACtF,UAAU,IAAI,IAAI;IAIlB;;;;;;OAMG;IACH,SAAS,CACP,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,EAAE,cAAc,GACtB,aAAa,EAAE;IA4ClB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAqE7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAwE3B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAkB/B;;OAEG;IACH,OAAO,CAAC,eAAe;CAkBxB"}
@@ -0,0 +1,221 @@
1
+ import { assertSafeKey } from '../utils/validation';
2
+ /**
3
+ * Converts a `select` object (used in the programmatic API) into the internal
4
+ * SelectionNode[] AST that the SelectionCompiler operates on.
5
+ *
6
+ * Normalization rules:
7
+ * - `{ field: true }` for a scalar → SelectionNode with isScalar: true
8
+ * - `{ field: true }` for a relationship → all scalar properties of the target node
9
+ * - `{ field: { select: { ... } } }` for a relationship → nested selection
10
+ * - `{ fieldConnection: { where: {...}, select: { edges: { node: { select: {...} }, properties: { select: {...} } } } } }` → connection node
11
+ * - `{ field: false }` or missing → omitted
12
+ */
13
+ export class SelectNormalizer {
14
+ constructor(schema) {
15
+ this.schema = schema;
16
+ /**
17
+ * Cache of all-scalar-fields selections per type name.
18
+ * Bounded by the number of node types in the schema (~50-100 entries).
19
+ */
20
+ this.scalarFieldsCache = new Map();
21
+ }
22
+ /** Clear the scalar fields cache. Useful in tests to prevent cross-test pollution. */
23
+ clearCache() {
24
+ this.scalarFieldsCache.clear();
25
+ }
26
+ /**
27
+ * Normalize a select object into SelectionNode[].
28
+ *
29
+ * @param select - Object like \{ id: true, name: true, drugs: \{ select: \{ id: true \} \} \}
30
+ * @param nodeDef - Node definition from schema metadata
31
+ * @returns Normalized SelectionNode array
32
+ */
33
+ normalize(select, nodeDef) {
34
+ const nodes = [];
35
+ for (const [fieldName, value] of Object.entries(select)) {
36
+ if (!value)
37
+ continue; // false, null, undefined → skip
38
+ assertSafeKey(fieldName, 'select input');
39
+ const isConnection = fieldName.endsWith('Connection');
40
+ if (isConnection) {
41
+ const connectionNode = this.normalizeConnection(fieldName, value, nodeDef);
42
+ if (connectionNode)
43
+ nodes.push(connectionNode);
44
+ continue;
45
+ }
46
+ const relDef = nodeDef.relationships.get(fieldName);
47
+ if (relDef) {
48
+ // It's a relationship field
49
+ const relNode = this.normalizeRelationship(fieldName, value, relDef);
50
+ if (relNode)
51
+ nodes.push(relNode);
52
+ continue;
53
+ }
54
+ // It's a scalar field (property)
55
+ if (value === true)
56
+ nodes.push({
57
+ fieldName,
58
+ isScalar: true,
59
+ isRelationship: false,
60
+ isConnection: false,
61
+ });
62
+ }
63
+ return nodes;
64
+ }
65
+ /**
66
+ * Normalize a relationship field value into a SelectionNode.
67
+ */
68
+ normalizeRelationship(fieldName, value, relDef) {
69
+ const targetDef = this.schema.nodes.get(relDef.target);
70
+ if (!targetDef)
71
+ return null;
72
+ // `{ drugs: true }` → select all scalar fields from target
73
+ if (value === true) {
74
+ const children = this.allScalarFields(targetDef);
75
+ return {
76
+ fieldName,
77
+ isScalar: false,
78
+ isRelationship: true,
79
+ isConnection: false,
80
+ children,
81
+ };
82
+ }
83
+ // `{ drugs: { where: {...}, select: { id: true, drugName: true } } }` → nested select with optional where
84
+ if (typeof value === 'object' && value !== null) {
85
+ const obj = value;
86
+ if (obj.select && typeof obj.select === 'object') {
87
+ let children = this.normalize(obj.select, targetDef);
88
+ // Empty select fallback: at minimum return the id field
89
+ if (children.length === 0)
90
+ children = [
91
+ {
92
+ fieldName: 'id',
93
+ isScalar: true,
94
+ isRelationship: false,
95
+ isConnection: false,
96
+ },
97
+ ];
98
+ const node = {
99
+ fieldName,
100
+ isScalar: false,
101
+ isRelationship: true,
102
+ isConnection: false,
103
+ children,
104
+ };
105
+ // Extract where clause for relationship filtering
106
+ if (obj.where && typeof obj.where === 'object')
107
+ node.relationshipWhere = obj.where;
108
+ return node;
109
+ }
110
+ // `{ drugs: { where: {...} } }` → where-only (select all scalars)
111
+ if (obj.where && typeof obj.where === 'object')
112
+ return {
113
+ fieldName,
114
+ isScalar: false,
115
+ isRelationship: true,
116
+ isConnection: false,
117
+ children: this.allScalarFields(targetDef),
118
+ relationshipWhere: obj.where,
119
+ };
120
+ }
121
+ return null;
122
+ }
123
+ /**
124
+ * Normalize a connection field value into a SelectionNode.
125
+ */
126
+ normalizeConnection(fieldName, value, nodeDef) {
127
+ // Strip 'Connection' suffix to find the relationship
128
+ const baseFieldName = fieldName.replace(/Connection$/, '');
129
+ const relDef = nodeDef.relationships.get(baseFieldName);
130
+ if (!relDef)
131
+ return null;
132
+ const targetDef = this.schema.nodes.get(relDef.target);
133
+ if (!targetDef)
134
+ return null;
135
+ const node = {
136
+ fieldName,
137
+ isScalar: false,
138
+ isRelationship: false,
139
+ isConnection: true,
140
+ };
141
+ if (typeof value !== 'object' || value === null)
142
+ return node;
143
+ const obj = value;
144
+ // Extract where clause
145
+ if (obj.where && typeof obj.where === 'object')
146
+ node.connectionWhere = obj.where;
147
+ // Extract edges -> node and edges -> properties from select
148
+ if (obj.select && typeof obj.select === 'object') {
149
+ const selectObj = obj.select;
150
+ if (selectObj.edges && typeof selectObj.edges === 'object') {
151
+ const edgesObj = selectObj.edges;
152
+ // edges.node.select -> children
153
+ if (edgesObj.node && typeof edgesObj.node === 'object') {
154
+ const nodeObj = edgesObj.node;
155
+ if (nodeObj.select && typeof nodeObj.select === 'object') {
156
+ const children = this.normalize(nodeObj.select, targetDef);
157
+ // Empty select fallback: at minimum return the id field
158
+ node.children =
159
+ children.length === 0
160
+ ? [
161
+ {
162
+ fieldName: 'id',
163
+ isScalar: true,
164
+ isRelationship: false,
165
+ isConnection: false,
166
+ },
167
+ ]
168
+ : children;
169
+ }
170
+ }
171
+ // edges.properties.select -> edgeChildren
172
+ if (edgesObj.properties && typeof edgesObj.properties === 'object') {
173
+ const propsObj = edgesObj.properties;
174
+ if (propsObj.select && typeof propsObj.select === 'object')
175
+ node.edgeChildren = this.normalizeEdgeProperties(propsObj.select);
176
+ }
177
+ }
178
+ }
179
+ return node;
180
+ }
181
+ /**
182
+ * Normalize edge property selections into SelectionNode[].
183
+ * Edge properties are always scalars.
184
+ */
185
+ normalizeEdgeProperties(select) {
186
+ const nodes = [];
187
+ for (const [fieldName, value] of Object.entries(select)) {
188
+ assertSafeKey(fieldName, 'edge select input');
189
+ if (value === true)
190
+ nodes.push({
191
+ fieldName,
192
+ isScalar: true,
193
+ isRelationship: false,
194
+ isConnection: false,
195
+ });
196
+ }
197
+ return nodes;
198
+ }
199
+ /**
200
+ * Generate SelectionNode[] for all scalar (non-cypher) properties of a node.
201
+ */
202
+ allScalarFields(nodeDef) {
203
+ const cached = this.scalarFieldsCache.get(nodeDef.typeName);
204
+ if (cached)
205
+ return cached;
206
+ const nodes = [];
207
+ for (const [, prop] of nodeDef.properties) {
208
+ if (prop.isCypher)
209
+ continue;
210
+ nodes.push({
211
+ fieldName: prop.name,
212
+ isScalar: true,
213
+ isRelationship: false,
214
+ isConnection: false,
215
+ });
216
+ }
217
+ this.scalarFieldsCache.set(nodeDef.typeName, nodes);
218
+ return nodes;
219
+ }
220
+ }
221
+ //# sourceMappingURL=select-normalizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-normalizer.js","sourceRoot":"","sources":["../../../src/compilers/select-normalizer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,113 @@
1
+ import type { NodeDefinition, SchemaMetadata } from '../schema/types';
2
+ import type { WhereCompiler } from './where.compiler';
3
+ /**
4
+ * Represents a single node in the parsed selection tree.
5
+ */
6
+ export interface SelectionNode {
7
+ fieldName: string;
8
+ alias?: string;
9
+ isScalar: boolean;
10
+ isRelationship: boolean;
11
+ isConnection: boolean;
12
+ children?: SelectionNode[];
13
+ /** WHERE filter for relationship pattern comprehensions (Prisma-like select) */
14
+ relationshipWhere?: Record<string, unknown>;
15
+ connectionWhere?: Record<string, unknown>;
16
+ edgeChildren?: SelectionNode[];
17
+ }
18
+ /**
19
+ * Compiles a selection set (parsed SelectionNode[]) into a Cypher RETURN map projection.
20
+ *
21
+ * Handles scalar fields, relationship pattern comprehensions (array and singular),
22
+ * connection fields with edge properties, and nested traversals with depth limiting.
23
+ */
24
+ export declare class SelectionCompiler {
25
+ private schema;
26
+ private static readonly DEFAULT_MAX_DEPTH;
27
+ /**
28
+ * Cache of parsed selection sets capped at 200 entries.
29
+ * No eviction — assumes bounded selection set variety (fixed set of
30
+ * selectionSet strings used across resolvers). Stops adding after 200.
31
+ */
32
+ private parseCache;
33
+ private whereCompiler?;
34
+ constructor(schema: SchemaMetadata, whereCompiler?: WhereCompiler);
35
+ /** Clear the parse cache. Useful in tests to prevent cross-test pollution. */
36
+ clearCache(): void;
37
+ /**
38
+ * Compile selection nodes into a Cypher map projection string.
39
+ *
40
+ * @param selection - Parsed selection nodes
41
+ * @param nodeVar - Cypher variable for the matched node (e.g., 'n')
42
+ * @param nodeDef - Node definition from schema metadata
43
+ * @param maxDepth - Maximum traversal depth (default 5)
44
+ * @param currentDepth - Current depth (used internally for recursion)
45
+ * @returns Cypher map projection string, e.g. "n { .id, .name, drugs: [...] }"
46
+ */
47
+ compile(selection: SelectionNode[], nodeVar: string, nodeDef: NodeDefinition, maxDepth?: number, currentDepth?: number, params?: Record<string, unknown>, paramCounter?: {
48
+ count: number;
49
+ }): string;
50
+ /**
51
+ * Parse a GraphQL selection set string into SelectionNode[].
52
+ *
53
+ * @param selectionSet - Raw string like "\{ id name drugs \{ id \} \}"
54
+ * @returns Parsed SelectionNode array
55
+ */
56
+ parseSelectionSet(selectionSet: string): SelectionNode[];
57
+ /**
58
+ * Convert a GraphQL SelectionSetNode into SelectionNode[].
59
+ */
60
+ private convertSelectionSet;
61
+ /**
62
+ * Parse the children of a connection field, extracting node and edge children.
63
+ */
64
+ private parseConnectionChildren;
65
+ /**
66
+ * Compile a relationship field into a Cypher pattern comprehension.
67
+ */
68
+ private compileRelationship;
69
+ /**
70
+ * Compile a relationship field within a union-target context.
71
+ *
72
+ * Different union members can have the same field name (e.g., "populations")
73
+ * but different underlying Neo4j relationship types. This generates a
74
+ * CASE WHEN expression that checks the node's labels and uses the correct
75
+ * relationship type for each member.
76
+ *
77
+ * Example output:
78
+ * CASE
79
+ * WHEN n0:FormPresentationIcon THEN [(n0)-[:FP_POP]->(p:Population) | p { .id }]
80
+ * WHEN n0:AdministrationRateIcon THEN [(n0)-[:AR_POP]->(p:Population) | p { .id }]
81
+ * ELSE []
82
+ * END
83
+ */
84
+ private compileUnionRelationshipField;
85
+ /**
86
+ * Compile a connection field into a Cypher pattern comprehension with edge properties.
87
+ */
88
+ private compileConnection;
89
+ /**
90
+ * Compile a __typename expression for a node.
91
+ * For union targets: picks the label matching a union member name.
92
+ * For concrete types: returns a string constant.
93
+ */
94
+ private compileTypename;
95
+ /**
96
+ * Check if a target type name is a union or interface (not a concrete node label).
97
+ * Union/interface names don't exist as Neo4j labels, so they must be omitted
98
+ * from relationship patterns to avoid matching zero nodes.
99
+ */
100
+ private isAbstractTarget;
101
+ /**
102
+ * Build a Cypher relationship pattern string respecting direction.
103
+ * For union/interface targets, omits the label filter since those
104
+ * type names don't exist as Neo4j labels.
105
+ */
106
+ private buildRelationshipPattern;
107
+ /**
108
+ * Compile a simple where object into a Cypher WHERE clause fragment.
109
+ * This is a minimal implementation for connection where filters.
110
+ */
111
+ private compileSimpleWhere;
112
+ }
113
+ //# sourceMappingURL=selection.compiler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selection.compiler.d.ts","sourceRoot":"","sources":["../../../src/compilers/selection.compiler.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,cAAc,EAEd,cAAc,EACf,MAAM,iBAAiB,CAAC;AAGzB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,gFAAgF;IAChF,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,YAAY,CAAC,EAAE,aAAa,EAAE,CAAC;CAChC;AAED;;;;;GAKG;AACH,qBAAa,iBAAiB;IAW1B,OAAO,CAAC,MAAM;IAVhB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAK;IAC9C;;;;OAIG;IACH,OAAO,CAAC,UAAU,CAAsC;IACxD,OAAO,CAAC,aAAa,CAAC,CAAgB;gBAG5B,MAAM,EAAE,cAAc,EAC9B,aAAa,CAAC,EAAE,aAAa;IAK/B,8EAA8E;IAC9E,UAAU,IAAI,IAAI;IAIlB;;;;;;;;;OASG;IACH,OAAO,CACL,SAAS,EAAE,aAAa,EAAE,EAC1B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,cAAc,EACvB,QAAQ,GAAE,MAA4C,EACtD,YAAY,GAAE,MAAU,EACxB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,YAAY,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAC/B,MAAM;IA4ET;;;;;OAKG;IACH,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,aAAa,EAAE;IA8BxD;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgD3B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0B/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA4D3B;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,6BAA6B;IAiErC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAkGzB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IASvB;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAOxB;;;;OAIG;IACH,OAAO,CAAC,wBAAwB;IAwBhC;;;OAGG;IACH,OAAO,CAAC,kBAAkB;CA2C3B"}