@neo4j-cypher/query-tools 2.0.0-next.21 → 2.0.0-next.23

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 (60) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/cjs/package.json +3 -2
  3. package/dist/cjs/src/cypher-execution/extract-unique-nodes-and-relationships.d.ts +33 -0
  4. package/dist/cjs/src/cypher-execution/extract-unique-nodes-and-relationships.js +93 -0
  5. package/dist/cjs/src/cypher-execution/extract-unique-nodes-and-relationships.js.map +1 -0
  6. package/dist/cjs/src/cypher-execution/extract-unique-nodes-and-relationships.test.d.ts +1 -0
  7. package/dist/cjs/src/cypher-execution/extract-unique-nodes-and-relationships.test.js +127 -0
  8. package/dist/cjs/src/cypher-execution/extract-unique-nodes-and-relationships.test.js.map +1 -0
  9. package/dist/cjs/src/index.d.ts +4 -1
  10. package/dist/cjs/src/index.js +21 -1
  11. package/dist/cjs/src/index.js.map +1 -1
  12. package/dist/cjs/src/metadataPoller.js +1 -4
  13. package/dist/cjs/src/metadataPoller.js.map +1 -1
  14. package/dist/cjs/src/neo4jConnection.d.ts +9 -2
  15. package/dist/cjs/src/neo4jConnection.js +44 -23
  16. package/dist/cjs/src/neo4jConnection.js.map +1 -1
  17. package/dist/cjs/src/queries/version.d.ts +0 -3
  18. package/dist/cjs/src/queries/version.js +4 -28
  19. package/dist/cjs/src/queries/version.js.map +1 -1
  20. package/dist/cjs/src/result-transformers/graph-result-transformer.d.ts +36 -0
  21. package/dist/cjs/src/result-transformers/graph-result-transformer.js +37 -0
  22. package/dist/cjs/src/result-transformers/graph-result-transformer.js.map +1 -0
  23. package/dist/cjs/src/schemaPoller.d.ts +1 -0
  24. package/dist/cjs/src/schemaPoller.js +31 -2
  25. package/dist/cjs/src/schemaPoller.js.map +1 -1
  26. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  27. package/dist/esm/package.json +3 -2
  28. package/dist/esm/src/cypher-execution/extract-unique-nodes-and-relationships.d.ts +33 -0
  29. package/dist/esm/src/cypher-execution/extract-unique-nodes-and-relationships.js +89 -0
  30. package/dist/esm/src/cypher-execution/extract-unique-nodes-and-relationships.js.map +1 -0
  31. package/dist/esm/src/cypher-execution/extract-unique-nodes-and-relationships.test.d.ts +1 -0
  32. package/dist/esm/src/cypher-execution/extract-unique-nodes-and-relationships.test.js +125 -0
  33. package/dist/esm/src/cypher-execution/extract-unique-nodes-and-relationships.test.js.map +1 -0
  34. package/dist/esm/src/index.d.ts +4 -1
  35. package/dist/esm/src/index.js +4 -1
  36. package/dist/esm/src/index.js.map +1 -1
  37. package/dist/esm/src/metadataPoller.js +2 -5
  38. package/dist/esm/src/metadataPoller.js.map +1 -1
  39. package/dist/esm/src/neo4jConnection.d.ts +9 -2
  40. package/dist/esm/src/neo4jConnection.js +44 -23
  41. package/dist/esm/src/neo4jConnection.js.map +1 -1
  42. package/dist/esm/src/queries/version.d.ts +0 -3
  43. package/dist/esm/src/queries/version.js +4 -27
  44. package/dist/esm/src/queries/version.js.map +1 -1
  45. package/dist/esm/src/result-transformers/graph-result-transformer.d.ts +36 -0
  46. package/dist/esm/src/result-transformers/graph-result-transformer.js +34 -0
  47. package/dist/esm/src/result-transformers/graph-result-transformer.js.map +1 -0
  48. package/dist/esm/src/schemaPoller.d.ts +1 -0
  49. package/dist/esm/src/schemaPoller.js +32 -3
  50. package/dist/esm/src/schemaPoller.js.map +1 -1
  51. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  52. package/package.json +4 -3
  53. package/src/cypher-execution/extract-unique-nodes-and-relationships.test.ts +235 -0
  54. package/src/cypher-execution/extract-unique-nodes-and-relationships.ts +127 -0
  55. package/src/index.ts +7 -1
  56. package/src/metadataPoller.ts +2 -6
  57. package/src/neo4jConnection.ts +67 -29
  58. package/src/queries/version.ts +5 -32
  59. package/src/result-transformers/graph-result-transformer.ts +57 -0
  60. package/src/schemaPoller.ts +45 -6
