@designliquido/delegua-node 1.13.4 → 1.14.1

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.
Files changed (46) hide show
  1. package/avaliador-sintatico/avaliador-sintatico-com-importacao.d.ts +8 -1
  2. package/avaliador-sintatico/avaliador-sintatico-com-importacao.d.ts.map +1 -1
  3. package/avaliador-sintatico/avaliador-sintatico-com-importacao.js +171 -1
  4. package/avaliador-sintatico/avaliador-sintatico-com-importacao.js.map +1 -1
  5. package/avaliador-sintatico/micro-avaliador-ajuda.d.ts +38 -0
  6. package/avaliador-sintatico/micro-avaliador-ajuda.d.ts.map +1 -0
  7. package/avaliador-sintatico/micro-avaliador-ajuda.js +100 -0
  8. package/avaliador-sintatico/micro-avaliador-ajuda.js.map +1 -0
  9. package/bin/package.json +9 -7
  10. package/interpretador/comum.d.ts +19 -1
  11. package/interpretador/comum.d.ts.map +1 -1
  12. package/interpretador/comum.js +226 -1
  13. package/interpretador/comum.js.map +1 -1
  14. package/interpretador/conteudo-ajuda.d.ts +21 -0
  15. package/interpretador/conteudo-ajuda.d.ts.map +1 -0
  16. package/interpretador/conteudo-ajuda.js +845 -0
  17. package/interpretador/conteudo-ajuda.js.map +1 -0
  18. package/interpretador/interpretador-com-depuracao-importacao.d.ts.map +1 -1
  19. package/interpretador/interpretador-com-depuracao-importacao.js.map +1 -1
  20. package/interpretador/interpretador-com-importacao.d.ts +7 -1
  21. package/interpretador/interpretador-com-importacao.d.ts.map +1 -1
  22. package/interpretador/interpretador-com-importacao.js +11 -1
  23. package/interpretador/interpretador-com-importacao.js.map +1 -1
  24. package/interpretador/realcador-sintaxe-ajuda.d.ts +6 -0
  25. package/interpretador/realcador-sintaxe-ajuda.d.ts.map +1 -0
  26. package/interpretador/realcador-sintaxe-ajuda.js +210 -0
  27. package/interpretador/realcador-sintaxe-ajuda.js.map +1 -0
  28. package/maquinas-estados-lair/index.d.ts +1 -0
  29. package/maquinas-estados-lair/index.d.ts.map +1 -1
  30. package/maquinas-estados-lair/index.js +1 -0
  31. package/maquinas-estados-lair/index.js.map +1 -1
  32. package/maquinas-estados-lair/maquina-estados-ajuda.d.ts +43 -0
  33. package/maquinas-estados-lair/maquina-estados-ajuda.d.ts.map +1 -0
  34. package/maquinas-estados-lair/maquina-estados-ajuda.js +155 -0
  35. package/maquinas-estados-lair/maquina-estados-ajuda.js.map +1 -0
  36. package/maquinas-estados-lair/maquina-estados-lair-delegua.d.ts +10 -1
  37. package/maquinas-estados-lair/maquina-estados-lair-delegua.d.ts.map +1 -1
  38. package/maquinas-estados-lair/maquina-estados-lair-delegua.js +64 -1
  39. package/maquinas-estados-lair/maquina-estados-lair-delegua.js.map +1 -1
  40. package/mecanismo-importacao-bibliotecas/index.d.ts.map +1 -1
  41. package/mecanismo-importacao-bibliotecas/index.js +1 -0
  42. package/mecanismo-importacao-bibliotecas/index.js.map +1 -1
  43. package/nucleo-execucao.d.ts.map +1 -1
  44. package/nucleo-execucao.js +1 -1
  45. package/nucleo-execucao.js.map +1 -1
  46. package/package.json +9 -7
@@ -1,4 +1,4 @@
1
- import { AvaliadorSintatico, Chamada, Construto, Declaracao, Literal, RetornoAvaliadorSintatico, RetornoLexador, SimboloInterface } from "@designliquido/delegua";
1
+ import { Ajuda, AvaliadorSintatico, Chamada, Construto, Declaracao, Literal, RetornoAvaliadorSintatico, RetornoLexador, SimboloInterface, TendoComo } from "@designliquido/delegua";
2
2
  import { InformacaoElementoSintatico } from "@designliquido/delegua/informacao-elemento-sintatico";
3
3
  import { ImportadorInterface } from "../interfaces";
4
4
  import { ImportarBiblioteca, ModuloDeclaracoes } from "../construtos";
@@ -29,11 +29,18 @@ export declare class AvaliadorSintaticoComImportacao extends AvaliadorSintatico
29
29
  * @returns
30
30
  */
31
31
  declaracaoImportar(): Promise<any>;
32
+ protected declaracaoTendoComo(): Promise<TendoComo>;
33
+ protected logicaComumInferenciaTiposVariaveisEConstantes(inicializador: Construto, tipo: string): string;
32
34
  /**
33
35
  * No modo LAIR, a pilha de escopos não deve ser reinicializada a cada execução.
34
36
  * @returns Nada.
35
37
  */
36
38
  protected inicializarPilhaEscopos(): void;
39
+ /**
40
+ * Override para permitir que palavras-chave sejam usadas como argumentos
41
+ * em ajuda(). Por exemplo: ajuda(para), ajuda(se), ajuda(enquanto).
42
+ */
43
+ declaracaoAjuda(): Promise<Ajuda>;
37
44
  analisar(retornoLexador: RetornoLexador<SimboloInterface>, hashArquivo: number, arquivosImportados?: string[]): Promise<RetornoAvaliadorSintatico<Declaracao>>;
