@neo4j-cypher/query-tools 2.0.0-next.29 → 2.0.0-next.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/dist/cjs/package.json +22 -22
- package/dist/cjs/src/cypher-execution/extract-unique-nodes-and-relationships.test.js +3 -1
- package/dist/cjs/src/cypher-execution/extract-unique-nodes-and-relationships.test.js.map +1 -1
- package/dist/cjs/src/data-transforms/record-to-string.js +2 -3
- package/dist/cjs/src/data-transforms/record-to-string.js.map +1 -1
- package/dist/cjs/src/metadataPoller.js +8 -1
- package/dist/cjs/src/metadataPoller.js.map +1 -1
- package/dist/cjs/src/neo4jConnection.js +1 -1
- package/dist/cjs/src/neo4jConnection.js.map +1 -1
- package/dist/cjs/src/schemaPoller.js +5 -2
- package/dist/cjs/src/schemaPoller.js.map +1 -1
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/package.json +22 -22
- package/dist/esm/src/cypher-execution/extract-unique-nodes-and-relationships.test.js +3 -1
- package/dist/esm/src/cypher-execution/extract-unique-nodes-and-relationships.test.js.map +1 -1
- package/dist/esm/src/data-transforms/record-to-string.js +2 -3
- package/dist/esm/src/data-transforms/record-to-string.js.map +1 -1
- package/dist/esm/src/metadataPoller.js +8 -1
- package/dist/esm/src/metadataPoller.js.map +1 -1
- package/dist/esm/src/neo4jConnection.js +1 -1
- package/dist/esm/src/neo4jConnection.js.map +1 -1
- package/dist/esm/src/schemaPoller.js +5 -2
- package/dist/esm/src/schemaPoller.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +14 -14
- package/src/cypher-execution/extract-unique-nodes-and-relationships.test.ts +3 -1
- package/src/data-transforms/record-to-string.ts +2 -3
- package/src/metadataPoller.ts +9 -1
- package/src/neo4jConnection.ts +1 -1
- package/src/schemaPoller.ts +6 -5
- package/src/types/cypher-data-types.ts +1 -1
package/package.json
CHANGED
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@neo4j-cypher/query-tools",
|
|
3
|
+
"version": "2.0.0-next.30",
|
|
3
4
|
"description": "",
|
|
4
|
-
"
|
|
5
|
+
"bugs": {
|
|
6
|
+
"url": "https://github.com/neo4j/cypher-language-support/issues"
|
|
7
|
+
},
|
|
5
8
|
"license": "Apache-2.0",
|
|
6
|
-
"
|
|
9
|
+
"author": "Neo4j Inc.",
|
|
10
|
+
"repository": {
|
|
11
|
+
"type": "git",
|
|
12
|
+
"url": "git://github.com/neo4j/cypher-language-support.git"
|
|
13
|
+
},
|
|
7
14
|
"main": "./dist/cjs/src/index.js",
|
|
8
15
|
"module": "./dist/esm/src/index.js",
|
|
9
16
|
"types": "./dist/types/src/index.d.ts",
|
|
@@ -15,25 +22,18 @@
|
|
|
15
22
|
"default": "./dist/cjs/src/index.js"
|
|
16
23
|
}
|
|
17
24
|
},
|
|
18
|
-
"repository": {
|
|
19
|
-
"type": "git",
|
|
20
|
-
"url": "git://github.com/neo4j/cypher-language-support.git"
|
|
21
|
-
},
|
|
22
|
-
"bugs": {
|
|
23
|
-
"url": "https://github.com/neo4j/cypher-language-support/issues"
|
|
24
|
-
},
|
|
25
|
-
"engineStrict": true,
|
|
26
|
-
"engines": {
|
|
27
|
-
"node": ">=24.11.1"
|
|
28
|
-
},
|
|
29
25
|
"dependencies": {
|
|
30
26
|
"ajv": "^8.12.0",
|
|
31
27
|
"neo4j-driver": "6.0.1",
|
|
32
|
-
"@neo4j-cypher/language-support": "2.0.0-next.
|
|
28
|
+
"@neo4j-cypher/language-support": "2.0.0-next.30"
|
|
33
29
|
},
|
|
34
30
|
"devDependencies": {
|
|
35
31
|
"@testcontainers/neo4j": "^11.5.1"
|
|
36
32
|
},
|
|
33
|
+
"engines": {
|
|
34
|
+
"node": ">=24.11.1"
|
|
35
|
+
},
|
|
36
|
+
"engineStrict": true,
|
|
37
37
|
"scripts": {
|
|
38
38
|
"build": "concurrently 'npm:build-esm' 'npm:build-commonjs' 'npm:build-types'",
|
|
39
39
|
"build-esm": "tsc --module esnext --outDir dist/esm",
|
|
@@ -156,7 +156,9 @@ describe('extractNodesAndRels', () => {
|
|
|
156
156
|
|
|
157
157
|
const { nodes, relationships, limitHit } = extractUniqueNodesAndRels(
|
|
158
158
|
[boltRecord],
|
|
159
|
-
{
|
|
159
|
+
{
|
|
160
|
+
nodeLimit: 1,
|
|
161
|
+
},
|
|
160
162
|
);
|
|
161
163
|
expect(limitHit).toBe(true);
|
|
162
164
|
expect(nodes.length).toBe(1);
|
|
@@ -34,9 +34,7 @@ export function propertyToString(
|
|
|
34
34
|
localeFormattedDates = false,
|
|
35
35
|
): string {
|
|
36
36
|
if (Array.isArray(property)) {
|
|
37
|
-
return `[${property
|
|
38
|
-
.map((p) => propertyToString(p, quoteStrings))
|
|
39
|
-
.join(', ')}]`;
|
|
37
|
+
return `[${property.map((p) => propertyToString(p, quoteStrings)).join(', ')}]`;
|
|
40
38
|
}
|
|
41
39
|
|
|
42
40
|
if (property === null) {
|
|
@@ -72,6 +70,7 @@ export function propertyToString(
|
|
|
72
70
|
|
|
73
71
|
if (typeof property === 'string') {
|
|
74
72
|
if (quoteStrings) {
|
|
73
|
+
// oxlint-disable-next-line typescript-eslint/restrict-template-expressions
|
|
75
74
|
return `"${property}"`;
|
|
76
75
|
}
|
|
77
76
|
return property;
|
package/src/metadataPoller.ts
CHANGED
|
@@ -250,10 +250,18 @@ export class ConnectedMetadataPoller extends MetadataPoller {
|
|
|
250
250
|
await Promise.allSettled([
|
|
251
251
|
this.databases.refetch(),
|
|
252
252
|
this.dataSummary.refetch(),
|
|
253
|
-
this.graphSchema.refetch(),
|
|
254
253
|
...Object.values(this.procedures).map((version) => version?.refetch()),
|
|
255
254
|
...Object.values(this.functions).map((version) => version?.refetch()),
|
|
256
255
|
]);
|
|
256
|
+
if (
|
|
257
|
+
this.dbSchema.labels &&
|
|
258
|
+
this.dbSchema.relationshipTypes &&
|
|
259
|
+
this.dbSchema.labels.length + this.dbSchema.relationshipTypes.length < 200
|
|
260
|
+
) {
|
|
261
|
+
await this.graphSchema.refetch();
|
|
262
|
+
} else {
|
|
263
|
+
this.dbSchema.graphSchema = undefined;
|
|
264
|
+
}
|
|
257
265
|
this.events.emit('schemaFetched');
|
|
258
266
|
}
|
|
259
267
|
|
package/src/neo4jConnection.ts
CHANGED
|
@@ -167,7 +167,7 @@ export class Neo4jConnection {
|
|
|
167
167
|
const result = tx.run(query, {});
|
|
168
168
|
return await queryConfig.resultTransformer(result);
|
|
169
169
|
},
|
|
170
|
-
{ metadata: { ...METADATA_BASE, type: queryType } },
|
|
170
|
+
{ timeout: 500, metadata: { ...METADATA_BASE, type: queryType } },
|
|
171
171
|
);
|
|
172
172
|
} finally {
|
|
173
173
|
await session.close();
|
package/src/schemaPoller.ts
CHANGED
|
@@ -168,7 +168,7 @@ export class Neo4jSchemaPoller {
|
|
|
168
168
|
);
|
|
169
169
|
return ['5', '25'];
|
|
170
170
|
}
|
|
171
|
-
} catch
|
|
171
|
+
} catch {
|
|
172
172
|
return ['5'];
|
|
173
173
|
}
|
|
174
174
|
|
|
@@ -247,7 +247,10 @@ export class Neo4jSchemaPoller {
|
|
|
247
247
|
const driver = neo4j.driver(
|
|
248
248
|
url,
|
|
249
249
|
neo4j.auth.basic(credentials.username, credentials.password),
|
|
250
|
-
{
|
|
250
|
+
{
|
|
251
|
+
userAgent: config.appName,
|
|
252
|
+
...config.driverConfig,
|
|
253
|
+
},
|
|
251
254
|
);
|
|
252
255
|
|
|
253
256
|
await driver.verifyConnectivity({ database: database });
|
|
@@ -323,9 +326,7 @@ export class Neo4jSchemaPoller {
|
|
|
323
326
|
retriable: boolean,
|
|
324
327
|
): ConnectionError {
|
|
325
328
|
const friendlyMessage = retriable
|
|
326
|
-
? `${connectionError.friendlyMessage}. Retrying in ${
|
|
327
|
-
RETRY_INTERVAL_MS / 1000
|
|
328
|
-
} seconds`
|
|
329
|
+
? `${connectionError.friendlyMessage}. Retrying in ${RETRY_INTERVAL_MS / 1000} seconds`
|
|
329
330
|
: connectionError.friendlyMessage;
|
|
330
331
|
|
|
331
332
|
return {
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
} from 'neo4j-driver';
|
|
26
26
|
type NumberOrInteger = number | Integer | bigint;
|
|
27
27
|
|
|
28
|
-
/**
|
|
28
|
+
/**
|
|
29
29
|
The neo4j driver type mapping - https://neo4j.com/docs/javascript-manual/current/cypher-workflow/#js-driver-type-mapping
|
|
30
30
|
|
|
31
31
|
Star denotes custom driver class.
|