@cloudcare/codemirror-dql 0.0.57 → 0.0.61

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.
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.studioQLNamespaceTerm = void 0;
15
+ exports.completeStudioQuery = completeStudioQuery;
16
+ var autocomplete_1 = require("@codemirror/autocomplete");
17
+ var language_1 = require("@codemirror/language");
18
+ var incidentsFunctions = [
19
+ { name: 'incidents_total_count', info: 'Total incident count' },
20
+ { name: 'open_incidents_count', info: 'Open incident count' },
21
+ { name: 'working_incidents_count', info: 'Working incident count' },
22
+ { name: 'incidents_duration_by_assignee', info: 'Incident duration by assignee', extraParameter: 'top' },
23
+ { name: 'unresolved_incidents_assignee_distribution', info: 'Unresolved incident distribution by assignee' },
24
+ { name: 'incidents_count_distribution_by_level', info: 'Incident count distribution by level' },
25
+ { name: 'incidents_count_by_assignee', info: 'Incident count by assignee', extraParameter: 'top' },
26
+ { name: 'max_incidents_duration', info: 'Maximum incident duration' },
27
+ { name: 'unresolved_incidents_list', info: 'Unresolved incident list', extraParameter: 'limit' },
28
+ { name: 'resolved_issue_count', info: 'Resolved issue count' },
29
+ ];
30
+ exports.studioQLNamespaceTerm = {
31
+ label: 'STUDIOQL',
32
+ type: 'namespace',
33
+ detail: 'Studio query',
34
+ apply: 'STUDIOQL.',
35
+ };
36
+ function completeStudioQuery(context) {
37
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
38
+ var state = context.state, pos = context.pos;
39
+ var tree = (0, language_1.syntaxTree)(state);
40
+ var query = (_a = tree.topNode.getChild('QueryExpr')) === null || _a === void 0 ? void 0 : _a.getChild('StudioQuery');
41
+ if (!query || pos < query.from)
42
+ return null;
43
+ var endTime = Date.now();
44
+ var timeRangeSnippet = "time_range=[${1:".concat(endTime - 60 * 60 * 1000, "}, ${2:").concat(endTime, "}]");
45
+ var parameterSnippets = {
46
+ time_range: timeRangeSnippet,
47
+ top: "top='${3:10}'",
48
+ limit: "limit='${3:500}'",
49
+ };
50
+ var result = function (from, to, options) { return ({
51
+ from: from,
52
+ to: to,
53
+ options: options,
54
+ validFor: /^[a-zA-Z0-9_]*$/,
55
+ }); };
56
+ var empty = function () { return result(pos, pos, []); };
57
+ if (tree.resolve(pos, -1).name === 'LineComment')
58
+ return empty();
59
+ var skipTrivia = function (from) {
60
+ while (from < state.doc.length) {
61
+ var comment = tree.resolve(from, 1);
62
+ if (comment.name === 'LineComment' && comment.to > from) {
63
+ from = comment.to;
64
+ continue;
65
+ }
66
+ var whitespace = state.sliceDoc(from).match(/^\s+/);
67
+ if (!whitespace)
68
+ break;
69
+ from += whitespace[0].length;
70
+ }
71
+ return from;
72
+ };
73
+ var hasFollowing = function (to, char) {
74
+ var next = skipTrivia(to);
75
+ return state.sliceDoc(next, next + 1) === char;
76
+ };
77
+ var completeDotGap = function (from, nextFrom) {
78
+ if (pos <= from || (nextFrom !== undefined && pos >= nextFrom))
79
+ return null;
80
+ var dot = skipTrivia(from);
81
+ if (state.sliceDoc(dot, dot + 1) !== '.')
82
+ return result(pos, pos, [{ label: '.', apply: '.' }]);
83
+ return pos <= dot ? empty() : null;
84
+ };
85
+ var prefix = query.getChild('StudioQL');
86
+ var module = query.getChild('StudioModule');
87
+ var func = query.getChild('StudioFunction');
88
+ var body = query.getChild('StudioCallBody');
89
+ if (prefix && pos <= prefix.to) {
90
+ return result(prefix.from, prefix.to, [__assign(__assign({}, exports.studioQLNamespaceTerm), { apply: hasFollowing(prefix.to, '.') ? 'STUDIOQL' : 'STUDIOQL.' })]);
91
+ }
92
+ var moduleGap = prefix && completeDotGap(prefix.to, module === null || module === void 0 ? void 0 : module.from);
93
+ if (moduleGap)
94
+ return moduleGap;
95
+ if (!module || pos <= module.to) {
96
+ var from_1 = Math.min((_b = module === null || module === void 0 ? void 0 : module.from) !== null && _b !== void 0 ? _b : pos, pos);
97
+ var to = (_c = module === null || module === void 0 ? void 0 : module.to) !== null && _c !== void 0 ? _c : pos;
98
+ return result(from_1, to, [{ label: 'incidents', type: 'namespace', apply: hasFollowing(to, '.') ? 'incidents' : 'incidents.' }]);
99
+ }
100
+ if (state.sliceDoc(module.from, module.to).toLowerCase() !== 'incidents')
101
+ return empty();
102
+ var functionGap = completeDotGap(module.to, func === null || func === void 0 ? void 0 : func.from);
103
+ if (functionGap)
104
+ return functionGap;
105
+ if (!func || pos <= func.to || (!body && !state.sliceDoc(func.to, pos).trim())) {
106
+ var from_2 = Math.min((_d = func === null || func === void 0 ? void 0 : func.from) !== null && _d !== void 0 ? _d : pos, pos);
107
+ var to_1 = (_e = func === null || func === void 0 ? void 0 : func.to) !== null && _e !== void 0 ? _e : pos;
108
+ return result(from_2, to_1, incidentsFunctions.map(function (fn) { return ({
109
+ label: fn.name,
110
+ type: 'function',
111
+ detail: fn.extraParameter ? "(time_range, ".concat(fn.extraParameter, ")") : '(time_range)',
112
+ info: fn.info,
113
+ apply: hasFollowing(to_1, '(')
114
+ ? fn.name
115
+ : (0, autocomplete_1.snippet)("".concat(fn.name, "(").concat(timeRangeSnippet).concat(fn.extraParameter ? ', ' + parameterSnippets[fn.extraParameter] : '', ")")),
116
+ }); }));
117
+ }
118
+ if (!body)
119
+ return empty();
120
+ var fn = incidentsFunctions.find(function (fn) { return fn.name === state.sliceDoc(func.from, func.to).toLowerCase(); });
121
+ if (!fn || pos <= body.from || (pos >= body.to && state.sliceDoc(body.to - 1, body.to) === ')'))
122
+ return empty();
123
+ var args = body.getChildren('StudioArgument');
124
+ var current = (_f = args.find(function (arg) { return arg.from <= pos && pos <= arg.to; })) !== null && _f !== void 0 ? _f : args.find(function (arg) { return arg.from === skipTrivia(pos); });
125
+ var identifier = current === null || current === void 0 ? void 0 : current.getChild('Identifier');
126
+ if (current && (!identifier || pos > identifier.to))
127
+ return empty();
128
+ if (identifier && pos < identifier.from && !(current === null || current === void 0 ? void 0 : current.getChild('EqlSingle')))
129
+ return empty();
130
+ if (!current) {
131
+ var previous = args.filter(function (arg) { return arg.to < pos; }).pop();
132
+ var slot = skipTrivia((_g = previous === null || previous === void 0 ? void 0 : previous.to) !== null && _g !== void 0 ? _g : body.from + 1);
133
+ if (previous) {
134
+ if (slot >= pos || state.sliceDoc(slot, slot + 1) !== ',')
135
+ return empty();
136
+ slot = skipTrivia(slot + 1);
137
+ }
138
+ if (slot < pos)
139
+ return empty();
140
+ }
141
+ var used = new Set(args
142
+ .filter(function (arg) { return arg !== current && arg.getChild('EqlSingle'); })
143
+ .map(function (arg) {
144
+ var key = arg.getChild('Identifier');
145
+ return key ? state.sliceDoc(key.from, key.to).toLowerCase() : '';
146
+ }));
147
+ var parameters = fn.extraParameter ? ['time_range', fn.extraParameter] : ['time_range'];
148
+ var from = Math.min((_h = identifier === null || identifier === void 0 ? void 0 : identifier.from) !== null && _h !== void 0 ? _h : pos, pos);
149
+ var leadingTrivia = identifier ? state.sliceDoc(from, identifier.from) : '';
150
+ return result(from, (_j = identifier === null || identifier === void 0 ? void 0 : identifier.to) !== null && _j !== void 0 ? _j : pos, parameters
151
+ .filter(function (name) { return !used.has(name); })
152
+ .map(function (name) { return ({
153
+ label: name,
154
+ type: 'property',
155
+ detail: name === 'time_range' ? '[start_time, end_time]' : 'string',
156
+ apply: (current === null || current === void 0 ? void 0 : current.getChild('EqlSingle')) ? leadingTrivia + name : (0, autocomplete_1.snippet)(parameterSnippets[name]),
157
+ }); }));
158
+ }
159
+ //# sourceMappingURL=studioql.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"studioql.js","sourceRoot":"","sources":["../../../src/complete/studioql.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export declare class Parser {
15
15
  private quotedQueryDelimiterInfo;