38
45
  }
39
46
  //# sourceMappingURL=avaliador-sintatico-com-importacao.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"avaliador-sintatico-com-importacao.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/avaliador-sintatico-com-importacao.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,kBAAkB,EAClB,OAAO,EAIP,SAAS,EACT,UAAU,EAEV,OAAO,EACP,yBAAyB,EACzB,cAAc,EACd,gBAAgB,EAGnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AAKnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEtE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,qBAAa,+BAAgC,SAAQ,kBAAkB;IACnE,4BAA4B,EAAE;QAC1B,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAAC;KACtC,CAAC;IACF,UAAU,EAAE,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAClD,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,QAAQ,EAAE,OAAO,CAAC;gBAEN,UAAU,EAAE,mBAAmB,CAAC,gBAAgB,CAAC;IAO9C,gBAAgB,CAAC,eAAe,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBjH,SAAS,CAAC,kCAAkC,CAAC,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM;IAiBzF,SAAS,CAAC,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,2BAA2B;IA4D7G,SAAS,CAAC,sBAAsB,CAAC,cAAc,EAAE,OAAO,GAAG,kBAAkB;cAyC7D,2BAA2B,CAAC,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA+ErI;;;OAGG;cACsB,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC;IAoB1D,SAAS,CAAC,kCAAkC,CACxC,iBAAiB,EAAE,iBAAiB,EACpC,IAAI,EAAE,MAAM,EACZ,iBAAiB,EACb,gBAAgB,GACrB,CAAC,MAAM,EAAE,UAAU,CAAC;IAyCvB;;;;;OAKG;IACY,kBAAkB,IAAI,OAAO,CAAC,GAAG,CAAC;IAiFjD;;;OAGG;cACgB,uBAAuB,IAAI,IAAI;IAQnC,QAAQ,CACnB,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,EAChD,WAAW,EAAE,MAAM,EACnB,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAC9B,OAAO,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;CAIpD"}
1
+ {"version":3,"file":"avaliador-sintatico-com-importacao.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/avaliador-sintatico-com-importacao.ts"],"names":[],"mappings":"AAAA,OAAO,EAKH,KAAK,EAEL,kBAAkB,EAElB,OAAO,EAIP,SAAS,EAET,UAAU,EAMV,OAAO,EAMP,yBAAyB,EACzB,cAAc,EAGd,gBAAgB,EAChB,SAAS,EAIZ,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AAMnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEtE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D,qBAAa,+BAAgC,SAAQ,kBAAkB;IACnE,4BAA4B,EAAE;QAC1B,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAAC;KACtC,CAAC;IACF,UAAU,EAAE,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAClD,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,QAAQ,EAAE,OAAO,CAAC;gBAEN,UAAU,EAAE,mBAAmB,CAAC,gBAAgB,CAAC;IAO9C,gBAAgB,CAAC,eAAe,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBjH,SAAS,CAAC,kCAAkC,CAAC,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM;IAiBzF,SAAS,CAAC,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,2BAA2B;IA4D7G,SAAS,CAAC,sBAAsB,CAAC,cAAc,EAAE,OAAO,GAAG,kBAAkB;cAyC7D,2BAA2B,CAAC,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA+ErI;;;OAGG;cACsB,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC;IAoB1D,SAAS,CAAC,kCAAkC,CACxC,iBAAiB,EAAE,iBAAiB,EACpC,IAAI,EAAE,MAAM,EACZ,iBAAiB,EACb,gBAAgB,GACrB,CAAC,MAAM,EAAE,UAAU,CAAC;IAyCvB;;;;;OAKG;IACY,kBAAkB,IAAI,OAAO,CAAC,GAAG,CAAC;cAkFjC,mBAAmB,IAAI,OAAO,CAAC,SAAS,CAAC;IA4DzD,SAAS,CAAC,8CAA8C,CACpD,aAAa,EAAE,SAAS,EACxB,IAAI,EAAE,MAAM,GACb,MAAM;IA0JT;;;OAGG;cACgB,uBAAuB,IAAI,IAAI;IAQlD;;;OAGG;IACY,eAAe,IAAI,OAAO,CAAC,KAAK,CAAC;IAsEjC,QAAQ,CACnB,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,EAChD,WAAW,EAAE,MAAM,EACnB,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAC9B,OAAO,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;CAIpD"}
@@ -8,9 +8,11 @@ const delegua_1 = require("@designliquido/delegua");
8
8
  const informacao_elemento_sintatico_1 = require("@designliquido/delegua/informacao-elemento-sintatico");
9
9
  const estruturas_1 = require("@designliquido/delegua/interpretador/estruturas");
10
10
  const delegua_2 = __importDefault(require("@designliquido/delegua/tipos-de-simbolos/delegua"));
11
+ const delegua_3 = __importDefault(require("@designliquido/delegua/tipos-de-dados/delegua"));
11
12
  const construtos_1 = require("../construtos");
12
13
  const mecanismo_importacao_bibliotecas_1 = require("../mecanismo-importacao-bibliotecas");
13
14
  const estruturas_2 = require("../interpretador/estruturas");