package/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # @neo4j-cypher/query-tools
2
2
 
3
+ ## 2.0.0-next.23
4
+
5
+ ### Patch Changes
6
+
7
+ - 045424b: Fixes execution of queries that need to be ran in implicit transactions
8
+ - Updated dependencies [c065d85]
9
+ - @neo4j-cypher/language-support@2.0.0-next.23
10
+
11
+ ## 2.0.0-next.22
12
+
13
+ ### Minor Changes
14
+
15
+ - c4f27c9: Adds server-version to connection in dbSchema
16
+
17
+ ### Patch Changes
18
+
19
+ - Updated dependencies [ed65ef3]
20
+ - Updated dependencies [7538cfd]
21
+ - Updated dependencies [039d1c5]
22
+ - Updated dependencies [1ef063e]
23
+ - Updated dependencies [a38255f]
24
+ - @neo4j-cypher/language-support@2.0.0-next.22
25
+
3
26
  ## 2.0.0-next.21
4
27
 
5
28
  ### Patch Changes
@@ -3,7 +3,7 @@
3
3
  "description": "",
4
4
  "author": "Neo4j Inc.",
5
5
  "license": "Apache-2.0",
6
- "version": "2.0.0-next.21",
6
+ "version": "2.0.0-next.23",
7
7
  "main": "./dist/cjs/src/index.js",
8
8
  "module": "./dist/esm/src/index.js",
9
9
  "exports": {
@@ -34,6 +34,7 @@
34
34
  "build-esm": "tsc --module esnext --outDir dist/esm",
35
35
  "build-commonjs": "tsc --module commonjs --outDir dist/cjs",
36
36
  "dev": "concurrently 'npm:build-esm -- --watch' 'npm:build-commonjs -- --watch'",
37
- "clean": "rm -rf {dist,tsconfig.tsbuildinfo}"
37
+ "clean": "rm -rf {dist,tsconfig.tsbuildinfo}",
38
+ "test": "vitest"
38
39
  }
39
40
  }
