@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.
@@ -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: 'package', foreground: '808080' },
27
- { token: 'parser-marker', foreground: 'c586c0' },
28
- { token: 'property', foreground: 'dcdcaa' },
29
- { token: 'function', foreground: 'dcdcaa' },
30
- { token: 'language-struct', foreground: 'c586c0' },
31
- { token: 'multiplicity', foreground: '2d796b' },
32
- { token: 'attribute', foreground: '9cdcfe' },
33
- { token: 'cast', foreground: '569cd6' },
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: '.pure',
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', 'if', 'fold'],
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
- // packages
193
- { include: '@package' },
194
- // properties
195
- [/(\.)([\w_]+)/, ['delimiter', 'property']],
196
- // functions
197
- { include: '@function' },
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': 'parser-marker',
205
- '@default': 'invalid',
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
- /[a-zA-Z_$][\w$]*/,
256
+ /(@identifier)/,
212
257
  {
213
258
  cases: {
214
- '@languageStructs': 'language-struct',
215
- '@keywords': 'keyword.$0',
216
- '@default': 'identifier',
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': 'operator',
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
- [/[;,.]/, 'delimiter'],
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
- [/'([^'\\]|\\.)*$/, 'string.invalid'],
241
- [/'/, 'string', '@string'],
242
- // characters
284
+ [/'([^'\\]|\\.)*$/, `${PURE_GRAMMAR_TOKEN.STRING}.invalid`],
285
+ [/'/, PURE_GRAMMAR_TOKEN.STRING, '@string'],
243
286
  { include: '@characters' },
244
287
  ],
