@neo4j-cypher/react-codemirror 2.0.0-next.6 → 2.0.0-next.8
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 +15 -0
- package/dist/CypherEditor.d.ts +32 -1
- package/dist/CypherEditor.js +45 -9
- package/dist/CypherEditor.js.map +1 -1
- package/dist/e2e_tests/configuration.spec.d.ts +1 -0
- package/dist/e2e_tests/configuration.spec.js +73 -0
- package/dist/e2e_tests/configuration.spec.js.map +1 -0
- package/dist/e2e_tests/e2eUtils.js +9 -1
- package/dist/e2e_tests/e2eUtils.js.map +1 -1
- package/dist/e2e_tests/sanityChecks.spec.js +0 -9
- package/dist/e2e_tests/sanityChecks.spec.js.map +1 -1
- package/dist/e2e_tests/signatureHelp.spec.js +16 -15
- package/dist/e2e_tests/signatureHelp.spec.js.map +1 -1
- package/dist/e2e_tests/snippets.spec.d.ts +1 -0
- package/dist/e2e_tests/snippets.spec.js +63 -0
- package/dist/e2e_tests/snippets.spec.js.map +1 -0
- package/dist/e2e_tests/syntaxValidation.spec.js +3 -3
- package/dist/e2e_tests/syntaxValidation.spec.js.map +1 -1
- package/dist/lang-cypher/autocomplete.js +9 -3
- package/dist/lang-cypher/autocomplete.js.map +1 -1
- package/dist/lang-cypher/createCypherTheme.js +29 -1
- package/dist/lang-cypher/createCypherTheme.js.map +1 -1
- package/dist/lang-cypher/signatureHelp.js +36 -20
- package/dist/lang-cypher/signatureHelp.js.map +1 -1
- package/dist/neo4jSetup.js +35 -1
- package/dist/neo4jSetup.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/CypherEditor.tsx +102 -10
- package/src/e2e_tests/configuration.spec.tsx +97 -0
- package/src/e2e_tests/e2eUtils.ts +11 -1
- package/src/e2e_tests/sanityChecks.spec.tsx +0 -14
- package/src/e2e_tests/signatureHelp.spec.tsx +16 -19
- package/src/e2e_tests/snippets.spec.tsx +94 -0
- package/src/e2e_tests/syntaxValidation.spec.tsx +3 -3
- package/src/lang-cypher/autocomplete.ts +15 -4
- package/src/lang-cypher/createCypherTheme.ts +30 -1
- package/src/lang-cypher/signatureHelp.ts +57 -28
- package/src/neo4jSetup.tsx +51 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syntaxValidation.spec.js","sourceRoot":"","sources":["../../src/e2e_tests/syntaxValidation.spec.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"syntaxValidation.spec.js","sourceRoot":"","sources":["../../src/e2e_tests/syntaxValidation.spec.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { snippet } from '@codemirror/autocomplete';
|
|
1
2
|
import { autocomplete } from '@neo4j-cypher/language-support';
|
|
2
3
|
import { CompletionItemKind } from 'vscode-languageserver-types';
|
|
3
4
|
const completionKindToCodemirrorIcon = (c) => {
|
|
@@ -24,7 +25,7 @@ const completionKindToCodemirrorIcon = (c) => {
|
|
|
24
25
|
[CompletionItemKind.EnumMember]: 'EnumMember',
|
|
25
26
|
[CompletionItemKind.Constant]: 'Constant',
|
|
26
27
|
[CompletionItemKind.Struct]: 'Struct',
|
|
27
|
-
// we're
|
|
28
|
+
// we're miss-using the enum here as there is no `Console` kind in the predefined list
|
|
28
29
|
[CompletionItemKind.Event]: 'Console',
|
|
29
30
|
[CompletionItemKind.Operator]: 'Operator',
|
|
30
31
|
[CompletionItemKind.TypeParameter]: 'TypeParameter',
|
|
@@ -33,7 +34,7 @@ const completionKindToCodemirrorIcon = (c) => {
|
|
|
33
34
|
};
|
|
34
35
|
export const cypherAutocomplete = (config) => (context) => {
|
|
35
36
|
const textUntilCursor = context.state.doc.toString().slice(0, context.pos);
|
|
36
|
-
const triggerCharacters = ['.', ':', '{', '$'];
|
|
37
|
+
const triggerCharacters = ['.', ':', '{', '$', ')'];
|
|
37
38
|
const lastCharacter = textUntilCursor.slice(-1);
|
|
38
39
|
const lastWord = context.matchBefore(/\w*/);
|
|
39
40
|
const inWord = lastWord.from !== lastWord.to;
|
|
@@ -44,12 +45,17 @@ export const cypherAutocomplete = (config) => (context) => {
|
|
|
44
45
|
if (!shouldTriggerCompletion) {
|
|
45
46
|
return null;
|
|
46
47
|
}
|
|
47
|
-
const options = autocomplete(textUntilCursor, config.schema ?? {});
|
|
48
|
+
const options = autocomplete(textUntilCursor, config.schema ?? {}, undefined, context.explicit);
|
|
48
49
|
return {
|
|
49
50
|
from: context.matchBefore(/(\w|\$)*$/).from,
|
|
50
51
|
options: options.map((o) => ({
|
|
51
52
|
label: o.label,
|
|
52
53
|
type: completionKindToCodemirrorIcon(o.kind),
|
|
54
|
+
apply: o.kind === CompletionItemKind.Snippet
|
|
55
|
+
? // codemirror requires an empty snippet space to be able to tab out of the completion
|
|
56
|
+
snippet((o.insertText ?? o.label) + '${}')
|
|
57
|
+
: undefined,
|
|
58
|
+
detail: o.detail,
|
|
53
59
|
})),
|
|
54
60
|
};
|
|
55
61
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../../src/lang-cypher/autocomplete.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../../src/lang-cypher/autocomplete.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,9 @@ export const createCypherTheme = ({ dark, editorSettings: settings, highlightSty
|
|
|
9
9
|
color: settings.foreground,
|
|
10
10
|
fontVariantLigatures: 'none',
|
|
11
11
|
},
|
|
12
|
+
'& .cm-snippetField': {
|
|
13
|
+
backgroundColor: settings.autoCompletionPanel.selectedColor,
|
|
14
|
+
},
|
|
12
15
|
'&.cm-focused': {
|
|
13
16
|
outline: 'none',
|
|
14
17
|
},
|
|
@@ -17,8 +20,9 @@ export const createCypherTheme = ({ dark, editorSettings: settings, highlightSty
|
|
|
17
20
|
color: settings.gutterForeground,
|
|
18
21
|
border: 'none',
|
|
19
22
|
},
|
|
20
|
-
'&.cm-editor
|
|
23
|
+
'&.cm-editor': {
|
|
21
24
|
fontFamily: 'Fira Code, Menlo, Monaco, Lucida Console, monospace',
|
|
25
|
+
height: '100%',
|
|
22
26
|
},
|
|
23
27
|
'.cm-content': {
|
|
24
28
|
caretColor: settings.cursor,
|
|
@@ -51,7 +55,31 @@ export const createCypherTheme = ({ dark, editorSettings: settings, highlightSty
|
|
|
51
55
|
color: settings.autoCompletionPanel.matchingTextColor,
|
|
52
56
|
textDecoration: 'none',
|
|
53
57
|
},
|
|
58
|
+
'& .cm-signature-help-panel': {
|
|
59
|
+
backgroundColor: settings.autoCompletionPanel.backgroundColor,
|
|
60
|
+
maxWidth: '700px',
|
|
61
|
+
maxHeight: '250px',
|
|
62
|
+
fontFamily: 'Fira Code, Menlo, Monaco, Lucida Console, monospace',
|
|
63
|
+
},
|
|
64
|
+
'& .cm-signature-help-panel-contents': {
|
|
65
|
+
overflow: 'auto',
|
|
66
|
+
maxHeight: '100%',
|
|
67
|
+
},
|
|
68
|
+
'& .cm-signature-help-panel-current-argument': {
|
|
69
|
+
color: settings.autoCompletionPanel.matchingTextColor,
|
|
70
|
+
fontWeight: 'bold',
|
|
71
|
+
},
|
|
72
|
+
'& .cm-signature-help-panel-separator': {
|
|
73
|
+
borderBottom: '1px solid #ccc',
|
|
74
|
+
},
|
|
75
|
+
'& .cm-signature-help-panel-name': {
|
|
76
|
+
padding: '5px',
|
|
77
|
+
},
|
|
78
|
+
'& .cm-signature-help-panel-description': {
|
|
79
|
+
padding: '5px',
|
|
80
|
+
},
|
|
54
81
|
'.cm-tooltip-autocomplete': {
|
|
82
|
+
maxWidth: '430px',
|
|
55
83
|
'& > ul > li[aria-selected]': {
|
|
56
84
|
backgroundColor: settings.autoCompletionPanel.selectedColor,
|
|
57
85
|
color: settings.foreground,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createCypherTheme.js","sourceRoot":"","sources":["../../src/lang-cypher/createCypherTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,kBAAkB,GAEnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAA+B,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,UAAU,EACV,UAAU,GACX,MAAM,cAAc,CAAC;AA0BtB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAChC,IAAI,EACJ,cAAc,EAAE,QAAQ,EACxB,eAAe,EACf,cAAc,GACD,EAAa,EAAE;IAC5B,MAAM,YAAY,GAA8B;QAC9C,GAAG,EAAE;YACH,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU;YACjE,KAAK,EAAE,QAAQ,CAAC,UAAU;YAC1B,oBAAoB,EAAE,MAAM;SAC7B;QACD,cAAc,EAAE;YACd,OAAO,EAAE,MAAM;SAChB;QACD,aAAa,EAAE;YACb,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU;YACjE,KAAK,EAAE,QAAQ,CAAC,gBAAgB;YAChC,MAAM,EAAE,MAAM;SACf;QACD,
|
|
1
|
+
{"version":3,"file":"createCypherTheme.js","sourceRoot":"","sources":["../../src/lang-cypher/createCypherTheme.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,41 @@ function getTriggerCharacter(query, caretPosition) {
|
|
|
11
11
|
}
|
|
12
12
|
return triggerCharacter;
|
|
13
13
|
}
|
|
14
|
+
const createSignatureHelpElement = ({ signature, activeParameter, }) => () => {
|
|
15
|
+
const parameters = signature.parameters;
|
|
16
|
+
const doc = signature.documentation.toString();
|
|
17
|
+
const dom = document.createElement('div');
|
|
18
|
+
dom.className = 'cm-signature-help-panel';
|
|
19
|
+
const contents = document.createElement('div');
|
|
20
|
+
contents.className = 'cm-signature-help-panel-contents';
|
|
21
|
+
dom.appendChild(contents);
|
|
22
|
+
const signatureLabel = document.createElement('div');
|
|
23
|
+
signatureLabel.className = 'cm-signature-help-panel-name';
|
|
24
|
+
signatureLabel.appendChild(document.createTextNode(`${signature.label}(`));
|
|
25
|
+
parameters.forEach((param, index) => {
|
|
26
|
+
if (typeof param.documentation === 'string') {
|
|
27
|
+
const span = document.createElement('span');
|
|
28
|
+
span.appendChild(document.createTextNode(param.documentation));
|
|
29
|
+
if (index !== parameters.length - 1) {
|
|
30
|
+
span.appendChild(document.createTextNode(', '));
|
|
31
|
+
}
|
|
32
|
+
if (index === activeParameter) {
|
|
33
|
+
span.className = 'cm-signature-help-panel-current-argument';
|
|
34
|
+
}
|
|
35
|
+
signatureLabel.appendChild(span);
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
signatureLabel.appendChild(document.createTextNode(')'));
|
|
39
|
+
contents.appendChild(signatureLabel);
|
|
40
|
+
const separator = document.createElement('div');
|
|
41
|
+
separator.className = 'cm-signature-help-panel-separator';
|
|
42
|
+
contents.appendChild(separator);
|
|
43
|
+
const description = document.createElement('div');
|
|
44
|
+
description.className = 'cm-signature-help-panel-description';
|
|
45
|
+
description.appendChild(document.createTextNode(doc));
|
|
46
|
+
contents.appendChild(description);
|
|
47
|
+
return { dom };
|
|
48
|
+
};
|
|
14
49
|
function getSignatureHelpTooltip(state, config) {
|
|
15
50
|
let result = [];
|
|
16
51
|
const schema = config.schema;
|
|
@@ -30,32 +65,13 @@ function getSignatureHelpTooltip(state, config) {
|
|
|
30
65
|
activeSignature < signatures.length &&
|
|
31
66
|
signatures[activeSignature].documentation !== undefined) {
|
|
32
67
|
const signature = signatures[activeSignature];
|
|
33
|
-
const parameters = signature.parameters;
|
|
34
|
-
let doc = signature.documentation.toString();
|
|
35
|
-
if (activeParameter >= 0 &&
|
|
36
|
-
activeParameter <
|
|
37
|
-
(signatures[activeSignature].parameters?.length ?? 0)) {
|
|
38
|
-
doc =
|
|
39
|
-
parameters[activeParameter].documentation.toString() + '\n\n' + doc;
|
|
40
|
-
}
|
|
41
68
|
result = [
|
|
42
69
|
{
|
|
43
70
|
pos: caretPosition,
|
|
44
71
|
above: true,
|
|
45
72
|
strictSide: true,
|
|
46
73
|
arrow: true,
|
|
47
|
-
create: (
|
|
48
|
-
const div = document.createElement('div');
|
|
49
|
-
const methodName = document.createElement('div');
|
|
50
|
-
const argPlusDescription = document.createElement('div');
|
|
51
|
-
const separator = document.createElement('hr');
|
|
52
|
-
const lineBreak = document.createElement('br');
|
|
53
|
-
div.append(...[methodName, separator, lineBreak, argPlusDescription]);
|
|
54
|
-
div.className = 'cm-tooltip-signature-help';
|
|
55
|
-
methodName.innerText = signature.label;
|
|
56
|
-
argPlusDescription.innerText = doc;
|
|
57
|
-
return { dom: div };
|
|
58
|
-
},
|
|
74
|
+
create: createSignatureHelpElement({ signature, activeParameter }),
|
|
59
75
|
},
|
|
60
76
|
];
|
|
61
77
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signatureHelp.js","sourceRoot":"","sources":["../../src/lang-cypher/signatureHelp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAW,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"signatureHelp.js","sourceRoot":"","sources":["../../src/lang-cypher/signatureHelp.ts"],"names":[],"mappings":"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"}
|
package/dist/neo4jSetup.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { acceptCompletion, autocompletion, closeBrackets, closeBracketsKeymap, completionKeymap, } from '@codemirror/autocomplete';
|
|
1
|
+
import { acceptCompletion, autocompletion, clearSnippet, closeBrackets, closeBracketsKeymap, closeCompletion, completionKeymap, nextSnippetField, prevSnippetField, snippetKeymap, } from '@codemirror/autocomplete';
|
|
2
2
|
import { defaultKeymap, history, historyKeymap, indentLess, indentMore, } from '@codemirror/commands';
|
|
3
3
|
import { bracketMatching, defaultHighlightStyle, foldKeymap, indentOnInput, syntaxHighlighting, } from '@codemirror/language';
|
|
4
4
|
import { highlightSelectionMatches, searchKeymap } from '@codemirror/search';
|
|
@@ -81,6 +81,40 @@ export const basicNeo4jSetup = () => {
|
|
|
81
81
|
extensions.push(crosshairCursor());
|
|
82
82
|
extensions.push(highlightSelectionMatches());
|
|
83
83
|
extensions.push(keymap.of(keymaps));
|
|
84
|
+
extensions.push(snippetKeymap.of([
|
|
85
|
+
{
|
|
86
|
+
key: 'Tab',
|
|
87
|
+
run: acceptCompletionOrGotoNextSnippet,
|
|
88
|
+
shift: acceptCompletionOrGotoPrevSnippet,
|
|
89
|
+
},
|
|
90
|
+
{ key: 'Escape', run: closeCompletionsOrClearSnippets },
|
|
91
|
+
]));
|
|
84
92
|
return extensions;
|
|
85
93
|
};
|
|
94
|
+
// The logic to check if there's a completion open is surprisingly complex
|
|
95
|
+
// https://github.com/codemirror/autocomplete/blob/5ad2ebc861f2f61cdc943fc087a5bfb756a7d0fa/src/view.ts#L31
|
|
96
|
+
// For example it respects an interaction delay, so we can't just check if the completion is open
|
|
97
|
+
// instead we just run the acceptCompletion command which returns true if a completion was accepted
|
|
98
|
+
// in that case we know that we shouldn't move to the next snippet field
|
|
99
|
+
const acceptCompletionOrGotoNextSnippet = (view) => {
|
|
100
|
+
const didCompletion = acceptCompletion(view);
|
|
101
|
+
if (didCompletion) {
|
|
102
|
+
return true;
|
|
103
|
+
}
|
|
104
|
+
return nextSnippetField(view);
|
|
105
|
+
};
|
|
106
|
+
const acceptCompletionOrGotoPrevSnippet = (view) => {
|
|
107
|
+
const didCompletion = acceptCompletion(view);
|
|
108
|
+
if (didCompletion) {
|
|
109
|
+
return true;
|
|
110
|
+
}
|
|
111
|
+
return prevSnippetField(view);
|
|
112
|
+
};
|
|
113
|
+
const closeCompletionsOrClearSnippets = (view) => {
|
|
114
|
+
const closedCompletions = closeCompletion(view);
|
|
115
|
+
if (closedCompletions) {
|
|
116
|
+
return true;
|
|
117
|
+
}
|
|
118
|
+
return clearSnippet(view);
|
|
119
|
+
};
|
|
86
120
|
//# sourceMappingURL=neo4jSetup.js.map
|
package/dist/neo4jSetup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"neo4jSetup.js","sourceRoot":"","sources":["../src/neo4jSetup.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"neo4jSetup.js","sourceRoot":"","sources":["../src/neo4jSetup.tsx"],"names":[],"mappings":"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"}
|