@@ -0,0 +1,33 @@
1
+ import type { Integer, Node, Record, RecordShape, Relationship } from 'neo4j-driver';
2
+ import { CypherProperty } from '../data-types/cypher-data-types';
3
+ export type Properties = RecordShape<string, CypherProperty>;
4
+ /**
5
+ * Result type containing deduplicated nodes and relationships extracted from Neo4j records.
6
+ */
7
+ export type DeduplicatedNodesAndRels = {
8
+ /** Array of unique nodes found in the records */
9
+ nodes: Node<Integer, Properties, string>[];
10
+ /** Array of unique relationships found in the records */
11
+ relationships: Relationship<Integer, Properties, string>[];
12
+ /** Whether the max node limit was reached during extraction */
13
+ limitHit: boolean;
14
+ };
15
+ /**
16
+ * Extracts and deduplicates nodes and relationships from Neo4j query records.
17
+ *
18
+ * This function processes Neo4j records to find all nodes and relationships,
19
+ * removing duplicates based on their element IDs. It can handle various data
20
+ * structures including individual nodes/relationships, paths, arrays, and
21
+ * nested objects.
22
+ *
23
+ * @param records - Array of Neo4j records to process
24
+ * @param options - Configuration options for extraction
25
+ * @param options.nodeLimit - Maximum number of unique nodes to extract (optional)
26
+ * @param options.keepDanglingRels - Whether to keep relationships whose start/end nodes are missing (default: false)
27
+ *
28
+ * @returns The {@link DeduplicatedNodesAndRels} containing unique nodes and relationships
29
+ */
30
+ export declare const extractUniqueNodesAndRels: (records: Record[], { nodeLimit, keepDanglingRels, }?: {
31
+ nodeLimit?: number;
32
+ keepDanglingRels?: boolean;
33
+ }) => DeduplicatedNodesAndRels;
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractUniqueNodesAndRels = void 0;
4
+ const neo4j_driver_1 = require("neo4j-driver");
5
+ /**
6
+ * Extracts and deduplicates nodes and relationships from Neo4j query records.
7
+ *
8
+ * This function processes Neo4j records to find all nodes and relationships,
9
+ * removing duplicates based on their element IDs. It can handle various data
10
+ * structures including individual nodes/relationships, paths, arrays, and
11
+ * nested objects.
12
+ *
13
+ * @param records - Array of Neo4j records to process
14
+ * @param options - Configuration options for extraction
15
+ * @param options.nodeLimit - Maximum number of unique nodes to extract (optional)
16
+ * @param options.keepDanglingRels - Whether to keep relationships whose start/end nodes are missing (default: false)
17
+ *
18
+ * @returns The {@link DeduplicatedNodesAndRels} containing unique nodes and relationships
19
+ */
20
+ const extractUniqueNodesAndRels = (records, { nodeLimit, keepDanglingRels = false, } = {}) => {
21
+ let limitHit = false;
22
+ const items = new Set();
23
+ for (const record of records) {
24
+ for (const key of record.keys) {
25
+ items.add(record.get(key));
26
+ }
27
+ }
28
+ const paths = [];
29
+ const nodeMap = new Map();
30
+ function addNode(n) {
31
+ if (!limitHit) {
32
+ const id = n.elementId.toString();
33
+ if (!nodeMap.has(id)) {
34
+ nodeMap.set(id, n);
35
+ }
36
+ if (typeof nodeLimit === 'number' && nodeMap.size === nodeLimit) {
37
+ limitHit = true;
38
+ }
39
+ }
40
+ }
41
+ const relMap = new Map();
42
+ function addRel(r) {
43
+ const id = r.elementId.toString();
44
+ if (!relMap.has(id)) {
45
+ relMap.set(id, r);
46
+ }
47
+ }
48
+ const findAllEntities = (item) => {
49
+ if (typeof item !== 'object' || !item) {
50
+ return;
51
+ }
52
+ if ((0, neo4j_driver_1.isRelationship)(item)) {
53
+ addRel(item);
54
+ }
55
+ else if ((0, neo4j_driver_1.isNode)(item)) {
56
+ addNode(item);
57
+ }
58
+ else if ((0, neo4j_driver_1.isPath)(item)) {
59
+ paths.push(item);
60
+ }
61
+ else if (Array.isArray(item)) {
62
+ item.forEach(findAllEntities);
63
+ }
64
+ else {
65
+ Object.values(item).forEach(findAllEntities);
66
+ }
67
+ };
68
+ findAllEntities(Array.from(items));
69
+ for (const path of paths) {
70
+ addNode(path.start);
71
+ addNode(path.end);
72
+ for (const segment of path.segments) {
73
+ addNode(segment.start);
74
+ addNode(segment.end);
75
+ addRel(segment.relationship);
76
+ }
77
+ }
78
+ const nodes = Array.from(nodeMap.values());
79
+ const relationships = Array.from(relMap.values()).filter((item) => {
80
+ if (keepDanglingRels) {
81
+ return true;
82
+ }
83
+ // We'd get dangling relationships from
84
+ // match ()-[a:ACTED_IN]->() return a;
85
+ // or from hitting the node limit
86
+ const start = item.startNodeElementId.toString();
87
+ const end = item.endNodeElementId.toString();
88
+ return nodeMap.has(start) && nodeMap.has(end);
89
+ });
90
+ return { nodes, relationships, limitHit };
91
+ };
92
+ exports.extractUniqueNodesAndRels = extractUniqueNodesAndRels;
93
+ //# sourceMappingURL=extract-unique-nodes-and-relationships.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extract-unique-nodes-and-relationships.js","sourceRoot":"","sources":["../../../../src/cypher-execution/extract-unique-nodes-and-relationships.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const neo4j_driver_1 = require("neo4j-driver");
4
+ const vitest_1 = require("vitest");
5
+ const extract_unique_nodes_and_relationships_1 = require("./extract-unique-nodes-and-relationships");
6
+ (0, vitest_1.describe)('extractNodesAndRels', () => {
7
+ (0, vitest_1.test)('should map bolt records with a path to nodes and relationships', () => {
8
+ const startNode = new neo4j_driver_1.Node(1, ['Person'], {
9
+ prop1: 'prop1',
10
+ }, 'node1');
11
+ const endNode = new neo4j_driver_1.Node(2, ['Movie'], {
12
+ prop2: 'prop2',
13
+ }, 'node2');
14
+ const relationship = new neo4j_driver_1.Relationship(3, 1, 2, 'ACTED_IN', {}, 'rel1', 'node1', 'node2');
15
+ const pathSegment = new neo4j_driver_1.PathSegment(startNode, relationship, endNode);
16
+ const path = new neo4j_driver_1.Path(startNode, endNode, [pathSegment]);
17
+ // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
18
+ const boltRecord = {
19
+ keys: ['p'],
20
+ get: () => path,
21
+ };
22
+ const { nodes, relationships } = (0, extract_unique_nodes_and_relationships_1.extractUniqueNodesAndRels)([boltRecord]);
23
+ const [graphNodeStart] = nodes.filter((node) => node.elementId.toString() === 'node1');
24
+ const [graphNodeEnd] = nodes.filter((node) => node.elementId.toString() === 'node2');
25
+ const [firstRel] = relationships;
26
+ if (graphNodeStart === undefined ||
27
+ graphNodeEnd === undefined ||
28
+ firstRel === undefined) {
29
+ throw new Error('Error in test data, got undefined');
30
+ }
31
+ (0, vitest_1.expect)(nodes.length).toBe(2);
32
+ (0, vitest_1.expect)(graphNodeStart.labels).toEqual(['Person']);
33
+ (0, vitest_1.expect)(graphNodeStart.properties).toEqual({ prop1: 'prop1' });
34
+ (0, vitest_1.expect)(graphNodeEnd.labels).toEqual(['Movie']);
35
+ (0, vitest_1.expect)(graphNodeEnd.properties).toEqual({ prop2: 'prop2' });
36
+ (0, vitest_1.expect)(relationships.length).toBe(1);
37
+ (0, vitest_1.expect)(firstRel.elementId.toString()).toEqual('rel1');
38
+ (0, vitest_1.expect)(firstRel.startNodeElementId.toString()).toEqual('node1');
39
+ (0, vitest_1.expect)(firstRel.endNodeElementId.toString()).toEqual('node2');
40
+ (0, vitest_1.expect)(firstRel.type).toEqual('ACTED_IN');
41
+ (0, vitest_1.expect)(firstRel.properties).toEqual({});
42
+ });
43
+ (0, vitest_1.test)('should deduplicate bolt records based on node id and filter out dangling relationships', () => {
44
+ const node1 = new neo4j_driver_1.Node(1, ['Person'], {
45
+ prop1: 'prop1',
46
+ }, 'node1');
47
+ const node2 = new neo4j_driver_1.Node(1, ['Person'], {
48
+ prop1: 'prop1',
49
+ }, 'node1');
50
+ const relationship = new neo4j_driver_1.Relationship(2, 1, 34, 'ACTED_IN', {}, 'rel1', 'node1', 'node34');
51
+ // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
52
+ const boltRecord = {
53
+ keys: ['n'],
54
+ get: () => [node1, node2, relationship],
55
+ };
56
+ const { nodes, relationships, limitHit } = (0, extract_unique_nodes_and_relationships_1.extractUniqueNodesAndRels)([
57
+ boltRecord,
58
+ ]);
59
+ (0, vitest_1.expect)(limitHit).toBe(false);
60
+ (0, vitest_1.expect)(nodes.length).toBe(1);
61
+ (0, vitest_1.expect)(relationships.length).toBe(0);
62
+ });
63
+ (0, vitest_1.test)('should respect the max nodes limit and filter out dangling relations', () => {
64
+ const startNode = new neo4j_driver_1.Node(1, ['Person'], {
65
+ prop1: 'prop1',
66
+ }, 'node1');
67
+ const endNode = new neo4j_driver_1.Node(2, ['Movie'], {
68
+ prop2: 'prop2',
69
+ }, 'node2');
70
+ const relationship = new neo4j_driver_1.Relationship(3, 1, 2, 'ACTED_IN', {}, 'rel1', 'node1', 'node2');
71
+ const pathSegment = new neo4j_driver_1.PathSegment(startNode, relationship, endNode);
72
+ const path = new neo4j_driver_1.Path(startNode, endNode, [pathSegment]);
73
+ // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
74
+ const boltRecord = {
75
+ keys: ['p'],
76
+ get: () => path,
77
+ };
78
+ const { nodes, relationships, limitHit } = (0, extract_unique_nodes_and_relationships_1.extractUniqueNodesAndRels)([boltRecord], { nodeLimit: 1 });
79
+ (0, vitest_1.expect)(limitHit).toBe(true);
80
+ (0, vitest_1.expect)(nodes.length).toBe(1);
81
+ const [graphNodeStart] = nodes;
82
+ (0, vitest_1.expect)(graphNodeStart).toBeDefined();
83
+ if (graphNodeStart === undefined) {
84
+ throw new Error('Error in test data, got undefined');
85
+ }
86
+ (0, vitest_1.expect)(graphNodeStart.labels).toEqual(['Person']);
87
+ (0, vitest_1.expect)(graphNodeStart.properties).toEqual({ prop1: 'prop1' });
88
+ (0, vitest_1.expect)(relationships.length).toBe(0);
89
+ });
90
+ (0, vitest_1.test)('should respect the max nodes limit and not filter out dangling relations when asked to keep them', () => {
91
+ const startNode = new neo4j_driver_1.Node(1, ['Person'], {
92
+ prop1: 'prop1',
93
+ }, 'node1');
94
+ const endNode = new neo4j_driver_1.Node(2, ['Movie'], {
95
+ prop2: 'prop2',
96
+ }, 'node2');
97
+ const relationship = new neo4j_driver_1.Relationship(3, 1, 2, 'ACTED_IN', {}, 'rel1', 'node1', 'node2');
98
+ const pathSegment = new neo4j_driver_1.PathSegment(startNode, relationship, endNode);
99
+ const path = new neo4j_driver_1.Path(startNode, endNode, [pathSegment]);
100
+ // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
101
+ const boltRecord = {
102
+ keys: ['p'],
103
+ get: () => path,
104
+ };
105
+ const { nodes, relationships, limitHit } = (0, extract_unique_nodes_and_relationships_1.extractUniqueNodesAndRels)([boltRecord], {
106
+ nodeLimit: 1,
107
+ keepDanglingRels: true,
108
+ });
109
+ (0, vitest_1.expect)(limitHit).toBe(true);
110
+ (0, vitest_1.expect)(nodes.length).toBe(1);
111
+ const [graphNodeStart] = nodes;
112
+ (0, vitest_1.expect)(graphNodeStart).toBeDefined();
113
+ if (graphNodeStart === undefined) {
114
+ throw new Error('Error in test data, got undefined');
115
+ }
116
+ (0, vitest_1.expect)(graphNodeStart.labels).toEqual(['Person']);
117
+ (0, vitest_1.expect)(graphNodeStart.properties).toEqual({ prop1: 'prop1' });
118
+ (0, vitest_1.expect)(relationships.length).toBe(1);
119
+ });
120
+ (0, vitest_1.test)('should handle empty results', () => {
121
+ const { nodes, relationships, limitHit } = (0, extract_unique_nodes_and_relationships_1.extractUniqueNodesAndRels)([]);
122
+ (0, vitest_1.expect)(limitHit).toBe(false);
123
+ (0, vitest_1.expect)(nodes.length).toBe(0);
124
+ (0, vitest_1.expect)(relationships.length).toBe(0);
125
+ });
126
+ });
127
+ //# sourceMappingURL=extract-unique-nodes-and-relationships.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extract-unique-nodes-and-relationships.test.js","sourceRoot":"","sources":["../../../../src/cypher-execution/extract-unique-nodes-and-relationships.test.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,17 @@
1
1
  export { FRIENDLY_ERROR_MESSAGES } from './connectionErrorHandler';