15
+ const micro_avaliador_ajuda_1 = require("./micro-avaliador-ajuda");
14
16
  class AvaliadorSintaticoComImportacao extends delegua_1.AvaliadorSintatico {
15
17
  constructor(importador) {
16
18
  super();
@@ -212,11 +214,11 @@ class AvaliadorSintaticoComImportacao extends delegua_1.AvaliadorSintatico {
212
214
  const declaracaoResolvida = await super.declaracaoImportar();
213
215
  const literalCaminho = declaracaoResolvida.caminho;
214
216
  if (declaracaoResolvida.simboloTudo !== null && declaracaoResolvida.simboloTudo !== undefined) {
217
+ this.pilhaEscopos.definirInformacoesVariavel(declaracaoResolvida.simboloTudo.lexema, new informacao_elemento_sintatico_1.InformacaoElementoSintatico(declaracaoResolvida.simboloTudo.lexema, 'módulo'));
215
218
  if (!String(literalCaminho.valor).endsWith('.delegua')) {
216
219
  return this.importarBibliotecaNode(literalCaminho);
217
220
  }
218
221
  const moduloDeclaracoes = await this.logicaComumImportacaoModulo(literalCaminho, declaracaoResolvida.simboloTudo);
219
- this.pilhaEscopos.definirInformacoesVariavel(declaracaoResolvida.simboloTudo.lexema, new informacao_elemento_sintatico_1.InformacaoElementoSintatico(declaracaoResolvida.simboloTudo.lexema, 'módulo'));
220
222
  return new delegua_1.Const(declaracaoResolvida.simboloTudo, moduloDeclaracoes, 'módulo', true, declaracaoResolvida.decoradores);
221
223
  }
222
224
  if (declaracaoResolvida.elementosImportacao.length === 0) {
@@ -236,6 +238,137 @@ class AvaliadorSintaticoComImportacao extends delegua_1.AvaliadorSintatico {
236
238
  }
237
239
  return constantesImportadas;
238
240
  }
241
+ async declaracaoTendoComo() {
242
+ const simboloTendo = this.simbolos[this.atual - 1];
243
+ const expressaoInicializacao = await this.expressao();
244
+ this.consumir(delegua_2.default.COMO, "Esperado palavra reservada 'como' após expressão de inicialização de variável, em declaração 'tendo'.");
245
+ const simboloNomeVariavel = this.consumir(delegua_2.default.IDENTIFICADOR, "Esperado nome do identificador em declaração 'tendo'.");
246
+ this.consumir(delegua_2.default.CHAVE_ESQUERDA, "Esperado chave esquerda para abertura de bloco em declaração 'tendo'.");
247
+ let tipoInicializacao = 'qualquer';
248
+ switch (expressaoInicializacao.constructor) {
249
+ case delegua_1.Chamada:
250
+ const construtoChamada = expressaoInicializacao;
251
+ switch (construtoChamada.entidadeChamada.constructor) {
252
+ case delegua_1.AcessoMetodo:
253
+ const entidadeChamadaAcessoMetodo = construtoChamada.entidadeChamada;
254
+ tipoInicializacao = entidadeChamadaAcessoMetodo.tipoRetornoMetodo.replace('<T>', entidadeChamadaAcessoMetodo.objeto.tipo);
255
+ break;
256
+ case delegua_1.Variavel:
257
+ const entidadeChamadaVariavel = construtoChamada.entidadeChamada;
258
+ tipoInicializacao = entidadeChamadaVariavel.tipo;
259
+ break;
260
+ // TODO: Demais casos
261
+ default:
262
+ break;
263
+ }
264
+ break;
265
+ // TODO: Demais casos
266
+ default:
267
+ break;
268
+ }
269
+ this.pilhaEscopos.definirInformacoesVariavel(simboloNomeVariavel.lexema, new informacao_elemento_sintatico_1.InformacaoElementoSintatico(simboloNomeVariavel.lexema, tipoInicializacao));
270
+ const blocoCorpo = await this.blocoEscopo();
271
+ return new delegua_1.TendoComo(simboloTendo.linha, simboloTendo.hashArquivo, simboloNomeVariavel, expressaoInicializacao, new delegua_1.Bloco(simboloTendo.linha, simboloTendo.hashArquivo, blocoCorpo));
272
+ }
273
+ // TODO: Excluir pós atualização de versão do núcleo de Delégua.
274
+ logicaComumInferenciaTiposVariaveisEConstantes(inicializador, tipo) {
275
+ if (tipo !== 'qualquer') {
276
+ return tipo;
277
+ }
278
+ switch (inicializador.constructor) {
279
+ case delegua_1.AcessoIndiceVariavel:
280
+ const entidadeChamadaAcessoIndiceVariavel = inicializador
281
+ .entidadeChamada;
282
+ // Este condicional ocorre com chamadas aninhadas. Por exemplo, `vetor[1][2]`.
283
+ if (entidadeChamadaAcessoIndiceVariavel.constructor === delegua_1.AcessoIndiceVariavel) {
284
+ return this.logicaComumInferenciaTiposVariaveisEConstantes(entidadeChamadaAcessoIndiceVariavel, tipo);
285
+ }
286
+ if (entidadeChamadaAcessoIndiceVariavel.tipo.endsWith('[]')) {
287
+ return entidadeChamadaAcessoIndiceVariavel.tipo.slice(0, -2);
288
+ }
289
+ // Normalmente, `entidadeChamadaAcessoIndiceVariavel.tipo` aqui será 'vetor'.
290
+ return 'qualquer';
291
+ case delegua_1.Chamada:
292
+ const entidadeChamadaChamada = inicializador.entidadeChamada;
293
+ switch (entidadeChamadaChamada.constructor) {
294
+ case delegua_1.AcessoMetodo:
295
+ const entidadeChamadaAcessoMetodo = entidadeChamadaChamada;
296
+ const tipoRetornoAcessoMetodoResolvido = entidadeChamadaAcessoMetodo.tipoRetornoMetodo.replace('<T>', entidadeChamadaAcessoMetodo.objeto.tipo);
297
+ return tipoRetornoAcessoMetodoResolvido;
298
+ case delegua_1.AcessoMetodoOuPropriedade:
299
+ const entidadeChamadaAcessoMetodoOuPropriedade = entidadeChamadaChamada;
300
+ // Algumas coisas podem acontecer aqui.
301
+ // Uma delas é a variável/constante ser uma classe padrão.
302
+ // Isso ocorre quando a importação é feita de uma biblioteca Node.js.
303
+ // Nesse caso, o tipo de `entidadeChamadaAcessoMetodoOuPropriedade.objeto` começa com uma letra maiúscula.
304
+ if (entidadeChamadaAcessoMetodoOuPropriedade.objeto.tipo &&
305
+ entidadeChamadaAcessoMetodoOuPropriedade.objeto.tipo.match(/^[A-Z]/)) {
306
+ const tipoCorrespondente = this.tiposDefinidosPorBibliotecas[entidadeChamadaAcessoMetodoOuPropriedade.objeto.tipo];
307
+ if (!tipoCorrespondente) {
308
+ throw new delegua_1.ErroAvaliadorSintatico(entidadeChamadaAcessoMetodoOuPropriedade.simbolo, `Tipo '${entidadeChamadaAcessoMetodoOuPropriedade.objeto.tipo}' não foi encontrado entre os tipos definidos por bibliotecas.`);
309
+ }
310
+ if (!(entidadeChamadaAcessoMetodoOuPropriedade.simbolo.lexema in
311
+ tipoCorrespondente.metodos) &&
312
+ !(entidadeChamadaAcessoMetodoOuPropriedade.simbolo.lexema in
313
+ tipoCorrespondente.propriedades)) {
314
+ throw new delegua_1.ErroAvaliadorSintatico(entidadeChamadaAcessoMetodoOuPropriedade.simbolo, `Membro '${entidadeChamadaAcessoMetodoOuPropriedade.simbolo.lexema}' não existe no tipo '${entidadeChamadaAcessoMetodoOuPropriedade.objeto.tipo}'.`);
315
+ }
316
+ if (entidadeChamadaAcessoMetodoOuPropriedade.simbolo.lexema in
317
+ tipoCorrespondente.metodos) {
318
+ const metodoCorrespondente = tipoCorrespondente.metodos[entidadeChamadaAcessoMetodoOuPropriedade.simbolo.lexema];
319
+ return metodoCorrespondente.tipoRetorno || metodoCorrespondente.tipo || 'qualquer';
320
+ }
321
+ const propriedadeCorrespondente = tipoCorrespondente.propriedades[entidadeChamadaAcessoMetodoOuPropriedade.simbolo.lexema];
322
+ return propriedadeCorrespondente.tipo;
323
+ }
324
+ // Este caso ocorre quando a variável/constante é do tipo 'qualquer',
325
+ // e a chamada normalmente é feita para uma primitiva.
326
+ // A inferência, portanto, ocorre pelo uso da primitiva.
327
+ for (const primitiva in this.primitivasConhecidas) {
328
+ if (this.primitivasConhecidas[primitiva].hasOwnProperty(entidadeChamadaAcessoMetodoOuPropriedade.simbolo.lexema)) {
329
+ return this.primitivasConhecidas[primitiva][entidadeChamadaAcessoMetodoOuPropriedade.simbolo.lexema].tipo;
330
+ }
331
+ }
332
+ throw new delegua_1.ErroAvaliadorSintatico(entidadeChamadaAcessoMetodoOuPropriedade.simbolo, `Primitiva '${entidadeChamadaAcessoMetodoOuPropriedade.simbolo.lexema}' não existe.`);
333
+ case delegua_1.AcessoPropriedade:
334
+ const entidadeChamadaAcessoPropriedade = entidadeChamadaChamada;
335
+ return entidadeChamadaAcessoPropriedade.tipoRetornoPropriedade;
336
+ case delegua_1.ArgumentoReferenciaFuncao:
337
+ // TODO: Voltar aqui se necessário.
338
+ return 'qualquer';
339
+ case delegua_1.ReferenciaFuncao:
340
+ const entidadeChamadaReferenciaFuncao = entidadeChamadaChamada;
341
+ return entidadeChamadaReferenciaFuncao.tipo;
342
+ case delegua_1.Variavel:
343
+ const entidadeChamadaVariavel = entidadeChamadaChamada;
344
+ return entidadeChamadaVariavel.tipo;
345
+ }
346
+ break;
347
+ case delegua_1.FuncaoConstruto:
348
+ const funcaoConstruto = inicializador;
349
+ return `função<${funcaoConstruto.tipo}>`;
350
+ case delegua_1.Leia:
351
+ return 'texto';
352
+ case delegua_1.Dupla:
353
+ case delegua_1.Trio:
354
+ case delegua_1.Quarteto:
355
+ case delegua_1.Quinteto:
356
+ case delegua_1.Sexteto:
357
+ case delegua_1.Septeto:
358
+ case delegua_1.Octeto:
359
+ case delegua_1.Noneto:
360
+ case delegua_1.Deceto:
361
+ return delegua_3.default.TUPLA;
362
+ default:
363
+ // Construtos mapeados em `delegua-node`.
364
+ switch (inicializador.constructor.name) {
365
+ case 'ImportarBiblioteca':
366
+ case 'ModuloDeclaracoes':
367
+ return 'módulo';
368
+ }
369
+ return inicializador.tipo;
370
+ }
371
+ }
239
372
  /**
240
373
  * No modo LAIR, a pilha de escopos não deve ser reinicializada a cada execução.
241
374
  * @returns Nada.
@@ -246,6 +379,43 @@ class AvaliadorSintaticoComImportacao extends delegua_1.AvaliadorSintatico {
246
379
  }
247
380
  super.inicializarPilhaEscopos();
248
381
  }
382
+ /**
383
+ * Override para permitir que palavras-chave sejam usadas como argumentos
384
+ * em ajuda(). Por exemplo: ajuda(para), ajuda(se), ajuda(enquanto).
385
+ */
386
+ async declaracaoAjuda() {
387
+ // Primeiro, consome o token AJUDA
388
+ const simboloAjuda = this.avancarEDevolverAnterior();
389
+ // Se não há '(' ou estamos no final, é apenas uma declaração simples
390
+ if (this.estaNoFinal() ||
391
+ this.simbolos[this.atual].tipo !== delegua_2.default.PARENTESE_ESQUERDO) {
392
+ return new delegua_1.Ajuda(simboloAjuda.hashArquivo, simboloAjuda.linha, undefined, false);
393
+ }
394
+ // Consome '('
395
+ this.avancarEDevolverAnterior();
396
+ // Se há ')' imediatamente, é ajuda() sem argumentos
397
+ if (this.simbolos[this.atual].tipo === delegua_2.default.PARENTESE_DIREITO) {
398
+ this.avancarEDevolverAnterior(); // Consome ')'
399
+ return new delegua_1.Ajuda(simboloAjuda.hashArquivo, simboloAjuda.linha, undefined, true);
400
+ }
401
+ // Pega o símbolo atual (pode ser palavra-chave ou identificador)
402
+ const simboloTopico = this.simbolos[this.atual];
403
+ // Verifica se é um tópico válido (palavra-chave ou identificador)
404
+ if (simboloTopico && micro_avaliador_ajuda_1.MicroAvaliadorAjuda.ehTopicoValido(simboloTopico)) {
405
+ // Converte o símbolo para um construto de tópico
406
+ const construtoTopico = micro_avaliador_ajuda_1.MicroAvaliadorAjuda.converterSimboloParaTopico(simboloTopico);
407
+ // Avança para consumir o símbolo
408
+ this.avancarEDevolverAnterior();
409
+ // Consome ')'
410
+ this.consumir(delegua_2.default.PARENTESE_DIREITO, "Esperado ')' após argumento de ajuda.");
411
+ return new delegua_1.Ajuda(simboloAjuda.hashArquivo, simboloAjuda.linha, construtoTopico, true);
412
+ }
413
+ // Se não é um tópico simples, delega para o parser padrão
414
+ // (pode ser uma expressão complexa)
415
+ const expressaoAjuda = await this.expressao();
416
+ this.consumir(delegua_2.default.PARENTESE_DIREITO, `Esperado parêntese direito após expressão usada como argumento em ajuda(). Atual: ${this.simbolos[this.atual].lexema}.`);
417
+ return new delegua_1.Ajuda(simboloAjuda.hashArquivo, simboloAjuda.linha, expressaoAjuda, true);
418
+ }
249
419
  async analisar(retornoLexador, hashArquivo, arquivosImportados) {
250
420
  this.arquivosImportados = arquivosImportados || [];
251
421
  return super.analisar(retornoLexador, hashArquivo);
@@ -1 +1 @@
1
- {"version":3,"file":"avaliador-sintatico-com-importacao.js","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/avaliador-sintatico-com-importacao.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"avaliador-sintatico-com-importacao.js","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/avaliador-sintatico-com-importacao.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { SimboloInterface } from '@designliquido/delegua/interfaces';
2
+ import { Literal, Variavel } from '@designliquido/delegua/construtos';
3
+ /**
4
+ * Micro-avaliador sintático especializado para argumentos da função ajuda().
5
+ *
6
+ * Diferente do parser principal, este tratador permite que palavras-chave
7
+ * (como 'para', 'se', 'enquanto') sejam usadas como argumentos para ajuda(),
8
+ * convertendo-as em nomes de tópicos.
9
+ *
10
+ * Exemplo:
11
+ * ajuda(para) → tópico "para"
12
+ * ajuda(escreva) → tópico "escreva"
13
+ * ajuda("texto") → tópico "texto"
14
+ */
15
+ export declare class MicroAvaliadorAjuda {
16
+ /**
17
+ * Lista de tipos de símbolos que são palavras-chave da linguagem.
18
+ * Todos podem ser usados como tópicos de ajuda.
19
+ */
20
+ private static readonly PALAVRAS_CHAVE;
21
+ /**
22
+ * Converte um símbolo (palavra-chave ou identificador) em um construto
23
+ * que pode ser usado como argumento de ajuda.
24
+ *
25
+ * @param simbolo - Símbolo a ser convertido
26
+ * @returns Construto Variavel com o nome do tópico
27
+ */
28
+ static converterSimboloParaTopico(simbolo: SimboloInterface): Variavel | Literal;
29
+ /**
30
+ * Verifica se um símbolo pode ser usado como tópico de ajuda.
31
+ */
32
+ static ehTopicoValido(simbolo: SimboloInterface): boolean;
33
+ /**
34
+ * Extrai o nome do tópico de um símbolo.
35
+ */
36
+ static extrairNomeTopico(simbolo: SimboloInterface): string;
37
+ }
38
+ //# sourceMappingURL=micro-avaliador-ajuda.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"micro-avaliador-ajuda.d.ts","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/micro-avaliador-ajuda.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAGtE;;;;;;;;;;;GAWG;AACH,qBAAa,mBAAmB;IAC5B;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CA+BnC;IAEH;;;;;;OAMG;IACH,MAAM,CAAC,0BAA0B,CAAC,OAAO,EAAE,gBAAgB,GAAG,QAAQ,GAAG,OAAO;IAgChF;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO;IAQzD;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM;CAM9D"}
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MicroAvaliadorAjuda = void 0;
7
+ const construtos_1 = require("@designliquido/delegua/construtos");
8
+ const delegua_1 = __importDefault(require("@designliquido/delegua/tipos-de-simbolos/delegua"));
9
+ /**
10
+ * Micro-avaliador sintático especializado para argumentos da função ajuda().
11
+ *
12
+ * Diferente do parser principal, este tratador permite que palavras-chave
13
+ * (como 'para', 'se', 'enquanto') sejam usadas como argumentos para ajuda(),
14
+ * convertendo-as em nomes de tópicos.
15
+ *
16
+ * Exemplo:
17
+ * ajuda(para) → tópico "para"
18
+ * ajuda(escreva) → tópico "escreva"
19
+ * ajuda("texto") → tópico "texto"
20
+ */
21
+ class MicroAvaliadorAjuda {
22
+ /**
23
+ * Converte um símbolo (palavra-chave ou identificador) em um construto
24
+ * que pode ser usado como argumento de ajuda.
25
+ *
26
+ * @param simbolo - Símbolo a ser convertido
27
+ * @returns Construto Variavel com o nome do tópico
28
+ */
29
+ static converterSimboloParaTopico(simbolo) {
30
+ // Se for um literal de texto, retorna como está
31
+ if (simbolo.tipo === delegua_1.default.TEXTO) {
32
+ return new construtos_1.Literal(simbolo.hashArquivo, simbolo.linha, simbolo.literal, 'texto');
33
+ }
34
+ // Se for número, booleano, ou nulo, retorna como literal
35
+ if (simbolo.tipo === delegua_1.default.NUMERO ||
36
+ simbolo.tipo === delegua_1.default.VERDADEIRO ||
37
+ simbolo.tipo === delegua_1.default.FALSO ||
38
+ simbolo.tipo === delegua_1.default.NULO) {
39
+ return new construtos_1.Literal(simbolo.hashArquivo, simbolo.linha, simbolo.literal, simbolo.tipo === delegua_1.default.NUMERO ? 'número' : 'lógico');
40
+ }
41
+ // Se for uma palavra-chave ou identificador, converte para Variavel
42
+ // usando o lexema como nome do tópico
43
+ return new construtos_1.Variavel(simbolo.hashArquivo, simbolo);
44
+ }
45
+ /**
46
+ * Verifica se um símbolo pode ser usado como tópico de ajuda.
47
+ */
48
+ static ehTopicoValido(simbolo) {
49
+ return (simbolo.tipo === delegua_1.default.IDENTIFICADOR ||
50
+ simbolo.tipo === delegua_1.default.TEXTO ||
51
+ this.PALAVRAS_CHAVE.has(simbolo.tipo));
52
+ }
53
+ /**
54
+ * Extrai o nome do tópico de um símbolo.
55
+ */
56
+ static extrairNomeTopico(simbolo) {
57
+ if (simbolo.tipo === delegua_1.default.TEXTO) {
58
+ return simbolo.literal;
59
+ }
60
+ return simbolo.lexema;
61
+ }
62
+ }
63
+ exports.MicroAvaliadorAjuda = MicroAvaliadorAjuda;
64
+ /**
65
+ * Lista de tipos de símbolos que são palavras-chave da linguagem.
66
+ * Todos podem ser usados como tópicos de ajuda.
67
+ */
68
+ MicroAvaliadorAjuda.PALAVRAS_CHAVE = new Set([
69
+ delegua_1.default.CONSTANTE,
70
+ delegua_1.default.VARIAVEL,
71
+ delegua_1.default.SE,
72
+ delegua_1.default.SENAO,
73
+ delegua_1.default.PARA,
74
+ delegua_1.default.ENQUANTO,
75
+ delegua_1.default.FAZER,
76
+ delegua_1.default.FUNCAO,
77
+ delegua_1.default.RETORNA,
78
+ delegua_1.default.CLASSE,
79
+ delegua_1.default.HERDA,
80
+ delegua_1.default.CONSTRUTOR,
81
+ delegua_1.default.ISTO,
82
+ delegua_1.default.SUPER,
83
+ delegua_1.default.TENTE,
84
+ delegua_1.default.PEGUE,
85
+ delegua_1.default.FINALMENTE,
86
+ delegua_1.default.SUSTAR,
87
+ delegua_1.default.CONTINUA,
88
+ delegua_1.default.ESCOLHA,
89
+ delegua_1.default.CASO,
90
+ delegua_1.default.PADRAO,
91
+ delegua_1.default.IMPORTAR,
92
+ delegua_1.default.DE,
93
+ delegua_1.default.COMO,
94
+ delegua_1.default.VERDADEIRO,
95
+ delegua_1.default.FALSO,
96
+ delegua_1.default.NULO,
97
+ delegua_1.default.ESCREVA,
98
+ delegua_1.default.LEIA,
99
+ ]);
100
+ //# sourceMappingURL=micro-avaliador-ajuda.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"micro-avaliador-ajuda.js","sourceRoot":"","sources":["../../fontes/avaliador-sintatico/micro-avaliador-ajuda.ts"],"names":[],"mappings":";;;;;;AACA,kEAAsE;AACtE,+FAA+E;AAE/E;;;;;;;;;;;GAWG;AACH,MAAa,mBAAmB;IAsC5B;;;;;;OAMG;IACH,MAAM,CAAC,0BAA0B,CAAC,OAAyB;QACvD,gDAAgD;QAChD,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,KAAK,EAAE,CAAC;YACzC,OAAO,IAAI,oBAAO,CACd,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,OAAiB,EACzB,OAAO,CACV,CAAC;QACN,CAAC;QAED,yDAAyD;QACzD,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,MAAM;YACvC,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,UAAU;YAC3C,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,KAAK;YACtC,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,IAAI,EAAE,CAAC;YACxC,OAAO,IAAI,oBAAO,CACd,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAChE,CAAC;QACN,CAAC;QAED,oEAAoE;QACpE,sCAAsC;QACtC,OAAO,IAAI,qBAAQ,CACf,OAAO,CAAC,WAAW,EACnB,OAAO,CACV,CAAC;IACN,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,OAAyB;QAC3C,OAAO,CACH,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,aAAa;YAC9C,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,KAAK;YACtC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CACxC,CAAC;IACN,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAyB;QAC9C,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAe,CAAC,KAAK,EAAE,CAAC;YACzC,OAAO,OAAO,CAAC,OAAiB,CAAC;QACrC,CAAC;QACD,OAAO,OAAO,CAAC,MAAM,CAAC;IAC1B,CAAC;;AAhGL,kDAiGC;AAhGG;;;GAGG;AACqB,kCAAc,GAAG,IAAI,GAAG,CAAC;IAC7C,iBAAe,CAAC,SAAS;IACzB,iBAAe,CAAC,QAAQ;IACxB,iBAAe,CAAC,EAAE;IAClB,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,IAAI;IACpB,iBAAe,CAAC,QAAQ;IACxB,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,MAAM;IACtB,iBAAe,CAAC,OAAO;IACvB,iBAAe,CAAC,MAAM;IACtB,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,UAAU;IAC1B,iBAAe,CAAC,IAAI;IACpB,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,UAAU;IAC1B,iBAAe,CAAC,MAAM;IACtB,iBAAe,CAAC,QAAQ;IACxB,iBAAe,CAAC,OAAO;IACvB,iBAAe,CAAC,IAAI;IACpB,iBAAe,CAAC,MAAM;IACtB,iBAAe,CAAC,QAAQ;IACxB,iBAAe,CAAC,EAAE;IAClB,iBAAe,CAAC,IAAI;IACpB,iBAAe,CAAC,UAAU;IAC1B,iBAAe,CAAC,KAAK;IACrB,iBAAe,CAAC,IAAI;IACpB,iBAAe,CAAC,OAAO;IACvB,iBAAe,CAAC,IAAI;CACvB,CAAC,CAAC"}
package/bin/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@designliquido/delegua-node",
3
- "version": "1.13.3",
3
+ "version": "1.14.0",
4
4
  "description": "Linguagem Delégua com capacidades para ecossistema Node.js.",
5
5
  "scripts": {
6
6
  "empacotar": "yarn rimraf ./dist && tsc && yarn copyfiles -V ./bin/delegua ./bin/delegua.cmd ./dist && yarn copyfiles -V ./package.json ./dist/bin && yarn copyfiles -V ./README.md ./dist && yarn copyfiles -V ./LICENSE ./dist",
@@ -12,12 +12,12 @@
12
12
  "testes:servidor-depuracao": "yarn ts-node ./fontes/depuracao/servidor-depuracao.ts"
13
13
  },
14
14
  "dependencies": {
15
- "@designliquido/birl": "^0.5.5",
16
- "@designliquido/delegua": "^1.4.0",
17
- "@designliquido/mapler": "^0.6.5",
18
- "@designliquido/portugol-studio": "^0.9.5",
19
- "@designliquido/potigol": "^0.8.5",
20
- "@designliquido/visualg": "^0.8.6",
15
+ "@designliquido/birl": "^0.5.10",
16
+ "@designliquido/delegua": "^1.7.1",
17
+ "@designliquido/mapler": "^0.6.10",
18
+ "@designliquido/portugol-studio": "^0.9.10",
19
+ "@designliquido/potigol": "^0.8.10",
20
+ "@designliquido/visualg": "^0.8.10",
21
21
  "chalk": "4.1.2",
22
22
  "commander": "^14.0.0",
23
23
  "json-colorizer": "^3.0.1"
@@ -25,6 +25,8 @@
25
25
  "devDependencies": {
26
26
  "@designliquido/delegua-arquivos": "^0.0.3",
27
27
  "@designliquido/delegua-criptografia": "^0.3.3",
28
+ "@designliquido/delegua-csv": "^0.0.2",
29
+ "@designliquido/delegua-dados": "^0.0.0",
28
30
  "@designliquido/delegua-estatistica": "^0.1.0",
29
31
  "@designliquido/delegua-fisica": "^0.1.0",
30
32
  "@designliquido/delegua-http": "^0.1.2",
@@ -1,5 +1,5 @@
1
1
  import { DeleguaModulo } from "@designliquido/delegua/interpretador/estruturas";
2
- import { Const, FuncaoDeclaracao } from "@designliquido/delegua/declaracoes";
2
+ import { Const, FuncaoDeclaracao, Ajuda } from "@designliquido/delegua/declaracoes";
3
3
  import { ImportarBiblioteca, ModuloDeclaracoes } from "../construtos";
4
4
  import { InterpretadorComImportacaoInterface } from "../interfaces/interpretador-com-importacao-interface";
5
5
  export declare function visitarConstrutoImportarBiblioteca(interpretador: InterpretadorComImportacaoInterface, importarBiblioteca: ImportarBiblioteca): Promise<DeleguaModulo>;
@@ -11,4 +11,22 @@ export declare function visitarConstrutoImportarBiblioteca(interpretador: Interp
11
11
  export declare function visitarDeclaracaoConst(interpretador: InterpretadorComImportacaoInterface, declaracao: Const): Promise<any>;
12
12
  export declare function visitarDeclaracaoDefinicaoFuncao(interpretador: InterpretadorComImportacaoInterface, funcaoDeclaracao: FuncaoDeclaracao): Promise<any>;
13
13
  export declare function visitarExpressaoModuloDeclaracoes(interpretador: InterpretadorComImportacaoInterface, declaracao: ModuloDeclaracoes): Promise<DeleguaModulo>;
14
+ /**
15
+ * Obtém ajuda para um tópico específico pelo nome.
16
+ * Esta função é usada pelo modo de ajuda interativo.
17
+ *
18
+ * @param interpretador - O interpretador atual
19
+ * @param nomeTopico - Nome do tópico a buscar
20
+ * @returns String com a ajuda formatada ou null se não encontrado
21
+ */
22
+ export declare function obterAjudaPorNome(interpretador: InterpretadorComImportacaoInterface, nomeTopico: string): string | null;
23
+ /**
24
+ * Função auxiliar para processar declarações de ajuda no modo interativo.
25
+ * - ajuda() sem argumentos: entra no modo interativo
26
+ * - ajuda(topico) com argumento: exibe ajuda do tópico diretamente
27
+ *
28
+ * @param declaracao - A declaração de ajuda
29
+ * @returns Texto de ajuda ou objeto para entrar em modo interativo
30
+ */
31
+ export declare function visitarDeclaracaoAjuda(interpretador: InterpretadorComImportacaoInterface, declaracao: Ajuda): Promise<any>;
14
32
  //# sourceMappingURL=comum.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"comum.d.ts","sourceRoot":"","sources":["../../fontes/interpretador/comum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAC/F,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,mCAAmC,EAAE,MAAM,sDAAsD,CAAC;AAI3G,wBAAsB,kCAAkC,CACpD,aAAa,EAAE,mCAAmC,EAClD,kBAAkB,EAAE,kBAAkB,0BAQzC;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CACxC,aAAa,EAAE,mCAAmC,EAClD,UAAU,EAAE,KAAK,GAClB,OAAO,CAAC,GAAG,CAAC,CAkBd;AAED,wBAAsB,gCAAgC,CAClD,aAAa,EAAE,mCAAmC,EAClD,gBAAgB,EAAE,gBAAgB,GACnC,OAAO,CAAC,GAAG,CAAC,CAcd;AAED,wBAAsB,iCAAiC,CACnD,aAAa,EAAE,mCAAmC,EAClD,UAAU,EAAE,iBAAiB,0BA0BhC"}
1
+ {"version":3,"file":"comum.d.ts","sourceRoot":"","sources":["../../fontes/interpretador/comum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,aAAa,EAAgB,MAAM,iDAAiD,CAAC;AAC7G,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,oCAAoC,CAAC;AAGpF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,mCAAmC,EAAE,MAAM,sDAAsD,CAAC;AAM3G,wBAAsB,kCAAkC,CACpD,aAAa,EAAE,mCAAmC,EAClD,kBAAkB,EAAE,kBAAkB,0BASzC;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CACxC,aAAa,EAAE,mCAAmC,EAClD,UAAU,EAAE,KAAK,GAClB,OAAO,CAAC,GAAG,CAAC,CAkBd;AAED,wBAAsB,gCAAgC,CAClD,aAAa,EAAE,mCAAmC,EAClD,gBAAgB,EAAE,gBAAgB,GACnC,OAAO,CAAC,GAAG,CAAC,CAcd;AAED,wBAAsB,iCAAiC,CACnD,aAAa,EAAE,mCAAmC,EAClD,UAAU,EAAE,iBAAiB,0BA0BhC;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC7B,aAAa,EAAE,mCAAmC,EAClD,UAAU,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAiFf;AA4FD;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CACxC,aAAa,EAAE,mCAAmC,EAClD,UAAU,EAAE,KAAK,GAClB,OAAO,CAAC,GAAG,CAAC,CA6Cd"}