@designliquido/delegua 1.3.0 → 1.3.2

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/umd/delegua.js CHANGED
@@ -16628,11 +16628,9 @@ class InterpretadorBase {
16628
16628
  // Outros tipos de objetos (Date, classes customizadas, etc.)
16629
16629
  return objeto;
16630
16630
  }
16631
- visitarExpressaoArgumentoReferenciaFuncao(expressao) {
16632
- throw new Error('Método não implementado.');
16633
- }
16634
- visitarExpressaoReferenciaFuncao(expressao) {
16635
- throw new Error('Método não implementado.');
16631
+ async visitarExpressaoArgumentoReferenciaFuncao(expressao) {
16632
+ const deleguaFuncao = this.pilhaEscoposExecucao.obterVariavelPorNome(expressao.simboloFuncao.lexema);
16633
+ return deleguaFuncao;
16636
16634
  }
16637
16635
  visitarExpressaoAcessoMetodo(expressao) {
16638
16636
  throw new Error('Método não implementado.');
@@ -16710,6 +16708,10 @@ class InterpretadorBase {
16710
16708
  async visitarExpressaoFimPara(declaracao) {
16711
16709
  throw new Error('Método não implementado.');
16712
16710
  }
16711
+ async visitarExpressaoReferenciaFuncao(expressao) {
16712
+ const deleguaFuncao = this.pilhaEscoposExecucao.obterReferenciaFuncao(expressao.idFuncao);
16713
+ return deleguaFuncao;
16714
+ }
16713
16715
  /**
16714
16716
  * Chama o método `aceitar` de um construto ou declaração, passando o
16715
16717
  * próprio interpretador como parâmetro.
@@ -17774,6 +17776,7 @@ class InterpretadorBase {
17774
17776
  visitarDeclaracaoDefinicaoFuncao(declaracao) {
17775
17777
  const funcao = new estruturas_1.DeleguaFuncao(declaracao.simbolo.lexema, declaracao.funcao);
17776
17778
  this.pilhaEscoposExecucao.definirVariavel(declaracao.simbolo.lexema, funcao);
17779
+ this.pilhaEscoposExecucao.registrarReferenciaFuncao(declaracao.id, funcao);
17777
17780
  return Promise.resolve({
17778
17781
  declaracao: funcao,
17779
17782
  });
@@ -19031,10 +19034,6 @@ class Interpretador extends interpretador_base_1.InterpretadorBase {
19031
19034
  async visitarExpressaoAjuda(expressao) {
19032
19035
  return Promise.resolve((0, comum_1.pontoEntradaAjuda)(expressao.funcao, expressao.valor));
19033
19036
  }
19034
- async visitarExpressaoArgumentoReferenciaFuncao(expressao) {
19035
- const deleguaFuncao = this.pilhaEscoposExecucao.obterVariavelPorNome(expressao.simboloFuncao.lexema);
19036
- return deleguaFuncao;
19037
- }
19038
19037
  async visitarExpressaoAtribuicaoPorIndice(expressao) {
19039
19038
  const promises = await Promise.all([
19040
19039
  this.avaliar(expressao.objeto),
@@ -19201,10 +19200,6 @@ class Interpretador extends interpretador_base_1.InterpretadorBase {
19201
19200
  visitarExpressaoParaCada(expressao) {
19202
19201
  return this.logicaComumExecucaoParaCada(expressao, true);
19203
19202
  }
19204
- async visitarExpressaoReferenciaFuncao(expressao) {
19205
- const deleguaFuncao = this.pilhaEscoposExecucao.obterReferenciaFuncao(expressao.idFuncao);
19206
- return deleguaFuncao;
19207
- }
19208
19203
  async visitarExpressaoRetornar(declaracao) {
19209
19204
  let valor = null;
19210
19205
  if (declaracao.valor !== null && declaracao.valor !== undefined) {
@@ -40767,6 +40762,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
40767
40762
  };
40768
40763
  Object.defineProperty(exports, "__esModule", { value: true });
40769
40764
  exports.TradutorMermaidJs = void 0;
40765
+ const construtos_1 = require("../construtos");
40766
+ const declaracoes_1 = require("../declaracoes");
40770
40767
  const mermaid_1 = require("./mermaid");
40771
40768
  const delegua_1 = __importDefault(require("../tipos-de-simbolos/delegua"));
40772
40769
  /**
@@ -40859,7 +40856,7 @@ class TradutorMermaidJs {
40859
40856
  }
40860
40857
  async visitarDeclaracaoDeExpressao(declaracao) {
40861
40858
  // Verifica se é uma chamada de função
40862
- if (declaracao.expressao.constructor.name === 'Chamada') {
40859
+ if (declaracao.expressao.constructor === construtos_1.Chamada) {
40863
40860
  const chamada = declaracao.expressao;
40864
40861
  const verticesChamada = await this.traduzirChamadaFuncao(declaracao, chamada);
40865
40862
  if (verticesChamada.length > 0) {
@@ -41050,12 +41047,24 @@ class TradutorMermaidJs {
41050
41047
  // Caminho então, normalmente um `Bloco`.
41051
41048
  const verticesEntao = await declaracao.caminhoEntao.aceitar(this);
41052
41049
  vertices = vertices.concat(verticesEntao);
41053
- const ultimaArestaEntao = verticesEntao[verticesEntao.length - 1].destino;
41050
+ const ultimaArestaEntao = verticesEntao.length > 0
41051
+ ? verticesEntao[verticesEntao.length - 1].destino
41052
+ : aresta;
41054
41053
  if (declaracao.caminhoSenao) {
41055
41054
  this.anteriores = [];
41056
- const arestaSenao = new mermaid_1.ArestaFluxograma(declaracao, `Linha${declaracao.caminhoSenao.linha}(senão)`);
41057
- vertices.push(new mermaid_1.VerticeFluxograma(aresta, arestaSenao, 'Não'));
41058
- this.anteriores.push(arestaSenao);
41055
+ // Verifica se é "senão se" ou apenas "senão"
41056
+ const ehSenaoSe = declaracao.caminhoSenao.constructor === declaracoes_1.Se;
41057
+ if (ehSenaoSe) {
41058
+ // Para "senão se", conecta diretamente ao próximo condicional sem nó intermediário
41059
+ this.anteriores.push(aresta);
41060
+ this.ultimaDicaVertice = 'Não';
41061
+ }
41062
+ else {
41063
+ // Para "senão" simples, cria o nó intermediário
41064
+ const arestaSenao = new mermaid_1.ArestaFluxograma(declaracao, `Linha${declaracao.caminhoSenao.linha}(senão)`);
41065
+ vertices.push(new mermaid_1.VerticeFluxograma(aresta, arestaSenao, 'Não'));
41066
+ this.anteriores.push(arestaSenao);
41067
+ }
41059
41068
  const verticesSenao = await declaracao.caminhoSenao.aceitar(this);
41060
41069
  vertices = vertices.concat(verticesSenao);
41061
41070
  }
@@ -41076,8 +41085,80 @@ class TradutorMermaidJs {
41076
41085
  vertices.push(new mermaid_1.VerticeFluxograma(ultimaArestaCorpo, aresta));
41077
41086
  return Promise.resolve(vertices);
41078
41087
  }
41079
- visitarDeclaracaoTente(declaracao) {
41080
- throw new Error('Método não implementado.');
41088
+ async visitarDeclaracaoTente(declaracao) {
41089
+ const texto = `Linha${declaracao.linha}(tente)`;
41090
+ const aresta = new mermaid_1.ArestaFluxograma(declaracao, texto);
41091
+ let vertices = this.logicaComumConexaoArestas(aresta);
41092
+ this.anteriores.push(aresta);
41093
+ // Caminho tente (try)
41094
+ const verticesTente = [];
41095
+ for (const declaracaoTente of declaracao.caminhoTente) {
41096
+ const verticesDeclaracao = await declaracaoTente.aceitar(this);
41097
+ verticesTente.push(...verticesDeclaracao);
41098
+ }
41099
+ vertices = vertices.concat(verticesTente);
41100
+ const ultimaArestaTente = verticesTente.length > 0
41101
+ ? verticesTente[verticesTente.length - 1].destino
41102
+ : aresta;
41103
+ const anterioresAposTente = [];
41104
+ // Caminho pegue (catch) - se existir
41105
+ if (declaracao.caminhoPegue) {
41106
+ this.anteriores = [aresta];
41107
+ const arestaPegue = new mermaid_1.ArestaFluxograma(declaracao, `Linha${declaracao.linha}Pegue(pegue)`);
41108
+ vertices.push(new mermaid_1.VerticeFluxograma(aresta, arestaPegue, 'Erro'));
41109
+ this.anteriores.push(arestaPegue);
41110
+ const verticesPegue = [];
41111
+ if (Array.isArray(declaracao.caminhoPegue)) {
41112
+ for (const declaracaoPegue of declaracao.caminhoPegue) {
41113
+ const verticesDeclaracao = await declaracaoPegue.aceitar(this);
41114
+ verticesPegue.push(...verticesDeclaracao);
41115
+ }
41116
+ }
41117
+ vertices = vertices.concat(verticesPegue);
41118
+ const ultimaArestaPegue = verticesPegue.length > 0
41119
+ ? verticesPegue[verticesPegue.length - 1].destino
41120
+ : arestaPegue;
41121
+ anterioresAposTente.push(ultimaArestaPegue);
41122
+ }
41123
+ // Caminho senão (else) - se existir
41124
+ if (declaracao.caminhoSenao && declaracao.caminhoSenao.length > 0) {
41125
+ this.anteriores = [ultimaArestaTente];
41126
+ const arestaSenao = new mermaid_1.ArestaFluxograma(declaracao, `Linha${declaracao.linha}Senao(senão - sem erro)`);
41127
+ vertices.push(new mermaid_1.VerticeFluxograma(ultimaArestaTente, arestaSenao, 'Sucesso'));
41128
+ this.anteriores.push(arestaSenao);
41129
+ const verticesSenao = [];
41130
+ for (const declaracaoSenao of declaracao.caminhoSenao) {
41131
+ const verticesDeclaracao = await declaracaoSenao.aceitar(this);
41132
+ verticesSenao.push(...verticesDeclaracao);
41133
+ }
41134
+ vertices = vertices.concat(verticesSenao);
41135
+ const ultimaArestaSenao = verticesSenao.length > 0
41136
+ ? verticesSenao[verticesSenao.length - 1].destino
41137
+ : arestaSenao;
41138
+ anterioresAposTente.push(ultimaArestaSenao);
41139
+ }
41140
+ else {
41141
+ // Se não há senão, o caminho de sucesso também continua
41142
+ anterioresAposTente.push(ultimaArestaTente);
41143
+ }
41144
+ // Caminho finalmente (finally) - se existir
41145
+ if (declaracao.caminhoFinalmente && declaracao.caminhoFinalmente.length > 0) {
41146
+ this.anteriores = anterioresAposTente;
41147
+ const arestaFinalmente = new mermaid_1.ArestaFluxograma(declaracao, `Linha${declaracao.linha}Finalmente(finalmente)`);
41148
+ vertices = vertices.concat(this.logicaComumConexaoArestas(arestaFinalmente));
41149
+ this.anteriores.push(arestaFinalmente);
41150
+ const verticesFinalmente = [];
41151
+ for (const declaracaoFinalmente of declaracao.caminhoFinalmente) {
41152
+ const verticesDeclaracao = await declaracaoFinalmente.aceitar(this);
41153
+ verticesFinalmente.push(...verticesDeclaracao);
41154
+ }
41155
+ vertices = vertices.concat(verticesFinalmente);
41156
+ }
41157
+ else {
41158
+ // Se não há finalmente, os anteriores são os caminhos após tente
41159
+ this.anteriores = anterioresAposTente;
41160
+ }
41161
+ return Promise.resolve(vertices);
41081
41162
  }
41082
41163
  visitarDeclaracaoTextoDocumentacao(declaracao) {
41083
41164
  throw new Error('Método não implementado.');
@@ -41120,11 +41201,15 @@ class TradutorMermaidJs {
41120
41201
  async visitarExpressaoAgrupamento(expressao) {
41121
41202
  return await expressao.expressao.aceitar(this);
41122
41203
  }
41123
- visitarExpressaoArgumentoReferenciaFuncao(expressao) {
41124
- throw new Error('Método não implementado.');
41204
+ async visitarExpressaoArgumentoReferenciaFuncao(expressao) {
41205
+ const nomeFuncao = expressao.simboloFuncao.lexema;
41206
+ return Promise.resolve(`referência à função ${nomeFuncao}`);
41125
41207
  }
41126
- visitarExpressaoAtribuicaoPorIndice(expressao) {
41127
- throw new Error('Método não implementado.');
41208
+ async visitarExpressaoAtribuicaoPorIndice(expressao) {
41209
+ const textoObjeto = await expressao.objeto.aceitar(this);
41210
+ const textoIndice = await expressao.indice.aceitar(this);
41211
+ const textoValor = await expressao.valor.aceitar(this);
41212
+ return Promise.resolve(`${textoObjeto} no índice ${textoIndice} recebe: ${textoValor}`);
41128
41213
  }
41129
41214
  visitarExpressaoAtribuicaoPorIndicesMatriz(expressao) {
41130
41215
  throw new Error('Método não implementado.');
@@ -41135,8 +41220,26 @@ class TradutorMermaidJs {
41135
41220
  switch (expressao.operador.tipo) {
41136
41221
  case delegua_1.default.ADICAO:
41137
41222
  return Promise.resolve(`somar ${operandoEsquerdo} e ${operandoDireito}`);
41223
+ case delegua_1.default.SUBTRACAO:
41224
+ return Promise.resolve(`subtrair ${operandoDireito} de ${operandoEsquerdo}`);
41225
+ case delegua_1.default.MULTIPLICACAO:
41226
+ return Promise.resolve(`multiplicar ${operandoEsquerdo} por ${operandoDireito}`);
41227
+ case delegua_1.default.DIVISAO:
41228
+ return Promise.resolve(`dividir ${operandoEsquerdo} por ${operandoDireito}`);
41229
+ case delegua_1.default.MODULO:
41230
+ return Promise.resolve(`resto de ${operandoEsquerdo} dividido por ${operandoDireito}`);
41138
41231
  case delegua_1.default.MENOR:
41139
41232
  return Promise.resolve(`${operandoEsquerdo} for menor que ${operandoDireito}`);
41233
+ case delegua_1.default.MENOR_IGUAL:
41234
+ return Promise.resolve(`${operandoEsquerdo} for menor ou igual a ${operandoDireito}`);
41235
+ case delegua_1.default.MAIOR:
41236
+ return Promise.resolve(`${operandoEsquerdo} for maior que ${operandoDireito}`);
41237
+ case delegua_1.default.MAIOR_IGUAL:
41238
+ return Promise.resolve(`${operandoEsquerdo} for maior ou igual a ${operandoDireito}`);
41239
+ case delegua_1.default.IGUAL_IGUAL:
41240
+ return Promise.resolve(`${operandoEsquerdo} for igual a ${operandoDireito}`);
41241
+ case delegua_1.default.DIFERENTE:
41242
+ return Promise.resolve(`${operandoEsquerdo} for diferente de ${operandoDireito}`);
41140
41243
  }
41141
41244
  return Promise.resolve('');
41142
41245
  }
@@ -41151,8 +41254,12 @@ class TradutorMermaidJs {
41151
41254
  async visitarExpressaoComentario(expressao) {
41152
41255
  return Promise.resolve('');
41153
41256
  }
41154
- visitarExpressaoContinua(declaracao) {
41155
- throw new Error('Método não implementado.');
41257
+ async visitarExpressaoContinua(declaracao) {
41258
+ const texto = `Linha${declaracao.linha}(continua)`;
41259
+ const aresta = new mermaid_1.ArestaFluxograma(declaracao, texto);
41260
+ const vertices = this.logicaComumConexaoArestas(aresta);
41261
+ this.anteriores.push(aresta);
41262
+ return Promise.resolve(vertices);
41156
41263
  }
41157
41264
  async visitarExpressaoDeChamada(expressao) {
41158
41265
  const textoEntidadeChamada = await expressao.entidadeChamada.aceitar(this);
@@ -41175,8 +41282,16 @@ class TradutorMermaidJs {
41175
41282
  const textoValor = await expressao.valor.aceitar(this);
41176
41283
  return Promise.resolve(`${expressao.nome.lexema} em ${textoObjeto} recebe ${textoValor}`);
41177
41284
  }
41178
- visitarExpressaoFuncaoConstruto(expressao) {
41179
- throw new Error('Método não implementado.');
41285
+ async visitarExpressaoFuncaoConstruto(expressao) {
41286
+ let texto = 'função anônima';
41287
+ if (expressao.parametros && expressao.parametros.length > 0) {
41288
+ const parametros = expressao.parametros.map(p => p.nome.lexema).join(', ');
41289
+ texto += `(${parametros})`;
41290
+ }
41291
+ else {
41292
+ texto += '()';
41293
+ }
41294
+ return Promise.resolve(texto);
41180
41295
  }
41181
41296
  async visitarExpressaoDeVariavel(expressao) {
41182
41297
  return Promise.resolve(expressao.simbolo.lexema);
@@ -41194,17 +41309,41 @@ class TradutorMermaidJs {
41194
41309
  }
41195
41310
  return Promise.resolve(texto);
41196
41311
  }
41197
- visitarExpressaoExpressaoRegular(expressao) {
41198
- throw new Error('Método não implementado.');
41312
+ async visitarExpressaoExpressaoRegular(expressao) {
41313
+ // Representa a expressão regular como texto para o fluxograma
41314
+ const padraoRegex = expressao.valor ? String(expressao.valor) : expressao.simbolo.lexema;
41315
+ return Promise.resolve(`expressão regular: /${padraoRegex}/`);
41199
41316
  }
41200
- visitarExpressaoFalhar(expressao) {
41201
- throw new Error('Método não implementado.');
41317
+ async visitarExpressaoFalhar(expressao) {
41318
+ let texto = `Linha${expressao.linha}(falhar`;
41319
+ if (expressao.explicacao) {
41320
+ const textoExplicacao = await expressao.explicacao.aceitar(this);
41321
+ texto += `: ${textoExplicacao}`;
41322
+ }
41323
+ texto += ')';
41324
+ const aresta = new mermaid_1.ArestaFluxograma(expressao, texto);
41325
+ const vertices = this.logicaComumConexaoArestas(aresta);
41326
+ this.anteriores.push(aresta);
41327
+ return Promise.resolve(vertices);
41202
41328
  }
41203
41329
  visitarExpressaoFimPara(declaracao) {
41204
41330
  throw new Error('Método não implementado.');
41205
41331
  }
41206
- visitarExpressaoFormatacaoEscrita(declaracao) {
41207
- throw new Error('Método não implementado.');
41332
+ async visitarExpressaoFormatacaoEscrita(declaracao) {
41333
+ const textoExpressao = await declaracao.expressao.aceitar(this);
41334
+ let formato = textoExpressao;
41335
+ // Adiciona informações de formatação se especificadas
41336
+ const partes = [textoExpressao];
41337
+ if (declaracao.espacos > 0) {
41338
+ partes.push(`${declaracao.espacos} espaços`);
41339
+ }
41340
+ if (declaracao.casasDecimais > 0) {
41341
+ partes.push(`${declaracao.casasDecimais} casas decimais`);
41342
+ }
41343
+ if (partes.length > 1) {
41344
+ formato = `${partes[0]} (${partes.slice(1).join(', ')})`;
41345
+ }
41346
+ return Promise.resolve(formato);
41208
41347
  }
41209
41348
  async visitarExpressaoIsto(expressao) {
41210
41349
  return Promise.resolve('this');
@@ -41227,11 +41366,20 @@ class TradutorMermaidJs {
41227
41366
  return Promise.resolve(String(expressao.valor));
41228
41367
  }
41229
41368
  }
41230
- visitarExpressaoLogica(expressao) {
41231
- throw new Error('Método não implementado.');
41369
+ async visitarExpressaoLogica(expressao) {
41370
+ const operandoEsquerdo = await expressao.esquerda.aceitar(this);
41371
+ const operandoDireito = await expressao.direita.aceitar(this);
41372
+ switch (expressao.operador.tipo) {
41373
+ case delegua_1.default.E:
41374
+ return Promise.resolve(`${operandoEsquerdo} e ${operandoDireito}`);
41375
+ case delegua_1.default.OU:
41376
+ return Promise.resolve(`${operandoEsquerdo} ou ${operandoDireito}`);
41377
+ }
41378
+ return Promise.resolve('');
41232
41379
  }
41233
- visitarExpressaoReferenciaFuncao(expressao) {
41234
- throw new Error('Método não implementado.');
41380
+ async visitarExpressaoReferenciaFuncao(expressao) {
41381
+ const nomeFuncao = expressao.simboloFuncao.lexema;
41382
+ return Promise.resolve(`@${nomeFuncao}`);
41235
41383
  }
41236
41384
  async visitarExpressaoRetornar(expressao) {
41237
41385
  let texto = `Linha${expressao.linha}(retorna`;
@@ -41247,17 +41395,31 @@ class TradutorMermaidJs {
41247
41395
  async visitarExpressaoSeparador(expressao) {
41248
41396
  return Promise.resolve(`${expressao.conteudo} `);
41249
41397
  }
41250
- visitarExpressaoSuper(expressao) {
41251
- throw new Error('Método não implementado.');
41398
+ async visitarExpressaoSuper(expressao) {
41399
+ return Promise.resolve('super');
41252
41400
  }
41253
- visitarExpressaoSustar(declaracao) {
41254
- throw new Error('Método não implementado.');
41401
+ async visitarExpressaoSustar(declaracao) {
41402
+ const texto = `Linha${declaracao.linha}(sustar)`;
41403
+ const aresta = new mermaid_1.ArestaFluxograma(declaracao, texto);
41404
+ const vertices = this.logicaComumConexaoArestas(aresta);
41405
+ this.anteriores.push(aresta);
41406
+ return Promise.resolve(vertices);
41255
41407
  }
41256
- visitarExpressaoTupla(expressao) {
41257
- throw new Error('Método não implementado.');
41408
+ async visitarExpressaoTupla(expressao) {
41409
+ // Tupla base pode ter um único valor
41410
+ if (expressao.valor !== undefined) {
41411
+ return Promise.resolve(`tupla(${expressao.valor})`);
41412
+ }
41413
+ // Se não houver valor, tupla vazia
41414
+ return Promise.resolve('tupla()');
41258
41415
  }
41259
- visitarExpressaoTuplaN(expressao) {
41260
- throw new Error('Método não implementado.');
41416
+ async visitarExpressaoTuplaN(expressao) {
41417
+ const valores = [];
41418
+ for (const elemento of expressao.elementos) {
41419
+ const valorTraduzido = await elemento.aceitar(this);
41420
+ valores.push(valorTraduzido);
41421
+ }
41422
+ return Promise.resolve(`tupla(${valores.join(', ')})`);
41261
41423
  }
41262
41424
  visitarExpressaoTipoDe(expressao) {
41263
41425
  throw new Error('Método não implementado.');
@@ -41293,7 +41455,7 @@ class TradutorMermaidJs {
41293
41455
  */
41294
41456
  async traduzirChamadaFuncao(declaracaoExpressao, chamada) {
41295
41457
  // Verifica se é uma chamada a uma função conhecida
41296
- if (chamada.entidadeChamada.constructor.name === 'Variavel') {
41458
+ if (chamada.entidadeChamada.constructor === construtos_1.Variavel) {
41297
41459
  const variavel = chamada.entidadeChamada;
41298
41460
  const nomeFuncao = variavel.simbolo.lexema;
41299
41461
  if (this.declaracoesFuncoes[nomeFuncao]) {
@@ -41357,11 +41519,12 @@ class TradutorMermaidJs {
41357
41519
  });
41358
41520
  }
41359
41521
  async logicaComumTraducaoVarEConst(declaracaoVarOuConst, textoInicial) {
41522
+ let adicional = '';
41360
41523
  if (declaracaoVarOuConst.inicializador) {
41361
- textoInicial += `, iniciada com: ${await declaracaoVarOuConst.inicializador.aceitar(this)}`;
41524
+ adicional += `, iniciada com: ${await declaracaoVarOuConst.inicializador.aceitar(this)}`;
41362
41525
  }
41363
- textoInicial += ')';
41364
- return Promise.resolve(textoInicial);
41526
+ adicional += ')';
41527
+ return Promise.resolve(adicional);
41365
41528
  }
41366
41529
  /**
41367
41530
  * Ponto de entrada para a tradução de declarações em um fluxograma
@@ -41420,7 +41583,7 @@ class TradutorMermaidJs {
41420
41583
  }
41421
41584
  exports.TradutorMermaidJs = TradutorMermaidJs;
41422
41585
 
41423
- },{"../tipos-de-simbolos/delegua":212,"./mermaid":222}],236:[function(require,module,exports){
41586
+ },{"../construtos":62,"../declaracoes":109,"../tipos-de-simbolos/delegua":212,"./mermaid":222}],236:[function(require,module,exports){
41424
41587
  "use strict";
41425
41588
  Object.defineProperty(exports, "__esModule", { value: true });
41426
41589
  exports.TradutorPortugolIpt = void 0;