@designliquido/delegua-entidades 0.0.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/README.md +96 -0
- package/fontes/analisador-dicas.d.ts +49 -0
- package/fontes/analisador-dicas.d.ts.map +1 -0
- package/fontes/analisador-dicas.js +145 -0
- package/fontes/analisador-dicas.js.map +1 -0
- package/fontes/cache-consultas.d.ts +39 -0
- package/fontes/cache-consultas.d.ts.map +1 -0
- package/fontes/cache-consultas.js +98 -0
- package/fontes/cache-consultas.js.map +1 -0
- package/fontes/carregador-lotes.d.ts +64 -0
- package/fontes/carregador-lotes.d.ts.map +1 -0
- package/fontes/carregador-lotes.js +148 -0
- package/fontes/carregador-lotes.js.map +1 -0
- package/fontes/carregador-preguicoso.d.ts +34 -0
- package/fontes/carregador-preguicoso.d.ts.map +1 -0
- package/fontes/carregador-preguicoso.js +157 -0
- package/fontes/carregador-preguicoso.js.map +1 -0
- package/fontes/colecao.d.ts +74 -0
- package/fontes/colecao.d.ts.map +1 -0
- package/fontes/colecao.js +374 -0
- package/fontes/colecao.js.map +1 -0
- package/fontes/construtor-consulta.d.ts +129 -0
- package/fontes/construtor-consulta.d.ts.map +1 -0
- package/fontes/construtor-consulta.js +446 -0
- package/fontes/construtor-consulta.js.map +1 -0
- package/fontes/contexto-entidades.d.ts +119 -0
- package/fontes/contexto-entidades.d.ts.map +1 -0
- package/fontes/contexto-entidades.js +329 -0
- package/fontes/contexto-entidades.js.map +1 -0
- package/fontes/detector-n-mais-um.d.ts +87 -0
- package/fontes/detector-n-mais-um.d.ts.map +1 -0
- package/fontes/detector-n-mais-um.js +225 -0
- package/fontes/detector-n-mais-um.js.map +1 -0
- package/fontes/entidade.d.ts +82 -0
- package/fontes/entidade.d.ts.map +1 -0
- package/fontes/entidade.js +467 -0
- package/fontes/entidade.js.map +1 -0
- package/fontes/erros/erro-concorrencia.d.ts +11 -0
- package/fontes/erros/erro-concorrencia.d.ts.map +1 -0
- package/fontes/erros/erro-concorrencia.js +18 -0
- package/fontes/erros/erro-concorrencia.js.map +1 -0
- package/fontes/erros/erro-tabela-nao-encontrada.d.ts +4 -0
- package/fontes/erros/erro-tabela-nao-encontrada.d.ts.map +1 -0
- package/fontes/erros/erro-tabela-nao-encontrada.js +11 -0
- package/fontes/erros/erro-tabela-nao-encontrada.js.map +1 -0
- package/fontes/erros/erro-validacao.d.ts +9 -0
- package/fontes/erros/erro-validacao.d.ts.map +1 -0
- package/fontes/erros/erro-validacao.js +13 -0
- package/fontes/erros/erro-validacao.js.map +1 -0
- package/fontes/erros/index.d.ts +4 -0
- package/fontes/erros/index.d.ts.map +1 -0
- package/fontes/erros/index.js +20 -0
- package/fontes/erros/index.js.map +1 -0
- package/fontes/gerenciador-cache.d.ts +87 -0
- package/fontes/gerenciador-cache.d.ts.map +1 -0
- package/fontes/gerenciador-cache.js +147 -0
- package/fontes/gerenciador-cache.js.map +1 -0
- package/fontes/ilc/gerador-definicoes.d.ts +13 -0
- package/fontes/ilc/gerador-definicoes.d.ts.map +1 -0
- package/fontes/ilc/gerador-definicoes.js +96 -0
- package/fontes/ilc/gerador-definicoes.js.map +1 -0
- package/fontes/ilc/gerador-entidades.d.ts +10 -0
- package/fontes/ilc/gerador-entidades.d.ts.map +1 -0
- package/fontes/ilc/gerador-entidades.js +318 -0
- package/fontes/ilc/gerador-entidades.js.map +1 -0
- package/fontes/ilc/leitor-configuracao.d.ts +32 -0
- package/fontes/ilc/leitor-configuracao.d.ts.map +1 -0
- package/fontes/ilc/leitor-configuracao.js +124 -0
- package/fontes/ilc/leitor-configuracao.js.map +1 -0
- package/fontes/ilc/migracoes.d.ts +3 -0
- package/fontes/ilc/migracoes.d.ts.map +1 -0
- package/fontes/ilc/migracoes.js +215 -0
- package/fontes/ilc/migracoes.js.map +1 -0
- package/fontes/ilc/semeadura.d.ts +2 -0
- package/fontes/ilc/semeadura.d.ts.map +1 -0
- package/fontes/ilc/semeadura.js +50 -0
- package/fontes/ilc/semeadura.js.map +1 -0
- package/fontes/indicadores-performance/executor-analise-performance.d.ts +80 -0
- package/fontes/indicadores-performance/executor-analise-performance.d.ts.map +1 -0
- package/fontes/indicadores-performance/executor-analise-performance.js +212 -0
- package/fontes/indicadores-performance/executor-analise-performance.js.map +1 -0
- package/fontes/indicadores-performance/index.d.ts +26 -0
- package/fontes/indicadores-performance/index.d.ts.map +1 -0
- package/fontes/indicadores-performance/index.js +199 -0
- package/fontes/indicadores-performance/index.js.map +1 -0
- package/fontes/interfaces-tipos/analise-n1-interface.d.ts +13 -0
- package/fontes/interfaces-tipos/analise-n1-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/analise-n1-interface.js +3 -0
- package/fontes/interfaces-tipos/analise-n1-interface.js.map +1 -0
- package/fontes/interfaces-tipos/atributo-interface.d.ts +30 -0
- package/fontes/interfaces-tipos/atributo-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/atributo-interface.js +3 -0
- package/fontes/interfaces-tipos/atributo-interface.js.map +1 -0
- package/fontes/interfaces-tipos/coluna-computada-interface.d.ts +16 -0
- package/fontes/interfaces-tipos/coluna-computada-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/coluna-computada-interface.js +3 -0
- package/fontes/interfaces-tipos/coluna-computada-interface.js.map +1 -0
- package/fontes/interfaces-tipos/configuracao-banco-dados-interface.d.ts +48 -0
- package/fontes/interfaces-tipos/configuracao-banco-dados-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/configuracao-banco-dados-interface.js +3 -0
- package/fontes/interfaces-tipos/configuracao-banco-dados-interface.js.map +1 -0
- package/fontes/interfaces-tipos/entidade-interface.d.ts +37 -0
- package/fontes/interfaces-tipos/entidade-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/entidade-interface.js +3 -0
- package/fontes/interfaces-tipos/entidade-interface.js.map +1 -0
- package/fontes/interfaces-tipos/ganchos.d.ts +12 -0
- package/fontes/interfaces-tipos/ganchos.d.ts.map +1 -0
- package/fontes/interfaces-tipos/ganchos.js +3 -0
- package/fontes/interfaces-tipos/ganchos.js.map +1 -0
- package/fontes/interfaces-tipos/index.d.ts +17 -0
- package/fontes/interfaces-tipos/index.d.ts.map +1 -0
- package/fontes/interfaces-tipos/index.js +33 -0
- package/fontes/interfaces-tipos/index.js.map +1 -0
- package/fontes/interfaces-tipos/indice-interface.d.ts +16 -0
- package/fontes/interfaces-tipos/indice-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/indice-interface.js +3 -0
- package/fontes/interfaces-tipos/indice-interface.js.map +1 -0
- package/fontes/interfaces-tipos/informacao-consulta-interface.d.ts +12 -0
- package/fontes/interfaces-tipos/informacao-consulta-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/informacao-consulta-interface.js +3 -0
- package/fontes/interfaces-tipos/informacao-consulta-interface.js.map +1 -0
- package/fontes/interfaces-tipos/muito-para-muitos-interface.d.ts +33 -0
- package/fontes/interfaces-tipos/muito-para-muitos-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/muito-para-muitos-interface.js +3 -0
- package/fontes/interfaces-tipos/muito-para-muitos-interface.js.map +1 -0
- package/fontes/interfaces-tipos/opcoes-serializacao-interface.d.ts +14 -0
- package/fontes/interfaces-tipos/opcoes-serializacao-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/opcoes-serializacao-interface.js +3 -0
- package/fontes/interfaces-tipos/opcoes-serializacao-interface.js.map +1 -0
- package/fontes/interfaces-tipos/polimorfico-interface.d.ts +32 -0
- package/fontes/interfaces-tipos/polimorfico-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/polimorfico-interface.js +3 -0
- package/fontes/interfaces-tipos/polimorfico-interface.js.map +1 -0
- package/fontes/interfaces-tipos/relacionamento-interface.d.ts +23 -0
- package/fontes/interfaces-tipos/relacionamento-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/relacionamento-interface.js +3 -0
- package/fontes/interfaces-tipos/relacionamento-interface.js.map +1 -0
- package/fontes/interfaces-tipos/restricao-interface.d.ts +14 -0
- package/fontes/interfaces-tipos/restricao-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/restricao-interface.js +3 -0
- package/fontes/interfaces-tipos/restricao-interface.js.map +1 -0
- package/fontes/interfaces-tipos/semente-interface.d.ts +7 -0
- package/fontes/interfaces-tipos/semente-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/semente-interface.js +3 -0
- package/fontes/interfaces-tipos/semente-interface.js.map +1 -0
- package/fontes/interfaces-tipos/tabela-interface.d.ts +12 -0
- package/fontes/interfaces-tipos/tabela-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/tabela-interface.js +3 -0
- package/fontes/interfaces-tipos/tabela-interface.js.map +1 -0
- package/fontes/interfaces-tipos/transacao-interface.d.ts +35 -0
- package/fontes/interfaces-tipos/transacao-interface.d.ts.map +1 -0
- package/fontes/interfaces-tipos/transacao-interface.js +3 -0
- package/fontes/interfaces-tipos/transacao-interface.js.map +1 -0
- package/fontes/migracoes/executor-migracoes.d.ts +14 -0
- package/fontes/migracoes/executor-migracoes.d.ts.map +1 -0
- package/fontes/migracoes/executor-migracoes.js +177 -0
- package/fontes/migracoes/executor-migracoes.js.map +1 -0
- package/fontes/migracoes/gerador-migracoes.d.ts +15 -0
- package/fontes/migracoes/gerador-migracoes.d.ts.map +1 -0
- package/fontes/migracoes/gerador-migracoes.js +108 -0
- package/fontes/migracoes/gerador-migracoes.js.map +1 -0
- package/fontes/migracoes/migracao.d.ts +35 -0
- package/fontes/migracoes/migracao.d.ts.map +1 -0
- package/fontes/migracoes/migracao.js +66 -0
- package/fontes/migracoes/migracao.js.map +1 -0
- package/fontes/migracoes/semeador.d.ts +18 -0
- package/fontes/migracoes/semeador.d.ts.map +1 -0
- package/fontes/migracoes/semeador.js +109 -0
- package/fontes/migracoes/semeador.js.map +1 -0
- package/fontes/rastreador-mudancas.d.ts +27 -0
- package/fontes/rastreador-mudancas.d.ts.map +1 -0
- package/fontes/rastreador-mudancas.js +94 -0
- package/fontes/rastreador-mudancas.js.map +1 -0
- package/fontes/relacionamento.d.ts +11 -0
- package/fontes/relacionamento.d.ts.map +1 -0
- package/fontes/relacionamento.js +15 -0
- package/fontes/relacionamento.js.map +1 -0
- package/fontes/roteador-bancos.d.ts +50 -0
- package/fontes/roteador-bancos.d.ts.map +1 -0
- package/fontes/roteador-bancos.js +90 -0
- package/fontes/roteador-bancos.js.map +1 -0
- package/fontes/serializador.d.ts +46 -0
- package/fontes/serializador.d.ts.map +1 -0
- package/fontes/serializador.js +79 -0
- package/fontes/serializador.js.map +1 -0
- package/fontes/taquigrafia.d.ts +41 -0
- package/fontes/taquigrafia.d.ts.map +1 -0
- package/fontes/taquigrafia.js +96 -0
- package/fontes/taquigrafia.js.map +1 -0
- package/fontes/tipos.d.ts +3 -0
- package/fontes/tipos.d.ts.map +1 -0
- package/fontes/tipos.js +3 -0
- package/fontes/tipos.js.map +1 -0
- package/fontes/transacao.d.ts +81 -0
- package/fontes/transacao.d.ts.map +1 -0
- package/fontes/transacao.js +243 -0
- package/fontes/transacao.js.map +1 -0
- package/fontes/validacoes/validador.d.ts +19 -0
- package/fontes/validacoes/validador.d.ts.map +1 -0
- package/fontes/validacoes/validador.js +157 -0
- package/fontes/validacoes/validador.js.map +1 -0
- package/index.d.ts +36 -0
- package/index.d.ts.map +1 -0
- package/index.js +59 -0
- package/index.js.map +1 -0
- package/package.json +55 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"erro-validacao.d.ts","sourceRoot":"","sources":["../../../fontes/erros/erro-validacao.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,eAAgB,SAAQ,KAAK;IACtC,KAAK,EAAE,aAAa,EAAE,CAAC;gBAEX,KAAK,EAAE,aAAa,EAAE;CAMrC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ErroDeValidacao = void 0;
|
|
4
|
+
class ErroDeValidacao extends Error {
|
|
5
|
+
constructor(erros) {
|
|
6
|
+
const mensagens = erros.map(e => `${e.campo}: ${e.mensagem}`).join('; ');
|
|
7
|
+
super(`Erro de validação: ${mensagens}`);
|
|
8
|
+
this.name = 'ErroDeValidacao';
|
|
9
|
+
this.erros = erros;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.ErroDeValidacao = ErroDeValidacao;
|
|
13
|
+
//# sourceMappingURL=erro-validacao.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"erro-validacao.js","sourceRoot":"","sources":["../../../fontes/erros/erro-validacao.ts"],"names":[],"mappings":";;;AAKA,MAAa,eAAgB,SAAQ,KAAK;IAGtC,YAAY,KAAsB;QAC9B,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzE,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;CACJ;AATD,0CASC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../fontes/erros/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./erro-tabela-nao-encontrada"), exports);
|
|
18
|
+
__exportStar(require("./erro-validacao"), exports);
|
|
19
|
+
__exportStar(require("./erro-concorrencia"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/erros/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+DAA6C;AAC7C,mDAAiC;AACjC,sDAAoC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interface para opções de cache (L2).
|
|
3
|
+
*/
|
|
4
|
+
export interface OpcoesCacheL2 {
|
|
5
|
+
/** Tempo de vida em milissegundos (TTL) */
|
|
6
|
+
ttl?: number;
|
|
7
|
+
/** Tamanho máximo do cache em número de registros */
|
|
8
|
+
tamanhMaximo?: number;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Gerenciador de cache com suporte a cache de primeira nível (identity map)
|
|
12
|
+
* e segunda nível (L2) opcional.
|
|
13
|
+
*
|
|
14
|
+
* Primera nivel (Identity Map): Garante que apenas uma instância de cada
|
|
15
|
+
* objeto existe na memória durante uma operação.
|
|
16
|
+
*
|
|
17
|
+
* Segunda nivel (L2): Cache persistente entre operações, com TTL e limite de tamanho.
|
|
18
|
+
*/
|
|
19
|
+
export declare class GerenciadorCache {
|
|
20
|
+
/** Cache de primeira nível: entidade -> id -> objeto */
|
|
21
|
+
private cacheNivel1;
|
|
22
|
+
/** Cache de segunda nível: chave composta -> valor com timestamp */
|
|
23
|
+
private cacheNivel2;
|
|
24
|
+
/** Opções de cache L2 */
|
|
25
|
+
private opcoes;
|
|
26
|
+
/**
|
|
27
|
+
* Cria uma nova instância do gerenciador de cache.
|
|
28
|
+
* @param opcoes Opções de configuração do cache L2 (opcionais)
|
|
29
|
+
*/
|
|
30
|
+
constructor(opcoes?: OpcoesCacheL2);
|
|
31
|
+
/**
|
|
32
|
+
* Obtém um objeto do cache de primeira nível (identity map).
|
|
33
|
+
* @param nomeEntidade Nome da entidade
|
|
34
|
+
* @param id Identificador do objeto
|
|
35
|
+
* @returns Objeto em cache ou undefined
|
|
36
|
+
*/
|
|
37
|
+
obterNivel1(nomeEntidade: string, id: any): any | undefined;
|
|
38
|
+
/**
|
|
39
|
+
* Armazena um objeto no cache de primeira nível (identity map).
|
|
40
|
+
* @param nomeEntidade Nome da entidade
|
|
41
|
+
* @param id Identificador do objeto
|
|
42
|
+
* @param valor Objeto a armazenar
|
|
43
|
+
*/
|
|
44
|
+
armazenarNivel1(nomeEntidade: string, id: any, valor: any): void;
|
|
45
|
+
/**
|
|
46
|
+
* Obtém um objeto do cache de segunda nível.
|
|
47
|
+
* @param nomeEntidade Nome da entidade
|
|
48
|
+
* @param id Identificador do objeto
|
|
49
|
+
* @returns Objeto em cache ou undefined (se expirou)
|
|
50
|
+
*/
|
|
51
|
+
obterNivel2(nomeEntidade: string, id: any): any | undefined;
|
|
52
|
+
/**
|
|
53
|
+
* Armazena um objeto no cache de segunda nível.
|
|
54
|
+
* @param nomeEntidade Nome da entidade
|
|
55
|
+
* @param id Identificador do objeto
|
|
56
|
+
* @param valor Objeto a armazenar
|
|
57
|
+
*/
|
|
58
|
+
armazenarNivel2(nomeEntidade: string, id: any, valor: any): void;
|
|
59
|
+
/**
|
|
60
|
+
* Remove um objeto do cache (ambos os níveis).
|
|
61
|
+
* @param nomeEntidade Nome da entidade
|
|
62
|
+
* @param id Identificador do objeto
|
|
63
|
+
*/
|
|
64
|
+
remover(nomeEntidade: string, id: any): void;
|
|
65
|
+
/**
|
|
66
|
+
* Limpa todo o cache de uma entidade.
|
|
67
|
+
* @param nomeEntidade Nome da entidade (opcional, limpa tudo se não fornecido)
|
|
68
|
+
*/
|
|
69
|
+
limparEntidade(nomeEntidade?: string): void;
|
|
70
|
+
/**
|
|
71
|
+
* Limpa todo o cache.
|
|
72
|
+
*/
|
|
73
|
+
limparTudo(): void;
|
|
74
|
+
/**
|
|
75
|
+
* Retorna estatísticas do cache.
|
|
76
|
+
*/
|
|
77
|
+
obterEstatisticas(): {
|
|
78
|
+
nivel1: number;
|
|
79
|
+
nivel2: number;
|
|
80
|
+
total: number;
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* Gera chave composta para o cache L2.
|
|
84
|
+
*/
|
|
85
|
+
private _gerarChave;
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=gerenciador-cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gerenciador-cache.d.ts","sourceRoot":"","sources":["../../fontes/gerenciador-cache.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,2CAA2C;IAC3C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAkBD;;;;;;;;GAQG;AACH,qBAAa,gBAAgB;IACzB,wDAAwD;IACxD,OAAO,CAAC,WAAW,CAAyC;IAE5D,oEAAoE;IACpE,OAAO,CAAC,WAAW,CAAwC;IAE3D,yBAAyB;IACzB,OAAO,CAAC,MAAM,CAAgB;IAE9B;;;OAGG;gBACS,MAAM,CAAC,EAAE,aAAa;IAIlC;;;;;OAKG;IACH,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,GAAG,GAAG,GAAG,SAAS;IAM3D;;;;;OAKG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAUhE;;;;;OAKG;IACH,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,GAAG,GAAG,GAAG,SAAS;IAe3D;;;;;OAKG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAUhE;;;;OAIG;IACH,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,GAAG,IAAI;IAe5C;;;OAGG;IACH,cAAc,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI;IAiB3C;;OAEG;IACH,UAAU,IAAI,IAAI;IAKlB;;OAEG;IACH,iBAAiB,IAAI;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACjB;IAaD;;OAEG;IACH,OAAO,CAAC,WAAW;CAGtB"}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GerenciadorCache = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Gerenciador de cache com suporte a cache de primeira nível (identity map)
|
|
6
|
+
* e segunda nível (L2) opcional.
|
|
7
|
+
*
|
|
8
|
+
* Primera nivel (Identity Map): Garante que apenas uma instância de cada
|
|
9
|
+
* objeto existe na memória durante uma operação.
|
|
10
|
+
*
|
|
11
|
+
* Segunda nivel (L2): Cache persistente entre operações, com TTL e limite de tamanho.
|
|
12
|
+
*/
|
|
13
|
+
class GerenciadorCache {
|
|
14
|
+
/**
|
|
15
|
+
* Cria uma nova instância do gerenciador de cache.
|
|
16
|
+
* @param opcoes Opções de configuração do cache L2 (opcionais)
|
|
17
|
+
*/
|
|
18
|
+
constructor(opcoes) {
|
|
19
|
+
/** Cache de primeira nível: entidade -> id -> objeto */
|
|
20
|
+
this.cacheNivel1 = new Map();
|
|
21
|
+
/** Cache de segunda nível: chave composta -> valor com timestamp */
|
|
22
|
+
this.cacheNivel2 = new Map();
|
|
23
|
+
this.opcoes = opcoes || { ttl: 60000, tamanhMaximo: 1000 };
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Obtém um objeto do cache de primeira nível (identity map).
|
|
27
|
+
* @param nomeEntidade Nome da entidade
|
|
28
|
+
* @param id Identificador do objeto
|
|
29
|
+
* @returns Objeto em cache ou undefined
|
|
30
|
+
*/
|
|
31
|
+
obterNivel1(nomeEntidade, id) {
|
|
32
|
+
const map = this.cacheNivel1.get(nomeEntidade);
|
|
33
|
+
if (!map)
|
|
34
|
+
return undefined;
|
|
35
|
+
return map.get(id);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Armazena um objeto no cache de primeira nível (identity map).
|
|
39
|
+
* @param nomeEntidade Nome da entidade
|
|
40
|
+
* @param id Identificador do objeto
|
|
41
|
+
* @param valor Objeto a armazenar
|
|
42
|
+
*/
|
|
43
|
+
armazenarNivel1(nomeEntidade, id, valor) {
|
|
44
|
+
if (!this.cacheNivel1.has(nomeEntidade)) {
|
|
45
|
+
this.cacheNivel1.set(nomeEntidade, new Map());
|
|
46
|
+
}
|
|
47
|
+
this.cacheNivel1.get(nomeEntidade).set(id, valor);
|
|
48
|
+
// Também armazena no cache L2
|
|
49
|
+
this.armazenarNivel2(nomeEntidade, id, valor);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Obtém um objeto do cache de segunda nível.
|
|
53
|
+
* @param nomeEntidade Nome da entidade
|
|
54
|
+
* @param id Identificador do objeto
|
|
55
|
+
* @returns Objeto em cache ou undefined (se expirou)
|
|
56
|
+
*/
|
|
57
|
+
obterNivel2(nomeEntidade, id) {
|
|
58
|
+
const chave = this._gerarChave(nomeEntidade, id);
|
|
59
|
+
const entrada = this.cacheNivel2.get(chave);
|
|
60
|
+
if (!entrada)
|
|
61
|
+
return undefined;
|
|
62
|
+
// Verifica se expirou (TTL)
|
|
63
|
+
if (this.opcoes.ttl && Date.now() - entrada.timestamp > this.opcoes.ttl) {
|
|
64
|
+
this.cacheNivel2.delete(chave);
|
|
65
|
+
return undefined;
|
|
66
|
+
}
|
|
67
|
+
return entrada.valor;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Armazena um objeto no cache de segunda nível.
|
|
71
|
+
* @param nomeEntidade Nome da entidade
|
|
72
|
+
* @param id Identificador do objeto
|
|
73
|
+
* @param valor Objeto a armazenar
|
|
74
|
+
*/
|
|
75
|
+
armazenarNivel2(nomeEntidade, id, valor) {
|
|
76
|
+
if (!this.opcoes.tamanhMaximo || this.cacheNivel2.size < this.opcoes.tamanhMaximo) {
|
|
77
|
+
const chave = this._gerarChave(nomeEntidade, id);
|
|
78
|
+
this.cacheNivel2.set(chave, {
|
|
79
|
+
valor,
|
|
80
|
+
timestamp: Date.now()
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Remove um objeto do cache (ambos os níveis).
|
|
86
|
+
* @param nomeEntidade Nome da entidade
|
|
87
|
+
* @param id Identificador do objeto
|
|
88
|
+
*/
|
|
89
|
+
remover(nomeEntidade, id) {
|
|
90
|
+
// Remove do cache L1
|
|
91
|
+
const map = this.cacheNivel1.get(nomeEntidade);
|
|
92
|
+
if (map) {
|
|
93
|
+
map.delete(id);
|
|
94
|
+
if (map.size === 0) {
|
|
95
|
+
this.cacheNivel1.delete(nomeEntidade);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
// Remove do cache L2
|
|
99
|
+
const chave = this._gerarChave(nomeEntidade, id);
|
|
100
|
+
this.cacheNivel2.delete(chave);
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Limpa todo o cache de uma entidade.
|
|
104
|
+
* @param nomeEntidade Nome da entidade (opcional, limpa tudo se não fornecido)
|
|
105
|
+
*/
|
|
106
|
+
limparEntidade(nomeEntidade) {
|
|
107
|
+
if (!nomeEntidade) {
|
|
108
|
+
this.cacheNivel1.clear();
|
|
109
|
+
this.cacheNivel2.clear();
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
// Remove do cache L1
|
|
113
|
+
this.cacheNivel1.delete(nomeEntidade);
|
|
114
|
+
// Remove do cache L2
|
|
115
|
+
const chaves = Array.from(this.cacheNivel2.keys()).filter(chave => chave.startsWith(`${nomeEntidade}:`));
|
|
116
|
+
chaves.forEach(chave => this.cacheNivel2.delete(chave));
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Limpa todo o cache.
|
|
120
|
+
*/
|
|
121
|
+
limparTudo() {
|
|
122
|
+
this.cacheNivel1.clear();
|
|
123
|
+
this.cacheNivel2.clear();
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Retorna estatísticas do cache.
|
|
127
|
+
*/
|
|
128
|
+
obterEstatisticas() {
|
|
129
|
+
let totalNivel1 = 0;
|
|
130
|
+
this.cacheNivel1.forEach(map => {
|
|
131
|
+
totalNivel1 += map.size;
|
|
132
|
+
});
|
|
133
|
+
return {
|
|
134
|
+
nivel1: totalNivel1,
|
|
135
|
+
nivel2: this.cacheNivel2.size,
|
|
136
|
+
total: totalNivel1 + this.cacheNivel2.size
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Gera chave composta para o cache L2.
|
|
141
|
+
*/
|
|
142
|
+
_gerarChave(nomeEntidade, id) {
|
|
143
|
+
return `${nomeEntidade}:${String(id)}`;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
exports.GerenciadorCache = GerenciadorCache;
|
|
147
|
+
//# sourceMappingURL=gerenciador-cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gerenciador-cache.js","sourceRoot":"","sources":["../../fontes/gerenciador-cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Gerador de Definições Delégua
|
|
4
|
+
*
|
|
5
|
+
* Lê o manifesto `manifesto-definicoes.json` e gera os arquivos `.delegua`
|
|
6
|
+
* na pasta `definicoes/`, marcando cada classe com `@definicao` para que
|
|
7
|
+
* a extensão VSCode reconheça as superclasses fornecidas por este pacote.
|
|
8
|
+
*
|
|
9
|
+
* Uso:
|
|
10
|
+
* yarn gerar-definicoes
|
|
11
|
+
*/
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=gerador-definicoes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gerador-definicoes.d.ts","sourceRoot":"","sources":["../../../fontes/ilc/gerador-definicoes.ts"],"names":[],"mappings":";AAEA;;;;;;;;;GASG"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
/**
|
|
4
|
+
* Gerador de Definições Delégua
|
|
5
|
+
*
|
|
6
|
+
* Lê o manifesto `manifesto-definicoes.json` e gera os arquivos `.delegua`
|
|
7
|
+
* na pasta `definicoes/`, marcando cada classe com `@definicao` para que
|
|
8
|
+
* a extensão VSCode reconheça as superclasses fornecidas por este pacote.
|
|
9
|
+
*
|
|
10
|
+
* Uso:
|
|
11
|
+
* yarn gerar-definicoes
|
|
12
|
+
*/
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
const fs_1 = __importDefault(require("fs"));
|
|
18
|
+
const path_1 = __importDefault(require("path"));
|
|
19
|
+
const DIRETORIO_DEFINICOES = path_1.default.join(process.cwd(), "definicoes");
|
|
20
|
+
const CAMINHO_MANIFESTO = path_1.default.join(__dirname, "manifesto-definicoes.json");
|
|
21
|
+
function carregarManifesto() {
|
|
22
|
+
if (!fs_1.default.existsSync(CAMINHO_MANIFESTO)) {
|
|
23
|
+
console.error(`Manifesto não encontrado: ${CAMINHO_MANIFESTO}`);
|
|
24
|
+
process.exit(1);
|
|
25
|
+
}
|
|
26
|
+
return JSON.parse(fs_1.default.readFileSync(CAMINHO_MANIFESTO, "utf-8"));
|
|
27
|
+
}
|
|
28
|
+
function gerarAssinaturaMetodo(metodo) {
|
|
29
|
+
const parametros = metodo.parametros
|
|
30
|
+
.map((p) => `${p.nome}: ${p.tipo}`)
|
|
31
|
+
.join(", ");
|
|
32
|
+
const retorno = metodo.retorno ? `: ${metodo.retorno}` : "";
|
|
33
|
+
return ` ${metodo.nome}(${parametros})${retorno}`;
|
|
34
|
+
}
|
|
35
|
+
function gerarBlocoComentario(texto, recuo = "") {
|
|
36
|
+
const linhas = texto.split(". ").join(".\n").split("\n");
|
|
37
|
+
return `${recuo}/**\n${linhas.map((l) => `${recuo} * ${l}`).join("\n")}\n${recuo} */`;
|
|
38
|
+
}
|
|
39
|
+
function gerarConteudoClasse(classe) {
|
|
40
|
+
const partes = [];
|
|
41
|
+
// Comentário da classe
|
|
42
|
+
if (classe.descricao) {
|
|
43
|
+
partes.push(gerarBlocoComentario(classe.descricao));
|
|
44
|
+
}
|
|
45
|
+
// Decorador @definicao
|
|
46
|
+
partes.push("@definicao");
|
|
47
|
+
// Cabeçalho da classe
|
|
48
|
+
partes.push(`classe estrangeira ${classe.nome} {`);
|
|
49
|
+
// Propriedades
|
|
50
|
+
if (classe.propriedades.length > 0) {
|
|
51
|
+
for (const propriedade of classe.propriedades) {
|
|
52
|
+
partes.push(` ${propriedade.nome}: ${propriedade.tipo}`);
|
|
53
|
+
}
|
|
54
|
+
partes.push("");
|
|
55
|
+
}
|
|
56
|
+
// Métodos
|
|
57
|
+
const blocoMetodos = [];
|
|
58
|
+
for (const metodo of classe.metodos) {
|
|
59
|
+
if (metodo.descricao) {
|
|
60
|
+
blocoMetodos.push(gerarBlocoComentario(metodo.descricao, " "));
|
|
61
|
+
}
|
|
62
|
+
blocoMetodos.push(gerarAssinaturaMetodo(metodo));
|
|
63
|
+
}
|
|
64
|
+
if (blocoMetodos.length > 0) {
|
|
65
|
+
partes.push(blocoMetodos.join("\n"));
|
|
66
|
+
}
|
|
67
|
+
partes.push("}");
|
|
68
|
+
return partes.join("\n");
|
|
69
|
+
}
|
|
70
|
+
function gerarArquivoDefinicao(classe) {
|
|
71
|
+
const nomeArquivo = `${classe.nome.toLowerCase()}.delegua`;
|
|
72
|
+
const caminho = path_1.default.join(DIRETORIO_DEFINICOES, nomeArquivo);
|
|
73
|
+
const cabecalho = [
|
|
74
|
+
`/**`,
|
|
75
|
+
` * Definição gerada automaticamente — não edite manualmente.`,
|
|
76
|
+
` * Gerado por: yarn gerar-definicoes`,
|
|
77
|
+
` * Fonte: fontes/ilc/manifesto-definicoes.json`,
|
|
78
|
+
` */`,
|
|
79
|
+
].join("\n");
|
|
80
|
+
const conteudo = `${cabecalho}\n\n${gerarConteudoClasse(classe)}\n`;
|
|
81
|
+
fs_1.default.writeFileSync(caminho, conteudo, "utf-8");
|
|
82
|
+
console.log(` Gerado: definicoes/${nomeArquivo}`);
|
|
83
|
+
}
|
|
84
|
+
function principal() {
|
|
85
|
+
console.log("Gerando definições Delégua...\n");
|
|
86
|
+
if (!fs_1.default.existsSync(DIRETORIO_DEFINICOES)) {
|
|
87
|
+
fs_1.default.mkdirSync(DIRETORIO_DEFINICOES, { recursive: true });
|
|
88
|
+
}
|
|
89
|
+
const manifesto = carregarManifesto();
|
|
90
|
+
for (const classe of manifesto.classes) {
|
|
91
|
+
gerarArquivoDefinicao(classe);
|
|
92
|
+
}
|
|
93
|
+
console.log(`\n${manifesto.classes.length} definição(ões) gerada(s) em definicoes/`);
|
|
94
|
+
}
|
|
95
|
+
principal();
|
|
96
|
+
//# sourceMappingURL=gerador-definicoes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gerador-definicoes.js","sourceRoot":"","sources":["../../../fontes/ilc/gerador-definicoes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* CLI para Gerador de Modelos (Delégua)
|
|
4
|
+
*
|
|
5
|
+
* Uso:
|
|
6
|
+
* yarn gerar-modelo Usuario nome:texto email:texto idade:numero
|
|
7
|
+
* yarn gerar-modelo Usuario nome:texto --pertenceA Empresa --temMuitos Pedidos
|
|
8
|
+
*/
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=gerador-entidades.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gerador-entidades.d.ts","sourceRoot":"","sources":["../../../fontes/ilc/gerador-entidades.ts"],"names":[],"mappings":";AAEA;;;;;;GAMG"}
|