@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.
Files changed (206) hide show
  1. package/README.md +96 -0
  2. package/fontes/analisador-dicas.d.ts +49 -0
  3. package/fontes/analisador-dicas.d.ts.map +1 -0
  4. package/fontes/analisador-dicas.js +145 -0
  5. package/fontes/analisador-dicas.js.map +1 -0
  6. package/fontes/cache-consultas.d.ts +39 -0
  7. package/fontes/cache-consultas.d.ts.map +1 -0
  8. package/fontes/cache-consultas.js +98 -0
  9. package/fontes/cache-consultas.js.map +1 -0
  10. package/fontes/carregador-lotes.d.ts +64 -0
  11. package/fontes/carregador-lotes.d.ts.map +1 -0
  12. package/fontes/carregador-lotes.js +148 -0
  13. package/fontes/carregador-lotes.js.map +1 -0
  14. package/fontes/carregador-preguicoso.d.ts +34 -0
  15. package/fontes/carregador-preguicoso.d.ts.map +1 -0
  16. package/fontes/carregador-preguicoso.js +157 -0
  17. package/fontes/carregador-preguicoso.js.map +1 -0
  18. package/fontes/colecao.d.ts +74 -0
  19. package/fontes/colecao.d.ts.map +1 -0
  20. package/fontes/colecao.js +374 -0
  21. package/fontes/colecao.js.map +1 -0
  22. package/fontes/construtor-consulta.d.ts +129 -0
  23. package/fontes/construtor-consulta.d.ts.map +1 -0
  24. package/fontes/construtor-consulta.js +446 -0
  25. package/fontes/construtor-consulta.js.map +1 -0
  26. package/fontes/contexto-entidades.d.ts +119 -0
  27. package/fontes/contexto-entidades.d.ts.map +1 -0
  28. package/fontes/contexto-entidades.js +329 -0
  29. package/fontes/contexto-entidades.js.map +1 -0
  30. package/fontes/detector-n-mais-um.d.ts +87 -0
  31. package/fontes/detector-n-mais-um.d.ts.map +1 -0
  32. package/fontes/detector-n-mais-um.js +225 -0
  33. package/fontes/detector-n-mais-um.js.map +1 -0
  34. package/fontes/entidade.d.ts +82 -0
  35. package/fontes/entidade.d.ts.map +1 -0
  36. package/fontes/entidade.js +467 -0
  37. package/fontes/entidade.js.map +1 -0
  38. package/fontes/erros/erro-concorrencia.d.ts +11 -0
  39. package/fontes/erros/erro-concorrencia.d.ts.map +1 -0
  40. package/fontes/erros/erro-concorrencia.js +18 -0
  41. package/fontes/erros/erro-concorrencia.js.map +1 -0
  42. package/fontes/erros/erro-tabela-nao-encontrada.d.ts +4 -0
  43. package/fontes/erros/erro-tabela-nao-encontrada.d.ts.map +1 -0
  44. package/fontes/erros/erro-tabela-nao-encontrada.js +11 -0
  45. package/fontes/erros/erro-tabela-nao-encontrada.js.map +1 -0
  46. package/fontes/erros/erro-validacao.d.ts +9 -0
  47. package/fontes/erros/erro-validacao.d.ts.map +1 -0
  48. package/fontes/erros/erro-validacao.js +13 -0
  49. package/fontes/erros/erro-validacao.js.map +1 -0
  50. package/fontes/erros/index.d.ts +4 -0
  51. package/fontes/erros/index.d.ts.map +1 -0
  52. package/fontes/erros/index.js +20 -0
  53. package/fontes/erros/index.js.map +1 -0
  54. package/fontes/gerenciador-cache.d.ts +87 -0
  55. package/fontes/gerenciador-cache.d.ts.map +1 -0
  56. package/fontes/gerenciador-cache.js +147 -0
  57. package/fontes/gerenciador-cache.js.map +1 -0
  58. package/fontes/ilc/gerador-definicoes.d.ts +13 -0
  59. package/fontes/ilc/gerador-definicoes.d.ts.map +1 -0
  60. package/fontes/ilc/gerador-definicoes.js +96 -0
  61. package/fontes/ilc/gerador-definicoes.js.map +1 -0
  62. package/fontes/ilc/gerador-entidades.d.ts +10 -0
  63. package/fontes/ilc/gerador-entidades.d.ts.map +1 -0
  64. package/fontes/ilc/gerador-entidades.js +318 -0
  65. package/fontes/ilc/gerador-entidades.js.map +1 -0
  66. package/fontes/ilc/leitor-configuracao.d.ts +32 -0
  67. package/fontes/ilc/leitor-configuracao.d.ts.map +1 -0
  68. package/fontes/ilc/leitor-configuracao.js +124 -0
  69. package/fontes/ilc/leitor-configuracao.js.map +1 -0
  70. package/fontes/ilc/migracoes.d.ts +3 -0
  71. package/fontes/ilc/migracoes.d.ts.map +1 -0
  72. package/fontes/ilc/migracoes.js +215 -0
  73. package/fontes/ilc/migracoes.js.map +1 -0
  74. package/fontes/ilc/semeadura.d.ts +2 -0
  75. package/fontes/ilc/semeadura.d.ts.map +1 -0
  76. package/fontes/ilc/semeadura.js +50 -0
  77. package/fontes/ilc/semeadura.js.map +1 -0
  78. package/fontes/indicadores-performance/executor-analise-performance.d.ts +80 -0
  79. package/fontes/indicadores-performance/executor-analise-performance.d.ts.map +1 -0
  80. package/fontes/indicadores-performance/executor-analise-performance.js +212 -0
  81. package/fontes/indicadores-performance/executor-analise-performance.js.map +1 -0
  82. package/fontes/indicadores-performance/index.d.ts +26 -0
  83. package/fontes/indicadores-performance/index.d.ts.map +1 -0
  84. package/fontes/indicadores-performance/index.js +199 -0
  85. package/fontes/indicadores-performance/index.js.map +1 -0
  86. package/fontes/interfaces-tipos/analise-n1-interface.d.ts +13 -0
  87. package/fontes/interfaces-tipos/analise-n1-interface.d.ts.map +1 -0
  88. package/fontes/interfaces-tipos/analise-n1-interface.js +3 -0
  89. package/fontes/interfaces-tipos/analise-n1-interface.js.map +1 -0
  90. package/fontes/interfaces-tipos/atributo-interface.d.ts +30 -0
  91. package/fontes/interfaces-tipos/atributo-interface.d.ts.map +1 -0
  92. package/fontes/interfaces-tipos/atributo-interface.js +3 -0
  93. package/fontes/interfaces-tipos/atributo-interface.js.map +1 -0
  94. package/fontes/interfaces-tipos/coluna-computada-interface.d.ts +16 -0
  95. package/fontes/interfaces-tipos/coluna-computada-interface.d.ts.map +1 -0
  96. package/fontes/interfaces-tipos/coluna-computada-interface.js +3 -0
  97. package/fontes/interfaces-tipos/coluna-computada-interface.js.map +1 -0
  98. package/fontes/interfaces-tipos/configuracao-banco-dados-interface.d.ts +48 -0
  99. package/fontes/interfaces-tipos/configuracao-banco-dados-interface.d.ts.map +1 -0
  100. package/fontes/interfaces-tipos/configuracao-banco-dados-interface.js +3 -0
  101. package/fontes/interfaces-tipos/configuracao-banco-dados-interface.js.map +1 -0
  102. package/fontes/interfaces-tipos/entidade-interface.d.ts +37 -0
  103. package/fontes/interfaces-tipos/entidade-interface.d.ts.map +1 -0
  104. package/fontes/interfaces-tipos/entidade-interface.js +3 -0
  105. package/fontes/interfaces-tipos/entidade-interface.js.map +1 -0
  106. package/fontes/interfaces-tipos/ganchos.d.ts +12 -0
  107. package/fontes/interfaces-tipos/ganchos.d.ts.map +1 -0
  108. package/fontes/interfaces-tipos/ganchos.js +3 -0
  109. package/fontes/interfaces-tipos/ganchos.js.map +1 -0
  110. package/fontes/interfaces-tipos/index.d.ts +17 -0
  111. package/fontes/interfaces-tipos/index.d.ts.map +1 -0
  112. package/fontes/interfaces-tipos/index.js +33 -0
  113. package/fontes/interfaces-tipos/index.js.map +1 -0
  114. package/fontes/interfaces-tipos/indice-interface.d.ts +16 -0
  115. package/fontes/interfaces-tipos/indice-interface.d.ts.map +1 -0
  116. package/fontes/interfaces-tipos/indice-interface.js +3 -0
  117. package/fontes/interfaces-tipos/indice-interface.js.map +1 -0
  118. package/fontes/interfaces-tipos/informacao-consulta-interface.d.ts +12 -0
  119. package/fontes/interfaces-tipos/informacao-consulta-interface.d.ts.map +1 -0
  120. package/fontes/interfaces-tipos/informacao-consulta-interface.js +3 -0
  121. package/fontes/interfaces-tipos/informacao-consulta-interface.js.map +1 -0
  122. package/fontes/interfaces-tipos/muito-para-muitos-interface.d.ts +33 -0
  123. package/fontes/interfaces-tipos/muito-para-muitos-interface.d.ts.map +1 -0
  124. package/fontes/interfaces-tipos/muito-para-muitos-interface.js +3 -0
  125. package/fontes/interfaces-tipos/muito-para-muitos-interface.js.map +1 -0
  126. package/fontes/interfaces-tipos/opcoes-serializacao-interface.d.ts +14 -0
  127. package/fontes/interfaces-tipos/opcoes-serializacao-interface.d.ts.map +1 -0
  128. package/fontes/interfaces-tipos/opcoes-serializacao-interface.js +3 -0
  129. package/fontes/interfaces-tipos/opcoes-serializacao-interface.js.map +1 -0
  130. package/fontes/interfaces-tipos/polimorfico-interface.d.ts +32 -0
  131. package/fontes/interfaces-tipos/polimorfico-interface.d.ts.map +1 -0
  132. package/fontes/interfaces-tipos/polimorfico-interface.js +3 -0
  133. package/fontes/interfaces-tipos/polimorfico-interface.js.map +1 -0
  134. package/fontes/interfaces-tipos/relacionamento-interface.d.ts +23 -0
  135. package/fontes/interfaces-tipos/relacionamento-interface.d.ts.map +1 -0
  136. package/fontes/interfaces-tipos/relacionamento-interface.js +3 -0
  137. package/fontes/interfaces-tipos/relacionamento-interface.js.map +1 -0
  138. package/fontes/interfaces-tipos/restricao-interface.d.ts +14 -0
  139. package/fontes/interfaces-tipos/restricao-interface.d.ts.map +1 -0
  140. package/fontes/interfaces-tipos/restricao-interface.js +3 -0
  141. package/fontes/interfaces-tipos/restricao-interface.js.map +1 -0
  142. package/fontes/interfaces-tipos/semente-interface.d.ts +7 -0
  143. package/fontes/interfaces-tipos/semente-interface.d.ts.map +1 -0
  144. package/fontes/interfaces-tipos/semente-interface.js +3 -0
  145. package/fontes/interfaces-tipos/semente-interface.js.map +1 -0
  146. package/fontes/interfaces-tipos/tabela-interface.d.ts +12 -0
  147. package/fontes/interfaces-tipos/tabela-interface.d.ts.map +1 -0
  148. package/fontes/interfaces-tipos/tabela-interface.js +3 -0
  149. package/fontes/interfaces-tipos/tabela-interface.js.map +1 -0
  150. package/fontes/interfaces-tipos/transacao-interface.d.ts +35 -0
  151. package/fontes/interfaces-tipos/transacao-interface.d.ts.map +1 -0
  152. package/fontes/interfaces-tipos/transacao-interface.js +3 -0
  153. package/fontes/interfaces-tipos/transacao-interface.js.map +1 -0
  154. package/fontes/migracoes/executor-migracoes.d.ts +14 -0
  155. package/fontes/migracoes/executor-migracoes.d.ts.map +1 -0
  156. package/fontes/migracoes/executor-migracoes.js +177 -0
  157. package/fontes/migracoes/executor-migracoes.js.map +1 -0
  158. package/fontes/migracoes/gerador-migracoes.d.ts +15 -0
  159. package/fontes/migracoes/gerador-migracoes.d.ts.map +1 -0
  160. package/fontes/migracoes/gerador-migracoes.js +108 -0
  161. package/fontes/migracoes/gerador-migracoes.js.map +1 -0
  162. package/fontes/migracoes/migracao.d.ts +35 -0
  163. package/fontes/migracoes/migracao.d.ts.map +1 -0
  164. package/fontes/migracoes/migracao.js +66 -0
  165. package/fontes/migracoes/migracao.js.map +1 -0
  166. package/fontes/migracoes/semeador.d.ts +18 -0
  167. package/fontes/migracoes/semeador.d.ts.map +1 -0
  168. package/fontes/migracoes/semeador.js +109 -0
  169. package/fontes/migracoes/semeador.js.map +1 -0
  170. package/fontes/rastreador-mudancas.d.ts +27 -0
  171. package/fontes/rastreador-mudancas.d.ts.map +1 -0
  172. package/fontes/rastreador-mudancas.js +94 -0
  173. package/fontes/rastreador-mudancas.js.map +1 -0
  174. package/fontes/relacionamento.d.ts +11 -0
  175. package/fontes/relacionamento.d.ts.map +1 -0
  176. package/fontes/relacionamento.js +15 -0
  177. package/fontes/relacionamento.js.map +1 -0
  178. package/fontes/roteador-bancos.d.ts +50 -0
  179. package/fontes/roteador-bancos.d.ts.map +1 -0
  180. package/fontes/roteador-bancos.js +90 -0
  181. package/fontes/roteador-bancos.js.map +1 -0
  182. package/fontes/serializador.d.ts +46 -0
  183. package/fontes/serializador.d.ts.map +1 -0
  184. package/fontes/serializador.js +79 -0
  185. package/fontes/serializador.js.map +1 -0
  186. package/fontes/taquigrafia.d.ts +41 -0
  187. package/fontes/taquigrafia.d.ts.map +1 -0
  188. package/fontes/taquigrafia.js +96 -0
  189. package/fontes/taquigrafia.js.map +1 -0
  190. package/fontes/tipos.d.ts +3 -0
  191. package/fontes/tipos.d.ts.map +1 -0
  192. package/fontes/tipos.js +3 -0
  193. package/fontes/tipos.js.map +1 -0
  194. package/fontes/transacao.d.ts +81 -0
  195. package/fontes/transacao.d.ts.map +1 -0
  196. package/fontes/transacao.js +243 -0
  197. package/fontes/transacao.js.map +1 -0
  198. package/fontes/validacoes/validador.d.ts +19 -0
  199. package/fontes/validacoes/validador.d.ts.map +1 -0
  200. package/fontes/validacoes/validador.js +157 -0
  201. package/fontes/validacoes/validador.js.map +1 -0
  202. package/index.d.ts +36 -0
  203. package/index.d.ts.map +1 -0
  204. package/index.js +59 -0
  205. package/index.js.map +1 -0
  206. package/package.json +55 -0
@@ -0,0 +1,9 @@
1
+ export interface ErroValidacao {
2
+ campo: string;
3
+ mensagem: string;
4
+ }
5
+ export declare class ErroDeValidacao extends Error {
6
+ erros: ErroValidacao[];
7
+ constructor(erros: ErroValidacao[]);
8
+ }
9
+ //# sourceMappingURL=erro-validacao.d.ts.map
@@ -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,4 @@
1
+ export * from './erro-tabela-nao-encontrada';
2
+ export * from './erro-validacao';
3
+ export * from './erro-concorrencia';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -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"}