2
2
  export type { ConnectionError } from './connectionErrorHandler';
3
+ export * from './cypher-execution/extract-unique-nodes-and-relationships';
3
4
  export { deserializeTypeAnnotations, serializeTypeAnnotations, } from './cypher-execution/query-result';
4
5
  export type { Neo4jType } from './cypher-execution/query-result';
5
- export { getCypherTypeName } from './data-transforms/cypher-type-names';
6
+ export { getCypherTypeName, getPropertyTypeDisplayName, } from './data-transforms/cypher-type-names';
6
7
  export type { CypherDataTypeName } from './data-transforms/cypher-type-names';
7
8
  export { cypherDataToString } from './data-transforms/record-to-string';
8
9
  export type { CypherProperty } from './data-types/cypher-data-types';
9
10
  export type { ConnectedMetadataPoller as CypherMetadataPoller, DisconnectedMetadataPoller as EmptyMetadataPoller, MetadataPoller, } from './metadataPoller';
10
11
  export type { Neo4jConnection, QueryResultWithLimit } from './neo4jConnection';
11
12
  export type { Database } from './queries/databases';
13
+ export { graphResultTransformer } from './result-transformers/graph-result-transformer';
12
14
  export { Neo4jSchemaPoller } from './schemaPoller';
13
15
  export type { ConnnectionResult } from './schemaPoller';
