flowquery 1.0.34 → 1.0.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/flowquery.min.js +1 -1
- package/dist/graph/database.d.ts +1 -0
- package/dist/graph/database.d.ts.map +1 -1
- package/dist/graph/database.js +43 -6
- package/dist/graph/database.js.map +1 -1
- package/dist/graph/relationship.d.ts +3 -1
- package/dist/graph/relationship.d.ts.map +1 -1
- package/dist/graph/relationship.js +12 -4
- package/dist/graph/relationship.js.map +1 -1
- package/dist/graph/relationship_data.js +1 -1
- package/dist/graph/relationship_data.js.map +1 -1
- package/dist/graph/relationship_match_collector.d.ts.map +1 -1
- package/dist/graph/relationship_match_collector.js +6 -3
- package/dist/graph/relationship_match_collector.js.map +1 -1
- package/dist/graph/relationship_reference.js +1 -1
- package/dist/graph/relationship_reference.js.map +1 -1
- package/dist/parsing/data_structures/lookup.d.ts.map +1 -1
- package/dist/parsing/data_structures/lookup.js +5 -1
- package/dist/parsing/data_structures/lookup.js.map +1 -1
- package/dist/parsing/functions/coalesce.d.ts +17 -0
- package/dist/parsing/functions/coalesce.d.ts.map +1 -0
- package/dist/parsing/functions/coalesce.js +61 -0
- package/dist/parsing/functions/coalesce.js.map +1 -0
- package/dist/parsing/functions/date.d.ts +22 -0
- package/dist/parsing/functions/date.d.ts.map +1 -0
- package/dist/parsing/functions/date.js +71 -0
- package/dist/parsing/functions/date.js.map +1 -0
- package/dist/parsing/functions/datetime.d.ts +22 -0
- package/dist/parsing/functions/datetime.d.ts.map +1 -0
- package/dist/parsing/functions/datetime.js +71 -0
- package/dist/parsing/functions/datetime.js.map +1 -0
- package/dist/parsing/functions/duration.d.ts +7 -0
- package/dist/parsing/functions/duration.d.ts.map +1 -0
- package/dist/parsing/functions/duration.js +145 -0
- package/dist/parsing/functions/duration.js.map +1 -0
- package/dist/parsing/functions/element_id.d.ts +7 -0
- package/dist/parsing/functions/element_id.d.ts.map +1 -0
- package/dist/parsing/functions/element_id.js +58 -0
- package/dist/parsing/functions/element_id.js.map +1 -0
- package/dist/parsing/functions/function_factory.d.ts +21 -0
- package/dist/parsing/functions/function_factory.d.ts.map +1 -1
- package/dist/parsing/functions/function_factory.js +21 -0
- package/dist/parsing/functions/function_factory.js.map +1 -1
- package/dist/parsing/functions/head.d.ts +7 -0
- package/dist/parsing/functions/head.d.ts.map +1 -0
- package/dist/parsing/functions/head.js +53 -0
- package/dist/parsing/functions/head.js.map +1 -0
- package/dist/parsing/functions/id.d.ts +7 -0
- package/dist/parsing/functions/id.d.ts.map +1 -0
- package/dist/parsing/functions/id.js +58 -0
- package/dist/parsing/functions/id.js.map +1 -0
- package/dist/parsing/functions/last.d.ts +7 -0
- package/dist/parsing/functions/last.d.ts.map +1 -0
- package/dist/parsing/functions/last.js +53 -0
- package/dist/parsing/functions/last.js.map +1 -0
- package/dist/parsing/functions/localdatetime.d.ts +21 -0
- package/dist/parsing/functions/localdatetime.d.ts.map +1 -0
- package/dist/parsing/functions/localdatetime.js +71 -0
- package/dist/parsing/functions/localdatetime.js.map +1 -0
- package/dist/parsing/functions/localtime.d.ts +20 -0
- package/dist/parsing/functions/localtime.d.ts.map +1 -0
- package/dist/parsing/functions/localtime.js +67 -0
- package/dist/parsing/functions/localtime.js.map +1 -0
- package/dist/parsing/functions/max.d.ts +14 -0
- package/dist/parsing/functions/max.d.ts.map +1 -0
- package/dist/parsing/functions/max.js +51 -0
- package/dist/parsing/functions/max.js.map +1 -0
- package/dist/parsing/functions/min.d.ts +14 -0
- package/dist/parsing/functions/min.d.ts.map +1 -0
- package/dist/parsing/functions/min.js +51 -0
- package/dist/parsing/functions/min.js.map +1 -0
- package/dist/parsing/functions/nodes.d.ts +7 -0
- package/dist/parsing/functions/nodes.d.ts.map +1 -0
- package/dist/parsing/functions/nodes.js +63 -0
- package/dist/parsing/functions/nodes.js.map +1 -0
- package/dist/parsing/functions/predicate_sum.d.ts.map +1 -1
- package/dist/parsing/functions/predicate_sum.js +13 -10
- package/dist/parsing/functions/predicate_sum.js.map +1 -1
- package/dist/parsing/functions/properties.d.ts +7 -0
- package/dist/parsing/functions/properties.d.ts.map +1 -0
- package/dist/parsing/functions/properties.js +74 -0
- package/dist/parsing/functions/properties.js.map +1 -0
- package/dist/parsing/functions/relationships.d.ts +7 -0
- package/dist/parsing/functions/relationships.d.ts.map +1 -0
- package/dist/parsing/functions/relationships.js +61 -0
- package/dist/parsing/functions/relationships.js.map +1 -0
- package/dist/parsing/functions/schema.d.ts +5 -2
- package/dist/parsing/functions/schema.d.ts.map +1 -1
- package/dist/parsing/functions/schema.js +7 -4
- package/dist/parsing/functions/schema.js.map +1 -1
- package/dist/parsing/functions/tail.d.ts +7 -0
- package/dist/parsing/functions/tail.d.ts.map +1 -0
- package/dist/parsing/functions/tail.js +50 -0
- package/dist/parsing/functions/tail.js.map +1 -0
- package/dist/parsing/functions/temporal_utils.d.ts +39 -0
- package/dist/parsing/functions/temporal_utils.d.ts.map +1 -0
- package/dist/parsing/functions/temporal_utils.js +168 -0
- package/dist/parsing/functions/temporal_utils.js.map +1 -0
- package/dist/parsing/functions/time.d.ts +20 -0
- package/dist/parsing/functions/time.d.ts.map +1 -0
- package/dist/parsing/functions/time.js +67 -0
- package/dist/parsing/functions/time.js.map +1 -0
- package/dist/parsing/functions/timestamp.d.ts +17 -0
- package/dist/parsing/functions/timestamp.d.ts.map +1 -0
- package/dist/parsing/functions/timestamp.js +51 -0
- package/dist/parsing/functions/timestamp.js.map +1 -0
- package/dist/parsing/functions/to_float.d.ts +7 -0
- package/dist/parsing/functions/to_float.d.ts.map +1 -0
- package/dist/parsing/functions/to_float.js +61 -0
- package/dist/parsing/functions/to_float.js.map +1 -0
- package/dist/parsing/functions/to_integer.d.ts +7 -0
- package/dist/parsing/functions/to_integer.d.ts.map +1 -0
- package/dist/parsing/functions/to_integer.js +61 -0
- package/dist/parsing/functions/to_integer.js.map +1 -0
- package/dist/parsing/functions/trim.d.ts +7 -0
- package/dist/parsing/functions/trim.d.ts.map +1 -0
- package/dist/parsing/functions/trim.js +37 -0
- package/dist/parsing/functions/trim.js.map +1 -0
- package/dist/parsing/operations/group_by.d.ts.map +1 -1
- package/dist/parsing/operations/group_by.js +4 -2
- package/dist/parsing/operations/group_by.js.map +1 -1
- package/dist/parsing/parser.d.ts.map +1 -1
- package/dist/parsing/parser.js +15 -2
- package/dist/parsing/parser.js.map +1 -1
- package/docs/flowquery.min.js +1 -1
- package/flowquery-py/pyproject.toml +1 -1
- package/flowquery-py/src/graph/database.py +44 -11
- package/flowquery-py/src/graph/relationship.py +11 -3
- package/flowquery-py/src/graph/relationship_data.py +2 -1
- package/flowquery-py/src/graph/relationship_match_collector.py +7 -1
- package/flowquery-py/src/graph/relationship_reference.py +2 -2
- package/flowquery-py/src/parsing/data_structures/lookup.py +2 -0
- package/flowquery-py/src/parsing/functions/__init__.py +42 -2
- package/flowquery-py/src/parsing/functions/coalesce.py +44 -0
- package/flowquery-py/src/parsing/functions/date_.py +63 -0
- package/flowquery-py/src/parsing/functions/datetime_.py +64 -0
- package/flowquery-py/src/parsing/functions/duration.py +159 -0
- package/flowquery-py/src/parsing/functions/element_id.py +50 -0
- package/flowquery-py/src/parsing/functions/head.py +39 -0
- package/flowquery-py/src/parsing/functions/id_.py +49 -0
- package/flowquery-py/src/parsing/functions/last.py +39 -0
- package/flowquery-py/src/parsing/functions/localdatetime.py +62 -0
- package/flowquery-py/src/parsing/functions/localtime.py +59 -0
- package/flowquery-py/src/parsing/functions/max_.py +49 -0
- package/flowquery-py/src/parsing/functions/min_.py +49 -0
- package/flowquery-py/src/parsing/functions/nodes.py +48 -0
- package/flowquery-py/src/parsing/functions/predicate_sum.py +3 -6
- package/flowquery-py/src/parsing/functions/properties.py +50 -0
- package/flowquery-py/src/parsing/functions/relationships.py +46 -0
- package/flowquery-py/src/parsing/functions/schema.py +9 -5
- package/flowquery-py/src/parsing/functions/tail.py +37 -0
- package/flowquery-py/src/parsing/functions/temporal_utils.py +186 -0
- package/flowquery-py/src/parsing/functions/time_.py +59 -0
- package/flowquery-py/src/parsing/functions/timestamp.py +39 -0
- package/flowquery-py/src/parsing/functions/to_float.py +46 -0
- package/flowquery-py/src/parsing/functions/to_integer.py +46 -0
- package/flowquery-py/src/parsing/functions/trim.py +35 -0
- package/flowquery-py/src/parsing/operations/group_by.py +2 -0
- package/flowquery-py/src/parsing/parser.py +12 -2
- package/flowquery-py/tests/compute/test_runner.py +1082 -4
- package/flowquery-vscode/flowQueryEngine/flowquery.min.js +1 -1
- package/package.json +1 -1
- package/src/graph/database.ts +42 -4
- package/src/graph/relationship.ts +12 -4
- package/src/graph/relationship_data.ts +1 -1
- package/src/graph/relationship_match_collector.ts +6 -2
- package/src/graph/relationship_reference.ts +1 -1
- package/src/parsing/data_structures/lookup.ts +8 -4
- package/src/parsing/functions/coalesce.ts +50 -0
- package/src/parsing/functions/date.ts +65 -0
- package/src/parsing/functions/datetime.ts +65 -0
- package/src/parsing/functions/duration.ts +143 -0
- package/src/parsing/functions/element_id.ts +51 -0
- package/src/parsing/functions/function_factory.ts +21 -0
- package/src/parsing/functions/head.ts +42 -0
- package/src/parsing/functions/id.ts +51 -0
- package/src/parsing/functions/last.ts +42 -0
- package/src/parsing/functions/localdatetime.ts +65 -0
- package/src/parsing/functions/localtime.ts +60 -0
- package/src/parsing/functions/max.ts +37 -0
- package/src/parsing/functions/min.ts +37 -0
- package/src/parsing/functions/nodes.ts +54 -0
- package/src/parsing/functions/predicate_sum.ts +17 -12
- package/src/parsing/functions/properties.ts +56 -0
- package/src/parsing/functions/relationships.ts +52 -0
- package/src/parsing/functions/schema.ts +7 -4
- package/src/parsing/functions/tail.ts +39 -0
- package/src/parsing/functions/temporal_utils.ts +180 -0
- package/src/parsing/functions/time.ts +60 -0
- package/src/parsing/functions/timestamp.ts +41 -0
- package/src/parsing/functions/to_float.ts +50 -0
- package/src/parsing/functions/to_integer.ts +50 -0
- package/src/parsing/functions/trim.ts +25 -0
- package/src/parsing/operations/group_by.ts +4 -1
- package/src/parsing/parser.ts +15 -2
- package/tests/compute/runner.test.ts +1005 -3
- package/tests/parsing/parser.test.ts +37 -0
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const function_1 = __importDefault(require("./function"));
|
|
13
|
+
const function_metadata_1 = require("./function_metadata");
|
|
14
|
+
/**
|
|
15
|
+
* Regex for ISO 8601 duration strings: P[nY][nM][nW][nD][T[nH][nM][nS]]
|
|
16
|
+
*/
|
|
17
|
+
const ISO_DURATION_REGEX = /^P(?:(\d+(?:\.\d+)?)Y)?(?:(\d+(?:\.\d+)?)M)?(?:(\d+(?:\.\d+)?)W)?(?:(\d+(?:\.\d+)?)D)?(?:T(?:(\d+(?:\.\d+)?)H)?(?:(\d+(?:\.\d+)?)M)?(?:(\d+(?:\.\d+)?)S)?)?$/;
|
|
18
|
+
function parseDurationString(s) {
|
|
19
|
+
const match = s.match(ISO_DURATION_REGEX);
|
|
20
|
+
if (!match) {
|
|
21
|
+
throw new Error(`duration(): Invalid ISO 8601 duration string: '${s}'`);
|
|
22
|
+
}
|
|
23
|
+
return {
|
|
24
|
+
years: match[1] ? parseFloat(match[1]) : 0,
|
|
25
|
+
months: match[2] ? parseFloat(match[2]) : 0,
|
|
26
|
+
weeks: match[3] ? parseFloat(match[3]) : 0,
|
|
27
|
+
days: match[4] ? parseFloat(match[4]) : 0,
|
|
28
|
+
hours: match[5] ? parseFloat(match[5]) : 0,
|
|
29
|
+
minutes: match[6] ? parseFloat(match[6]) : 0,
|
|
30
|
+
seconds: match[7] ? parseFloat(match[7]) : 0,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
function buildDurationObject(components) {
|
|
34
|
+
const years = components.years || 0;
|
|
35
|
+
const months = components.months || 0;
|
|
36
|
+
const weeks = components.weeks || 0;
|
|
37
|
+
const days = components.days || 0;
|
|
38
|
+
const hours = components.hours || 0;
|
|
39
|
+
const minutes = components.minutes || 0;
|
|
40
|
+
const seconds = Math.floor(components.seconds || 0);
|
|
41
|
+
const fractionalSeconds = (components.seconds || 0) - seconds;
|
|
42
|
+
const milliseconds = components.milliseconds
|
|
43
|
+
? Math.floor(components.milliseconds)
|
|
44
|
+
: Math.round(fractionalSeconds * 1000);
|
|
45
|
+
const nanoseconds = components.nanoseconds
|
|
46
|
+
? Math.floor(components.nanoseconds)
|
|
47
|
+
: Math.round(fractionalSeconds * 1000000000) % 1000000;
|
|
48
|
+
// Total days including weeks
|
|
49
|
+
const totalDays = days + weeks * 7;
|
|
50
|
+
// Total seconds for the time portion
|
|
51
|
+
const totalSeconds = hours * 3600 + minutes * 60 + seconds;
|
|
52
|
+
// Approximate total in various units (months approximated at 30 days)
|
|
53
|
+
const totalMonths = years * 12 + months;
|
|
54
|
+
// Build ISO 8601 formatted string
|
|
55
|
+
let formatted = "P";
|
|
56
|
+
if (years)
|
|
57
|
+
formatted += `${years}Y`;
|
|
58
|
+
if (months)
|
|
59
|
+
formatted += `${months}M`;
|
|
60
|
+
if (weeks)
|
|
61
|
+
formatted += `${weeks}W`;
|
|
62
|
+
if (totalDays - weeks * 7)
|
|
63
|
+
formatted += `${totalDays - weeks * 7}D`;
|
|
64
|
+
const hasTime = hours || minutes || seconds || milliseconds;
|
|
65
|
+
if (hasTime) {
|
|
66
|
+
formatted += "T";
|
|
67
|
+
if (hours)
|
|
68
|
+
formatted += `${hours}H`;
|
|
69
|
+
if (minutes)
|
|
70
|
+
formatted += `${minutes}M`;
|
|
71
|
+
if (seconds || milliseconds) {
|
|
72
|
+
if (milliseconds) {
|
|
73
|
+
formatted += `${seconds}.${String(milliseconds).padStart(3, "0")}S`;
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
formatted += `${seconds}S`;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
if (formatted === "P")
|
|
81
|
+
formatted = "PT0S";
|
|
82
|
+
return {
|
|
83
|
+
years,
|
|
84
|
+
months,
|
|
85
|
+
weeks,
|
|
86
|
+
days: totalDays,
|
|
87
|
+
hours,
|
|
88
|
+
minutes,
|
|
89
|
+
seconds,
|
|
90
|
+
milliseconds,
|
|
91
|
+
nanoseconds,
|
|
92
|
+
totalMonths,
|
|
93
|
+
totalDays,
|
|
94
|
+
totalSeconds,
|
|
95
|
+
formatted,
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
let Duration = class Duration extends function_1.default {
|
|
99
|
+
constructor() {
|
|
100
|
+
super("duration");
|
|
101
|
+
this._expectedParameterCount = 1;
|
|
102
|
+
}
|
|
103
|
+
value() {
|
|
104
|
+
const arg = this.getChildren()[0].value();
|
|
105
|
+
if (arg === null || arg === undefined) {
|
|
106
|
+
return null;
|
|
107
|
+
}
|
|
108
|
+
if (typeof arg === "string") {
|
|
109
|
+
const components = parseDurationString(arg);
|
|
110
|
+
return buildDurationObject(components);
|
|
111
|
+
}
|
|
112
|
+
if (typeof arg === "object" && !Array.isArray(arg)) {
|
|
113
|
+
return buildDurationObject(arg);
|
|
114
|
+
}
|
|
115
|
+
throw new Error("duration() expects a string or map argument");
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
Duration = __decorate([
|
|
119
|
+
(0, function_metadata_1.FunctionDef)({
|
|
120
|
+
description: "Creates a duration value representing a span of time. " +
|
|
121
|
+
"Accepts an ISO 8601 duration string (e.g., 'P1Y2M3DT4H5M6S') or a map of components " +
|
|
122
|
+
"(years, months, weeks, days, hours, minutes, seconds, milliseconds, nanoseconds).",
|
|
123
|
+
category: "scalar",
|
|
124
|
+
parameters: [
|
|
125
|
+
{
|
|
126
|
+
name: "input",
|
|
127
|
+
description: "An ISO 8601 duration string or a map of components (years, months, weeks, days, hours, minutes, seconds, milliseconds, nanoseconds)",
|
|
128
|
+
type: "any",
|
|
129
|
+
},
|
|
130
|
+
],
|
|
131
|
+
output: {
|
|
132
|
+
description: "A duration object with properties: years, months, weeks, days, hours, minutes, seconds, " +
|
|
133
|
+
"milliseconds, nanoseconds, totalMonths, totalDays, totalSeconds, formatted",
|
|
134
|
+
type: "object",
|
|
135
|
+
},
|
|
136
|
+
examples: [
|
|
137
|
+
"RETURN duration('P1Y2M3D') AS d",
|
|
138
|
+
"RETURN duration('PT2H30M') AS d",
|
|
139
|
+
"RETURN duration({days: 14, hours: 16}) AS d",
|
|
140
|
+
"RETURN duration({months: 5, days: 1, hours: 12}) AS d",
|
|
141
|
+
],
|
|
142
|
+
})
|
|
143
|
+
], Duration);
|
|
144
|
+
exports.default = Duration;
|
|
145
|
+
//# sourceMappingURL=duration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration.js","sourceRoot":"","sources":["../../../src/parsing/functions/duration.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element_id.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/element_id.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAGlC,cAkBM,SAAU,SAAQ,QAAQ;;IAMrB,KAAK,IAAI,GAAG;CAqBtB;AAED,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const function_1 = __importDefault(require("./function"));
|
|
13
|
+
const function_metadata_1 = require("./function_metadata");
|
|
14
|
+
let ElementId = class ElementId extends function_1.default {
|
|
15
|
+
constructor() {
|
|
16
|
+
super("elementid");
|
|
17
|
+
this._expectedParameterCount = 1;
|
|
18
|
+
}
|
|
19
|
+
value() {
|
|
20
|
+
const obj = this.getChildren()[0].value();
|
|
21
|
+
if (obj === null || obj === undefined) {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
if (typeof obj !== "object" || Array.isArray(obj)) {
|
|
25
|
+
throw new Error("elementId() expects a node or relationship");
|
|
26
|
+
}
|
|
27
|
+
// If it's a RelationshipMatchRecord (has type, startNode, endNode, properties)
|
|
28
|
+
if ("type" in obj && "startNode" in obj && "endNode" in obj && "properties" in obj) {
|
|
29
|
+
return String(obj.type);
|
|
30
|
+
}
|
|
31
|
+
// If it's a node record (has id field)
|
|
32
|
+
if ("id" in obj) {
|
|
33
|
+
return String(obj.id);
|
|
34
|
+
}
|
|
35
|
+
throw new Error("elementId() expects a node or relationship");
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
ElementId = __decorate([
|
|
39
|
+
(0, function_metadata_1.FunctionDef)({
|
|
40
|
+
description: "Returns the element id of a node or relationship as a string. For nodes, returns the string representation of the id property. For relationships, returns the type.",
|
|
41
|
+
category: "scalar",
|
|
42
|
+
parameters: [
|
|
43
|
+
{
|
|
44
|
+
name: "entity",
|
|
45
|
+
description: "A node or relationship to get the element id from",
|
|
46
|
+
type: "object",
|
|
47
|
+
},
|
|
48
|
+
],
|
|
49
|
+
output: {
|
|
50
|
+
description: "The element id of the entity as a string",
|
|
51
|
+
type: "string",
|
|
52
|
+
example: '"1"',
|
|
53
|
+
},
|
|
54
|
+
examples: ["MATCH (n:Person) RETURN elementId(n)", "MATCH (a)-[r]->(b) RETURN elementId(r)"],
|
|
55
|
+
})
|
|
56
|
+
], ElementId);
|
|
57
|
+
exports.default = ElementId;
|
|
58
|
+
//# sourceMappingURL=element_id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element_id.js","sourceRoot":"","sources":["../../../src/parsing/functions/element_id.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,0DAAkC;AAClC,2DAAkD;AAoBlD,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,kBAAQ;IAC5B;QACI,KAAK,CAAC,WAAW,CAAC,CAAC;QACnB,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;IACrC,CAAC;IAEM,KAAK;QACR,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAC1C,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAClE,CAAC;QAED,+EAA+E;QAC/E,IAAI,MAAM,IAAI,GAAG,IAAI,WAAW,IAAI,GAAG,IAAI,SAAS,IAAI,GAAG,IAAI,YAAY,IAAI,GAAG,EAAE,CAAC;YACjF,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAED,uCAAuC;QACvC,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,OAAO,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAClE,CAAC;CACJ,CAAA;AA3BK,SAAS;IAlBd,IAAA,+BAAW,EAAC;QACT,WAAW,EACP,qKAAqK;QACzK,QAAQ,EAAE,QAAQ;QAClB,UAAU,EAAE;YACR;gBACI,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mDAAmD;gBAChE,IAAI,EAAE,QAAQ;aACjB;SACJ;QACD,MAAM,EAAE;YACJ,WAAW,EAAE,0CAA0C;YACvD,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,KAAK;SACjB;QACD,QAAQ,EAAE,CAAC,sCAAsC,EAAE,wCAAwC,CAAC;KAC/F,CAAC;GACI,SAAS,CA2Bd;AAED,kBAAe,SAAS,CAAC"}
|
|
@@ -1,16 +1,31 @@
|
|
|
1
1
|
import AsyncFunction from "./async_function";
|
|
2
2
|
import "./avg";
|
|
3
|
+
import "./coalesce";
|
|
3
4
|
import "./collect";
|
|
4
5
|
import "./count";
|
|
6
|
+
import "./date";
|
|
7
|
+
import "./datetime";
|
|
8
|
+
import "./duration";
|
|
9
|
+
import "./element_id";
|
|
5
10
|
import Function from "./function";
|
|
6
11
|
import { AsyncDataProvider, FunctionMetadata } from "./function_metadata";
|
|
7
12
|
import "./functions";
|
|
13
|
+
import "./head";
|
|
14
|
+
import "./id";
|
|
8
15
|
import "./join";
|
|
9
16
|
import "./keys";
|
|
17
|
+
import "./last";
|
|
18
|
+
import "./localdatetime";
|
|
19
|
+
import "./localtime";
|
|
20
|
+
import "./max";
|
|
21
|
+
import "./min";
|
|
22
|
+
import "./nodes";
|
|
10
23
|
import PredicateFunction from "./predicate_function";
|
|
11
24
|
import "./predicate_sum";
|
|
25
|
+
import "./properties";
|
|
12
26
|
import "./rand";
|
|
13
27
|
import "./range";
|
|
28
|
+
import "./relationships";
|
|
14
29
|
import "./replace";
|
|
15
30
|
import "./round";
|
|
16
31
|
import "./schema";
|
|
@@ -19,9 +34,15 @@ import "./split";
|
|
|
19
34
|
import "./string_distance";
|
|
20
35
|
import "./stringify";
|
|
21
36
|
import "./sum";
|
|
37
|
+
import "./tail";
|
|
38
|
+
import "./time";
|
|
39
|
+
import "./timestamp";
|
|
40
|
+
import "./to_float";
|
|
41
|
+
import "./to_integer";
|
|
22
42
|
import "./to_json";
|
|
23
43
|
import "./to_lower";
|
|
24
44
|
import "./to_string";
|
|
45
|
+
import "./trim";
|
|
25
46
|
import "./type";
|
|
26
47
|
export { AsyncDataProvider };
|
|
27
48
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function_factory.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/function_factory.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,OAAO,CAAC;AACf,OAAO,WAAW,CAAC;AACnB,OAAO,SAAS,CAAC;AACjB,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,EACH,iBAAiB,EACjB,gBAAgB,EAInB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,aAAa,CAAC;AACrB,OAAO,QAAQ,CAAC;AAChB,OAAO,QAAQ,CAAC;AAChB,OAAO,iBAAiB,MAAM,sBAAsB,CAAC;AACrD,OAAO,iBAAiB,CAAC;AACzB,OAAO,QAAQ,CAAC;AAChB,OAAO,SAAS,CAAC;AACjB,OAAO,WAAW,CAAC;AACnB,OAAO,SAAS,CAAC;AACjB,OAAO,UAAU,CAAC;AAClB,OAAO,QAAQ,CAAC;AAChB,OAAO,SAAS,CAAC;AACjB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,aAAa,CAAC;AAErB,OAAO,OAAO,CAAC;AACf,OAAO,WAAW,CAAC;AACnB,OAAO,YAAY,CAAC;AACpB,OAAO,aAAa,CAAC;AACrB,OAAO,QAAQ,CAAC;AAGhB,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B;;;;;;;;;;;;GAYG;AACH,cAAM,eAAe;IACjB;;;;;OAKG;WACW,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAI3E;;;;;OAKG;WACW,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIpD;;;;;OAKG;WACW,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAIrE;;;;;OAKG;WACW,aAAa,CAAC,OAAO,CAAC,EAAE;QAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACtB,GAAG,gBAAgB,EAAE;IAatB;;;;OAIG;WACW,iBAAiB,IAAI,MAAM,EAAE;IAI3C;;;;OAIG;WACW,MAAM,IAAI;QAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE;IAQ/E;;;;;OAKG;WACW,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ;IAY5C;;;;;;OAMG;WACW,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB;WAYhD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;CAQzD;AAED,eAAe,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"function_factory.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/function_factory.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,OAAO,CAAC;AACf,OAAO,YAAY,CAAC;AACpB,OAAO,WAAW,CAAC;AACnB,OAAO,SAAS,CAAC;AACjB,OAAO,QAAQ,CAAC;AAChB,OAAO,YAAY,CAAC;AACpB,OAAO,YAAY,CAAC;AACpB,OAAO,cAAc,CAAC;AACtB,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,EACH,iBAAiB,EACjB,gBAAgB,EAInB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,aAAa,CAAC;AACrB,OAAO,QAAQ,CAAC;AAChB,OAAO,MAAM,CAAC;AACd,OAAO,QAAQ,CAAC;AAChB,OAAO,QAAQ,CAAC;AAChB,OAAO,QAAQ,CAAC;AAChB,OAAO,iBAAiB,CAAC;AACzB,OAAO,aAAa,CAAC;AACrB,OAAO,OAAO,CAAC;AACf,OAAO,OAAO,CAAC;AACf,OAAO,SAAS,CAAC;AACjB,OAAO,iBAAiB,MAAM,sBAAsB,CAAC;AACrD,OAAO,iBAAiB,CAAC;AACzB,OAAO,cAAc,CAAC;AACtB,OAAO,QAAQ,CAAC;AAChB,OAAO,SAAS,CAAC;AACjB,OAAO,iBAAiB,CAAC;AACzB,OAAO,WAAW,CAAC;AACnB,OAAO,SAAS,CAAC;AACjB,OAAO,UAAU,CAAC;AAClB,OAAO,QAAQ,CAAC;AAChB,OAAO,SAAS,CAAC;AACjB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,aAAa,CAAC;AAErB,OAAO,OAAO,CAAC;AACf,OAAO,QAAQ,CAAC;AAChB,OAAO,QAAQ,CAAC;AAChB,OAAO,aAAa,CAAC;AACrB,OAAO,YAAY,CAAC;AACpB,OAAO,cAAc,CAAC;AACtB,OAAO,WAAW,CAAC;AACnB,OAAO,YAAY,CAAC;AACpB,OAAO,aAAa,CAAC;AACrB,OAAO,QAAQ,CAAC;AAChB,OAAO,QAAQ,CAAC;AAGhB,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B;;;;;;;;;;;;GAYG;AACH,cAAM,eAAe;IACjB;;;;;OAKG;WACW,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAI3E;;;;;OAKG;WACW,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIpD;;;;;OAKG;WACW,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAIrE;;;;;OAKG;WACW,aAAa,CAAC,OAAO,CAAC,EAAE;QAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACtB,GAAG,gBAAgB,EAAE;IAatB;;;;OAIG;WACW,iBAAiB,IAAI,MAAM,EAAE;IAI3C;;;;OAIG;WACW,MAAM,IAAI;QAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE;IAQ/E;;;;;OAKG;WACW,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ;IAY5C;;;;;;OAMG;WACW,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB;WAYhD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;CAQzD;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -1,15 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
require("./avg");
|
|
4
|
+
require("./coalesce");
|
|
4
5
|
require("./collect");
|
|
5
6
|
require("./count");
|
|
7
|
+
require("./date");
|
|
8
|
+
require("./datetime");
|
|
9
|
+
require("./duration");
|
|
10
|
+
require("./element_id");
|
|
6
11
|
const function_metadata_1 = require("./function_metadata");
|
|
7
12
|
require("./functions");
|
|
13
|
+
require("./head");
|
|
14
|
+
require("./id");
|
|
8
15
|
require("./join");
|
|
9
16
|
require("./keys");
|
|
17
|
+
require("./last");
|
|
18
|
+
require("./localdatetime");
|
|
19
|
+
require("./localtime");
|
|
20
|
+
require("./max");
|
|
21
|
+
require("./min");
|
|
22
|
+
require("./nodes");
|
|
10
23
|
require("./predicate_sum");
|
|
24
|
+
require("./properties");
|
|
11
25
|
require("./rand");
|
|
12
26
|
require("./range");
|
|
27
|
+
require("./relationships");
|
|
13
28
|
require("./replace");
|
|
14
29
|
require("./round");
|
|
15
30
|
require("./schema");
|
|
@@ -19,9 +34,15 @@ require("./string_distance");
|
|
|
19
34
|
require("./stringify");
|
|
20
35
|
// Import built-in functions to ensure their @FunctionDef decorators run
|
|
21
36
|
require("./sum");
|
|
37
|
+
require("./tail");
|
|
38
|
+
require("./time");
|
|
39
|
+
require("./timestamp");
|
|
40
|
+
require("./to_float");
|
|
41
|
+
require("./to_integer");
|
|
22
42
|
require("./to_json");
|
|
23
43
|
require("./to_lower");
|
|
24
44
|
require("./to_string");
|
|
45
|
+
require("./trim");
|
|
25
46
|
require("./type");
|
|
26
47
|
/**
|
|
27
48
|
* Factory for creating function instances by name.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function_factory.js","sourceRoot":"","sources":["../../../src/parsing/functions/function_factory.ts"],"names":[],"mappings":";;AACA,iBAAe;AACf,qBAAmB;AACnB,mBAAiB;
|
|
1
|
+
{"version":3,"file":"function_factory.js","sourceRoot":"","sources":["../../../src/parsing/functions/function_factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"head.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/head.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAGlC,cAiBM,IAAK,SAAQ,QAAQ;;IAMhB,KAAK,IAAI,GAAG;CAatB;AAED,eAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const function_1 = __importDefault(require("./function"));
|
|
13
|
+
const function_metadata_1 = require("./function_metadata");
|
|
14
|
+
let Head = class Head extends function_1.default {
|
|
15
|
+
constructor() {
|
|
16
|
+
super("head");
|
|
17
|
+
this._expectedParameterCount = 1;
|
|
18
|
+
}
|
|
19
|
+
value() {
|
|
20
|
+
const val = this.getChildren()[0].value();
|
|
21
|
+
if (val === null || val === undefined) {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
if (!Array.isArray(val)) {
|
|
25
|
+
throw new Error("head() expects a list");
|
|
26
|
+
}
|
|
27
|
+
if (val.length === 0) {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
return val[0];
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
Head = __decorate([
|
|
34
|
+
(0, function_metadata_1.FunctionDef)({
|
|
35
|
+
description: "Returns the first element of a list",
|
|
36
|
+
category: "scalar",
|
|
37
|
+
parameters: [
|
|
38
|
+
{
|
|
39
|
+
name: "list",
|
|
40
|
+
description: "The list to get the first element from",
|
|
41
|
+
type: "array",
|
|
42
|
+
},
|
|
43
|
+
],
|
|
44
|
+
output: {
|
|
45
|
+
description: "The first element of the list",
|
|
46
|
+
type: "any",
|
|
47
|
+
example: "1",
|
|
48
|
+
},
|
|
49
|
+
examples: ["RETURN head([1, 2, 3])", "WITH ['a', 'b', 'c'] AS items RETURN head(items)"],
|
|
50
|
+
})
|
|
51
|
+
], Head);
|
|
52
|
+
exports.default = Head;
|
|
53
|
+
//# sourceMappingURL=head.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"head.js","sourceRoot":"","sources":["../../../src/parsing/functions/head.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,0DAAkC;AAClC,2DAAkD;AAmBlD,IAAM,IAAI,GAAV,MAAM,IAAK,SAAQ,kBAAQ;IACvB;QACI,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;IACrC,CAAC;IAEM,KAAK;QACR,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAC1C,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;CACJ,CAAA;AAnBK,IAAI;IAjBT,IAAA,+BAAW,EAAC;QACT,WAAW,EAAE,qCAAqC;QAClD,QAAQ,EAAE,QAAQ;QAClB,UAAU,EAAE;YACR;gBACI,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,wCAAwC;gBACrD,IAAI,EAAE,OAAO;aAChB;SACJ;QACD,MAAM,EAAE;YACJ,WAAW,EAAE,+BAA+B;YAC5C,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,GAAG;SACf;QACD,QAAQ,EAAE,CAAC,wBAAwB,EAAE,kDAAkD,CAAC;KAC3F,CAAC;GACI,IAAI,CAmBT;AAED,kBAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/id.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAGlC,cAkBM,EAAG,SAAQ,QAAQ;;IAMd,KAAK,IAAI,GAAG;CAqBtB;AAED,eAAe,EAAE,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const function_1 = __importDefault(require("./function"));
|
|
13
|
+
const function_metadata_1 = require("./function_metadata");
|
|
14
|
+
let Id = class Id extends function_1.default {
|
|
15
|
+
constructor() {
|
|
16
|
+
super("id");
|
|
17
|
+
this._expectedParameterCount = 1;
|
|
18
|
+
}
|
|
19
|
+
value() {
|
|
20
|
+
const obj = this.getChildren()[0].value();
|
|
21
|
+
if (obj === null || obj === undefined) {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
if (typeof obj !== "object" || Array.isArray(obj)) {
|
|
25
|
+
throw new Error("id() expects a node or relationship");
|
|
26
|
+
}
|
|
27
|
+
// If it's a RelationshipMatchRecord (has type, startNode, endNode, properties)
|
|
28
|
+
if ("type" in obj && "startNode" in obj && "endNode" in obj && "properties" in obj) {
|
|
29
|
+
return obj.type;
|
|
30
|
+
}
|
|
31
|
+
// If it's a node record (has id field)
|
|
32
|
+
if ("id" in obj) {
|
|
33
|
+
return obj.id;
|
|
34
|
+
}
|
|
35
|
+
throw new Error("id() expects a node or relationship");
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Id = __decorate([
|
|
39
|
+
(0, function_metadata_1.FunctionDef)({
|
|
40
|
+
description: "Returns the id of a node or relationship. For nodes, returns the id property. For relationships, returns the type.",
|
|
41
|
+
category: "scalar",
|
|
42
|
+
parameters: [
|
|
43
|
+
{
|
|
44
|
+
name: "entity",
|
|
45
|
+
description: "A node or relationship to get the id from",
|
|
46
|
+
type: "object",
|
|
47
|
+
},
|
|
48
|
+
],
|
|
49
|
+
output: {
|
|
50
|
+
description: "The id of the entity",
|
|
51
|
+
type: "any",
|
|
52
|
+
example: "1",
|
|
53
|
+
},
|
|
54
|
+
examples: ["MATCH (n:Person) RETURN id(n)", "MATCH (a)-[r]->(b) RETURN id(r)"],
|
|
55
|
+
})
|
|
56
|
+
], Id);
|
|
57
|
+
exports.default = Id;
|
|
58
|
+
//# sourceMappingURL=id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id.js","sourceRoot":"","sources":["../../../src/parsing/functions/id.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,0DAAkC;AAClC,2DAAkD;AAoBlD,IAAM,EAAE,GAAR,MAAM,EAAG,SAAQ,kBAAQ;IACrB;QACI,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;IACrC,CAAC;IAEM,KAAK;QACR,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAC1C,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC3D,CAAC;QAED,+EAA+E;QAC/E,IAAI,MAAM,IAAI,GAAG,IAAI,WAAW,IAAI,GAAG,IAAI,SAAS,IAAI,GAAG,IAAI,YAAY,IAAI,GAAG,EAAE,CAAC;YACjF,OAAO,GAAG,CAAC,IAAI,CAAC;QACpB,CAAC;QAED,uCAAuC;QACvC,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,OAAO,GAAG,CAAC,EAAE,CAAC;QAClB,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IAC3D,CAAC;CACJ,CAAA;AA3BK,EAAE;IAlBP,IAAA,+BAAW,EAAC;QACT,WAAW,EACP,oHAAoH;QACxH,QAAQ,EAAE,QAAQ;QAClB,UAAU,EAAE;YACR;gBACI,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,2CAA2C;gBACxD,IAAI,EAAE,QAAQ;aACjB;SACJ;QACD,MAAM,EAAE;YACJ,WAAW,EAAE,sBAAsB;YACnC,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,GAAG;SACf;QACD,QAAQ,EAAE,CAAC,+BAA+B,EAAE,iCAAiC,CAAC;KACjF,CAAC;GACI,EAAE,CA2BP;AAED,kBAAe,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"last.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/last.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAGlC,cAiBM,IAAK,SAAQ,QAAQ;;IAMhB,KAAK,IAAI,GAAG;CAatB;AAED,eAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const function_1 = __importDefault(require("./function"));
|
|
13
|
+
const function_metadata_1 = require("./function_metadata");
|
|
14
|
+
let Last = class Last extends function_1.default {
|
|
15
|
+
constructor() {
|
|
16
|
+
super("last");
|
|
17
|
+
this._expectedParameterCount = 1;
|
|
18
|
+
}
|
|
19
|
+
value() {
|
|
20
|
+
const val = this.getChildren()[0].value();
|
|
21
|
+
if (val === null || val === undefined) {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
if (!Array.isArray(val)) {
|
|
25
|
+
throw new Error("last() expects a list");
|
|
26
|
+
}
|
|
27
|
+
if (val.length === 0) {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
return val[val.length - 1];
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
Last = __decorate([
|
|
34
|
+
(0, function_metadata_1.FunctionDef)({
|
|
35
|
+
description: "Returns the last element of a list",
|
|
36
|
+
category: "scalar",
|
|
37
|
+
parameters: [
|
|
38
|
+
{
|
|
39
|
+
name: "list",
|
|
40
|
+
description: "The list to get the last element from",
|
|
41
|
+
type: "array",
|
|
42
|
+
},
|
|
43
|
+
],
|
|
44
|
+
output: {
|
|
45
|
+
description: "The last element of the list",
|
|
46
|
+
type: "any",
|
|
47
|
+
example: "3",
|
|
48
|
+
},
|
|
49
|
+
examples: ["RETURN last([1, 2, 3])", "WITH ['a', 'b', 'c'] AS items RETURN last(items)"],
|
|
50
|
+
})
|
|
51
|
+
], Last);
|
|
52
|
+
exports.default = Last;
|
|
53
|
+
//# sourceMappingURL=last.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"last.js","sourceRoot":"","sources":["../../../src/parsing/functions/last.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,0DAAkC;AAClC,2DAAkD;AAmBlD,IAAM,IAAI,GAAV,MAAM,IAAK,SAAQ,kBAAQ;IACvB;QACI,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;IACrC,CAAC;IAEM,KAAK;QACR,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAC1C,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/B,CAAC;CACJ,CAAA;AAnBK,IAAI;IAjBT,IAAA,+BAAW,EAAC;QACT,WAAW,EAAE,oCAAoC;QACjD,QAAQ,EAAE,QAAQ;QAClB,UAAU,EAAE;YACR;gBACI,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,uCAAuC;gBACpD,IAAI,EAAE,OAAO;aAChB;SACJ;QACD,MAAM,EAAE;YACJ,WAAW,EAAE,8BAA8B;YAC3C,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,GAAG;SACf;QACD,QAAQ,EAAE,CAAC,wBAAwB,EAAE,kDAAkD,CAAC;KAC3F,CAAC;GACI,IAAI,CAmBT;AAED,kBAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import Function from "./function";
|
|
2
|
+
/**
|
|
3
|
+
* Returns a local datetime value (date + time, no timezone offset).
|
|
4
|
+
* When called with no arguments, returns the current local datetime.
|
|
5
|
+
* When called with a string argument, parses it as an ISO 8601 datetime.
|
|
6
|
+
* When called with a map argument, constructs a datetime from components.
|
|
7
|
+
*
|
|
8
|
+
* Equivalent to Neo4j's localdatetime() function.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```
|
|
12
|
+
* RETURN localdatetime() AS now
|
|
13
|
+
* RETURN localdatetime('2025-06-15T12:30:00') AS dt
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
declare class LocalDatetime extends Function {
|
|
17
|
+
constructor();
|
|
18
|
+
value(): any;
|
|
19
|
+
}
|
|
20
|
+
export default LocalDatetime;
|
|
21
|
+
//# sourceMappingURL=localdatetime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"localdatetime.d.ts","sourceRoot":"","sources":["../../../src/parsing/functions/localdatetime.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAIlC;;;;;;;;;;;;;GAaG;AACH,cAyBM,aAAc,SAAQ,QAAQ;;IAMzB,KAAK,IAAI,GAAG;CAatB;AAED,eAAe,aAAa,CAAC"}
|