245
- number: [
246
- [/(@digits)[eE]([-+]?(@digits))?[fFdD]?/, 'number.float'],
247
- [/(@digits)\.(@digits)([eE][-+]?(@digits))?[fFdD]?/, 'number.float'],
248
- [/0[xX](@hexdigits)[Ll]?/, 'number.hex'],
249
- [/0(@octaldigits)[Ll]?/, 'number.octal'],
250
- [/0[bB](@binarydigits)[Ll]?/, 'number.binary'],
251
- [/(@digits)[fFdD]/, 'number.float'],
252
- [/(@digits)[lL]?/, 'number'],
253
- ],
254
- function: [
255
- [/(cast)(\()(@)/, ['function', '', 'cast']],
256
- [/(->\s*)(cast)(\()(@)/, ['', 'function', '', 'cast']],
257
- [/(->\s*)([\w_]+)(\s*\()/, ['', 'function', '']],
258
- [/([\w_]+)(\s*\()/, ['function', '']],
259
- [/(->\s*)([\w_]+)/, ['', 'function']],
260
- ],
261
- package: [
262
- [/(@package)(\*)/, ['package', 'tag']],
263
- [/(@package)([\w_]+)/, ['package', 'type']],
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
- /(@package)([\w_]+)(\s*)(@multiplicity)/,
266
- ['package', 'type', '', 'multiplicity'],
326
+ /(@identifier)(\s*[:=])/,
327
+ [PURE_GRAMMAR_TOKEN.PROPERTY, PURE_GRAMMAR_TOKEN.OPERATOR],
267
328
  ],
268
329
  [
269
- /([\w_]+)(\s*:\s*)(@package)([\w_]+)(\s*)(@multiplicity)/,
270
- ['attribute', '', 'package', 'type', '', 'multiplicity'],
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
- /(:\s*)([\w_]+)(\s*)(@multiplicity)/,
274
- ['', 'type', '', 'multiplicity'],
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
- [/\/\*\*(?!\/)/, 'comment.doc', '@doc'],
280
- [/\/\*/, 'comment', '@comment'],
281
- [/\/\/.*$/, 'comment'],
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
- [/[^/*]+/, 'comment'],
285
- // [/\/\*/, 'comment', '@push' ], // nested comment not allowed :-(
286
- // [/\/\*/, 'comment.invalid' ], // this breaks block comments in the shape of /* //*/
287
- [/\*\//, 'comment', '@pop'],
288
- [/[/*]/, 'comment'],
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
- [/[^/*]+/, 'comment.doc'],
293
- // [/\/\*/, 'comment.doc', '@push' ], // nested comment not allowed :-(
294
- [/\/\*/, 'comment.doc.invalid'],
295
- [/\*\//, 'comment.doc', '@pop'],
296
- [/[/*]/, 'comment.doc'],
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
- [/[^\\']+/, 'string'],
300
- [/@escapes/, 'string.escape'],
301
- [/\\./, 'string.escape.invalid'],
302
- [/'/, 'string', '@pop'],
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
- [/'[^\\']'/, 'string'],
306
- [/(')(@escapes)(')/, ['string', 'string.escape', 'string']],
307
- [/'/, 'string.invalid'],
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":"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"}
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;;GAEG;AACH,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAE3C,MAAM,CAAN,IAAY,kBAwBX;AAxBD,WAAY,kBAAkB;IAC5B,qCAAe,CAAA;IAEf,yCAAmB,CAAA;IACnB,+CAAyB,CAAA;IACzB,2CAAqB,CAAA;IACrB,6CAAuB,CAAA;IAEvB,uCAAiB,CAAA;IACjB,uCAAiB,CAAA;IACjB,mCAAa,CAAA;IACb,qCAAe,CAAA;IACf,yCAAmB,CAAA;IACnB,uCAAiB,CAAA;IACjB,yCAAmB,CAAA;IAEnB,yDAAmC,CAAA;IACnC,mDAA6B,CAAA;IAC7B,2CAAqB,CAAA;IACrB,2CAAqB,CAAA;IACrB,2CAAqB,CAAA;IACrB,mCAAa,CAAA;IAEb,yCAAmB,CAAA;AACrB,CAAC,EAxBW,kBAAkB,GAAlB,kBAAkB,KAAlB,kBAAkB,QAwB7B;AAED,MAAM,KAAK,GAAyC;IAClD,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,EAAE;IACV,KAAK,EAAE;QACL,kFAAkF;QAClF,EAAE,KAAK,EAAE,kBAAkB,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE;QAC9D,EAAE,KAAK,EAAE,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE;QAC1D,EAAE,KAAK,EAAE,kBAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE;QACxD,EAAE,KAAK,EAAE,kBAAkB,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE;QACzD,EAAE,KAAK,EAAE,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE;QAC3D,EAAE,KAAK,EAAE,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE;QAC1D,EAAE,KAAK,EAAE,kBAAkB,CAAC,eAAe,EAAE,UAAU,EAAE,QAAQ,EAAE;QACnE,EAAE,KAAK,EAAE,kBAAkB,CAAC,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE;QAChE,EAAE,KAAK,EAAE,kBAAkB,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE;QAC5D,EAAE,KAAK,EAAE,kBAAkB,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE;QAC5D,EAAE,KAAK,EAAE,kBAAkB,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE;QAC5D,EAAE,KAAK,EAAE,kBAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE;KACzD;CACF,CAAC;AAEF,6FAA6F;AAC7F,iFAAiF;AACjF,MAAM,aAAa,GAA6C;IAC9D,QAAQ,EAAE;QACR,WAAW,EAAE,IAAI;QACjB,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;KAC3B;IACD,QAAQ,EAAE;QACR,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;KACX;IACD,gBAAgB,EAAE;QAChB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QACzB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QACzB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QACzB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QACzB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;KAC1B;IACD,gBAAgB,EAAE;QAChB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QACzB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QACzB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QACzB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QACzB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QACzB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QACzB,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;KAC5B;IACD,OAAO,EAAE;QACP,OAAO,EAAE;YACP,KAAK,EAAE,IAAI,MAAM,CAAC,oDAAoD,CAAC;YACvE,GAAG,EAAE,IAAI,MAAM,CAAC,sDAAsD,CAAC;SACxE;KACF;CACF,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,uBAAuB,GAAG,CAC9B,aAAuB,EACvB,YAAsB,EACe,EAAE;AACvC,gGAAgG;AAChG,kGAAkG;AAClG,CAAC;IACC,YAAY,EAAE,SAAS;IACvB,YAAY,EAAE,0BAA0B;IAExC,QAAQ,EAAE;QACR,GAAG,aAAa;QAChB,aAAa;QACb,QAAQ;QACR,OAAO;QACP,MAAM;QACN,MAAM;QACN,YAAY;QACZ,SAAS;QACT,WAAW;QACX,SAAS;QACT,KAAK;QACL,SAAS;QACT,MAAM;QACN,OAAO;QACP,UAAU;QACV,WAAW;QACX,iBAAiB,CAAC,KAAK;QACvB,iBAAiB,CAAC,WAAW;QAC7B,iBAAiB,CAAC,WAAW;QAC7B,iBAAiB,CAAC,OAAO;QACzB,iBAAiB,CAAC,OAAO;QACzB,iBAAiB,CAAC,QAAQ;QAC1B,iBAAiB,CAAC,OAAO;QACzB,iBAAiB,CAAC,OAAO;QACzB,iBAAiB,CAAC,UAAU;QAC5B,iBAAiB,CAAC,eAAe;QACjC,iBAAiB,CAAC,wBAAwB;QAC1C,iBAAiB,CAAC,YAAY;QAC9B,cAAc;QACd,oBAAoB,CAAC,qBAAqB;QAC1C,oBAAoB,CAAC,sBAAsB;QAC3C,oBAAoB,CAAC,oBAAoB;QACzC,UAAU;QACV,SAAS;QACT,oBAAoB;QACpB,MAAM;QACN,oBAAoB;QACpB,QAAQ;QACR,kBAAkB;QAClB;;;WAGG;QACH,iBAAiB,CAAC,OAAO;QACzB,iBAAiB,CAAC,SAAS;QAC3B,iBAAiB,CAAC,QAAQ;QAC1B,oBAAoB,CAAC,oBAAoB;QACzC,oBAAoB,CAAC,8BAA8B;QACnD,YAAY;KACb;IAED,SAAS,EAAE;QACT,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,GAAG;QACH,IAAI;QACJ,IAAI;KACL;IAED,eAAe,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAErC,OAAO,EACL;QACE,WAAW,CAAC,IAAI;QAChB,WAAW,CAAC,UAAU;QACtB,WAAW,CAAC,OAAO;QACnB,WAAW,CAAC,OAAO;QACnB,WAAW,CAAC,OAAO;QACnB,WAAW,CAAC,QAAQ;QACpB,WAAW,CAAC,UAAU;QACtB,WAAW,CAAC,wBAAwB;QACpC,WAAW,CAAC,6BAA6B;QACzC,WAAW,CAAC,IAAI;KAEnB;SACE,MAAM,CAAC,YAAY,CAAC;SACpB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,qBAAqB,GAAG,MAAM,EAAE,CAAC;IAEvD,qDAAqD;IACrD,UAAU,EAAE,kBAAkB;IAC9B,OAAO,EAAE,uBAAuB;IAChC,OAAO,EACL,uEAAuE;IACzE,MAAM,EAAE,aAAa;IACrB,WAAW,EAAE,mBAAmB;IAChC,YAAY,EAAE,mBAAmB;IACjC,SAAS,EAAE,gCAAgC;IAC3C,YAAY,EAAE,oCAAoC;IAClD,OAAO,EAAE,eAAe;IACxB,QAAQ,EAAE,MAAM;IAChB,IAAI,EAAE,gFAAgF;IACtF,IAAI,EAAE,iCAAiC;IAEvC,SAAS,EAAE;QACT,IAAI,EAAE;YACJ,mEAAmE;YACnE,uEAAuE;YACvE,mEAAmE;YACnE,qEAAqE;YACrE,uEAAuE;YACvE,kBAAkB;YAClB,mFAAmF;YACnF,mFAAmF;YACnF,6DAA6D;YAC7D,EAAE,OAAO,EAAE,OAAO,EAAE;YAEpB,EAAE,OAAO,EAAE,OAAO,EAAE;YACpB,EAAE,OAAO,EAAE,QAAQ,EAAE;YAErB,iBAAiB;YACjB;gBACE,kFAAkF;gBAClF,cAAc;gBACd;oBACE,KAAK,EAAE;wBACL,UAAU,EAAE,kBAAkB,CAAC,MAAM;wBACrC,UAAU,EAAE,kBAAkB,CAAC,OAAO;qBACvC;iBACF;aACF;YAED,2BAA2B;YAC3B;gBACE,eAAe;gBACf;oBACE,KAAK,EAAE;wBACL,kBAAkB,EAAE,kBAAkB,CAAC,eAAe;wBACtD,WAAW,EAAE,GAAG,kBAAkB,CAAC,OAAO,KAAK;wBAC/C,UAAU,EAAE,kBAAkB,CAAC,UAAU;qBAC1C;iBACF;aACF;YAED,aAAa;YACb,EAAE,OAAO,EAAE,aAAa,EAAE;YAE1B,2BAA2B;YAC3B,CAAC,WAAW,EAAE,WAAW,CAAC;YAC1B,CAAC,kBAAkB,EAAE,WAAW,CAAC;YACjC;gBACE,UAAU;gBACV;oBACE,KAAK,EAAE;wBACL,YAAY,EAAE,kBAAkB,CAAC,QAAQ;wBACzC,UAAU,EAAE,kBAAkB,CAAC,UAAU;qBAC1C;iBACF;aACF;YAED,EAAE,OAAO,EAAE,SAAS,EAAE;YAEtB,gDAAgD;YAChD,CAAC,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC;YAEvC,UAAU;YACV,uHAAuH;YACvH,CAAC,iBAAiB,EAAE,GAAG,kBAAkB,CAAC,MAAM,UAAU,CAAC;YAC3D,CAAC,GAAG,EAAE,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC;YAE3C,EAAE,OAAO,EAAE,aAAa,EAAE;SAC3B;QAED,IAAI,EAAE;YACJ,OAAO;YACP,CAAC,cAAc,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAC9C;gBACE,0DAA0D;gBAC1D;oBACE,kBAAkB,CAAC,OAAO;oBAC1B,kBAAkB,CAAC,IAAI;oBACvB,kBAAkB,CAAC,QAAQ;oBAC3B,kBAAkB,CAAC,UAAU;oBAC7B,kBAAkB,CAAC,YAAY;iBAChC;aACF;YACD;gBACE,qCAAqC;gBACrC;oBACE,kBAAkB,CAAC,OAAO;oBAC1B,kBAAkB,CAAC,IAAI;oBACvB,kBAAkB,CAAC,QAAQ;iBAC5B;aACF;YAED,4DAA4D;YAC5D;gBACE,mEAAmE;gBACnE;oBACE,GAAG,kBAAkB,CAAC,IAAI,WAAW;oBACrC,kBAAkB,CAAC,OAAO;oBAC1B,kBAAkB,CAAC,IAAI;oBACvB,kBAAkB,CAAC,QAAQ;oBAC3B,kBAAkB,CAAC,YAAY;iBAChC;aACF;YAED,uBAAuB;YACvB;gBACE,sBAAsB;gBACtB,CAAC,kBAAkB,CAAC,SAAS,EAAE,kBAAkB,CAAC,QAAQ,CAAC;aAC5D;YACD;gBACE,wBAAwB;gBACxB,CAAC,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,CAAC;aAC3D;YACD;gBACE,gCAAgC;gBAChC;oBACE,kBAAkB,CAAC,IAAI;oBACvB,kBAAkB,CAAC,QAAQ;oBAC3B,kBAAkB,CAAC,QAAQ;iBAC5B;aACF;YAED,YAAY;YACZ;gBACE,kCAAkC;gBAClC;oBACE,kBAAkB,CAAC,OAAO;oBAC1B,kBAAkB,CAAC,UAAU;oBAC7B,kBAAkB,CAAC,QAAQ;oBAC3B,kBAAkB,CAAC,QAAQ;iBAC5B;aACF;YACD,CAAC,iBAAiB,EAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;SACnD;QAED,IAAI,EAAE;YACJ,CAAC,WAAW,EAAE,CAAC,GAAG,kBAAkB,CAAC,IAAI,SAAS,CAAC,CAAC;YACpD,CAAC,SAAS,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC,SAAS,EAAE,CAAC,GAAG,kBAAkB,CAAC,IAAI,OAAO,CAAC,CAAC;SACjD;QAED,KAAK,EAAE,CAAC,CAAC,mBAAmB,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;QAE1D,MAAM,EAAE;YACN;gBACE,uCAAuC;gBACvC,GAAG,kBAAkB,CAAC,MAAM,QAAQ;aACrC;YACD;gBACE,kDAAkD;gBAClD,GAAG,kBAAkB,CAAC,MAAM,QAAQ;aACrC;YACD,CAAC,wBAAwB,EAAE,GAAG,kBAAkB,CAAC,MAAM,MAAM,CAAC;YAC9D,CAAC,sBAAsB,EAAE,GAAG,kBAAkB,CAAC,MAAM,QAAQ,CAAC;YAC9D,CAAC,2BAA2B,EAAE,GAAG,kBAAkB,CAAC,MAAM,SAAS,CAAC;YACpE,CAAC,iBAAiB,EAAE,GAAG,kBAAkB,CAAC,MAAM,QAAQ,CAAC;YACzD,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,MAAM,CAAC;SAC9C;QAED,UAAU,EAAE;YACV,CAAC,YAAY,EAAE,kBAAkB,CAAC,UAAU,CAAC;YAC7C,CAAC,cAAc,EAAE,GAAG,kBAAkB,CAAC,OAAO,MAAM,EAAE,MAAM,CAAC;YAC7D,CAAC,MAAM,EAAE,kBAAkB,CAAC,OAAO,EAAE,UAAU,CAAC;YAChD,CAAC,SAAS,EAAE,kBAAkB,CAAC,OAAO,CAAC;SACxC;QAED,OAAO,EAAE;YACP,CAAC,QAAQ,EAAE,kBAAkB,CAAC,OAAO,CAAC;YACtC,uFAAuF;YACvF,8GAA8G;YAC9G,CAAC,MAAM,EAAE,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC;YAC5C,CAAC,MAAM,EAAE,kBAAkB,CAAC,OAAO,CAAC;SACrC;QAED,mEAAmE;QACnE,GAAG,EAAE;YACH,CAAC,QAAQ,EAAE,GAAG,kBAAkB,CAAC,OAAO,MAAM,CAAC;YAC/C,gGAAgG;YAChG,CAAC,MAAM,EAAE,GAAG,kBAAkB,CAAC,OAAO,cAAc,CAAC;YACrD,CAAC,MAAM,EAAE,GAAG,kBAAkB,CAAC,OAAO,MAAM,EAAE,MAAM,CAAC;YACrD,CAAC,MAAM,EAAE,GAAG,kBAAkB,CAAC,OAAO,MAAM,CAAC;SAC9C;QAED,MAAM,EAAE;YACN,CAAC,SAAS,EAAE,kBAAkB,CAAC,MAAM,CAAC;YACtC,CAAC,UAAU,EAAE,GAAG,kBAAkB,CAAC,MAAM,SAAS,CAAC;YACnD,CAAC,KAAK,EAAE,GAAG,kBAAkB,CAAC,MAAM,iBAAiB,CAAC;YACtD,CAAC,GAAG,EAAE,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC;SACzC;QAED,UAAU,EAAE;YACV,CAAC,UAAU,EAAE,kBAAkB,CAAC,MAAM,CAAC;YACvC;gBACE,kBAAkB;gBAClB;oBACE,kBAAkB,CAAC,MAAM;oBACzB,GAAG,kBAAkB,CAAC,MAAM,SAAS;oBACrC,kBAAkB,CAAC,MAAM;iBAC1B;aACF;YACD,CAAC,GAAG,EAAE,GAAG,kBAAkB,CAAC,MAAM,UAAU,CAAC;SAC9C;KACF;CACsC,CAAA,CAAC;AAE5C,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,aAAwC,EAClC,EAAE;IACR,4CAA4C;IAC5C,eAAe,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACxD,0CAA0C;IAC1C,oFAAoF;IACpF,eAAe,CAAC,kBAAkB,CAAC;QACjC;YACE,qCAAqC;YACrC,UAAU,EAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI;YACzC,OAAO,EAAE,IAAI;SACd;QACD;YACE,qCAAqC;YACrC,UAAU,EAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI;YACzC,OAAO,EAAE,IAAI;SACd;QACD;YACE,qCAAqC;YACrC,UAAU,EAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI;YACzC,OAAO,EAAE,IAAI;SACd;QACD;YACE,8BAA8B;YAC9B,UAAU,EAAE,OAAO,CAAC,EAAE;YACtB,OAAO,EAAE,IAAI;SACd;QACD;YACE,6BAA6B;YAC7B,UAAU,EAAE,OAAO,CAAC,EAAE;YACtB,OAAO,EAAE,IAAI;SACd;QACD;YACE,qCAAqC;YACrC,UAAU,EAAE,OAAO,CAAC,EAAE;YACtB,OAAO,EAAE,IAAI;SACd;QACD;YACE,qCAAqC;YACrC,UAAU,EAAE,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG;YACtC,OAAO,EAAE,IAAI;SACd;KACF,CAAC,CAAC;IACH,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1D,kBAAkB,CAAC,wBAAwB,CACzC,eAAe,CAAC,IAAI,EACpB,aAAa,CACd,CAAC;IACF,kBAAkB,CAAC,wBAAwB,CACzC,eAAe,CAAC,IAAI,EACpB,uBAAuB,CACrB,aAAa;SACV,0BAA0B,EAAE;SAC5B,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,2BAA2B,EAAE,EAAE,IAAI,EAAE,CAAC,EACpE,aAAa;SACV,0BAA0B,EAAE;SAC5B,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,CAAC,CACxE,CACF,CAAC;AACJ,CAAC,CAAC"}
@@ -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"}