@semacode/cli 1.5.35 → 1.5.37

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 (487) hide show
  1. package/AGENTS.md +1 -1
  2. package/AGENT_CONTEXT_PACK.json +130 -12
  3. package/LICENSE +1 -2
  4. package/README.md +3 -3
  5. package/SEMA_BRIEF.curto.txt +9 -6
  6. package/SEMA_BRIEF.md +250 -205
  7. package/SEMA_BRIEF.micro.txt +10 -6
  8. package/SEMA_INDEX.json +2196 -1926
  9. package/dist/agentContext.d.ts +19 -0
  10. package/dist/agentContext.js +26 -0
  11. package/dist/agentContext.js.map +1 -0
  12. package/dist/agentContextPack.d.ts +3 -0
  13. package/dist/agentContextPack.js +403 -0
  14. package/dist/agentContextPack.js.map +1 -0
  15. package/dist/agentContextTipos.d.ts +96 -0
  16. package/dist/agentContextTipos.js +55 -0
  17. package/dist/agentContextTipos.js.map +1 -0
  18. package/dist/agentEntryPoints.d.ts +13 -0
  19. package/dist/agentEntryPoints.js +422 -0
  20. package/dist/agentEntryPoints.js.map +1 -0
  21. package/dist/authorAnalise.d.ts +15 -0
  22. package/dist/authorAnalise.js +210 -0
  23. package/dist/authorAnalise.js.map +1 -0
  24. package/dist/authorPoliticas.d.ts +37 -0
  25. package/dist/authorPoliticas.js +340 -0
  26. package/dist/authorPoliticas.js.map +1 -0
  27. package/dist/billing/index.d.ts +1 -1
  28. package/dist/billing/index.js +6 -2
  29. package/dist/billing/index.js.map +1 -1
  30. package/dist/bridge.js +2 -0
  31. package/dist/bridge.js.map +1 -1
  32. package/dist/carregarModulos.d.ts +2 -0
  33. package/dist/carregarModulos.js +9 -0
  34. package/dist/carregarModulos.js.map +1 -0
  35. package/dist/cliArgs.d.ts +6 -0
  36. package/dist/cliArgs.js +70 -0
  37. package/dist/cliArgs.js.map +1 -0
  38. package/dist/contexto.js +2 -0
  39. package/dist/contexto.js.map +1 -1
  40. package/dist/controleComercialSupabase.js.map +1 -1
  41. package/dist/controleComercialSupabaseAdmin.js.map +1 -1
  42. package/dist/controleComercialSupabaseCadastro.js.map +1 -1
  43. package/dist/controleComercialSupabaseConsumo.js.map +1 -1
  44. package/dist/controleComercialSupabaseConta.js.map +1 -1
  45. package/dist/controleComercialSupabaseProfiles.js.map +1 -1
  46. package/dist/dev/index.js +2 -0
  47. package/dist/dev/index.js.map +1 -1
  48. package/dist/dev/watcher.d.ts +1 -0
  49. package/dist/dev/watcher.js +4 -0
  50. package/dist/dev/watcher.js.map +1 -0
  51. package/dist/docs/resolver.d.ts +1 -0
  52. package/dist/docs/resolver.js +4 -0
  53. package/dist/docs/resolver.js.map +1 -0
  54. package/dist/docs.d.ts +2 -56
  55. package/dist/docs.js +5 -502
  56. package/dist/docs.js.map +1 -1
  57. package/dist/docs.part01.d.ts +78 -0
  58. package/dist/docs.part01.js +347 -0
  59. package/dist/docs.part01.js.map +1 -0
  60. package/dist/docs.part02.d.ts +20 -0
  61. package/dist/docs.part02.js +181 -0
  62. package/dist/docs.part02.js.map +1 -0
  63. package/dist/doctorCommand.d.ts +27 -0
  64. package/dist/doctorCommand.js +160 -0
  65. package/dist/doctorCommand.js.map +1 -0
  66. package/dist/drift.contrato.d.ts +23 -0
  67. package/dist/drift.contrato.js +33 -0
  68. package/dist/drift.contrato.js.map +1 -0
  69. package/dist/drift.d.ts +13 -227
  70. package/dist/drift.js +16 -3924
  71. package/dist/drift.js.map +1 -1
  72. package/dist/drift.part01.d.ts +252 -0
  73. package/dist/drift.part01.js +183 -0
  74. package/dist/drift.part01.js.map +1 -0
  75. package/dist/drift.part02.d.ts +30 -0
  76. package/dist/drift.part02.js +342 -0
  77. package/dist/drift.part02.js.map +1 -0
  78. package/dist/drift.part03.d.ts +26 -0
  79. package/dist/drift.part03.js +343 -0
  80. package/dist/drift.part03.js.map +1 -0
  81. package/dist/drift.part04.d.ts +46 -0
  82. package/dist/drift.part04.js +354 -0
  83. package/dist/drift.part04.js.map +1 -0
  84. package/dist/drift.part05.d.ts +47 -0
  85. package/dist/drift.part05.js +353 -0
  86. package/dist/drift.part05.js.map +1 -0
  87. package/dist/drift.part06.d.ts +17 -0
  88. package/dist/drift.part06.js +381 -0
  89. package/dist/drift.part06.js.map +1 -0
  90. package/dist/drift.part07.d.ts +48 -0
  91. package/dist/drift.part07.js +377 -0
  92. package/dist/drift.part07.js.map +1 -0
  93. package/dist/drift.part08.d.ts +26 -0
  94. package/dist/drift.part08.js +333 -0
  95. package/dist/drift.part08.js.map +1 -0
  96. package/dist/drift.part09.d.ts +22 -0
  97. package/dist/drift.part09.js +322 -0
  98. package/dist/drift.part09.js.map +1 -0
  99. package/dist/drift.part10.d.ts +11 -0
  100. package/dist/drift.part10.js +116 -0
  101. package/dist/drift.part10.js.map +1 -0
  102. package/dist/drift.part11.d.ts +3 -0
  103. package/dist/drift.part11.js +320 -0
  104. package/dist/drift.part11.js.map +1 -0
  105. package/dist/drift.part12.d.ts +17 -0
  106. package/dist/drift.part12.js +289 -0
  107. package/dist/drift.part12.js.map +1 -0
  108. package/dist/drift.part13.d.ts +17 -0
  109. package/dist/drift.part13.js +86 -0
  110. package/dist/drift.part13.js.map +1 -0
  111. package/dist/drift.part14.d.ts +44 -0
  112. package/dist/drift.part14.js +402 -0
  113. package/dist/drift.part14.js.map +1 -0
  114. package/dist/driftOrcamento.d.ts +69 -0
  115. package/dist/driftOrcamento.js +280 -0
  116. package/dist/driftOrcamento.js.map +1 -0
  117. package/dist/execucoesExternas.d.ts +10 -0
  118. package/dist/execucoesExternas.js +51 -0
  119. package/dist/execucoesExternas.js.map +1 -0
  120. package/dist/exemplosOficiais.d.ts +10 -0
  121. package/dist/exemplosOficiais.js +63 -0
  122. package/dist/exemplosOficiais.js.map +1 -0
  123. package/dist/fsGovernado.d.ts +10 -0
  124. package/dist/fsGovernado.js +50 -0
  125. package/dist/fsGovernado.js.map +1 -0
  126. package/dist/geracaoCore.d.ts +64 -0
  127. package/dist/geracaoCore.js +381 -0
  128. package/dist/geracaoCore.js.map +1 -0
  129. package/dist/iaPrompts.d.ts +6 -0
  130. package/dist/iaPrompts.js +318 -0
  131. package/dist/iaPrompts.js.map +1 -0
  132. package/dist/importador.d.ts +9 -31
  133. package/dist/importador.js +11 -2938
  134. package/dist/importador.js.map +1 -1
  135. package/dist/importador.part01.d.ts +150 -0
  136. package/dist/importador.part01.js +256 -0
  137. package/dist/importador.part01.js.map +1 -0
  138. package/dist/importador.part02.d.ts +25 -0
  139. package/dist/importador.part02.js +359 -0
  140. package/dist/importador.part02.js.map +1 -0
  141. package/dist/importador.part03.d.ts +53 -0
  142. package/dist/importador.part03.js +366 -0
  143. package/dist/importador.part03.js.map +1 -0
  144. package/dist/importador.part04.d.ts +26 -0
  145. package/dist/importador.part04.js +374 -0
  146. package/dist/importador.part04.js.map +1 -0
  147. package/dist/importador.part05.d.ts +28 -0
  148. package/dist/importador.part05.js +340 -0
  149. package/dist/importador.part05.js.map +1 -0
  150. package/dist/importador.part06.d.ts +8 -0
  151. package/dist/importador.part06.js +327 -0
  152. package/dist/importador.part06.js.map +1 -0
  153. package/dist/importador.part07.d.ts +23 -0
  154. package/dist/importador.part07.js +300 -0
  155. package/dist/importador.part07.js.map +1 -0
  156. package/dist/importador.part08.d.ts +12 -0
  157. package/dist/importador.part08.js +378 -0
  158. package/dist/importador.part08.js.map +1 -0
  159. package/dist/importador.part09.d.ts +16 -0
  160. package/dist/importador.part09.js +319 -0
  161. package/dist/importador.part09.js.map +1 -0
  162. package/dist/index.d.ts +12 -1
  163. package/dist/index.js +16 -7840
  164. package/dist/index.js.map +1 -1
  165. package/dist/index.part01.d.ts +148 -0
  166. package/dist/index.part01.js +252 -0
  167. package/dist/index.part01.js.map +1 -0
  168. package/dist/index.part02.d.ts +17 -0
  169. package/dist/index.part02.js +344 -0
  170. package/dist/index.part02.js.map +1 -0
  171. package/dist/index.part03.d.ts +59 -0
  172. package/dist/index.part03.js +352 -0
  173. package/dist/index.part03.js.map +1 -0
  174. package/dist/index.part04.d.ts +20 -0
  175. package/dist/index.part04.js +358 -0
  176. package/dist/index.part04.js.map +1 -0
  177. package/dist/index.part05.d.ts +10 -0
  178. package/dist/index.part05.js +370 -0
  179. package/dist/index.part05.js.map +1 -0
  180. package/dist/index.part06.d.ts +14 -0
  181. package/dist/index.part06.js +336 -0
  182. package/dist/index.part06.js.map +1 -0
  183. package/dist/index.part07.d.ts +9 -0
  184. package/dist/index.part07.js +287 -0
  185. package/dist/index.part07.js.map +1 -0
  186. package/dist/index.part08.d.ts +1 -0
  187. package/dist/index.part08.js +206 -0
  188. package/dist/index.part08.js.map +1 -0
  189. package/dist/init/index.js +2 -0
  190. package/dist/init/index.js.map +1 -1
  191. package/dist/init/templates.d.ts +2 -11
  192. package/dist/init/templates.js +4 -659
  193. package/dist/init/templates.js.map +1 -1
  194. package/dist/init/templates.part01.d.ts +11 -0
  195. package/dist/init/templates.part01.js +399 -0
  196. package/dist/init/templates.part01.js.map +1 -0
  197. package/dist/init/templates.part02.d.ts +8 -0
  198. package/dist/init/templates.part02.js +265 -0
  199. package/dist/init/templates.part02.js.map +1 -0
  200. package/dist/initCommand.d.ts +3 -0
  201. package/dist/initCommand.js +41 -0
  202. package/dist/initCommand.js.map +1 -0
  203. package/dist/initTemplatesBackend.d.ts +2 -0
  204. package/dist/initTemplatesBackend.js +127 -0
  205. package/dist/initTemplatesBackend.js.map +1 -0
  206. package/dist/initTemplatesBase.d.ts +9 -0
  207. package/dist/initTemplatesBase.js +79 -0
  208. package/dist/initTemplatesBase.js.map +1 -0
  209. package/dist/initTemplatesFlutter.d.ts +2 -0
  210. package/dist/initTemplatesFlutter.js +185 -0
  211. package/dist/initTemplatesFlutter.js.map +1 -0
  212. package/dist/initTemplatesRuntime.d.ts +2 -0
  213. package/dist/initTemplatesRuntime.js +494 -0
  214. package/dist/initTemplatesRuntime.js.map +1 -0
  215. package/dist/initTemplatesWeb.d.ts +2 -0
  216. package/dist/initTemplatesWeb.js +429 -0
  217. package/dist/initTemplatesWeb.js.map +1 -0
  218. package/dist/mcpInstalarChaveCommand.d.ts +1 -0
  219. package/dist/mcpInstalarChaveCommand.js +141 -0
  220. package/dist/mcpInstalarChaveCommand.js.map +1 -0
  221. package/dist/mcpRemoto.js.map +1 -1
  222. package/dist/mcp_chave.d.ts +1 -0
  223. package/dist/mcp_chave.js +4 -0
  224. package/dist/mcp_chave.js.map +1 -0
  225. package/dist/profileArtefatoBase.d.ts +30 -0
  226. package/dist/profileArtefatoBase.js +129 -0
  227. package/dist/profileArtefatoBase.js.map +1 -0
  228. package/dist/profileArtefatoValidadores.d.ts +9 -0
  229. package/dist/profileArtefatoValidadores.js +287 -0
  230. package/dist/profileArtefatoValidadores.js.map +1 -0
  231. package/dist/profileAuthorCommand.d.ts +6 -0
  232. package/dist/profileAuthorCommand.js +442 -0
  233. package/dist/profileAuthorCommand.js.map +1 -0
  234. package/dist/profileAuthorTipos.d.ts +225 -0
  235. package/dist/profileAuthorTipos.js +6 -0
  236. package/dist/profileAuthorTipos.js.map +1 -0
  237. package/dist/profileCatalogo.d.ts +8 -0
  238. package/dist/profileCatalogo.js +235 -0
  239. package/dist/profileCatalogo.js.map +1 -0
  240. package/dist/profileCommand.d.ts +33 -0
  241. package/dist/profileCommand.js +256 -0
  242. package/dist/profileCommand.js.map +1 -0
  243. package/dist/profileOrquestracao.d.ts +33 -0
  244. package/dist/profileOrquestracao.js +53 -0
  245. package/dist/profileOrquestracao.js.map +1 -0
  246. package/dist/profileRegras.d.ts +19 -0
  247. package/dist/profileRegras.js +219 -0
  248. package/dist/profileRegras.js.map +1 -0
  249. package/dist/profileRulePacks.d.ts +3 -0
  250. package/dist/profileRulePacks.js +334 -0
  251. package/dist/profileRulePacks.js.map +1 -0
  252. package/dist/profiles/validate.d.ts +1 -0
  253. package/dist/profiles/validate.js +4 -0
  254. package/dist/profiles/validate.js.map +1 -0
  255. package/dist/projeto.d.ts +4 -53
  256. package/dist/projeto.js +5 -649
  257. package/dist/projeto.js.map +1 -1
  258. package/dist/projetoBusca.d.ts +7 -0
  259. package/dist/projetoBusca.js +142 -0
  260. package/dist/projetoBusca.js.map +1 -0
  261. package/dist/projetoCarregar.d.ts +2 -0
  262. package/dist/projetoCarregar.js +50 -0
  263. package/dist/projetoCarregar.js.map +1 -0
  264. package/dist/projetoConfig.d.ts +10 -0
  265. package/dist/projetoConfig.js +89 -0
  266. package/dist/projetoConfig.js.map +1 -0
  267. package/dist/projetoLegado.d.ts +3 -0
  268. package/dist/projetoLegado.js +175 -0
  269. package/dist/projetoLegado.js.map +1 -0
  270. package/dist/projetoOrigens.d.ts +6 -0
  271. package/dist/projetoOrigens.js +185 -0
  272. package/dist/projetoOrigens.js.map +1 -0
  273. package/dist/projetoResolucao.d.ts +8 -0
  274. package/dist/projetoResolucao.js +43 -0
  275. package/dist/projetoResolucao.js.map +1 -0
  276. package/dist/projetoTipos.d.ts +43 -0
  277. package/dist/projetoTipos.js +4 -0
  278. package/dist/projetoTipos.js.map +1 -0
  279. package/dist/runnerValidacaoRemota.js.map +1 -1
  280. package/dist/runnerValidacaoRemotaBateria.js +2 -0
  281. package/dist/runnerValidacaoRemotaBateria.js.map +1 -1
  282. package/dist/runnerValidacaoRemotaExecucao.js +2 -0
  283. package/dist/runnerValidacaoRemotaExecucao.js.map +1 -1
  284. package/dist/runnerValidacaoRemotaRelatorio.js +2 -0
  285. package/dist/runnerValidacaoRemotaRelatorio.js.map +1 -1
  286. package/dist/runnerValidacaoRemotaSnapshot.js +2 -0
  287. package/dist/runnerValidacaoRemotaSnapshot.js.map +1 -1
  288. package/dist/runnerValidacaoRemotaWorkspace.js +2 -0
  289. package/dist/runnerValidacaoRemotaWorkspace.js.map +1 -1
  290. package/dist/sync/index.js +2 -0
  291. package/dist/sync/index.js.map +1 -1
  292. package/dist/textoListas.d.ts +4 -0
  293. package/dist/textoListas.js +22 -0
  294. package/dist/textoListas.js.map +1 -0
  295. package/dist/typescript-http-body.d.ts +12 -0
  296. package/dist/typescript-http-body.js +145 -0
  297. package/dist/typescript-http-body.js.map +1 -0
  298. package/dist/typescript-http-expressoes.d.ts +17 -0
  299. package/dist/typescript-http-expressoes.js +194 -0
  300. package/dist/typescript-http-expressoes.js.map +1 -0
  301. package/dist/typescript-http-modelos.d.ts +45 -0
  302. package/dist/typescript-http-modelos.js +82 -0
  303. package/dist/typescript-http-modelos.js.map +1 -0
  304. package/dist/typescript-http-rotas.d.ts +9 -0
  305. package/dist/typescript-http-rotas.js +129 -0
  306. package/dist/typescript-http-rotas.js.map +1 -0
  307. package/dist/typescript-http-semantica.d.ts +11 -0
  308. package/dist/typescript-http-semantica.js +329 -0
  309. package/dist/typescript-http-semantica.js.map +1 -0
  310. package/dist/typescript-http.d.ts +3 -35
  311. package/dist/typescript-http.js +4 -853
  312. package/dist/typescript-http.js.map +1 -1
  313. package/docs/AGENT_STARTER.md +1 -1
  314. package/docs/agentes-por-capacidade.md +59 -3
  315. package/docs/api.md +21 -21
  316. package/docs/cli.md +3 -3
  317. package/docs/documentacao.md +1 -1
  318. package/docs/env.md +20 -24
  319. package/docs/fluxo-pratico-ia-sema.md +1 -1
  320. package/docs/instalacao-e-primeiro-uso.md +3 -3
  321. package/docs/mcp.md +12 -0
  322. package/docs/pagamento-ponta-a-ponta.md +1 -1
  323. package/docs/persistencia-vendor-first.md +1 -1
  324. package/docs/prompt-base-ia-sema.md +1 -1
  325. package/docs/repositories.md +21 -21
  326. package/docs/seguranca.md +1 -1
  327. package/docs/sintaxe.md +1 -1
  328. package/exemplos/agendamento.sema +1 -1
  329. package/exemplos/assinatura.sema +1 -1
  330. package/exemplos/auditoria.sema +1 -1
  331. package/exemplos/autenticacao.sema +1 -1
  332. package/exemplos/author_obra_comum.sema +1 -1
  333. package/exemplos/author_tema_sensivel.sema +1 -1
  334. package/exemplos/automacao.sema +1 -1
  335. package/exemplos/cadastro_usuario.sema +1 -1
  336. package/exemplos/calculadora.sema +1 -1
  337. package/exemplos/crud_simples.sema +1 -1
  338. package/exemplos/estoque.sema +1 -1
  339. package/exemplos/exportacao.sema +1 -1
  340. package/exemplos/fila.sema +1 -1
  341. package/exemplos/integracao_externa.sema +1 -1
  342. package/exemplos/multi_tenant.sema +1 -1
  343. package/exemplos/notificacao.sema +1 -1
  344. package/exemplos/operacao_estrategia.sema +132 -633
  345. package/exemplos/operacao_estrategia_discovery.sema +220 -0
  346. package/exemplos/operacao_estrategia_fluxo.sema +114 -0
  347. package/exemplos/operacao_estrategia_gates.sema +106 -0
  348. package/exemplos/operacao_estrategia_quarentena.sema +133 -0
  349. package/exemplos/operacao_estrategia_rollout.sema +124 -0
  350. package/exemplos/pagamento.sema +1 -1
  351. package/exemplos/pagamento_dominio.sema +1 -1
  352. package/exemplos/pedido.sema +1 -1
  353. package/exemplos/permissao.sema +1 -1
  354. package/exemplos/persistencia_vendor_first.sema +1 -1
  355. package/exemplos/profile_game.sema +1 -1
  356. package/exemplos/profile_legal.sema +1 -1
  357. package/exemplos/profile_ops.sema +1 -1
  358. package/exemplos/profile_research.sema +1 -1
  359. package/exemplos/profile_software.sema +1 -1
  360. package/exemplos/profile_workflow_n8n.sema +1 -1
  361. package/exemplos/relatorio.sema +1 -1
  362. package/exemplos/replica_analitica_erp.sema +1 -1
  363. package/exemplos/testes_embutidos.sema +1 -1
  364. package/exemplos/tratamento_erro.sema +1 -1
  365. package/exemplos/upload_arquivo.sema +1 -1
  366. package/exemplos/webhook.sema +1 -1
  367. package/llms-full.txt +13 -8
  368. package/llms.txt +12 -7
  369. package/node_modules/@sema/gerador-css/dist/index.d.ts +2 -3
  370. package/node_modules/@sema/gerador-css/dist/index.js +4 -599
  371. package/node_modules/@sema/gerador-css/dist/index.js.map +1 -1
  372. package/node_modules/@sema/gerador-css/dist/index.part01.d.ts +6 -0
  373. package/node_modules/@sema/gerador-css/dist/index.part01.js +49 -0
  374. package/node_modules/@sema/gerador-css/dist/index.part01.js.map +1 -0
  375. package/node_modules/@sema/gerador-css/dist/index.part02.d.ts +3 -0
  376. package/node_modules/@sema/gerador-css/dist/index.part02.js +471 -0
  377. package/node_modules/@sema/gerador-css/dist/index.part02.js.map +1 -0
  378. package/node_modules/@sema/gerador-python/dist/index.d.ts +2 -6
  379. package/node_modules/@sema/gerador-python/dist/index.js +4 -771
  380. package/node_modules/@sema/gerador-python/dist/index.js.map +1 -1
  381. package/node_modules/@sema/gerador-python/dist/index.part01.d.ts +28 -0
  382. package/node_modules/@sema/gerador-python/dist/index.part01.js +383 -0
  383. package/node_modules/@sema/gerador-python/dist/index.part01.js.map +1 -0
  384. package/node_modules/@sema/gerador-python/dist/index.part02.d.ts +20 -0
  385. package/node_modules/@sema/gerador-python/dist/index.part02.js +396 -0
  386. package/node_modules/@sema/gerador-python/dist/index.part02.js.map +1 -0
  387. package/node_modules/@sema/gerador-typescript/dist/index.d.ts +3 -6
  388. package/node_modules/@sema/gerador-typescript/dist/index.js +5 -810
  389. package/node_modules/@sema/gerador-typescript/dist/index.js.map +1 -1
  390. package/node_modules/@sema/gerador-typescript/dist/index.part01.d.ts +25 -0
  391. package/node_modules/@sema/gerador-typescript/dist/index.part01.js +358 -0
  392. package/node_modules/@sema/gerador-typescript/dist/index.part01.js.map +1 -0
  393. package/node_modules/@sema/gerador-typescript/dist/index.part02.d.ts +14 -0
  394. package/node_modules/@sema/gerador-typescript/dist/index.part02.js +405 -0
  395. package/node_modules/@sema/gerador-typescript/dist/index.part02.js.map +1 -0
  396. package/node_modules/@sema/gerador-typescript/dist/index.part03.d.ts +5 -0
  397. package/node_modules/@sema/gerador-typescript/dist/index.part03.js +60 -0
  398. package/node_modules/@sema/gerador-typescript/dist/index.part03.js.map +1 -0
  399. package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.js +2 -0
  400. package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.js.map +1 -1
  401. package/node_modules/@sema/nucleo/dist/diagnosticos/snippets.d.ts +6 -0
  402. package/node_modules/@sema/nucleo/dist/diagnosticos/snippets.js +40 -0
  403. package/node_modules/@sema/nucleo/dist/diagnosticos/snippets.js.map +1 -0
  404. package/node_modules/@sema/nucleo/dist/formatador/index.d.ts +2 -9
  405. package/node_modules/@sema/nucleo/dist/formatador/index.js +4 -467
  406. package/node_modules/@sema/nucleo/dist/formatador/index.js.map +1 -1
  407. package/node_modules/@sema/nucleo/dist/formatador/index.part01.d.ts +38 -0
  408. package/node_modules/@sema/nucleo/dist/formatador/index.part01.js +382 -0
  409. package/node_modules/@sema/nucleo/dist/formatador/index.part01.js.map +1 -0
  410. package/node_modules/@sema/nucleo/dist/formatador/index.part02.d.ts +4 -0
  411. package/node_modules/@sema/nucleo/dist/formatador/index.part02.js +92 -0
  412. package/node_modules/@sema/nucleo/dist/formatador/index.part02.js.map +1 -0
  413. package/node_modules/@sema/nucleo/dist/index.d.ts +2 -0
  414. package/node_modules/@sema/nucleo/dist/index.js +6 -0
  415. package/node_modules/@sema/nucleo/dist/index.js.map +1 -1
  416. package/node_modules/@sema/nucleo/dist/ir/conversor.d.ts +3 -5
  417. package/node_modules/@sema/nucleo/dist/ir/conversor.js +5 -880
  418. package/node_modules/@sema/nucleo/dist/ir/conversor.js.map +1 -1
  419. package/node_modules/@sema/nucleo/dist/ir/conversor.part01.d.ts +30 -0
  420. package/node_modules/@sema/nucleo/dist/ir/conversor.part01.js +398 -0
  421. package/node_modules/@sema/nucleo/dist/ir/conversor.part01.js.map +1 -0
  422. package/node_modules/@sema/nucleo/dist/ir/conversor.part02.d.ts +41 -0
  423. package/node_modules/@sema/nucleo/dist/ir/conversor.part02.js +184 -0
  424. package/node_modules/@sema/nucleo/dist/ir/conversor.part02.js.map +1 -0
  425. package/node_modules/@sema/nucleo/dist/ir/conversor.part03.d.ts +5 -0
  426. package/node_modules/@sema/nucleo/dist/ir/conversor.part03.js +310 -0
  427. package/node_modules/@sema/nucleo/dist/ir/conversor.part03.js.map +1 -0
  428. package/node_modules/@sema/nucleo/dist/parser/parser.d.ts +3 -9
  429. package/node_modules/@sema/nucleo/dist/parser/parser.declaracoes.d.ts +11 -0
  430. package/node_modules/@sema/nucleo/dist/parser/parser.declaracoes.js +150 -0
  431. package/node_modules/@sema/nucleo/dist/parser/parser.declaracoes.js.map +1 -0
  432. package/node_modules/@sema/nucleo/dist/parser/parser.js +5 -768
  433. package/node_modules/@sema/nucleo/dist/parser/parser.js.map +1 -1
  434. package/node_modules/@sema/nucleo/dist/parser/parser.modulo.d.ts +3 -0
  435. package/node_modules/@sema/nucleo/dist/parser/parser.modulo.js +222 -0
  436. package/node_modules/@sema/nucleo/dist/parser/parser.modulo.js.map +1 -0
  437. package/node_modules/@sema/nucleo/dist/parser/parser.part01.d.ts +9 -0
  438. package/node_modules/@sema/nucleo/dist/parser/parser.part01.js +61 -0
  439. package/node_modules/@sema/nucleo/dist/parser/parser.part01.js.map +1 -0
  440. package/node_modules/@sema/nucleo/dist/parser/parser.part02.d.ts +40 -0
  441. package/node_modules/@sema/nucleo/dist/parser/parser.part02.js +373 -0
  442. package/node_modules/@sema/nucleo/dist/parser/parser.part02.js.map +1 -0
  443. package/node_modules/@sema/nucleo/dist/parser/parser.part03.d.ts +4 -0
  444. package/node_modules/@sema/nucleo/dist/parser/parser.part03.js +9 -0
  445. package/node_modules/@sema/nucleo/dist/parser/parser.part03.js.map +1 -0
  446. package/node_modules/@sema/nucleo/dist/persistencia/contratos.js +2 -0
  447. package/node_modules/@sema/nucleo/dist/persistencia/contratos.js.map +1 -1
  448. package/node_modules/@sema/nucleo/dist/semantico/analisador.d.ts +3 -59
  449. package/node_modules/@sema/nucleo/dist/semantico/analisador.js +2 -1682
  450. package/node_modules/@sema/nucleo/dist/semantico/analisador.js.map +1 -1
  451. package/node_modules/@sema/nucleo/dist/semantico/analisador.part01.d.ts +89 -0
  452. package/node_modules/@sema/nucleo/dist/semantico/analisador.part01.js +292 -0
  453. package/node_modules/@sema/nucleo/dist/semantico/analisador.part01.js.map +1 -0
  454. package/node_modules/@sema/nucleo/dist/semantico/analisador.part02.d.ts +29 -0
  455. package/node_modules/@sema/nucleo/dist/semantico/analisador.part02.js +168 -0
  456. package/node_modules/@sema/nucleo/dist/semantico/analisador.part02.js.map +1 -0
  457. package/node_modules/@sema/nucleo/dist/semantico/analisador.part03.d.ts +11 -0
  458. package/node_modules/@sema/nucleo/dist/semantico/analisador.part03.js +185 -0
  459. package/node_modules/@sema/nucleo/dist/semantico/analisador.part03.js.map +1 -0
  460. package/node_modules/@sema/nucleo/dist/semantico/analisador.part04.d.ts +30 -0
  461. package/node_modules/@sema/nucleo/dist/semantico/analisador.part04.js +200 -0
  462. package/node_modules/@sema/nucleo/dist/semantico/analisador.part04.js.map +1 -0
  463. package/node_modules/@sema/nucleo/dist/semantico/analisador.part05.d.ts +6 -0
  464. package/node_modules/@sema/nucleo/dist/semantico/analisador.part05.js +193 -0
  465. package/node_modules/@sema/nucleo/dist/semantico/analisador.part05.js.map +1 -0
  466. package/node_modules/@sema/nucleo/dist/semantico/analisador.part06.d.ts +11 -0
  467. package/node_modules/@sema/nucleo/dist/semantico/analisador.part06.js +208 -0
  468. package/node_modules/@sema/nucleo/dist/semantico/analisador.part06.js.map +1 -0
  469. package/node_modules/@sema/nucleo/dist/semantico/analisador.part07.d.ts +11 -0
  470. package/node_modules/@sema/nucleo/dist/semantico/analisador.part07.js +247 -0
  471. package/node_modules/@sema/nucleo/dist/semantico/analisador.part07.js.map +1 -0
  472. package/node_modules/@sema/nucleo/dist/semantico/analisador.part08.d.ts +3 -0
  473. package/node_modules/@sema/nucleo/dist/semantico/analisador.part08.js +249 -0
  474. package/node_modules/@sema/nucleo/dist/semantico/analisador.part08.js.map +1 -0
  475. package/node_modules/@sema/nucleo/dist/semantico/estruturas.d.ts +2 -106
  476. package/node_modules/@sema/nucleo/dist/semantico/estruturas.js +4 -474
  477. package/node_modules/@sema/nucleo/dist/semantico/estruturas.js.map +1 -1
  478. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part01.d.ts +109 -0
  479. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part01.js +259 -0
  480. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part01.js.map +1 -0
  481. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part02.d.ts +9 -0
  482. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part02.js +223 -0
  483. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part02.js.map +1 -0
  484. package/node_modules/@sema/nucleo/dist/semantico/orcamentoSemantico.d.ts +21 -0
  485. package/node_modules/@sema/nucleo/dist/semantico/orcamentoSemantico.js +40 -0
  486. package/node_modules/@sema/nucleo/dist/semantico/orcamentoSemantico.js.map +1 -0
  487. package/package.json +12 -16
