@finos/legend-application 10.1.1 → 10.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/lib/components/shared/TabManager.js +1 -1
- package/lib/components/shared/TabManager.js.map +1 -1
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -1
- package/lib/stores/PureLanguageSupport.d.ts +21 -0
- package/lib/stores/PureLanguageSupport.d.ts.map +1 -1
- package/lib/stores/PureLanguageSupport.js +180 -75
- package/lib/stores/PureLanguageSupport.js.map +1 -1
- package/lib/stores/PureLanguageTextEditorSupport.d.ts +70 -0
- package/lib/stores/PureLanguageTextEditorSupport.d.ts.map +1 -0
- package/lib/stores/PureLanguageTextEditorSupport.js +231 -0
- package/lib/stores/PureLanguageTextEditorSupport.js.map +1 -0
- package/lib/stores/shared/TabManagerState.d.ts +5 -2
- package/lib/stores/shared/TabManagerState.d.ts.map +1 -1
- package/lib/stores/shared/TabManagerState.js +39 -1
- package/lib/stores/shared/TabManagerState.js.map +1 -1
- package/package.json +5 -5
- package/src/components/shared/TabManager.tsx +1 -1
- package/src/index.ts +2 -0
- package/src/stores/PureLanguageSupport.ts +189 -76
- package/src/stores/PureLanguageTextEditorSupport.ts +327 -0
- package/src/stores/shared/TabManagerState.ts +50 -3
- package/tsconfig.json +1 -0
|
@@ -17,20 +17,50 @@
|
|
|
17
17
|
import { PARSER_SECTION_MARKER, PURE_ELEMENT_NAME, PURE_CONNECTION_NAME, PURE_PARSER, } from '@finos/legend-graph';
|
|
18
18
|
import { editor as monacoEditorAPI, KeyCode, KeyMod, languages as monacoLanguagesAPI, } from 'monaco-editor';
|
|
19
19
|
import { EDITOR_LANGUAGE, EDITOR_THEME } from '../const.js';
|
|
20
|
+
/**
|
|
21
|
+
* The postfix to be added to all token types, i.e. identifier.pure, number.pure, etc.
|
|
22
|
+
*/
|
|
23
|
+
const PURE_GRAMMAR_TOKEN_POSTFIX = '.pure';
|
|
24
|
+
export var PURE_GRAMMAR_TOKEN;
|
|
25
|
+
(function (PURE_GRAMMAR_TOKEN) {
|
|
26
|
+
PURE_GRAMMAR_TOKEN["WHITESPACE"] = "";
|
|
27
|
+
PURE_GRAMMAR_TOKEN["KEYWORD"] = "keyword";
|
|
28
|
+
PURE_GRAMMAR_TOKEN["IDENTIFIER"] = "identifier";
|
|
29
|
+
PURE_GRAMMAR_TOKEN["OPERATOR"] = "operator";
|
|
30
|
+
PURE_GRAMMAR_TOKEN["DELIMITER"] = "delimiter";
|
|
31
|
+
PURE_GRAMMAR_TOKEN["PARSER"] = "parser";
|
|
32
|
+
PURE_GRAMMAR_TOKEN["NUMBER"] = "number";
|
|
33
|
+
PURE_GRAMMAR_TOKEN["DATE"] = "date";
|
|
34
|
+
PURE_GRAMMAR_TOKEN["COLOR"] = "color";
|
|
35
|
+
PURE_GRAMMAR_TOKEN["PACKAGE"] = "package";
|
|
36
|
+
PURE_GRAMMAR_TOKEN["STRING"] = "string";
|
|
37
|
+
PURE_GRAMMAR_TOKEN["COMMENT"] = "comment";
|
|
38
|
+
PURE_GRAMMAR_TOKEN["LANGUAGE_STRUCT"] = "language-struct";
|
|
39
|
+
PURE_GRAMMAR_TOKEN["MULTIPLICITY"] = "multiplicity";
|
|
40
|
+
PURE_GRAMMAR_TOKEN["GENERICS"] = "generics";
|
|
41
|
+
PURE_GRAMMAR_TOKEN["PROPERTY"] = "property";
|
|
42
|
+
PURE_GRAMMAR_TOKEN["VARIABLE"] = "variable";
|
|
43
|
+
PURE_GRAMMAR_TOKEN["TYPE"] = "type";
|
|
44
|
+
PURE_GRAMMAR_TOKEN["INVALID"] = "invalid";
|
|
45
|
+
})(PURE_GRAMMAR_TOKEN = PURE_GRAMMAR_TOKEN || (PURE_GRAMMAR_TOKEN = {}));
|
|
20
46
|
const theme = {
|
|
21
47
|
base: 'vs-dark',
|
|
22
48
|
inherit: true,
|
|
23
49
|
colors: {},
|
|
24
50
|
rules: [
|
|
25
51
|
// NOTE: unfortunately, `monaco-editor` only accepts HEX values, not CSS variables
|
|
26
|
-
{ token:
|
|
27
|
-
{ token:
|
|
28
|
-
{ token:
|
|
29
|
-
{ token:
|
|
30
|
-
{ token:
|
|
31
|
-
{ token:
|
|
32
|
-
{ token:
|
|
33
|
-
{ token:
|
|
52
|
+
{ token: PURE_GRAMMAR_TOKEN.IDENTIFIER, foreground: 'dcdcaa' },
|
|
53
|
+
{ token: PURE_GRAMMAR_TOKEN.NUMBER, foreground: 'b5cea8' },
|
|
54
|
+
{ token: PURE_GRAMMAR_TOKEN.DATE, foreground: 'b5cea8' },
|
|
55
|
+
{ token: PURE_GRAMMAR_TOKEN.COLOR, foreground: 'b5cea8' },
|
|
56
|
+
{ token: PURE_GRAMMAR_TOKEN.PACKAGE, foreground: '808080' },
|
|
57
|
+
{ token: PURE_GRAMMAR_TOKEN.PARSER, foreground: 'c586c0' },
|
|
58
|
+
{ token: PURE_GRAMMAR_TOKEN.LANGUAGE_STRUCT, foreground: 'c586c0' },
|
|
59
|
+
{ token: PURE_GRAMMAR_TOKEN.MULTIPLICITY, foreground: '2d796b' },
|
|
60
|
+
{ token: PURE_GRAMMAR_TOKEN.GENERICS, foreground: '2d796b' },
|
|
61
|
+
{ token: PURE_GRAMMAR_TOKEN.PROPERTY, foreground: '9cdcfe' },
|
|
62
|
+
{ token: PURE_GRAMMAR_TOKEN.VARIABLE, foreground: '4fc1ff' },
|
|
63
|
+
{ token: PURE_GRAMMAR_TOKEN.TYPE, foreground: '3dc9b0' },
|
|
34
64
|
],
|
|
35
65
|
};
|
|
36
66
|
// Taken from `monaco-languages` configuration for Java in order to do propert brace matching
|
|
@@ -59,6 +89,7 @@ const configuration = {
|
|
|
59
89
|
{ open: '"', close: '"' },
|
|
60
90
|
{ open: "'", close: "'" },
|
|
61
91
|
{ open: '<', close: '>' },
|
|
92
|
+
{ open: '<<', close: '>>' },
|
|
62
93
|
],
|
|
63
94
|
folding: {
|
|
64
95
|
markers: {
|
|
@@ -85,7 +116,7 @@ const generateLanguageMonarch = (extraKeywords, extraParsers) =>
|
|
|
85
116
|
// TODO: add syntax highlighting for modules/plugins (come up with a plugin mechanism to do this).
|
|
86
117
|
({
|
|
87
118
|
defaultToken: 'invalid',
|
|
88
|
-
tokenPostfix:
|
|
119
|
+
tokenPostfix: PURE_GRAMMAR_TOKEN_POSTFIX,
|
|
89
120
|
keywords: [
|
|
90
121
|
...extraKeywords,
|
|
91
122
|
// relational
|
|
@@ -99,6 +130,8 @@ const generateLanguageMonarch = (extraKeywords, extraParsers) =>
|
|
|
99
130
|
// native
|
|
100
131
|
'let',
|
|
101
132
|
'extends',
|
|
133
|
+
'true',
|
|
134
|
+
'false',
|
|
102
135
|
'projects',
|
|
103
136
|
// elements
|
|
104
137
|
PURE_ELEMENT_NAME.CLASS,
|
|
@@ -162,8 +195,10 @@ const generateLanguageMonarch = (extraKeywords, extraParsers) =>
|
|
|
162
195
|
'#{',
|
|
163
196
|
'}#',
|
|
164
197
|
'@',
|
|
198
|
+
'<<',
|
|
199
|
+
'>>',
|
|
165
200
|
],
|
|
166
|
-
languageStructs: ['import', 'native'
|
|
201
|
+
languageStructs: ['import', 'native'],
|
|
167
202
|
parsers: [
|
|
168
203
|
PURE_PARSER.PURE,
|
|
169
204
|
PURE_PARSER.CONNECTION,
|
|
@@ -179,6 +214,7 @@ const generateLanguageMonarch = (extraKeywords, extraParsers) =>
|
|
|
179
214
|
.concat(extraParsers)
|
|
180
215
|
.map((parser) => `${PARSER_SECTION_MARKER}${parser}`),
|
|
181
216
|
// common regular expressions to be used in tokenizer
|
|
217
|
+
identifier: /[a-zA-Z_$][\w$]*/,
|
|
182
218
|
symbols: /[=><!~?:&|+\-*/^%#@]+/,
|
|
183
219
|
escapes: /\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,
|
|
184
220
|
digits: /\d+(_+\d+)*/,
|
|
@@ -187,33 +223,42 @@ const generateLanguageMonarch = (extraKeywords, extraParsers) =>
|
|
|
187
223
|
hexdigits: /[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,
|
|
188
224
|
multiplicity: /\[(?:\d+(?:\.\.(?:\d+|\*|))?|\*)\]/,
|
|
189
225
|
package: /(?:[\w_]+::)+/,
|
|
226
|
+
generics: /<.+>/,
|
|
227
|
+
date: /%-?\d+(?:-\d+(?:-\d+(?:T(?:\d+(?::\d+(?::\d+(?:.\d+)?)?)?)(?:[+-][0-9]{4})?)))/,
|
|
228
|
+
time: /%\d+(?::\d+(?::\d+(?:.\d+)?)?)?/,
|
|
190
229
|
tokenizer: {
|
|
191
230
|
root: [
|
|
192
|
-
//
|
|
193
|
-
|
|
194
|
-
//
|
|
195
|
-
|
|
196
|
-
//
|
|
197
|
-
|
|
231
|
+
// NOTE: since `monaco-editor` Monarch is only meant for tokenizing
|
|
232
|
+
// and the need to highlight Pure syntax is more than just token-based,
|
|
233
|
+
// but semantic/syntax-based we have to create these complex rules.
|
|
234
|
+
// the things to note here is these are not meant to match multilines
|
|
235
|
+
// and they must be placed before identifier rules since token matching
|
|
236
|
+
// is run in order
|
|
237
|
+
// See https://github.com/microsoft/monaco-editor/issues/316#issuecomment-273555698
|
|
238
|
+
// See https://github.com/microsoft/monaco-editor/issues/571#issuecomment-342555050
|
|
239
|
+
// See https://microsoft.github.io/monaco-editor/monarch.html
|
|
240
|
+
{ include: '@pure' },
|
|
241
|
+
{ include: '@date' },
|
|
242
|
+
{ include: '@color' },
|
|
198
243
|
// parser markers
|
|
199
244
|
[
|
|
200
245
|
// NOTE: any leading whitespace to the section header is considered invalid syntax
|
|
201
246
|
/^\s*###[\w]+/,
|
|
202
247
|
{
|
|
203
248
|
cases: {
|
|
204
|
-
'@parsers':
|
|
205
|
-
'@default':
|
|
249
|
+
'@parsers': PURE_GRAMMAR_TOKEN.PARSER,
|
|
250
|
+
'@default': PURE_GRAMMAR_TOKEN.INVALID,
|
|
206
251
|
},
|
|
207
252
|
},
|
|
208
253
|
],
|
|
209
254
|
// identifiers and keywords
|
|
210
255
|
[
|
|
211
|
-
/
|
|
256
|
+
/(@identifier)/,
|
|
212
257
|
{
|
|
213
258
|
cases: {
|
|
214
|
-
'@languageStructs':
|
|
215
|
-
'@keywords':
|
|
216
|
-
'@default':
|
|
259
|
+
'@languageStructs': PURE_GRAMMAR_TOKEN.LANGUAGE_STRUCT,
|
|
260
|
+
'@keywords': `${PURE_GRAMMAR_TOKEN.KEYWORD}.$0`,
|
|
261
|
+
'@default': PURE_GRAMMAR_TOKEN.IDENTIFIER,
|
|
217
262
|
},
|
|
218
263
|
},
|
|
219
264
|
],
|
|
@@ -226,85 +271,140 @@ const generateLanguageMonarch = (extraKeywords, extraParsers) =>
|
|
|
226
271
|
/@symbols/,
|
|
227
272
|
{
|
|
228
273
|
cases: {
|
|
229
|
-
'@operators':
|
|
230
|
-
'@default':
|
|
274
|
+
'@operators': PURE_GRAMMAR_TOKEN.OPERATOR,
|
|
275
|
+
'@default': PURE_GRAMMAR_TOKEN.IDENTIFIER,
|
|
231
276
|
},
|
|
232
277
|
},
|
|
233
278
|
],
|
|
234
|
-
// numbers
|
|
235
279
|
{ include: '@number' },
|
|
236
280
|
// delimiter: after number because of .\d floats
|
|
237
|
-
[/[;,.]/,
|
|
281
|
+
[/[;,.]/, PURE_GRAMMAR_TOKEN.DELIMITER],
|
|
238
282
|
// strings
|
|
239
283
|
// NOTE: including non-teminated string so as people type ', we can start showing them that they're working on a string
|
|
240
|
-
[/'([^'\\]|\\.)*$/,
|
|
241
|
-
[/'/,
|
|
242
|
-
// characters
|
|
284
|
+
[/'([^'\\]|\\.)*$/, `${PURE_GRAMMAR_TOKEN.STRING}.invalid`],
|
|
285
|
+
[/'/, PURE_GRAMMAR_TOKEN.STRING, '@string'],
|
|
243
286
|
{ include: '@characters' },
|
|
244
287
|
],
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
[/(@
|
|
248
|
-
[
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
[
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
288
|
+
pure: [
|
|
289
|
+
// type
|
|
290
|
+
[/(@package\*)/, [PURE_GRAMMAR_TOKEN.PACKAGE]],
|
|
291
|
+
[
|
|
292
|
+
/(@package?)(@identifier)(@generics?)(\s*)(@multiplicity)/,
|
|
293
|
+
[
|
|
294
|
+
PURE_GRAMMAR_TOKEN.PACKAGE,
|
|
295
|
+
PURE_GRAMMAR_TOKEN.TYPE,
|
|
296
|
+
PURE_GRAMMAR_TOKEN.GENERICS,
|
|
297
|
+
PURE_GRAMMAR_TOKEN.WHITESPACE,
|
|
298
|
+
PURE_GRAMMAR_TOKEN.MULTIPLICITY,
|
|
299
|
+
],
|
|
300
|
+
],
|
|
301
|
+
[
|
|
302
|
+
/(@package)(@identifier)(@generics?)/,
|
|
303
|
+
[
|
|
304
|
+
PURE_GRAMMAR_TOKEN.PACKAGE,
|
|
305
|
+
PURE_GRAMMAR_TOKEN.TYPE,
|
|
306
|
+
PURE_GRAMMAR_TOKEN.GENERICS,
|
|
307
|
+
],
|
|
308
|
+
],
|
|
309
|
+
// special operators that uses type (e.g. constructor, cast)
|
|
310
|
+
[
|
|
311
|
+
/([@^])(?:\s*)(@package?)(@identifier)(@generics?)(@multiplicity?)/,
|
|
312
|
+
[
|
|
313
|
+
`${PURE_GRAMMAR_TOKEN.TYPE}.operator`,
|
|
314
|
+
PURE_GRAMMAR_TOKEN.PACKAGE,
|
|
315
|
+
PURE_GRAMMAR_TOKEN.TYPE,
|
|
316
|
+
PURE_GRAMMAR_TOKEN.GENERICS,
|
|
317
|
+
PURE_GRAMMAR_TOKEN.MULTIPLICITY,
|
|
318
|
+
],
|
|
319
|
+
],
|
|
320
|
+
// property / parameter
|
|
321
|
+
[
|
|
322
|
+
/(\.\s*)(@identifier)/,
|
|
323
|
+
[PURE_GRAMMAR_TOKEN.DELIMITER, PURE_GRAMMAR_TOKEN.PROPERTY],
|
|
324
|
+
],
|
|
264
325
|
[
|
|
265
|
-
/(@
|
|
266
|
-
[
|
|
326
|
+
/(@identifier)(\s*[:=])/,
|
|
327
|
+
[PURE_GRAMMAR_TOKEN.PROPERTY, PURE_GRAMMAR_TOKEN.OPERATOR],
|
|
267
328
|
],
|
|
268
329
|
[
|
|
269
|
-
/(
|
|
270
|
-
[
|
|
330
|
+
/(@identifier)(\.)(@identifier)/,
|
|
331
|
+
[
|
|
332
|
+
PURE_GRAMMAR_TOKEN.TYPE,
|
|
333
|
+
PURE_GRAMMAR_TOKEN.OPERATOR,
|
|
334
|
+
PURE_GRAMMAR_TOKEN.PROPERTY,
|
|
335
|
+
],
|
|
271
336
|
],
|
|
337
|
+
// variables
|
|
272
338
|
[
|
|
273
|
-
/(
|
|
274
|
-
[
|
|
339
|
+
/(let)(\s+)(@identifier)(\s*[:=])/,
|
|
340
|
+
[
|
|
341
|
+
PURE_GRAMMAR_TOKEN.KEYWORD,
|
|
342
|
+
PURE_GRAMMAR_TOKEN.WHITESPACE,
|
|
343
|
+
PURE_GRAMMAR_TOKEN.VARIABLE,
|
|
344
|
+
PURE_GRAMMAR_TOKEN.OPERATOR,
|
|
345
|
+
],
|
|
275
346
|
],
|
|
347
|
+
[/(\$@identifier)/, [PURE_GRAMMAR_TOKEN.VARIABLE]],
|
|
348
|
+
],
|
|
349
|
+
date: [
|
|
350
|
+
[/(%latest)/, [`${PURE_GRAMMAR_TOKEN.DATE}.latest`]],
|
|
351
|
+
[/(@date)/, [PURE_GRAMMAR_TOKEN.DATE]],
|
|
352
|
+
[/(@time)/, [`${PURE_GRAMMAR_TOKEN.DATE}.time`]],
|
|
353
|
+
],
|
|
354
|
+
color: [[/(#[0-9a-fA-F]{6})/, [PURE_GRAMMAR_TOKEN.COLOR]]],
|
|
355
|
+
number: [
|
|
356
|
+
[
|
|
357
|
+
/(@digits)[eE]([-+]?(@digits))?[fFdD]?/,
|
|
358
|
+
`${PURE_GRAMMAR_TOKEN.NUMBER}.float`,
|
|
359
|
+
],
|
|
360
|
+
[
|
|
361
|
+
/(@digits)\.(@digits)([eE][-+]?(@digits))?[fFdD]?/,
|
|
362
|
+
`${PURE_GRAMMAR_TOKEN.NUMBER}.float`,
|
|
363
|
+
],
|
|
364
|
+
[/0[xX](@hexdigits)[Ll]?/, `${PURE_GRAMMAR_TOKEN.NUMBER}.hex`],
|
|
365
|
+
[/0(@octaldigits)[Ll]?/, `${PURE_GRAMMAR_TOKEN.NUMBER}.octal`],
|
|
366
|
+
[/0[bB](@binarydigits)[Ll]?/, `${PURE_GRAMMAR_TOKEN.NUMBER}.binary`],
|
|
367
|
+
[/(@digits)[fFdD]/, `${PURE_GRAMMAR_TOKEN.NUMBER}.float`],
|
|
368
|
+
[/(@digits)[lL]?/, PURE_GRAMMAR_TOKEN.NUMBER],
|
|
276
369
|
],
|
|
277
370
|
whitespace: [
|
|
278
|
-
[/[ \t\r\n]+/,
|
|
279
|
-
[/\/\*\*(?!\/)/,
|
|
280
|
-
[/\/\*/,
|
|
281
|
-
[/\/\/.*$/,
|
|
371
|
+
[/[ \t\r\n]+/, PURE_GRAMMAR_TOKEN.WHITESPACE],
|
|
372
|
+
[/\/\*\*(?!\/)/, `${PURE_GRAMMAR_TOKEN.COMMENT}.doc`, '@doc'],
|
|
373
|
+
[/\/\*/, PURE_GRAMMAR_TOKEN.COMMENT, '@comment'],
|
|
374
|
+
[/\/\/.*$/, PURE_GRAMMAR_TOKEN.COMMENT],
|
|
282
375
|
],
|
|
283
376
|
comment: [
|
|
284
|
-
[/[^/*]+/,
|
|
285
|
-
// [/\/\*/,
|
|
286
|
-
// [/\/\*/,
|
|
287
|
-
[/\*\//,
|
|
288
|
-
[/[/*]/,
|
|
377
|
+
[/[^/*]+/, PURE_GRAMMAR_TOKEN.COMMENT],
|
|
378
|
+
// [/\/\*/, PURE_GRAMMAR_TOKEN.COMMENT, '@push' ], // nested comment not allowed :-(
|
|
379
|
+
// [/\/\*/, ${PURE_GRAMMAR_TOKEN.COMMENT}.invalid` ], // this breaks block comments in the shape of /* //*/
|
|
380
|
+
[/\*\//, PURE_GRAMMAR_TOKEN.COMMENT, '@pop'],
|
|
381
|
+
[/[/*]/, PURE_GRAMMAR_TOKEN.COMMENT],
|
|
289
382
|
],
|
|
290
383
|
// Identical copy of comment above, except for the addition of .doc
|
|
291
384
|
doc: [
|
|
292
|
-
[/[^/*]+/,
|
|
293
|
-
// [/\/\*/,
|
|
294
|
-
[/\/\*/,
|
|
295
|
-
[/\*\//,
|
|
296
|
-
[/[/*]/,
|
|
385
|
+
[/[^/*]+/, `${PURE_GRAMMAR_TOKEN.COMMENT}.doc`],
|
|
386
|
+
// [/\/\*/, `${PURE_GRAMMAR_TOKEN.COMMENT}.doc`, '@push' ], // nested comment not allowed :-(
|
|
387
|
+
[/\/\*/, `${PURE_GRAMMAR_TOKEN.COMMENT}.doc.invalid`],
|
|
388
|
+
[/\*\//, `${PURE_GRAMMAR_TOKEN.COMMENT}.doc`, '@pop'],
|
|
389
|
+
[/[/*]/, `${PURE_GRAMMAR_TOKEN.COMMENT}.doc`],
|
|
297
390
|
],
|
|
298
391
|
string: [
|
|
299
|
-
[/[^\\']+/,
|
|
300
|
-
[/@escapes/,
|
|
301
|
-
[/\\./,
|
|
302
|
-
[/'/,
|
|
392
|
+
[/[^\\']+/, PURE_GRAMMAR_TOKEN.STRING],
|
|
393
|
+
[/@escapes/, `${PURE_GRAMMAR_TOKEN.STRING}.escape`],
|
|
394
|
+
[/\\./, `${PURE_GRAMMAR_TOKEN.STRING}.escape.invalid`],
|
|
395
|
+
[/'/, PURE_GRAMMAR_TOKEN.STRING, '@pop'],
|
|
303
396
|
],
|
|
304
397
|
characters: [
|
|
305
|
-
[/'[^\\']'/,
|
|
306
|
-
[
|
|
307
|
-
|
|
398
|
+
[/'[^\\']'/, PURE_GRAMMAR_TOKEN.STRING],
|
|
399
|
+
[
|
|
400
|
+
/(')(@escapes)(')/,
|
|
401
|
+
[
|
|
402
|
+
PURE_GRAMMAR_TOKEN.STRING,
|
|
403
|
+
`${PURE_GRAMMAR_TOKEN.STRING}.escape`,
|
|
404
|
+
PURE_GRAMMAR_TOKEN.STRING,
|
|
405
|
+
],
|
|
406
|
+
],
|
|
407
|
+
[/'/, `${PURE_GRAMMAR_TOKEN.STRING}.invalid`],
|
|
308
408
|
],
|
|
309
409
|
},
|
|
310
410
|
});
|
|
@@ -344,6 +444,11 @@ export const setupPureLanguageService = (pluginManager) => {
|
|
|
344
444
|
keybinding: KeyCode.F9,
|
|
345
445
|
command: null,
|
|
346
446
|
},
|
|
447
|
+
{
|
|
448
|
+
// disable toggle debugger breakpoint
|
|
449
|
+
keybinding: KeyMod.Shift | KeyCode.F10,
|
|
450
|
+
command: null,
|
|
451
|
+
},
|
|
347
452
|
]);
|
|
348
453
|
monacoLanguagesAPI.register({ id: EDITOR_LANGUAGE.PURE });
|
|
349
454
|
monacoLanguagesAPI.setLanguageConfiguration(EDITOR_LANGUAGE.PURE, configuration);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PureLanguageSupport.js","sourceRoot":"","sources":["../../src/stores/PureLanguageSupport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,+CAA+C;AAC/C,OAAO,EAEL,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,MAAM,IAAI,eAAe,EACzB,OAAO,EACP,MAAM,EACN,SAAS,IAAI,kBAAkB,GAChC,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE5D,MAAM,KAAK,GAAyC;IAClD,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,EAAE;IACV,KAAK,EAAE;QACL,kFAAkF;QAClF,EAAE,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"PureLanguageSupport.js","sourceRoot":"","sources":["../../src/stores/PureLanguageSupport.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { type editor as monacoEditorAPI, languages as monacoLanguagesAPI, type IPosition } from 'monaco-editor';
|
|
17
|
+
import type { DocumentationEntry } from './DocumentationService.js';
|
|
18
|
+
/**
|
|
19
|
+
* This snippet suggestion is meant for an embedded content of an element
|
|
20
|
+
* In other words, it is used to construct element snippet suggestions
|
|
21
|
+
*
|
|
22
|
+
* Because of that, it is expected that there are text content wrapping around
|
|
23
|
+
* this snippet, so the first suggestion might not start from index 1.
|
|
24
|
+
*/
|
|
25
|
+
export interface ElementEmbeddedContentSnippetSuggestion {
|
|
26
|
+
/**
|
|
27
|
+
* Brief description about the suggestion item to enable the users to quickly
|
|
28
|
+
* differentiate between one suggestions from another
|
|
29
|
+
*/
|
|
30
|
+
description?: string | undefined;
|
|
31
|
+
/**
|
|
32
|
+
* The snippet text to be embedded in the full snippet suggestion text for the element
|
|
33
|
+
*
|
|
34
|
+
* NOTE: The snippet syntax follows that of `monaco-editor`
|
|
35
|
+
* See https://code.visualstudio.com/docs/editor/userdefinedsnippets#_create-your-own-snippets
|
|
36
|
+
*/
|
|
37
|
+
text: string;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* This mirrors `monaco-editor` completion item structure
|
|
41
|
+
* See https://microsoft.github.io/monaco-editor/api/interfaces/monaco.languages.CompletionItem.html
|
|
42
|
+
*/
|
|
43
|
+
export interface PureGrammarTextSuggestion {
|
|
44
|
+
/**
|
|
45
|
+
* The text label of the suggestion.
|
|
46
|
+
*/
|
|
47
|
+
text: string;
|
|
48
|
+
/**
|
|
49
|
+
* Brief description about the suggestion item to enable the users to quickly
|
|
50
|
+
* differentiate between one suggestions from another
|
|
51
|
+
*/
|
|
52
|
+
description?: string | undefined;
|
|
53
|
+
/**
|
|
54
|
+
* Detailed documentation that explains/elaborates the suggestion item.
|
|
55
|
+
*/
|
|
56
|
+
documentation?: DocumentationEntry | undefined;
|
|
57
|
+
/**
|
|
58
|
+
* A string or snippet that should be inserted when selecting this suggestion.
|
|
59
|
+
*
|
|
60
|
+
* NOTE: The snippet syntax follows that of `monaco-editor`
|
|
61
|
+
* See https://code.visualstudio.com/docs/editor/userdefinedsnippets#_create-your-own-snippets
|
|
62
|
+
*/
|
|
63
|
+
insertText: string;
|
|
64
|
+
}
|
|
65
|
+
export declare const getParserKeywordSuggestions: (position: IPosition, model: monacoEditorAPI.ITextModel, suggestions: PureGrammarTextSuggestion[]) => monacoLanguagesAPI.CompletionItem[];
|
|
66
|
+
export declare const getSectionParserNameFromLineText: (lineText: string) => string | undefined;
|
|
67
|
+
export declare const getParserElementSnippetSuggestions: (position: IPosition, model: monacoEditorAPI.ITextModel, suggestionsGetter: (parserName: string) => PureGrammarTextSuggestion[]) => monacoLanguagesAPI.CompletionItem[];
|
|
68
|
+
export declare const getInlineSnippetSuggestions: (position: IPosition, model: monacoEditorAPI.ITextModel, extraSnippetSuggestions?: PureGrammarTextSuggestion[]) => monacoLanguagesAPI.CompletionItem[];
|
|
69
|
+
export declare const getBaseTokenType: (token: string) => string;
|
|
70
|
+
//# sourceMappingURL=PureLanguageTextEditorSupport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PureLanguageTextEditorSupport.d.ts","sourceRoot":"","sources":["../../src/stores/PureLanguageTextEditorSupport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,OAAO,EACL,KAAK,MAAM,IAAI,eAAe,EAC9B,SAAS,IAAI,kBAAkB,EAC/B,KAAK,SAAS,EACf,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE;;;;;;GAMG;AACH,MAAM,WAAW,uCAAuC;IACtD;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC;;;;;OAKG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC;;OAEG;IACH,aAAa,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAC/C;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,2BAA2B,aAC5B,SAAS,SACZ,gBAAgB,UAAU,eACpB,yBAAyB,EAAE,KACvC,mBAAmB,cAAc,EAuCnC,CAAC;AAEF,eAAO,MAAM,gCAAgC,aACjC,MAAM,KACf,MAAM,GAAG,SAMX,CAAC;AAEF,eAAO,MAAM,kCAAkC,aACnC,SAAS,SACZ,gBAAgB,UAAU,kCACD,MAAM,KAAK,yBAAyB,EAAE,KACrE,mBAAmB,cAAc,EAiDnC,CAAC;AAEF,eAAO,MAAM,2BAA2B,aAC5B,SAAS,SACZ,gBAAgB,UAAU,4BACR,yBAAyB,EAAE,KACnD,mBAAmB,cAAc,EAmInC,CAAC;AAEF,eAAO,MAAM,gBAAgB,UAAW,MAAM,KAAG,MACgB,CAAC"}
|