16
16
  private caseResultDiagnostics;
17
17
  private caseResultRecoveryErrors;
18
+ private caseShiftPresence;
18
19
  constructor(state: EditorState, deadline?: number);
19
20
  getDiagnostics(): Diagnostic[];
20
21
  analyze(): void;
@@ -60,6 +61,7 @@ export declare class Parser {
60
61
  private maskLineComments;
61
62
  private maskStringsAndLineComments;
62
63
  private containsError;
64
+ private firstErrorFrom;
63
65
  private looksLikeProjectionAfterMissingColon;
64
66
  private containsNode;
65
67
  private findAncestor;
@@ -93,22 +95,36 @@ export declare class Parser {
93
95
  private findStringNewlineRecovery;
94
96
  checkAST(node: SyntaxNode | null): void;
95
97
  private checkDuplicateQueryClauses;
98
+ private checkQueryShiftPlacement;
99
+ private checkExpressionShiftOffsets;
100
+ private checkShiftDuration;
101
+ private checkShiftExpression;
102
+ private checkEvalFieldReferenceContext;
103
+ private checkEvalReferences;
96
104
  private checkDuplicateShowClauses;
97
105
  private checkIntegerClause;
98
106
  private checkTimeRangeShape;
99
107
  private checkBareRollup;
100
108
  private checkRollupFunctionCall;
101
109
  private checkFunctionCall;
110
+ private functionArityMessage;
102
111
  private checkOuterFunctionCall;
103
112
  private checkProjectionAlias;
104
113
  private checkFilterSubqueryOperator;
105
114
  private checkFieldName;
106
115
  private checkCaseFunction;
116
+ private caseContainsShift;
107
117
  private checkCaseResults;
108
118
  private checkShowFunctionRequirements;
109
119
  private pushSemanticDiagnostic;
110
120
  private pushSemanticDiagnosticAt;
111
121
  private directChildren;
122
+ private descendantsNamed;
123
+ private shiftOperandFunctionCalls;
124
+ private errorDescendantsWithText;
125
+ private functionCallName;
126
+ private isPositiveFixedDuration;
127
+ private fixedDurationMilliseconds;
112
128
  private numericValue;
113
129
  private splitTopLevelSegments;
114
130
  private describeUnknownFunction;