@mongodb-js/compass-editor 0.2.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.
- package/LICENSE +557 -0
- package/dist/ace/aggregation-autocompleter.d.ts +15 -0
- package/dist/ace/aggregation-autocompleter.d.ts.map +1 -0
- package/dist/ace/aggregation-autocompleter.js +109 -0
- package/dist/ace/aggregation-autocompleter.js.map +1 -0
- package/dist/ace/index.d.ts +2 -0
- package/dist/ace/index.d.ts.map +1 -0
- package/dist/ace/index.js +37 -0
- package/dist/ace/index.js.map +1 -0
- package/dist/ace/mode.d.ts +2 -0
- package/dist/ace/mode.d.ts.map +1 -0
- package/dist/ace/mode.js +67 -0
- package/dist/ace/mode.js.map +1 -0
- package/dist/ace/query-autocompleter.d.ts +12 -0
- package/dist/ace/query-autocompleter.d.ts.map +1 -0
- package/dist/ace/query-autocompleter.js +26 -0
- package/dist/ace/query-autocompleter.js.map +1 -0
- package/dist/ace/stage-autocompleter.d.ts +403 -0
- package/dist/ace/stage-autocompleter.d.ts.map +1 -0
- package/dist/ace/stage-autocompleter.js +89 -0
- package/dist/ace/stage-autocompleter.js.map +1 -0
- package/dist/ace/theme.d.ts +4 -0
- package/dist/ace/theme.d.ts.map +1 -0
- package/dist/ace/theme.js +265 -0
- package/dist/ace/theme.js.map +1 -0
- package/dist/ace/util.d.ts +5 -0
- package/dist/ace/util.d.ts.map +1 -0
- package/dist/ace/util.js +21 -0
- package/dist/ace/util.js.map +1 -0
- package/dist/ace/validation-autocompleter.d.ts +12 -0
- package/dist/ace/validation-autocompleter.d.ts.map +1 -0
- package/dist/ace/validation-autocompleter.js +31 -0
- package/dist/ace/validation-autocompleter.js.map +1 -0
- package/dist/base-editor.d.ts +35 -0
- package/dist/base-editor.d.ts.map +1 -0
- package/dist/base-editor.js +120 -0
- package/dist/base-editor.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +29 -0
- package/dist/index.js.map +1 -0
- package/dist/inline-editor.d.ts +6 -0
- package/dist/inline-editor.d.ts.map +1 -0
- package/dist/inline-editor.js +22 -0
- package/dist/inline-editor.js.map +1 -0
- package/dist/types.d.ts +45 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/package.json +74 -0
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AggregationAutoCompleter = exports.getScopeTokensBefore = void 0;
|
|
4
|
+
const mongodb_constants_1 = require("@mongodb-js/mongodb-constants");
|
|
5
|
+
const stage_autocompleter_1 = require("./stage-autocompleter");
|
|
6
|
+
const util_1 = require("./util");
|
|
7
|
+
const STAGE_OPERATORS = mongodb_constants_1.STAGE_OPERATORS.map((op) => {
|
|
8
|
+
return {
|
|
9
|
+
...op,
|
|
10
|
+
snippet: `\\${op.name}: ${op.snippet}`,
|
|
11
|
+
};
|
|
12
|
+
});
|
|
13
|
+
const STAGE_OPERATORS_WITH_BLOCK_SNIPPETS = STAGE_OPERATORS.map((completion) => {
|
|
14
|
+
const padded = completion.snippet
|
|
15
|
+
.split('\n')
|
|
16
|
+
.map((line) => ` ${line}`)
|
|
17
|
+
.join('\n');
|
|
18
|
+
return {
|
|
19
|
+
...completion,
|
|
20
|
+
snippet: `{\n${padded}\n}`,
|
|
21
|
+
};
|
|
22
|
+
});
|
|
23
|
+
function type(token, type) {
|
|
24
|
+
return token.type.split('.').includes(type);
|
|
25
|
+
}
|
|
26
|
+
function getPreviousTokenPos(session, row, token) {
|
|
27
|
+
var _a, _b;
|
|
28
|
+
if ((token === null || token === void 0 ? void 0 : token.start) === 0) {
|
|
29
|
+
return {
|
|
30
|
+
row: row - 1,
|
|
31
|
+
column: (_a = session.$rowLengthCache[row - 1]) !== null && _a !== void 0 ? _a : session.getLine(row - 1).length,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
return {
|
|
36
|
+
row,
|
|
37
|
+
column: (_b = token === null || token === void 0 ? void 0 : token.start) !== null && _b !== void 0 ? _b : 0,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
function* getScopeTokensBefore(session, pos) {
|
|
42
|
+
let token = session.getTokenAt(pos.row, pos.column);
|
|
43
|
+
let { row, column } = getPreviousTokenPos(session, pos.row, token);
|
|
44
|
+
let skip = 0;
|
|
45
|
+
while (row + column > 0) {
|
|
46
|
+
token = session.getTokenAt(row, column);
|
|
47
|
+
if (!token) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
skip = Math.max(0, type(token, 'paren')
|
|
51
|
+
? skip +
|
|
52
|
+
(type(token, 'rparen') ? 1 : -1) *
|
|
53
|
+
token.value.length
|
|
54
|
+
: skip);
|
|
55
|
+
if (skip === 0) {
|
|
56
|
+
yield token;
|
|
57
|
+
}
|
|
58
|
+
({ row, column } = getPreviousTokenPos(session, row, token));
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
exports.getScopeTokensBefore = getScopeTokensBefore;
|
|
62
|
+
class AggregationAutoCompleter {
|
|
63
|
+
constructor(version, textCompleter, fields) {
|
|
64
|
+
this.version = version;
|
|
65
|
+
this.textCompleter = textCompleter;
|
|
66
|
+
this.fields = fields;
|
|
67
|
+
this.getCompletions = (editor, session, position, prefix, callback) => {
|
|
68
|
+
const currentToken = session.getTokenAt(position.row, position.column);
|
|
69
|
+
if (!currentToken) {
|
|
70
|
+
return callback(null, []);
|
|
71
|
+
}
|
|
72
|
+
if (type(currentToken, 'comment')) {
|
|
73
|
+
return callback(null, []);
|
|
74
|
+
}
|
|
75
|
+
const tokens = [];
|
|
76
|
+
for (const token of getScopeTokensBefore(session, position)) {
|
|
77
|
+
tokens.push(token);
|
|
78
|
+
if (type(token, 'stage_op') ||
|
|
79
|
+
(type(token, 'identifier') &&
|
|
80
|
+
mongodb_constants_1.STAGE_OPERATOR_NAMES.includes(token.value))) {
|
|
81
|
+
this.stageAutocopmleter.updateStageOperator(token.value);
|
|
82
|
+
return this.stageAutocopmleter.getCompletions(editor, session, position, prefix, callback);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
callback(null, (0, util_1.filter)(this.version, isInsideBlock(tokens)
|
|
86
|
+
? STAGE_OPERATORS
|
|
87
|
+
: STAGE_OPERATORS_WITH_BLOCK_SNIPPETS, prefix));
|
|
88
|
+
};
|
|
89
|
+
this.stageAutocopmleter = new stage_autocompleter_1.StageAutoCompleter(this.version, this.textCompleter, this.fields);
|
|
90
|
+
}
|
|
91
|
+
updateFields(fields) {
|
|
92
|
+
this.fields = fields;
|
|
93
|
+
this.stageAutocopmleter.update(fields, null);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
exports.AggregationAutoCompleter = AggregationAutoCompleter;
|
|
97
|
+
function isInsideBlock(tokens) {
|
|
98
|
+
for (const token of tokens) {
|
|
99
|
+
if (type(token, 'comment') || /^\s+$/.test(token.value)) {
|
|
100
|
+
continue;
|
|
101
|
+
}
|
|
102
|
+
if (type(token, 'lparen') && /\{$/.test(token.value)) {
|
|
103
|
+
return true;
|
|
104
|
+
}
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
return false;
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=aggregation-autocompleter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aggregation-autocompleter.js","sourceRoot":"","sources":["../../src/ace/aggregation-autocompleter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ace/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
require("./mode");
|
|
27
|
+
const theme = __importStar(require("./theme"));
|
|
28
|
+
if (module.hot) {
|
|
29
|
+
module.hot.accept('./theme', function () {
|
|
30
|
+
var _a;
|
|
31
|
+
const styles = theme.mongodbAceThemeCssText +
|
|
32
|
+
`\n/*# sourceURL=ace/css/${theme.mongodbAceThemeCssClass} */`;
|
|
33
|
+
(_a = document
|
|
34
|
+
.getElementById(theme.mongodbAceThemeCssClass)) === null || _a === void 0 ? void 0 : _a.replaceChildren(document.createTextNode(styles));
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ace/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kBAAgB;AAChB,+CAAiC;AAEjC,IAAK,MAAc,CAAC,GAAG,EAAE;IACtB,MAAc,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE;;QACpC,MAAM,MAAM,GACV,KAAK,CAAC,sBAAsB;YAC5B,2BAA2B,KAAK,CAAC,uBAAuB,KAAK,CAAC;QAChE,MAAA,QAAQ;aACL,cAAc,CAAC,KAAK,CAAC,uBAAuB,CAAC,0CAC5C,eAAe,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;CACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mode.d.ts","sourceRoot":"","sources":["../../src/ace/mode.ts"],"names":[],"mappings":""}
|
package/dist/ace/mode.js
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const mongodb_constants_1 = require("@mongodb-js/mongodb-constants");
|
|
4
|
+
const identifierRe = '[a-zA-Z\\$_\u00a1-\uffff][a-zA-Z\\d\\$_\u00a1-\uffff]*';
|
|
5
|
+
function toMapperVal(items) {
|
|
6
|
+
return items
|
|
7
|
+
.map((item) => {
|
|
8
|
+
return item.value;
|
|
9
|
+
})
|
|
10
|
+
.join('|');
|
|
11
|
+
}
|
|
12
|
+
ace.define('ace/mode/mongodb_highlight_rules', [
|
|
13
|
+
'require',
|
|
14
|
+
'exports',
|
|
15
|
+
'module',
|
|
16
|
+
'ace/lib/oop',
|
|
17
|
+
'ace/mode/javascript_highlight_rules',
|
|
18
|
+
], function (acequire, exports) {
|
|
19
|
+
const oop = acequire('../lib/oop');
|
|
20
|
+
const { JavaScriptHighlightRules } = acequire('./javascript_highlight_rules');
|
|
21
|
+
function MongoDBHighlightRules(...args) {
|
|
22
|
+
oop.mixin(this, new JavaScriptHighlightRules(...args));
|
|
23
|
+
const keywordMapper = this.createKeywordMapper({
|
|
24
|
+
'variable.language.bson': toMapperVal(mongodb_constants_1.BSON_TYPES),
|
|
25
|
+
'support.function.accumulator': toMapperVal(mongodb_constants_1.ACCUMULATORS),
|
|
26
|
+
'support.function.expression_op': toMapperVal(mongodb_constants_1.EXPRESSION_OPERATORS),
|
|
27
|
+
'support.function.conversion_op': toMapperVal(mongodb_constants_1.CONVERSION_OPERATORS),
|
|
28
|
+
'support.function.query_op': toMapperVal(mongodb_constants_1.QUERY_OPERATORS),
|
|
29
|
+
'support.function.stage_op': toMapperVal(mongodb_constants_1.STAGE_OPERATORS),
|
|
30
|
+
'storage.type': 'const|let|var|function',
|
|
31
|
+
'constant.language': 'null|Infinity|NaN|undefined',
|
|
32
|
+
'constant.language.boolean': 'true|false',
|
|
33
|
+
}, 'identifier');
|
|
34
|
+
const identifierRule = this.$rules.no_regex.find((rule) => {
|
|
35
|
+
return rule.regex === identifierRe;
|
|
36
|
+
});
|
|
37
|
+
if (!identifierRule) {
|
|
38
|
+
throw new Error("Couldn't find original identifier rule. Check that the rule find operation is working correcty");
|
|
39
|
+
}
|
|
40
|
+
identifierRule.token = keywordMapper;
|
|
41
|
+
this.normalizeRules();
|
|
42
|
+
}
|
|
43
|
+
oop.inherits(MongoDBHighlightRules, JavaScriptHighlightRules);
|
|
44
|
+
exports.MongoDBHighlightRules = MongoDBHighlightRules;
|
|
45
|
+
});
|
|
46
|
+
ace.define('ace/mode/mongodb', [
|
|
47
|
+
'require',
|
|
48
|
+
'exports',
|
|
49
|
+
'module',
|
|
50
|
+
'ace/lib/oop',
|
|
51
|
+
'ace/mode/javascript',
|
|
52
|
+
'ace/mode/mongodb_highlight_rules',
|
|
53
|
+
], function (acequire, exports) {
|
|
54
|
+
const oop = acequire('../lib/oop');
|
|
55
|
+
const { Mode: JavaScriptMode } = acequire('./javascript');
|
|
56
|
+
const { MongoDBHighlightRules } = acequire('./mongodb_highlight_rules');
|
|
57
|
+
function MongoDBMode(...args) {
|
|
58
|
+
oop.mixin(this, new JavaScriptMode(...args));
|
|
59
|
+
this.HighlightRules = MongoDBHighlightRules;
|
|
60
|
+
this.createWorker = () => {
|
|
61
|
+
return null;
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
oop.inherits(MongoDBMode, JavaScriptMode);
|
|
65
|
+
exports.Mode = MongoDBMode;
|
|
66
|
+
});
|
|
67
|
+
//# sourceMappingURL=mode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mode.js","sourceRoot":"","sources":["../../src/ace/mode.ts"],"names":[],"mappings":";;AAAA,qEAOuC;AAKvC,MAAM,YAAY,GAAG,wDAAwD,CAAC;AAE9E,SAAS,WAAW,CAAC,KAAmC;IACtD,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED,GAAG,CAAC,MAAM,CACR,kCAAkC,EAClC;IACE,SAAS;IACT,SAAS;IACT,QAAQ;IACR,aAAa;IACb,qCAAqC;CACtC,EACD,UAAU,QAAQ,EAAE,OAAO;IACzB,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnC,MAAM,EAAE,wBAAwB,EAAE,GAAG,QAAQ,CAC3C,8BAA8B,CAC/B,CAAC;IAIF,SAAS,qBAAqB,CAAuB,GAAG,IAAe;QACrE,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,wBAAwB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QAEvD,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAC5C;YAEE,wBAAwB,EAAE,WAAW,CAAC,8BAAU,CAAC;YAGjD,8BAA8B,EAAE,WAAW,CAAC,gCAAY,CAAC;YACzD,gCAAgC,EAAE,WAAW,CAAC,wCAAoB,CAAC;YACnE,gCAAgC,EAAE,WAAW,CAAC,wCAAoB,CAAC;YACnE,2BAA2B,EAAE,WAAW,CAAC,mCAAe,CAAC;YACzD,2BAA2B,EAAE,WAAW,CAAC,mCAAe,CAAC;YAIzD,cAAc,EAAE,wBAAwB;YACxC,mBAAmB,EAAE,6BAA6B;YAClD,2BAA2B,EAAE,YAAY;SAC1C,EACD,YAAY,CACb,CAAC;QACF,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACxD,OAAO,IAAI,CAAC,KAAK,KAAK,YAAY,CAAC;QACrC,CAAC,CAAC,CAAC;QAMH,IAAI,CAAC,cAAc,EAAE;YACnB,MAAM,IAAI,KAAK,CACb,gGAAgG,CACjG,CAAC;SACH;QAED,cAAc,CAAC,KAAK,GAAG,aAAa,CAAC;QAErC,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IACD,GAAG,CAAC,QAAQ,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,CAAC;IAC9D,OAAO,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;AACxD,CAAC,CACF,CAAC;AAEF,GAAG,CAAC,MAAM,CACR,kBAAkB,EAClB;IACE,SAAS;IACT,SAAS;IACT,QAAQ;IACR,aAAa;IACb,qBAAqB;IACrB,kCAAkC;CACnC,EACD,UAAU,QAAQ,EAAE,OAAO;IACzB,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnC,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC1D,MAAM,EAAE,qBAAqB,EAAE,GAAG,QAAQ,CAAC,2BAA2B,CAAC,CAAC;IAGxE,SAAS,WAAW,CAAgB,GAAG,IAAe;QACpD,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,cAAc,GAAG,qBAAqB,CAAC;QAI5C,IAAI,CAAC,YAAY,GAAG,GAAG,EAAE;YACvB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;IACJ,CAAC;IACD,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC1C,OAAO,CAAC,IAAI,GAAG,WAAW,CAAC;AAC7B,CAAC,CACF,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Ace } from 'ace-builds';
|
|
2
|
+
import type { CompletionWithServerInfo } from '../types';
|
|
3
|
+
declare class QueryAutoCompleter implements Ace.Completer {
|
|
4
|
+
version: string;
|
|
5
|
+
textCompleter: Ace.Completer;
|
|
6
|
+
fields: CompletionWithServerInfo[];
|
|
7
|
+
constructor(version: string, textCompleter: Ace.Completer, fields: CompletionWithServerInfo[]);
|
|
8
|
+
update(fields: CompletionWithServerInfo[]): void;
|
|
9
|
+
getCompletions: Ace.Completer['getCompletions'];
|
|
10
|
+
}
|
|
11
|
+
export { QueryAutoCompleter };
|
|
12
|
+
//# sourceMappingURL=query-autocompleter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-autocompleter.d.ts","sourceRoot":"","sources":["../../src/ace/query-autocompleter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAMzD,cAAM,kBAAmB,YAAW,GAAG,CAAC,SAAS;IAEtC,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,GAAG,CAAC,SAAS;IAC5B,MAAM,EAAE,wBAAwB,EAAE;gBAFlC,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,GAAG,CAAC,SAAS,EAC5B,MAAM,EAAE,wBAAwB,EAAE;IAG3C,MAAM,CAAC,MAAM,EAAE,wBAAwB,EAAE;IAIzC,cAAc,EAAE,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,CA2B7C;CACH;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.QueryAutoCompleter = void 0;
|
|
4
|
+
const util_1 = require("./util");
|
|
5
|
+
class QueryAutoCompleter {
|
|
6
|
+
constructor(version, textCompleter, fields) {
|
|
7
|
+
this.version = version;
|
|
8
|
+
this.textCompleter = textCompleter;
|
|
9
|
+
this.fields = fields;
|
|
10
|
+
this.getCompletions = (editor, session, position, prefix, done) => {
|
|
11
|
+
if (prefix === '')
|
|
12
|
+
return done(null, []);
|
|
13
|
+
const currentToken = session.getTokenAt(position.row, position.column);
|
|
14
|
+
if ((currentToken === null || currentToken === void 0 ? void 0 : currentToken.type) === 'string') {
|
|
15
|
+
return this.textCompleter.getCompletions(editor, session, position, prefix, done);
|
|
16
|
+
}
|
|
17
|
+
const expressions = util_1.MATCH_COMPLETIONS.concat(this.fields);
|
|
18
|
+
done(null, (0, util_1.filter)(this.version, expressions, prefix));
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
update(fields) {
|
|
22
|
+
this.fields = fields;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.QueryAutoCompleter = QueryAutoCompleter;
|
|
26
|
+
//# sourceMappingURL=query-autocompleter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-autocompleter.js","sourceRoot":"","sources":["../../src/ace/query-autocompleter.ts"],"names":[],"mappings":";;;AAEA,iCAAmD;AAKnD,MAAM,kBAAkB;IACtB,YACS,OAAe,EACf,aAA4B,EAC5B,MAAkC;QAFlC,YAAO,GAAP,OAAO,CAAQ;QACf,kBAAa,GAAb,aAAa,CAAe;QAC5B,WAAM,GAAN,MAAM,CAA4B;QAO3C,mBAAc,GAAoC,CAChD,MAAM,EACN,OAAO,EACP,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,EAAE;YAEF,IAAI,MAAM,KAAK,EAAE;gBAAE,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAKzC,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YACvE,IAAI,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,MAAK,QAAQ,EAAE;gBACnC,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CACtC,MAAM,EACN,OAAO,EACP,QAAQ,EACR,MAAM,EACN,IAAI,CACL,CAAC;aACH;YAGD,MAAM,WAAW,GAAG,wBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1D,IAAI,CAAC,IAAI,EAAE,IAAA,aAAM,EAAC,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;QACxD,CAAC,CAAC;IAjCC,CAAC;IAEJ,MAAM,CAAC,MAAkC;QACvC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CA8BF;AAEQ,gDAAkB"}
|