14
16
  export type { CypherDataType } from './types/cypher-data-types';
17
+ export { getVersion } from './queries/version';
@@ -1,15 +1,35 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
2
16
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Neo4jSchemaPoller = exports.cypherDataToString = exports.getCypherTypeName = exports.serializeTypeAnnotations = exports.deserializeTypeAnnotations = exports.FRIENDLY_ERROR_MESSAGES = void 0;
17
+ exports.getVersion = exports.Neo4jSchemaPoller = exports.graphResultTransformer = exports.cypherDataToString = exports.getPropertyTypeDisplayName = exports.getCypherTypeName = exports.serializeTypeAnnotations = exports.deserializeTypeAnnotations = exports.FRIENDLY_ERROR_MESSAGES = void 0;
4
18
  var connectionErrorHandler_1 = require("./connectionErrorHandler");
5
19
  Object.defineProperty(exports, "FRIENDLY_ERROR_MESSAGES", { enumerable: true, get: function () { return connectionErrorHandler_1.FRIENDLY_ERROR_MESSAGES; } });
20
+ __exportStar(require("./cypher-execution/extract-unique-nodes-and-relationships"), exports);
6
21
  var query_result_1 = require("./cypher-execution/query-result");
7
22
  Object.defineProperty(exports, "deserializeTypeAnnotations", { enumerable: true, get: function () { return query_result_1.deserializeTypeAnnotations; } });