@@ -0,0 +1,381 @@
1
+ // SEMA-GOVERNED: sema.governanca_ia_contexto
2
+ // Descricao: CLI particionada; consulte contratos/sema/governanca_ia_contexto.sema antes de editar.
3
+ import { readFile } from "node:fs/promises";
4
+ import path from "node:path";
5
+ import ts from "typescript";
6
+ import { coletarSuperficiesAngularStandaloneConsumer } from "./angular-consumer-standalone.js";
7
+ import { extrairRotasTypeScriptHttp } from "./typescript-http.js";
8
+ import { arquivoEhRotasAngularConsumer, arquivoEhRotasAngularConsumerRaiz, arquivoEhRotasReactViteConsumer, arquivoEhSuperficieNextJsConsumer, arquivoEhSuperficieReactViteConsumer, extrairRotasAngularConsumer, extrairRotasReactViteConsumer, inferirRotaNextJsConsumer, inferirRotaReactViteConsumer, normalizarRelacaoConsumer, registrarAtribuicaoPrototypeTypeScript, registrarMetodosObjectAssignTypeScript } from "./drift.part05.js";
9
+ import { caminhosSimbolicos, desembrulharExpressaoTypeScript, extrairNomeClassePrototypeTypeScript, extrairTextoLiteral, juntarCaminhoHttp, lerDecorator, listarArquivosRecursivos, registrarSimboloTypeScript } from "./drift.part04.js";
10
+ import { extrairRecursosPersistenciaCodigoVivo, registrarRecursoDrift } from "./drift.part03.js";
11
+ export function inferirConsumerFrameworkPrincipal(fontesLegado, consumerSurfaces, consumerBridges) {
12
+ const arquivos = [
13
+ ...consumerSurfaces.map((item) => item.arquivo),
14
+ ...consumerBridges.map((item) => item.arquivo),
15
+ ].map(normalizarRelacaoConsumer);
16
+ if (arquivos.some((arquivo) => /(?:^|\/)(?:src\/)?app\/(?:(?!api\/).)*?(?:page|layout|loading|error)\.(?:ts|tsx|js|jsx)$/i.test(arquivo))) {
17
+ return "nextjs-consumer";
18
+ }
19
+ if (arquivos.some((arquivo) => /^(?:src\/)?pages\/.+\.(?:ts|tsx|js|jsx)$/i.test(arquivo)
20
+ || /^(?:src\/)?App\.(?:ts|tsx|js|jsx)$/i.test(arquivo)
21
+ || /(?:^|\/)(?:src\/)?(?:app\/)?(?:router|routes)\.(?:ts|tsx|js|jsx)$/i.test(arquivo))) {
22
+ return "react-vite-consumer";
23
+ }
24
+ if (arquivos.some((arquivo) => /(?:^|\/)(?:src\/)?app\.component\.(?:ts|js)$/i.test(arquivo)
25
+ || /(?:^|\/)(?:src\/)?app\/.+\.component\.(?:ts|js)$/i.test(arquivo)
26
+ || /(?:^|\/)(?:src\/)?components\/.+\.component\.(?:ts|js)$/i.test(arquivo)
27
+ || arquivoEhRotasAngularConsumer(arquivo))) {
28
+ return "angular-consumer";
29
+ }
30
+ if (arquivos.some((arquivo) => /(?:^|\/)(?:lib\/)?(?:screens|pages)\/.+\.dart$/i.test(arquivo)
31
+ || /(?:^|\/)(?:lib\/)?(?:router|app_router|routes|main)\.dart$/i.test(arquivo))) {
32
+ return "flutter-consumer";
33
+ }
34
+ for (const framework of ["nextjs-consumer", "react-vite-consumer", "angular-consumer", "flutter-consumer"]) {
35
+ if (fontesLegado.includes(framework)) {
36
+ return framework;
37
+ }
38
+ }
39
+ return null;
40
+ }
41
+ export function extrairColecoesFirebase(arquivo, codigo) {
42
+ const recursos = new Map();
43
+ const registrar = (nome) => {
44
+ if (!nome) {
45
+ return;
46
+ }
47
+ recursos.set(`${nome}:${arquivo}`, {
48
+ origem: "firebase",
49
+ nome,
50
+ arquivo,
51
+ tipo: "colecao",
52
+ });
53
+ };
54
+ for (const match of codigo.matchAll(/\b(?:export\s+)?const\s+\w*COLLECTIONS?\w*\s*=\s*\{([\s\S]*?)\n\}/g)) {
55
+ const corpo = match[1] ?? "";
56
+ for (const valor of corpo.matchAll(/:\s*["'`]([^"'`]+)["'`]/g)) {
57
+ registrar(valor[1]);
58
+ }
59
+ }
60
+ for (const match of codigo.matchAll(/\b(?:db\.)?collection\s*\(\s*["'`]([^"'`]+)["'`]\s*\)/g)) {
61
+ registrar(match[1]);
62
+ }
63
+ for (const match of codigo.matchAll(/\bdoc\s*\(\s*[^,]+,\s*["'`]([^"'`]+)["'`]/g)) {
64
+ registrar(match[1]);
65
+ }
66
+ return [...recursos.values()];
67
+ }
68
+ function destinoReexportacaoTypeScript(diretorio, arquivo, especificador) {
69
+ if (!especificador.startsWith(".")) {
70
+ return undefined;
71
+ }
72
+ const resolvido = path.resolve(path.dirname(arquivo), especificador);
73
+ const extensao = path.extname(resolvido);
74
+ const destinoFonte = extensao
75
+ ? `${resolvido.slice(0, -extensao.length)}.ts`
76
+ : resolvido;
77
+ return path.relative(diretorio, destinoFonte).startsWith("..")
78
+ ? undefined
79
+ : destinoFonte;
80
+ }
81
+ function extrairReexportacaoTypeScript(diretorio, arquivo, node) {
82
+ if (!ts.isExportDeclaration(node) || !node.moduleSpecifier || !ts.isStringLiteralLike(node.moduleSpecifier)) {
83
+ return undefined;
84
+ }
85
+ const destino = destinoReexportacaoTypeScript(diretorio, arquivo, node.moduleSpecifier.text);
86
+ if (!destino) {
87
+ return undefined;
88
+ }
89
+ const nomes = new Map();
90
+ if (node.exportClause && ts.isNamedExports(node.exportClause)) {
91
+ for (const elemento of node.exportClause.elements) {
92
+ nomes.set(elemento.propertyName?.text ?? elemento.name.text, elemento.name.text);
93
+ }
94
+ }
95
+ return {
96
+ arquivoFacade: arquivo,
97
+ basesFacade: caminhosSimbolicos(diretorio, arquivo),
98
+ basesDestino: caminhosSimbolicos(diretorio, destino),
99
+ nomes: nomes.size > 0 ? nomes : undefined,
100
+ };
101
+ }
102
+ function aplicarReexportacoesTypeScript(simbolos, reexportacoes) {
103
+ for (const reexportacao of reexportacoes) {
104
+ for (const simbolo of [...simbolos.values()]) {
105
+ for (const baseDestino of reexportacao.basesDestino) {
106
+ if (!simbolo.caminho.startsWith(`${baseDestino}.`)) {
107
+ continue;
108
+ }
109
+ const sufixo = simbolo.caminho.slice(baseDestino.length + 1);
110
+ const nomeExportado = reexportacao.nomes?.get(sufixo);
111
+ if (reexportacao.nomes && !nomeExportado) {
112
+ continue;
113
+ }
114
+ for (const baseFacade of reexportacao.basesFacade) {
115
+ const caminho = `${baseFacade}.${nomeExportado ?? sufixo}`;
116
+ if (!simbolos.has(caminho)) {
117
+ simbolos.set(caminho, {
118
+ origem: "ts",
119
+ caminho,
120
+ arquivo: simbolo.arquivo,
121
+ simbolo: simbolo.simbolo,
122
+ });
123
+ }
124
+ }
125
+ }
126
+ }
127
+ }
128
+ }
129
+ export async function indexarTypeScript(diretorios) {
130
+ const simbolos = new Map();
131
+ const rotas = [];
132
+ const recursos = new Map();
133
+ const consumerSurfaces = new Map();
134
+ for (const diretorio of diretorios) {
135
+ const arquivos = (await listarArquivosRecursivos(diretorio, [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs"]))
136
+ .filter((arquivo) => !arquivo.endsWith(".d.ts")
137
+ && !arquivo.endsWith(".spec.ts")
138
+ && !arquivo.endsWith(".test.ts"));
139
+ const arquivosRotasAngular = arquivos.filter((arquivo) => arquivoEhRotasAngularConsumer(path.relative(diretorio, arquivo)));
140
+ const arquivosRotasAngularRaiz = new Set(arquivosRotasAngular
141
+ .filter((arquivo) => arquivoEhRotasAngularConsumerRaiz(path.relative(diretorio, arquivo)))
142
+ .map((arquivo) => path.resolve(arquivo)));
143
+ const usarApenasRotasAngularRaiz = arquivosRotasAngularRaiz.size > 0;
144
+ let encontrouSuperficieAngularPorRotas = false;
145
+ const reexportacoes = [];
146
+ for (const arquivo of arquivos) {
147
+ const codigo = await readFile(arquivo, "utf8");
148
+ const scriptKind = arquivo.endsWith(".tsx") ? ts.ScriptKind.TSX : ts.ScriptKind.TS;
149
+ const sourceFile = ts.createSourceFile(arquivo, codigo, ts.ScriptTarget.Latest, true, scriptKind);
150
+ const basesSimbolicas = caminhosSimbolicos(diretorio, arquivo);
151
+ const relacao = path.relative(diretorio, arquivo);
152
+ for (const recurso of extrairRecursosPersistenciaCodigoVivo(arquivo, codigo)) {
153
+ registrarRecursoDrift(recursos, recurso.origem, recurso.tipo, recurso.nome, recurso.arquivo, recurso.simbolo);
154
+ }
155
+ for (const rota of extrairRotasTypeScriptHttp(sourceFile, relacao)) {
156
+ rotas.push({
157
+ origem: rota.origem,
158
+ metodo: rota.metodo,
159
+ caminho: rota.caminho,
160
+ arquivo,
161
+ simbolo: rota.simbolo,
162
+ });
163
+ }
164
+ const superficieNextJs = arquivoEhSuperficieNextJsConsumer(relacao)
165
+ ? inferirRotaNextJsConsumer(relacao)
166
+ : undefined;
167
+ if (superficieNextJs) {
168
+ consumerSurfaces.set(`${superficieNextJs.rota}:${arquivo}:${superficieNextJs.tipoArquivo}`, {
169
+ rota: superficieNextJs.rota,
170
+ arquivo,
171
+ tipoArquivo: superficieNextJs.tipoArquivo,
172
+ });
173
+ rotas.push({
174
+ origem: "nextjs-consumer",
175
+ metodo: "VIEW",
176
+ caminho: superficieNextJs.rota,
177
+ arquivo,
178
+ simbolo: superficieNextJs.tipoArquivo,
179
+ });
180
+ }
181
+ const superficieReact = arquivoEhSuperficieReactViteConsumer(relacao)
182
+ ? inferirRotaReactViteConsumer(relacao)
183
+ : undefined;
184
+ if (superficieReact) {
185
+ consumerSurfaces.set(`${superficieReact.rota}:${arquivo}:${superficieReact.tipoArquivo}`, {
186
+ rota: superficieReact.rota,
187
+ arquivo,
188
+ tipoArquivo: superficieReact.tipoArquivo,
189
+ });
190
+ rotas.push({
191
+ origem: "react-vite-consumer",
192
+ metodo: "VIEW",
193
+ caminho: superficieReact.rota,
194
+ arquivo,
195
+ simbolo: superficieReact.tipoArquivo,
196
+ });
197
+ }
198
+ if (arquivoEhRotasReactViteConsumer(relacao, codigo)) {
199
+ for (const rotaReact of extrairRotasReactViteConsumer(relacao, codigo)) {
200
+ consumerSurfaces.set(`${rotaReact.rota}:${arquivo}:router`, {
201
+ rota: rotaReact.rota,
202
+ arquivo,
203
+ tipoArquivo: "router",
204
+ });
205
+ rotas.push({
206
+ origem: "react-vite-consumer",
207
+ metodo: "VIEW",
208
+ caminho: rotaReact.rota,
209
+ arquivo,
210
+ simbolo: "router",
211
+ });
212
+ if (rotaReact.arquivoComponente) {
213
+ const arquivoComponente = path.join(diretorio, rotaReact.arquivoComponente);
214
+ consumerSurfaces.set(`${rotaReact.rota}:${arquivoComponente}:page`, {
215
+ rota: rotaReact.rota,
216
+ arquivo: arquivoComponente,
217
+ tipoArquivo: "page",
218
+ });
219
+ }
220
+ }
221
+ }
222
+ if (arquivoEhRotasAngularConsumer(relacao) && (!usarApenasRotasAngularRaiz || arquivosRotasAngularRaiz.has(path.resolve(arquivo)))) {
223
+ encontrouSuperficieAngularPorRotas = true;
224
+ for (const rotaAngular of await extrairRotasAngularConsumer(diretorio, relacao)) {
225
+ const arquivoRotasAngular = path.join(diretorio, rotaAngular.arquivoRotas);
226
+ consumerSurfaces.set(`${rotaAngular.rota}:${arquivoRotasAngular}:routes`, {
227
+ rota: rotaAngular.rota,
228
+ arquivo: arquivoRotasAngular,
229
+ tipoArquivo: "routes",
230
+ });
231
+ rotas.push({
232
+ origem: "angular-consumer",
233
+ metodo: "VIEW",
234
+ caminho: rotaAngular.rota,
235
+ arquivo: arquivoRotasAngular,
236
+ simbolo: rotaAngular.componente ?? "routes",
237
+ });
238
+ if (rotaAngular.arquivoComponente) {
239
+ const arquivoComponente = path.join(diretorio, rotaAngular.arquivoComponente);
240
+ consumerSurfaces.set(`${rotaAngular.rota}:${arquivoComponente}:component`, {
241
+ rota: rotaAngular.rota,
242
+ arquivo: arquivoComponente,
243
+ tipoArquivo: "component",
244
+ });
245
+ }
246
+ }
247
+ }
248
+ for (const node of sourceFile.statements) {
249
+ const reexportacao = extrairReexportacaoTypeScript(diretorio, arquivo, node);
250
+ if (reexportacao) {
251
+ reexportacoes.push(reexportacao);
252
+ }
253
+ if (ts.isFunctionDeclaration(node) && node.name) {
254
+ registrarSimboloTypeScript(simbolos, basesSimbolicas, arquivo, node.name.text);
255
+ }
256
+ if (ts.isVariableStatement(node)) {
257
+ for (const declaracao of node.declarationList.declarations) {
258
+ if (!ts.isIdentifier(declaracao.name) || !declaracao.initializer) {
259
+ continue;
260
+ }
261
+ if (ts.isArrowFunction(declaracao.initializer) || ts.isFunctionExpression(declaracao.initializer)) {
262
+ registrarSimboloTypeScript(simbolos, basesSimbolicas, arquivo, declaracao.name.text);
263
+ }
264
+ }
265
+ }
266
+ if (!ts.isClassDeclaration(node) || !node.name) {
267
+ if (ts.isExpressionStatement(node)) {
268
+ const expr = desembrulharExpressaoTypeScript(node.expression);
269
+ if (ts.isCallExpression(expr)
270
+ && ts.isPropertyAccessExpression(expr.expression)
271
+ && ts.isIdentifier(expr.expression.expression)
272
+ && expr.expression.expression.text === "Object"
273
+ && expr.expression.name.text === "assign") {
274
+ const nomeClasse = expr.arguments[0]
275
+ ? extrairNomeClassePrototypeTypeScript(expr.arguments[0], sourceFile)
276
+ : undefined;
277
+ for (const argumento of expr.arguments.slice(1)) {
278
+ const valor = desembrulharExpressaoTypeScript(argumento);
279
+ if (ts.isObjectLiteralExpression(valor)) {
280
+ registrarMetodosObjectAssignTypeScript(simbolos, basesSimbolicas, arquivo, valor, sourceFile, nomeClasse);
281
+ }
282
+ }
283
+ }
284
+ else if (ts.isBinaryExpression(expr) && expr.operatorToken.kind === ts.SyntaxKind.EqualsToken) {
285
+ registrarAtribuicaoPrototypeTypeScript(simbolos, basesSimbolicas, arquivo, sourceFile, expr.left, expr.right);
286
+ }
287
+ }
288
+ continue;
289
+ }
290
+ const controllerDecorator = lerDecorator(node, ["Controller"]);
291
+ const basePath = extrairTextoLiteral(controllerDecorator?.argumentos[0]);
292
+ for (const member of node.members) {
293
+ if (!ts.isMethodDeclaration(member) || !member.name) {
294
+ continue;
295
+ }
296
+ const nomeMetodo = member.name.getText(sourceFile);
297
+ if (nomeMetodo === "constructor") {
298
+ continue;
299
+ }
300
+ registrarSimboloTypeScript(simbolos, basesSimbolicas, arquivo, nomeMetodo, node.name.text);
301
+ const metodoEhInterno = member.modifiers?.some((m) => m.kind === ts.SyntaxKind.PrivateKeyword || m.kind === ts.SyntaxKind.ProtectedKeyword);
302
+ for (const baseSimbolica of basesSimbolicas) {
303
+ const caminhoMetodoDireto = `${baseSimbolica}.${nomeMetodo}`;
304
+ if (!simbolos.has(caminhoMetodoDireto)) {
305
+ simbolos.set(caminhoMetodoDireto, { origem: "ts", caminho: caminhoMetodoDireto, arquivo, simbolo: nomeMetodo });
306
+ }
307
+ }
308
+ if (controllerDecorator && !metodoEhInterno) {
309
+ const httpDecorator = lerDecorator(member, ["Get", "Post", "Put", "Patch", "Delete"]);
310
+ if (httpDecorator) {
311
+ rotas.push({
312
+ origem: "nestjs",
313
+ metodo: httpDecorator.nome.toUpperCase(),
314
+ caminho: juntarCaminhoHttp(basePath, extrairTextoLiteral(httpDecorator.argumentos[0])),
315
+ arquivo,
316
+ simbolo: `${node.name.text}.${nomeMetodo}`,
317
+ });
318
+ }
319
+ }
320
+ }
321
+ }
322
+ }
323
+ if (!encontrouSuperficieAngularPorRotas) {
324
+ for (const superficie of await coletarSuperficiesAngularStandaloneConsumer(diretorio, arquivos)) {
325
+ const arquivoSuperficie = path.join(diretorio, superficie.arquivo);
326
+ consumerSurfaces.set(`${superficie.rota}:${arquivoSuperficie}:${superficie.tipoArquivo}`, {
327
+ rota: superficie.rota,
328
+ arquivo: arquivoSuperficie,
329
+ tipoArquivo: superficie.tipoArquivo,
330
+ });
331
+ rotas.push({
332
+ origem: "angular-consumer",
333
+ metodo: "VIEW",
334
+ caminho: superficie.rota,
335
+ arquivo: arquivoSuperficie,
336
+ simbolo: superficie.tipoArquivo,
337
+ });
338
+ }
339
+ }
340
+ aplicarReexportacoesTypeScript(simbolos, reexportacoes);
341
+ }
342
+ return {
343
+ simbolos: [...simbolos.values()],
344
+ rotas,
345
+ recursos: [...recursos.values()],
346
+ consumerSurfaces: [...consumerSurfaces.values()].sort((a, b) => a.rota.localeCompare(b.rota, "pt-BR")
347
+ || a.tipoArquivo.localeCompare(b.tipoArquivo, "pt-BR")
348
+ || a.arquivo.localeCompare(b.arquivo, "pt-BR")),
349
+ };
350
+ }
351
+ export function registrarSimboloPython(simbolos, basesSimbolicas, arquivo, nome, nomeClasse) {
352
+ for (const baseSimbolica of basesSimbolicas) {
353
+ const caminho = nomeClasse
354
+ ? `${baseSimbolica}.${nomeClasse}.${nome}`
355
+ : `${baseSimbolica}.${nome}`;
356
+ simbolos.set(caminho, {
357
+ origem: "py",
358
+ caminho,
359
+ arquivo,
360
+ simbolo: nomeClasse ? `${nomeClasse}.${nome}` : nome,
361
+ });
362
+ }
363
+ }
364
+ export function registrarRotasPython(rotas, decoratorsPendentes, prefixo, arquivo, nomeFuncao) {
365
+ for (const decorator of decoratorsPendentes) {
366
+ const match = decorator.match(/^@(router|app)\.(get|post|put|patch|delete)\((.*)\)\s*$/);
367
+ if (!match) {
368
+ continue;
369
+ }
370
+ const metodo = match[2].toUpperCase();
371
+ const sufixo = match[3]?.match(/["']([^"']+)["']/)?.[1];
372
+ rotas.push({
373
+ origem: "fastapi",
374
+ metodo,
375
+ caminho: juntarCaminhoHttp(prefixo, sufixo),
376
+ arquivo,
377
+ simbolo: nomeFuncao,
378
+ });
379
+ }
380
+ }
381
+ //# sourceMappingURL=drift.part06.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drift.part06.js","sourceRoot":"","sources":["../src/drift.part06.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,oGAAoG;AAEpG,OAAO,EAAW,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,YAAY,CAAC;AAiB5B,OAAO,EAAE,2CAA2C,EAAE,MAAM,kCAAkC,CAAC;AAQ/F,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAIlE,OAAO,EAAE,6BAA6B,EAAE,iCAAiC,EAAE,+BAA+B,EAAE,iCAAiC,EAAE,oCAAoC,EAAE,2BAA2B,EAAE,6BAA6B,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,sCAAsC,EAAE,sCAAsC,EAAE,MAAM,mBAAmB,CAAC;AAC/a,OAAO,EAAE,kBAAkB,EAAE,+BAA+B,EAAE,oCAAoC,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,YAAY,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC1O,OAAO,EAAE,qCAAqC,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAEjG,MAAM,UAAU,iCAAiC,CAC/C,YAA2B,EAC3B,gBAAgD,EAChD,eAA8C;IAE9C,MAAM,QAAQ,GAAG;QACf,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;QAC/C,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;KAC/C,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACjC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,2FAA2F,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC1I,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5B,2CAA2C,CAAC,IAAI,CAAC,OAAO,CAAC;WACtD,qCAAqC,CAAC,IAAI,CAAC,OAAO,CAAC;WACnD,oEAAoE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QACzF,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5B,+CAA+C,CAAC,IAAI,CAAC,OAAO,CAAC;WAC1D,mDAAmD,CAAC,IAAI,CAAC,OAAO,CAAC;WACjE,0DAA0D,CAAC,IAAI,CAAC,OAAO,CAAC;WACxE,6BAA6B,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC7C,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5B,iDAAiD,CAAC,IAAI,CAAC,OAAO,CAAC;WAC5D,6DAA6D,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAClF,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IACD,KAAK,MAAM,SAAS,IAAI,CAAC,iBAAiB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,kBAAkB,CAAU,EAAE,CAAC;QACpH,IAAI,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,MAAc;IACrE,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;IACrD,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE;QACjC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QACD,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,OAAO,EAAE,EAAE;YACjC,MAAM,EAAE,UAAU;YAClB,IAAI;YACJ,OAAO;YACP,IAAI,EAAE,SAAS;SAChB,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,oEAAoE,CAAC,EAAE,CAAC;QAC1G,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7B,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC;YAC/D,SAAS,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,wDAAwD,CAAC,EAAE,CAAC;QAC9F,SAAS,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;IACvB,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,4CAA4C,CAAC,EAAE,CAAC;QAClF,SAAS,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;AAChC,CAAC;AASD,SAAS,6BAA6B,CAAC,SAAiB,EAAE,OAAe,EAAE,aAAqB;IAC9F,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACzC,MAAM,YAAY,GAAG,QAAQ;QAC3B,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK;QAC9C,CAAC,CAAC,SAAS,CAAC;IACd,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;QAC5D,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,YAAY,CAAC;AACnB,CAAC;AAED,SAAS,6BAA6B,CAAC,SAAiB,EAAE,OAAe,EAAE,IAAkB;IAC3F,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QAC5G,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,6BAA6B,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAC7F,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9D,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YAClD,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;IACD,OAAO;QACL,aAAa,EAAE,OAAO;QACtB,WAAW,EAAE,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC;QACnD,YAAY,EAAE,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC;QACpD,KAAK,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;KAC1C,CAAC;AACJ,CAAC;AAED,SAAS,8BAA8B,CAAC,QAAuC,EAAE,aAAuC;IACtH,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;QACzC,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;YAC7C,KAAK,MAAM,WAAW,IAAI,YAAY,CAAC,YAAY,EAAE,CAAC;gBACpD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC;oBACnD,SAAS;gBACX,CAAC;gBACD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC7D,MAAM,aAAa,GAAG,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;gBACtD,IAAI,YAAY,CAAC,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;oBACzC,SAAS;gBACX,CAAC;gBACD,KAAK,MAAM,UAAU,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;oBAClD,MAAM,OAAO,GAAG,GAAG,UAAU,IAAI,aAAa,IAAI,MAAM,EAAE,CAAC;oBAC3D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC3B,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE;4BACpB,MAAM,EAAE,IAAI;4BACZ,OAAO;4BACP,OAAO,EAAE,OAAO,CAAC,OAAO;4BACxB,OAAO,EAAE,OAAO,CAAC,OAAO;yBACzB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,UAAoB;IAM1D,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;IACrD,MAAM,KAAK,GAAoB,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;IACrD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAwC,CAAC;IAEzE,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,CAAC,MAAM,wBAAwB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;aACzG,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAClB,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;eACvB,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;eAC7B,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CACjC,CAAC;QACJ,MAAM,oBAAoB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAC5H,MAAM,wBAAwB,GAAG,IAAI,GAAG,CACtC,oBAAoB;aACjB,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,iCAAiC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;aACzF,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAC3C,CAAC;QACF,MAAM,0BAA0B,GAAG,wBAAwB,CAAC,IAAI,GAAG,CAAC,CAAC;QACrE,IAAI,kCAAkC,GAAG,KAAK,CAAC;QAC/C,MAAM,aAAa,GAA6B,EAAE,CAAC;QAEnD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC/C,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;YACnF,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;YAClG,MAAM,eAAe,GAAG,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAElD,KAAK,MAAM,OAAO,IAAI,qCAAqC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC7E,qBAAqB,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAChH,CAAC;YAED,KAAK,MAAM,IAAI,IAAI,0BAA0B,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC;gBACnE,KAAK,CAAC,IAAI,CAAC;oBACT,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,OAAO;oBACP,OAAO,EAAE,IAAI,CAAC,OAAO;iBACtB,CAAC,CAAC;YACL,CAAC;YAED,MAAM,gBAAgB,GAAG,iCAAiC,CAAC,OAAO,CAAC;gBACjE,CAAC,CAAC,yBAAyB,CAAC,OAAO,CAAC;gBACpC,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,gBAAgB,EAAE,CAAC;gBACrB,gBAAgB,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,IAAI,IAAI,OAAO,IAAI,gBAAgB,CAAC,WAAW,EAAE,EAAE;oBAC1F,IAAI,EAAE,gBAAgB,CAAC,IAAI;oBAC3B,OAAO;oBACP,WAAW,EAAE,gBAAgB,CAAC,WAAW;iBAC1C,CAAC,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC;oBACT,MAAM,EAAE,iBAAiB;oBACzB,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,gBAAgB,CAAC,IAAI;oBAC9B,OAAO;oBACP,OAAO,EAAE,gBAAgB,CAAC,WAAW;iBACtC,CAAC,CAAC;YACL,CAAC;YAED,MAAM,eAAe,GAAG,oCAAoC,CAAC,OAAO,CAAC;gBACnE,CAAC,CAAC,4BAA4B,CAAC,OAAO,CAAC;gBACvC,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,eAAe,EAAE,CAAC;gBACpB,gBAAgB,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,IAAI,IAAI,OAAO,IAAI,eAAe,CAAC,WAAW,EAAE,EAAE;oBACxF,IAAI,EAAE,eAAe,CAAC,IAAI;oBAC1B,OAAO;oBACP,WAAW,EAAE,eAAe,CAAC,WAAW;iBACzC,CAAC,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC;oBACT,MAAM,EAAE,qBAAqB;oBAC7B,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,eAAe,CAAC,IAAI;oBAC7B,OAAO;oBACP,OAAO,EAAE,eAAe,CAAC,WAAW;iBACrC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,+BAA+B,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;gBACrD,KAAK,MAAM,SAAS,IAAI,6BAA6B,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;oBACvE,gBAAgB,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,IAAI,IAAI,OAAO,SAAS,EAAE;wBAC1D,IAAI,EAAE,SAAS,CAAC,IAAI;wBACpB,OAAO;wBACP,WAAW,EAAE,QAAQ;qBACtB,CAAC,CAAC;oBACH,KAAK,CAAC,IAAI,CAAC;wBACT,MAAM,EAAE,qBAAqB;wBAC7B,MAAM,EAAE,MAAM;wBACd,OAAO,EAAE,SAAS,CAAC,IAAI;wBACvB,OAAO;wBACP,OAAO,EAAE,QAAQ;qBAClB,CAAC,CAAC;oBACH,IAAI,SAAS,CAAC,iBAAiB,EAAE,CAAC;wBAChC,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;wBAC5E,gBAAgB,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,IAAI,IAAI,iBAAiB,OAAO,EAAE;4BAClE,IAAI,EAAE,SAAS,CAAC,IAAI;4BACpB,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,MAAM;yBACpB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,6BAA6B,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,0BAA0B,IAAI,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnI,kCAAkC,GAAG,IAAI,CAAC;gBAC1C,KAAK,MAAM,WAAW,IAAI,MAAM,2BAA2B,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;oBAChF,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,YAAY,CAAC,CAAC;oBAC3E,gBAAgB,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,IAAI,mBAAmB,SAAS,EAAE;wBACxE,IAAI,EAAE,WAAW,CAAC,IAAI;wBACtB,OAAO,EAAE,mBAAmB;wBAC5B,WAAW,EAAE,QAAQ;qBACtB,CAAC,CAAC;oBACH,KAAK,CAAC,IAAI,CAAC;wBACT,MAAM,EAAE,kBAAkB;wBAC1B,MAAM,EAAE,MAAM;wBACd,OAAO,EAAE,WAAW,CAAC,IAAI;wBACzB,OAAO,EAAE,mBAAmB;wBAC5B,OAAO,EAAE,WAAW,CAAC,UAAU,IAAI,QAAQ;qBAC5C,CAAC,CAAC;oBACH,IAAI,WAAW,CAAC,iBAAiB,EAAE,CAAC;wBAClC,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,iBAAiB,CAAC,CAAC;wBAC9E,gBAAgB,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,IAAI,iBAAiB,YAAY,EAAE;4BACzE,IAAI,EAAE,WAAW,CAAC,IAAI;4BACtB,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,WAAW;yBACzB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAED,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;gBACzC,MAAM,YAAY,GAAG,6BAA6B,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;gBAC7E,IAAI,YAAY,EAAE,CAAC;oBACjB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACnC,CAAC;gBAED,IAAI,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBAChD,0BAA0B,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjF,CAAC;gBAED,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjC,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;wBAC3D,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;4BACjE,SAAS;wBACX,CAAC;wBACD,IAAI,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,oBAAoB,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;4BAClG,0BAA0B,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACvF,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC/C,IAAI,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC;wBACnC,MAAM,IAAI,GAAG,+BAA+B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAC9D,IAAI,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC;+BACxB,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,UAAU,CAAC;+BAC9C,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;+BAC3C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,KAAK,QAAQ;+BAC5C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;4BAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;gCAClC,CAAC,CAAC,oCAAoC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC;gCACrE,CAAC,CAAC,SAAS,CAAC;4BACd,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gCAChD,MAAM,KAAK,GAAG,+BAA+B,CAAC,SAAS,CAAC,CAAC;gCACzD,IAAI,EAAE,CAAC,yBAAyB,CAAC,KAAK,CAAC,EAAE,CAAC;oCACxC,sCAAsC,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;gCAC5G,CAAC;4BACH,CAAC;wBACH,CAAC;6BAAM,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;4BAChG,sCAAsC,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;wBAChH,CAAC;oBACH,CAAC;oBACD,SAAS;gBACX,CAAC;gBAED,MAAM,mBAAmB,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC/D,MAAM,QAAQ,GAAG,mBAAmB,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEzE,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBAClC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;wBACpD,SAAS;oBACX,CAAC;oBAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBACnD,IAAI,UAAU,KAAK,aAAa,EAAE,CAAC;wBACjC,SAAS;oBACX,CAAC;oBAED,0BAA0B,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC3F,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,IAAI,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;oBAC5I,KAAK,MAAM,aAAa,IAAI,eAAe,EAAE,CAAC;wBAC5C,MAAM,mBAAmB,GAAG,GAAG,aAAa,IAAI,UAAU,EAAE,CAAC;wBAC7D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC;4BACvC,QAAQ,CAAC,GAAG,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;wBAClH,CAAC;oBACH,CAAC;oBAED,IAAI,mBAAmB,IAAI,CAAC,eAAe,EAAE,CAAC;wBAC5C,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;wBACtF,IAAI,aAAa,EAAE,CAAC;4BAClB,KAAK,CAAC,IAAI,CAAC;gCACT,MAAM,EAAE,QAAQ;gCAChB,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE;gCACxC,OAAO,EAAE,iBAAiB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;gCACtF,OAAO;gCACP,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,UAAU,EAAE;6BAC3C,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,kCAAkC,EAAE,CAAC;YACxC,KAAK,MAAM,UAAU,IAAI,MAAM,2CAA2C,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC;gBAChG,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;gBACnE,gBAAgB,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,IAAI,IAAI,iBAAiB,IAAI,UAAU,CAAC,WAAW,EAAE,EAAE;oBACxF,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,OAAO,EAAE,iBAAiB;oBAC1B,WAAW,EAAE,UAAU,CAAC,WAAW;iBACpC,CAAC,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC;oBACT,MAAM,EAAE,kBAAkB;oBAC1B,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,UAAU,CAAC,IAAI;oBACxB,OAAO,EAAE,iBAAiB;oBAC1B,OAAO,EAAE,UAAU,CAAC,WAAW;iBAChC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,8BAA8B,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;QAChC,KAAK;QACL,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;QAChC,gBAAgB,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC7D,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC;eAClC,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC;eACnD,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;KAClD,CAAC;AACJ,CAAC;AAQD,MAAM,UAAU,sBAAsB,CACpC,QAAuC,EACvC,eAAyB,EACzB,OAAe,EACf,IAAY,EACZ,UAAmB;IAEnB,KAAK,MAAM,aAAa,IAAI,eAAe,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,UAAU;YACxB,CAAC,CAAC,GAAG,aAAa,IAAI,UAAU,IAAI,IAAI,EAAE;YAC1C,CAAC,CAAC,GAAG,aAAa,IAAI,IAAI,EAAE,CAAC;QAC/B,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE;YACpB,MAAM,EAAE,IAAI;YACZ,OAAO;YACP,OAAO;YACP,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI;SACrD,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,KAAsB,EACtB,mBAA6B,EAC7B,OAA2B,EAC3B,OAAe,EACf,UAAkB;IAElB,KAAK,MAAM,SAAS,IAAI,mBAAmB,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACzF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACxD,KAAK,CAAC,IAAI,CAAC;YACT,MAAM,EAAE,SAAS;YACjB,MAAM;YACN,OAAO,EAAE,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC;YAC3C,OAAO;YACP,OAAO,EAAE,UAAU;SACpB,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -0,0 +1,48 @@
1
+ import type { EngineBanco } from "@sema/nucleo";
2
+ import { OrigemRecursoDrift, RecursoResolvido, RegistroColunaPersistenciaDrift, RegistroConsumerSurfaceDrift, RotaResolvida, SimboloResolvido } from "./drift.part01.js";
3
+ export declare function indexarPython(diretorios: string[]): Promise<{
4
+ simbolos: SimboloResolvido[];
5
+ rotas: RotaResolvida[];
6
+ recursos: RecursoResolvido[];
7
+ }>;
8
+ export declare function indexarDart(diretorios: string[]): Promise<{
9
+ simbolos: SimboloResolvido[];
10
+ rotas: RotaResolvida[];
11
+ recursos: RecursoResolvido[];
12
+ consumerSurfaces: RegistroConsumerSurfaceDrift[];
13
+ }>;
14
+ export declare function registrarSimboloGenerico(simbolos: Map<string, SimboloResolvido>, origem: SimboloResolvido["origem"], basesSimbolicas: string[], arquivo: string, simbolo: string): void;
15
+ export declare function indexarDotnet(diretorios: string[]): Promise<{
16
+ simbolos: SimboloResolvido[];
17
+ rotas: RotaResolvida[];
18
+ recursos: RecursoResolvido[];
19
+ }>;
20
+ export declare function indexarJava(diretorios: string[]): Promise<{
21
+ simbolos: SimboloResolvido[];
22
+ rotas: RotaResolvida[];
23
+ recursos: RecursoResolvido[];
24
+ }>;
25
+ export declare function indexarGo(diretorios: string[]): Promise<{
26
+ simbolos: SimboloResolvido[];
27
+ rotas: RotaResolvida[];
28
+ recursos: RecursoResolvido[];
29
+ }>;
30
+ export declare function indexarRust(diretorios: string[]): Promise<{
31
+ simbolos: SimboloResolvido[];
32
+ rotas: RotaResolvida[];
33
+ recursos: RecursoResolvido[];
34
+ }>;
35
+ export declare function indexarCpp(diretorios: string[]): Promise<{
36
+ simbolos: SimboloResolvido[];
37
+ recursos: RecursoResolvido[];
38
+ }>;
39
+ export declare function indexarLua(diretorios: string[]): Promise<{
40
+ simbolos: SimboloResolvido[];
41
+ recursos: RecursoResolvido[];
42
+ }>;
43
+ export declare function indexarPersistenciaDeclarativa(diretorios: string[]): Promise<{
44
+ recursos: RecursoResolvido[];
45
+ simbolos: SimboloResolvido[];
46
+ }>;
47
+ export declare function normalizarOrigemParaEngine(origem?: OrigemRecursoDrift): EngineBanco | undefined;
48
+ export declare function registrarColunaPersistenciaDrift(colunas: Map<string, RegistroColunaPersistenciaDrift>, origem: OrigemRecursoDrift, recurso: string, coluna: string, arquivo: string): void;