8
23
  Object.defineProperty(exports, "serializeTypeAnnotations", { enumerable: true, get: function () { return query_result_1.serializeTypeAnnotations; } });
9
24
  var cypher_type_names_1 = require("./data-transforms/cypher-type-names");
10
25
  Object.defineProperty(exports, "getCypherTypeName", { enumerable: true, get: function () { return cypher_type_names_1.getCypherTypeName; } });
26
+ Object.defineProperty(exports, "getPropertyTypeDisplayName", { enumerable: true, get: function () { return cypher_type_names_1.getPropertyTypeDisplayName; } });
11
27
  var record_to_string_1 = require("./data-transforms/record-to-string");
12
28
  Object.defineProperty(exports, "cypherDataToString", { enumerable: true, get: function () { return record_to_string_1.cypherDataToString; } });
29
+ var graph_result_transformer_1 = require("./result-transformers/graph-result-transformer");
30
+ Object.defineProperty(exports, "graphResultTransformer", { enumerable: true, get: function () { return graph_result_transformer_1.graphResultTransformer; } });
13
31
  var schemaPoller_1 = require("./schemaPoller");
14
32
  Object.defineProperty(exports, "Neo4jSchemaPoller", { enumerable: true, get: function () { return schemaPoller_1.Neo4jSchemaPoller; } });
33
+ var version_1 = require("./queries/version");
34
+ Object.defineProperty(exports, "getVersion", { enumerable: true, get: function () { return version_1.getVersion; } });
15
35
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";;;AAAA,mEAAmE;AAA1D,iIAAA,uBAAuB,OAAA;AAEhC,gEAGyC;AAFvC,0HAAA,0BAA0B,OAAA;AAC1B,wHAAA,wBAAwB,OAAA;AAG1B,yEAAwE;AAA/D,sHAAA,iBAAiB,OAAA;AAE1B,uEAAwE;AAA/D,sHAAA,kBAAkB,OAAA;AAS3B,+CAAmD;AAA1C,iHAAA,iBAAiB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,mEAAmE;AAA1D,iIAAA,uBAAuB,OAAA;AAEhC,4FAA0E;AAC1E,gEAGyC;AAFvC,0HAAA,0BAA0B,OAAA;AAC1B,wHAAA,wBAAwB,OAAA;AAG1B,yEAG6C;AAF3C,sHAAA,iBAAiB,OAAA;AACjB,+HAAA,0BAA0B,OAAA;AAG5B,uEAAwE;AAA/D,sHAAA,kBAAkB,OAAA;AAS3B,2FAAwF;AAA/E,kIAAA,sBAAsB,OAAA;AAC/B,+CAAmD;AAA1C,iHAAA,iBAAiB,OAAA;AAG1B,6CAA+C;AAAtC,qGAAA,UAAU,OAAA"}
@@ -78,7 +78,6 @@ class ConnectedMetadataPoller extends MetadataPoller {
78
78
  super();
79
79
  this.connection = connection;
80
80
  this.events = events;
81
- const supportsCypherAnnotation = language_support_1._internalFeatureFlags.cypher25 || serverCypherVersions?.includes('25');
82
81
  this.dbSchema.parameters = parameters;
83
82
  this.databases = new QueryPoller({
84
83
  connection,
@@ -126,9 +125,7 @@ class ConnectedMetadataPoller extends MetadataPoller {
126
125
  }
127
126
  },
128
127
  });
129
- const versions = supportsCypherAnnotation
130
- ? language_support_1.allCypherVersions
131
- : [undefined];
128
+ const versions = serverCypherVersions?.includes('25') ? language_support_1.allCypherVersions : [undefined];
132
129
  versions.forEach((cypherVersion) => {
133
130
  const effectiveCypherVersion = cypherVersion ?? 'CYPHER 5';
134
131
  this.procedures[effectiveCypherVersion] = new QueryPoller({
@@ -1 +1 @@
1
- {"version":3,"file":"metadataPoller.js","sourceRoot":"","sources":["../../../src/metadataPoller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metadataPoller.js","sourceRoot":"","sources":["../../../src/metadataPoller.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Driver, QueryResult } from 'neo4j-driver';
1
+ import { Driver, ManagedTransaction, QueryResult, RecordShape, Session } from 'neo4j-driver';
2
2
  import { Database } from './queries/databases.js';
3
3
  import { ExecuteQueryArgs, QueryType } from './types/sdkTypes';
4
4
  type SdkQueryArgs = {
@@ -10,6 +10,7 @@ type RunCypherQueryArgs = {
10
10
  parameters: Record<string, unknown>;
11
11
  database?: string;
12
12
  abortSignal?: AbortSignal;
13
+ implicitTransaction?: boolean;
13
14
  };
14
15
  export type QueryResultWithLimit = QueryResult & {
15
16
  recordLimitHit: boolean;
@@ -20,8 +21,14 @@ export declare class Neo4jConnection {
20
21
  databases: Database[];
21
22
  driver: Driver;
22
23
  currentDb: string | undefined;
24
+ serverVersion: string | undefined;
23
25
  constructor(connectedUser: string, protocolVersion: string, databases: Database[], driver: Driver, database?: string);
24
- runCypherQuery({ query, parameters, database, abortSignal, }: RunCypherQueryArgs): Promise<QueryResultWithLimit>;
26
+ evalQuery(session: Session, query: string, parameters: Record<string, unknown>, metadata: object, tx?: ManagedTransaction): Promise<{
27
+ records: import("neo4j-driver").Record<RecordShape, PropertyKey, RecordShape<PropertyKey, number>>[];
28
+ summary: import("neo4j-driver").ResultSummary<import("neo4j-driver").Integer>;
29
+ recordLimitHit: boolean;
30
+ }>;
31
+ runCypherQuery({ query, parameters, database, abortSignal, implicitTransaction, }: RunCypherQueryArgs): Promise<QueryResultWithLimit>;
25
32
  runSdkQuery<T>({ query, queryConfig }: ExecuteQueryArgs<T>, { queryType, abortSignal }: SdkQueryArgs): Promise<T>;
26
33
  healthcheck(): Promise<boolean>;
27
34
  dispose(): void;
@@ -22,14 +22,40 @@ class Neo4jConnection {
22
22
  databases;
23
23
  driver;
24
24
  currentDb;
25
+ serverVersion;
25
26
  constructor(connectedUser, protocolVersion, databases, driver, database) {
26
27
  this.connectedUser = connectedUser;
27
28
  this.protocolVersion = protocolVersion;
28
29
  this.databases = databases;
29
30
  this.driver = driver;
30
31
  this.currentDb = resolveInitialDatabase(databases, database);
32
+ this.serverVersion = undefined;
31
33
  }
32
- async runCypherQuery({ query, parameters, database, abortSignal, }) {
34
+ async evalQuery(session, query, parameters, metadata, tx) {
35
+ let result;
36
+ if (!tx) {
37
+ result = session.run(query, parameters, {
38
+ metadata,
39
+ });
40
+ }
41
+ else {
42
+ result = tx.run(query, parameters);
43
+ }
44
+ const records = [];
45
+ let recordLimitHit = false;
46
+ for await (const record of result) {
47
+ if (records.length < RECORD_LIMIT) {
48
+ records.push(record);
49
+ }
50
+ else {
51
+ recordLimitHit = true;
52
+ break;
53
+ }
54
+ }
55
+ const summary = await result.summary();
56
+ return { records, summary, recordLimitHit };
57
+ }
58
+ async runCypherQuery({ query, parameters, database, abortSignal, implicitTransaction = false, }) {
33
59
  // we'd like to use the drivers `executeQuery` method, but it doesn't support transaction metadata or cancelations yet
34
60
  const session = this.driver.session({
35
61
  database: database ?? this.currentDb,
@@ -39,29 +65,24 @@ class Neo4jConnection {
39
65
  void session.close();
40
66
  });
41
67
  }
68
+ const metadata = {
69
+ ...METADATA_BASE,
70
+ type: 'user-direct',
71
+ };
42
72
  try {
43
- const result = await session.executeWrite(async (tx) => {
44
- const result = tx.run(query, parameters);
45
- const records = [];
46
- let recordLimitHit = false;
47
- for await (const record of result) {
48
- if (records.length < RECORD_LIMIT) {
49
- records.push(record);
50
- }
51
- else {
52
- recordLimitHit = true;
53
- break;
54
- }
55
- }
56
- const summary = await result.summary();
57
- return { records, summary, recordLimitHit };
58
- }, {
59
- metadata: {
60
- ...METADATA_BASE,
61
- type: 'user-direct',
62
- },
63
- });
64
- return result;
73
+ let result;
74
+ if (implicitTransaction) {
75
+ result = this.evalQuery(session, query, parameters, metadata);
76
+ }
77
+ else {
78
+ result = session.executeWrite(async (tx) => {
79
+ const result = this.evalQuery(session, query, parameters, metadata, tx);
80
+ return result;
81
+ }, {
82
+ metadata,
83
+ });
84
+ }
85
+ return await result;
65
86
  }
66
87
  finally {
67
88
  await session.close();
@@ -1 +1 @@
1
- {"version":3,"file":"neo4jConnection.js","sourceRoot":"","sources":["../../../src/neo4jConnection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"neo4jConnection.js","sourceRoot":"","sources":["../../../src/neo4jConnection.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,3 @@ import { ExecuteQueryArgs } from '../types/sdkTypes';
5
5
  export declare function getVersion(): ExecuteQueryArgs<{
6
6
  serverVersion: string | undefined;
7
7
  }>;
8
- export declare function getCypherVersions(): ExecuteQueryArgs<{
9
- serverCypherVersions: string[] | undefined;
10
- }>;