@semacode/cli 1.5.31 → 1.5.32

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 (157) hide show
  1. package/AGENTS.md +294 -0
  2. package/AGENT_CONTEXT_PACK.json +164 -0
  3. package/LICENSE +22 -0
  4. package/README.md +85 -144
  5. package/SEMA_BRIEF.curto.txt +11 -0
  6. package/SEMA_BRIEF.md +616 -0
  7. package/SEMA_BRIEF.micro.txt +9 -0
  8. package/SEMA_INDEX.json +9393 -0
  9. package/dist/billing/index.d.ts +46 -0
  10. package/dist/billing/index.js +143 -0
  11. package/dist/billing/index.js.map +1 -0
  12. package/dist/controleComercialSupabase.d.ts +7 -0
  13. package/dist/controleComercialSupabase.js +6 -0
  14. package/dist/controleComercialSupabase.js.map +1 -0
  15. package/dist/controleComercialSupabaseAdmin.d.ts +7 -0
  16. package/dist/controleComercialSupabaseAdmin.js +138 -0
  17. package/dist/controleComercialSupabaseAdmin.js.map +1 -0
  18. package/dist/controleComercialSupabaseCadastro.d.ts +4 -0
  19. package/dist/controleComercialSupabaseCadastro.js +85 -0
  20. package/dist/controleComercialSupabaseCadastro.js.map +1 -0
  21. package/dist/controleComercialSupabaseConstantes.d.ts +28 -0
  22. package/dist/controleComercialSupabaseConstantes.js +44 -0
  23. package/dist/controleComercialSupabaseConstantes.js.map +1 -0
  24. package/dist/controleComercialSupabaseConsumo.d.ts +2 -0
  25. package/dist/controleComercialSupabaseConsumo.js +77 -0
  26. package/dist/controleComercialSupabaseConsumo.js.map +1 -0
  27. package/dist/controleComercialSupabaseConta.d.ts +11 -0
  28. package/dist/controleComercialSupabaseConta.js +157 -0
  29. package/dist/controleComercialSupabaseConta.js.map +1 -0
  30. package/dist/controleComercialSupabaseProfiles.d.ts +4 -0
  31. package/dist/controleComercialSupabaseProfiles.js +55 -0
  32. package/dist/controleComercialSupabaseProfiles.js.map +1 -0
  33. package/dist/controleComercialSupabaseTipos.d.ts +3 -0
  34. package/dist/controleComercialSupabaseTipos.js +2 -0
  35. package/dist/controleComercialSupabaseTipos.js.map +1 -0
  36. package/dist/controleComercialSupabaseTiposAdmin.d.ts +152 -0
  37. package/dist/controleComercialSupabaseTiposAdmin.js +2 -0
  38. package/dist/controleComercialSupabaseTiposAdmin.js.map +1 -0
  39. package/dist/controleComercialSupabaseTiposBase.d.ts +169 -0
  40. package/dist/controleComercialSupabaseTiposBase.js +2 -0
  41. package/dist/controleComercialSupabaseTiposBase.js.map +1 -0
  42. package/dist/controleComercialSupabaseTiposConta.d.ts +220 -0
  43. package/dist/controleComercialSupabaseTiposConta.js +2 -0
  44. package/dist/controleComercialSupabaseTiposConta.js.map +1 -0
  45. package/dist/index.js +222 -46
  46. package/dist/index.js.map +1 -1
  47. package/dist/runnerValidacaoRemota.d.ts +9 -0
  48. package/dist/runnerValidacaoRemota.js +9 -0
  49. package/dist/runnerValidacaoRemota.js.map +1 -0
  50. package/dist/runnerValidacaoRemotaBateria.d.ts +10 -0
  51. package/dist/runnerValidacaoRemotaBateria.js +115 -0
  52. package/dist/runnerValidacaoRemotaBateria.js.map +1 -0
  53. package/dist/runnerValidacaoRemotaCli.d.ts +4 -0
  54. package/dist/runnerValidacaoRemotaCli.js +86 -0
  55. package/dist/runnerValidacaoRemotaCli.js.map +1 -0
  56. package/dist/runnerValidacaoRemotaComandos.d.ts +7 -0
  57. package/dist/runnerValidacaoRemotaComandos.js +123 -0
  58. package/dist/runnerValidacaoRemotaComandos.js.map +1 -0
  59. package/dist/runnerValidacaoRemotaEscopo.d.ts +4 -0
  60. package/dist/runnerValidacaoRemotaEscopo.js +79 -0
  61. package/dist/runnerValidacaoRemotaEscopo.js.map +1 -0
  62. package/dist/runnerValidacaoRemotaExecucao.d.ts +2 -0
  63. package/dist/runnerValidacaoRemotaExecucao.js +102 -0
  64. package/dist/runnerValidacaoRemotaExecucao.js.map +1 -0
  65. package/dist/runnerValidacaoRemotaRelatorio.d.ts +3 -0
  66. package/dist/runnerValidacaoRemotaRelatorio.js +93 -0
  67. package/dist/runnerValidacaoRemotaRelatorio.js.map +1 -0
  68. package/dist/runnerValidacaoRemotaServidor.d.ts +3 -0
  69. package/dist/runnerValidacaoRemotaServidor.js +157 -0
  70. package/dist/runnerValidacaoRemotaServidor.js.map +1 -0
  71. package/dist/runnerValidacaoRemotaSnapshot.d.ts +10 -0
  72. package/dist/runnerValidacaoRemotaSnapshot.js +217 -0
  73. package/dist/runnerValidacaoRemotaSnapshot.js.map +1 -0
  74. package/dist/runnerValidacaoRemotaTipos.d.ts +158 -0
  75. package/dist/runnerValidacaoRemotaTipos.js +35 -0
  76. package/dist/runnerValidacaoRemotaTipos.js.map +1 -0
  77. package/dist/runnerValidacaoRemotaUtil.d.ts +3 -0
  78. package/dist/runnerValidacaoRemotaUtil.js +18 -0
  79. package/dist/runnerValidacaoRemotaUtil.js.map +1 -0
  80. package/dist/runnerValidacaoRemotaWorkspace.d.ts +2 -0
  81. package/dist/runnerValidacaoRemotaWorkspace.js +110 -0
  82. package/dist/runnerValidacaoRemotaWorkspace.js.map +1 -0
  83. package/docs/AGENT_STARTER.md +109 -0
  84. package/docs/api.md +82 -0
  85. package/docs/cli.md +93 -0
  86. package/docs/como-ensinar-a-sema-para-ia.md +30 -0
  87. package/docs/deploy.md +45 -0
  88. package/docs/documentacao.md +88 -0
  89. package/docs/env.md +115 -0
  90. package/docs/extensao-vscode.md +42 -0
  91. package/docs/fluxo-pratico-ia-sema.md +187 -0
  92. package/docs/instalacao-e-primeiro-uso.md +48 -0
  93. package/docs/integracao-com-ia.md +24 -0
  94. package/docs/mcp.md +48 -0
  95. package/docs/pagamento-ponta-a-ponta.md +171 -0
  96. package/docs/persistencia-vendor-first.md +151 -0
  97. package/docs/prompt-base-ia-sema.md +111 -0
  98. package/docs/repositories.md +69 -0
  99. package/docs/rollback.md +24 -0
  100. package/docs/seguranca.md +126 -0
  101. package/docs/sintaxe.md +218 -0
  102. package/exemplos/profile_conversas.sema +165 -0
  103. package/llms-full.txt +35 -0
  104. package/llms.txt +18 -0
  105. package/node_modules/@sema/gerador-css/package.json +7 -14
  106. package/node_modules/@sema/gerador-dart/package.json +7 -14
  107. package/node_modules/@sema/gerador-html/package.json +7 -14
  108. package/node_modules/@sema/gerador-javascript/package.json +7 -14
  109. package/node_modules/@sema/gerador-lua/package.json +7 -14
  110. package/node_modules/@sema/gerador-python/package.json +7 -14
  111. package/node_modules/@sema/gerador-typescript/package.json +7 -14
  112. package/node_modules/@sema/nucleo/package.json +7 -10
  113. package/node_modules/@sema/padroes/package.json +7 -10
  114. package/package.json +75 -74
  115. package/exemplos/.prepack-generated +0 -1
  116. package/node_modules/@sema/gerador-css/src/index.ts +0 -605
  117. package/node_modules/@sema/gerador-css/tsconfig.json +0 -13
  118. package/node_modules/@sema/gerador-css/tsconfig.tsbuildinfo +0 -1
  119. package/node_modules/@sema/gerador-dart/src/index.ts +0 -52
  120. package/node_modules/@sema/gerador-dart/tsconfig.json +0 -13
  121. package/node_modules/@sema/gerador-dart/tsconfig.tsbuildinfo +0 -1
  122. package/node_modules/@sema/gerador-html/src/index.ts +0 -185
  123. package/node_modules/@sema/gerador-html/tsconfig.json +0 -13
  124. package/node_modules/@sema/gerador-html/tsconfig.tsbuildinfo +0 -1
  125. package/node_modules/@sema/gerador-javascript/src/index.ts +0 -461
  126. package/node_modules/@sema/gerador-javascript/tsconfig.json +0 -13
  127. package/node_modules/@sema/gerador-javascript/tsconfig.tsbuildinfo +0 -1
  128. package/node_modules/@sema/gerador-lua/src/index.ts +0 -359
  129. package/node_modules/@sema/gerador-lua/tsconfig.json +0 -13
  130. package/node_modules/@sema/gerador-lua/tsconfig.tsbuildinfo +0 -1
  131. package/node_modules/@sema/gerador-python/src/index.ts +0 -850
  132. package/node_modules/@sema/gerador-python/tsconfig.json +0 -13
  133. package/node_modules/@sema/gerador-python/tsconfig.tsbuildinfo +0 -1
  134. package/node_modules/@sema/gerador-typescript/src/index.ts +0 -876
  135. package/node_modules/@sema/gerador-typescript/tsconfig.json +0 -13
  136. package/node_modules/@sema/gerador-typescript/tsconfig.tsbuildinfo +0 -1
  137. package/node_modules/@sema/nucleo/src/ast/tipos.ts +0 -207
  138. package/node_modules/@sema/nucleo/src/diagnosticos/index.ts +0 -43
  139. package/node_modules/@sema/nucleo/src/diagnosticos/melhorador.ts +0 -130
  140. package/node_modules/@sema/nucleo/src/formatador/index.ts +0 -530
  141. package/node_modules/@sema/nucleo/src/index.ts +0 -184
  142. package/node_modules/@sema/nucleo/src/ir/conversor.ts +0 -1037
  143. package/node_modules/@sema/nucleo/src/ir/modelos.ts +0 -403
  144. package/node_modules/@sema/nucleo/src/lexer/lexer.ts +0 -166
  145. package/node_modules/@sema/nucleo/src/lexer/tokens.ts +0 -79
  146. package/node_modules/@sema/nucleo/src/parser/gramatica.ebnf +0 -41
  147. package/node_modules/@sema/nucleo/src/parser/parser.ts +0 -936
  148. package/node_modules/@sema/nucleo/src/persistencia/contratos.ts +0 -379
  149. package/node_modules/@sema/nucleo/src/semantico/analisador.ts +0 -3126
  150. package/node_modules/@sema/nucleo/src/semantico/estruturas.ts +0 -665
  151. package/node_modules/@sema/nucleo/src/semantico/seguranca.ts +0 -362
  152. package/node_modules/@sema/nucleo/src/util/arquivos.ts +0 -28
  153. package/node_modules/@sema/nucleo/tsconfig.json +0 -9
  154. package/node_modules/@sema/nucleo/tsconfig.tsbuildinfo +0 -1
  155. package/node_modules/@sema/padroes/src/index.ts +0 -382
  156. package/node_modules/@sema/padroes/tsconfig.json +0 -9
  157. package/node_modules/@sema/padroes/tsconfig.tsbuildinfo +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controleComercialSupabaseConsumo.js","sourceRoot":"","sources":["../src/controleComercialSupabaseConsumo.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { AtualizarPerfilContaInput, AtualizarPerfilContaResult, ArquivarProjetoWorkspaceInput, ArquivarProjetoWorkspaceResult, AtualizarProjetoWorkspaceInput, AtualizarProjetoWorkspaceResult, CriarProjetoWorkspaceInput, CriarProjetoWorkspaceResult, GerarChaveMcpWorkspaceInput, GerarChaveMcpWorkspaceResult, RegistrarPresencaUsuarioInput, RegistrarPresencaUsuarioResult, RevogarChaveMcpWorkspaceInput, RevogarChaveMcpWorkspaceResult, SemaAccountContext, SemaAccountProfile, SemaMcpClientContext, SupabaseRpcClient } from "./controleComercialSupabaseTipos.js";
2
+ export declare function consultarPainelUsuario(client: SupabaseRpcClient): Promise<SemaAccountContext>;
3
+ export declare function consultarPerfilConta(client: SupabaseRpcClient): Promise<SemaAccountProfile>;
4
+ export declare function atualizarPerfilConta(client: SupabaseRpcClient, input: AtualizarPerfilContaInput): Promise<AtualizarPerfilContaResult>;
5
+ export declare function registrarPresencaUsuario(client: SupabaseRpcClient, input?: RegistrarPresencaUsuarioInput): Promise<RegistrarPresencaUsuarioResult>;
6
+ export declare function criarProjetoWorkspace(client: SupabaseRpcClient, input: CriarProjetoWorkspaceInput): Promise<CriarProjetoWorkspaceResult>;
7
+ export declare function atualizarProjetoWorkspace(client: SupabaseRpcClient, input: AtualizarProjetoWorkspaceInput): Promise<AtualizarProjetoWorkspaceResult>;
8
+ export declare function arquivarProjetoWorkspace(client: SupabaseRpcClient, input: ArquivarProjetoWorkspaceInput): Promise<ArquivarProjetoWorkspaceResult>;
9
+ export declare function consultarChaveMcpWorkspace(client: SupabaseRpcClient): Promise<SemaMcpClientContext>;
10
+ export declare function gerarChaveMcpWorkspace(client: SupabaseRpcClient, input?: GerarChaveMcpWorkspaceInput): Promise<GerarChaveMcpWorkspaceResult>;
11
+ export declare function revogarChaveMcpWorkspace(client: SupabaseRpcClient, input: RevogarChaveMcpWorkspaceInput): Promise<RevogarChaveMcpWorkspaceResult>;
@@ -0,0 +1,157 @@
1
+ import { ACCOUNT_CONTEXT_RPC, ACCOUNT_PROFILE_RPC, ARCHIVE_PROJECT_RPC, CREATE_PROJECT_RPC, GENERATE_MCP_KEY_RPC, GET_MCP_KEY_CONTEXT_RPC, REVOKE_MCP_KEY_RPC, TOUCH_PRESENCE_RPC, UPDATE_ACCOUNT_PROFILE_RPC, UPDATE_PROJECT_RPC } from "./controleComercialSupabaseConstantes.js";
2
+ export async function consultarPainelUsuario(client) {
3
+ const resposta = await client.rpc(ACCOUNT_CONTEXT_RPC, {});
4
+ if (resposta.error) {
5
+ throw new Error(resposta.error.message ?? "Falha ao consultar painel da conta Sema.");
6
+ }
7
+ if (!resposta.data) {
8
+ throw new Error("Consulta de painel nao retornou dados.");
9
+ }
10
+ return resposta.data;
11
+ }
12
+ export async function consultarPerfilConta(client) {
13
+ const resposta = await client.rpc(ACCOUNT_PROFILE_RPC, {});
14
+ if (resposta.error) {
15
+ throw new Error(resposta.error.message ?? "Falha ao consultar perfil da conta Sema.");
16
+ }
17
+ if (!resposta.data) {
18
+ throw new Error("Consulta de perfil nao retornou dados.");
19
+ }
20
+ return resposta.data;
21
+ }
22
+ export async function atualizarPerfilConta(client, input) {
23
+ const displayName = input.displayName?.trim() ?? "";
24
+ const phone = input.phone?.trim() ?? "";
25
+ const locale = input.locale?.trim() ?? "";
26
+ const timezone = input.timezone?.trim() ?? "";
27
+ if (displayName.length > 160) {
28
+ throw new Error("nome do perfil excede 160 caracteres.");
29
+ }
30
+ if (phone.length > 40) {
31
+ throw new Error("telefone do perfil excede 40 caracteres.");
32
+ }
33
+ const resposta = await client.rpc(UPDATE_ACCOUNT_PROFILE_RPC, {
34
+ p_display_name: displayName || null,
35
+ p_phone: phone || null,
36
+ p_locale: locale || null,
37
+ p_timezone: timezone || null,
38
+ });
39
+ if (resposta.error) {
40
+ throw new Error(resposta.error.message ?? "Falha ao atualizar perfil da conta Sema.");
41
+ }
42
+ if (!resposta.data?.updated) {
43
+ throw new Error("Atualizacao de perfil nao retornou confirmacao.");
44
+ }
45
+ return resposta.data;
46
+ }
47
+ export async function registrarPresencaUsuario(client, input = {}) {
48
+ const resposta = await client.rpc(TOUCH_PRESENCE_RPC, {
49
+ p_page: input.page?.trim() || "/painel",
50
+ p_metadata: input.metadata ?? {},
51
+ });
52
+ if (resposta.error) {
53
+ throw new Error(resposta.error.message ?? "Falha ao registrar presenca da conta Sema.");
54
+ }
55
+ if (!resposta.data?.registered) {
56
+ throw new Error("Presenca da conta nao retornou confirmacao.");
57
+ }
58
+ return resposta.data;
59
+ }
60
+ export async function criarProjetoWorkspace(client, input) {
61
+ const name = input.name.trim();
62
+ if (!name) {
63
+ throw new Error("nome do projeto e obrigatorio.");
64
+ }
65
+ const resposta = await client.rpc(CREATE_PROJECT_RPC, {
66
+ p_name: name,
67
+ p_description: input.description?.trim() || null,
68
+ });
69
+ if (resposta.error) {
70
+ throw new Error(resposta.error.message ?? "Falha ao criar projeto no workspace Sema.");
71
+ }
72
+ if (!resposta.data?.created) {
73
+ throw new Error("Criacao de projeto nao retornou confirmacao.");
74
+ }
75
+ return resposta.data;
76
+ }
77
+ export async function atualizarProjetoWorkspace(client, input) {
78
+ if (!input.projectId) {
79
+ throw new Error("projectId e obrigatorio para atualizar projeto.");
80
+ }
81
+ const hasName = input.name !== undefined;
82
+ const hasDescription = input.description !== undefined;
83
+ const name = hasName ? input.name?.trim() : undefined;
84
+ const description = hasDescription ? input.description?.trim() : undefined;
85
+ if (!hasName && !hasDescription) {
86
+ throw new Error("nome ou descricao do projeto e obrigatorio.");
87
+ }
88
+ if (hasName && !name) {
89
+ throw new Error("nome do projeto e obrigatorio.");
90
+ }
91
+ const resposta = await client.rpc(UPDATE_PROJECT_RPC, {
92
+ p_project_id: input.projectId,
93
+ p_name: name ?? null,
94
+ p_description: description ?? null,
95
+ });
96
+ if (resposta.error) {
97
+ throw new Error(resposta.error.message ?? "Falha ao atualizar projeto no workspace Sema.");
98
+ }
99
+ if (!resposta.data?.updated) {
100
+ throw new Error("Atualizacao de projeto nao retornou confirmacao.");
101
+ }
102
+ return resposta.data;
103
+ }
104
+ export async function arquivarProjetoWorkspace(client, input) {
105
+ if (!input.projectId) {
106
+ throw new Error("projectId e obrigatorio para arquivar projeto.");
107
+ }
108
+ const resposta = await client.rpc(ARCHIVE_PROJECT_RPC, {
109
+ p_project_id: input.projectId,
110
+ });
111
+ if (resposta.error) {
112
+ throw new Error(resposta.error.message ?? "Falha ao arquivar projeto no workspace Sema.");
113
+ }
114
+ if (!resposta.data?.archived) {
115
+ throw new Error("Arquivamento de projeto nao retornou confirmacao.");
116
+ }
117
+ return resposta.data;
118
+ }
119
+ export async function consultarChaveMcpWorkspace(client) {
120
+ const resposta = await client.rpc(GET_MCP_KEY_CONTEXT_RPC, {});
121
+ if (resposta.error) {
122
+ throw new Error(resposta.error.message ?? "Falha ao consultar chave MCP do workspace Sema.");
123
+ }
124
+ if (!resposta.data) {
125
+ throw new Error("Consulta de chave MCP nao retornou dados.");
126
+ }
127
+ return resposta.data;
128
+ }
129
+ export async function gerarChaveMcpWorkspace(client, input = {}) {
130
+ const resposta = await client.rpc(GENERATE_MCP_KEY_RPC, {
131
+ p_name: input.name ?? "Painel Sema",
132
+ p_project_id: input.projectId ?? null,
133
+ });
134
+ if (resposta.error) {
135
+ throw new Error(resposta.error.message ?? "Falha ao gerar chave MCP do workspace Sema.");
136
+ }
137
+ if (!resposta.data?.generated || !resposta.data.token) {
138
+ throw new Error("Geracao de chave MCP nao retornou token copiavel.");
139
+ }
140
+ return resposta.data;
141
+ }
142
+ export async function revogarChaveMcpWorkspace(client, input) {
143
+ if (!input.clientId) {
144
+ throw new Error("clientId e obrigatorio para revogar chave MCP.");
145
+ }
146
+ const resposta = await client.rpc(REVOKE_MCP_KEY_RPC, {
147
+ p_client_id: input.clientId,
148
+ });
149
+ if (resposta.error) {
150
+ throw new Error(resposta.error.message ?? "Falha ao revogar chave MCP do workspace Sema.");
151
+ }
152
+ if (!resposta.data?.revoked) {
153
+ throw new Error("Revogacao de chave MCP nao retornou confirmacao.");
154
+ }
155
+ return resposta.data;
156
+ }
157
+ //# sourceMappingURL=controleComercialSupabaseConta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controleComercialSupabaseConta.js","sourceRoot":"","sources":["../src/controleComercialSupabaseConta.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { ConfigurarProfileWorkspaceInput, ConfigurarProfileWorkspaceResult, EstimarCustoOperacaoSemaInput, SemaOperationCost, SemaProfileSettingsContext, SupabaseRpcClient } from "./controleComercialSupabaseTipos.js";
2
+ export declare function estimarCustoOperacaoSema(client: SupabaseRpcClient, input?: EstimarCustoOperacaoSemaInput): Promise<SemaOperationCost>;
3
+ export declare function consultarProfilesWorkspace(client: SupabaseRpcClient, projectId?: string | null): Promise<SemaProfileSettingsContext>;
4
+ export declare function configurarProfileWorkspace(client: SupabaseRpcClient, input: ConfigurarProfileWorkspaceInput): Promise<ConfigurarProfileWorkspaceResult>;
@@ -0,0 +1,55 @@
1
+ import { ESTIMATE_OPERATION_COST_RPC, GET_PROFILE_PREFERENCES_RPC, SET_PROFILE_PREFERENCE_RPC } from "./controleComercialSupabaseConstantes.js";
2
+ export async function estimarCustoOperacaoSema(client, input = {}) {
3
+ const operationCode = input.operationCode?.trim() || null;
4
+ const toolName = input.toolName?.trim() || null;
5
+ if (!operationCode && !toolName) {
6
+ throw new Error("operationCode ou toolName e obrigatorio para estimar custo em SEMAS.");
7
+ }
8
+ const resposta = await client.rpc(ESTIMATE_OPERATION_COST_RPC, {
9
+ p_operation_code: operationCode,
10
+ p_tool_name: toolName,
11
+ p_metadata: input.metadata ?? {},
12
+ });
13
+ if (resposta.error) {
14
+ throw new Error(resposta.error.message ?? "Falha ao estimar custo da operacao Sema.");
15
+ }
16
+ if (!resposta.data?.semas || resposta.data.semas <= 0) {
17
+ throw new Error("Estimativa de custo Sema nao retornou SEMAS validas.");
18
+ }
19
+ return resposta.data;
20
+ }
21
+ export async function consultarProfilesWorkspace(client, projectId) {
22
+ const resposta = await client.rpc(GET_PROFILE_PREFERENCES_RPC, {
23
+ p_project_id: projectId ?? null,
24
+ });
25
+ if (resposta.error) {
26
+ throw new Error(resposta.error.message ?? "Falha ao consultar profiles do workspace Sema.");
27
+ }
28
+ return resposta.data ?? { profiles: [], pipelines: [], costPolicy: { unit: "SEMA", costBasis: "operational_cost_100_percent", aiCostIncluded: false, heavyOperationMaxSemas: 300 } };
29
+ }
30
+ export async function configurarProfileWorkspace(client, input) {
31
+ if (!input.profileTool.trim()) {
32
+ throw new Error("profileTool e obrigatorio para configurar profile Sema.");
33
+ }
34
+ const scope = input.scope ?? (input.projectId ? "project" : "global");
35
+ if (scope !== "global" && scope !== "project") {
36
+ throw new Error("scope precisa ser global ou project.");
37
+ }
38
+ if (scope === "project" && !input.projectId) {
39
+ throw new Error("projectId e obrigatorio para configurar profile por projeto.");
40
+ }
41
+ const resposta = await client.rpc(SET_PROFILE_PREFERENCE_RPC, {
42
+ p_project_id: scope === "project" ? input.projectId : null,
43
+ p_profile_tool: input.profileTool,
44
+ p_enabled: input.enabled,
45
+ p_scope: scope,
46
+ });
47
+ if (resposta.error) {
48
+ throw new Error(resposta.error.message ?? "Falha ao configurar profile Sema.");
49
+ }
50
+ if (!resposta.data?.configured) {
51
+ throw new Error("Configuracao de profile nao retornou confirmacao.");
52
+ }
53
+ return resposta.data;
54
+ }
55
+ //# sourceMappingURL=controleComercialSupabaseProfiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controleComercialSupabaseProfiles.js","sourceRoot":"","sources":["../src/controleComercialSupabaseProfiles.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AAEhJ,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAyB,EACzB,QAAuC,EAAE;IAEzC,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC;IAC1D,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC;IAEhD,IAAI,CAAC,aAAa,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAoB,2BAA2B,EAAE;QAChF,gBAAgB,EAAE,aAAa;QAC/B,WAAW,EAAE,QAAQ;QACrB,UAAU,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;KACjC,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,0CAA0C,CAAC,CAAC;IACxF,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,MAAyB,EACzB,SAAyB;IAEzB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAA6B,2BAA2B,EAAE;QACzF,YAAY,EAAE,SAAS,IAAI,IAAI;KAChC,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,gDAAgD,CAAC,CAAC;IAC9F,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,8BAA8B,EAAE,cAAc,EAAE,KAAK,EAAE,sBAAsB,EAAE,GAAG,EAAE,EAAE,CAAC;AACvL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,MAAyB,EACzB,KAAsC;IAEtC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACtE,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAmC,0BAA0B,EAAE;QAC9F,YAAY,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;QAC1D,cAAc,EAAE,KAAK,CAAC,WAAW;QACjC,SAAS,EAAE,KAAK,CAAC,OAAO;QACxB,OAAO,EAAE,KAAK;KACf,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,mCAAmC,CAAC,CAAC;IACjF,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export type * from "./controleComercialSupabaseTiposBase.js";
2
+ export type * from "./controleComercialSupabaseTiposConta.js";
3
+ export type * from "./controleComercialSupabaseTiposAdmin.js";
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=controleComercialSupabaseTipos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controleComercialSupabaseTipos.js","sourceRoot":"","sources":["../src/controleComercialSupabaseTipos.ts"],"names":[],"mappings":""}
@@ -0,0 +1,152 @@
1
+ export interface SemaAdminMetrics {
2
+ totalUsers: number;
3
+ activeUsers: number;
4
+ onlineUsers: number;
5
+ workspaces: number;
6
+ projects: number;
7
+ plans: number;
8
+ activeMcpKeys: number;
9
+ semasToday: number;
10
+ chargedToday: number;
11
+ callsToday: number;
12
+ queuedAuthActions: number;
13
+ }
14
+ export interface SemaAdminUser {
15
+ id: string;
16
+ email: string;
17
+ displayName?: string | null;
18
+ status: string;
19
+ emailVerified: boolean;
20
+ provider?: string | null;
21
+ locale?: string | null;
22
+ timezone?: string | null;
23
+ organizationId?: string | null;
24
+ organizationName?: string | null;
25
+ organizationRole?: string | null;
26
+ planId?: string | null;
27
+ planName?: string | null;
28
+ monthlySemas?: number | null;
29
+ usedSemas?: number | null;
30
+ reservedSemas?: number | null;
31
+ lastSeenAt?: string | null;
32
+ lastSignInAt?: string | null;
33
+ onlineNow: boolean;
34
+ infiniteSemas: boolean;
35
+ }
36
+ export interface SemaAdminPlan {
37
+ id: string;
38
+ name: string;
39
+ monthlySemas: number;
40
+ projectLimit: number;
41
+ userLimit: number;
42
+ retentionDays: number;
43
+ monthlyPriceUsd: number;
44
+ isPublic: boolean;
45
+ updatedAt?: string;
46
+ }
47
+ export interface SemaAdminSiteContent {
48
+ contentKey: string;
49
+ locale: "pt" | "en" | "es" | string;
50
+ title?: string | null;
51
+ subtitle?: string | null;
52
+ body?: string | null;
53
+ published: boolean;
54
+ updatedAt?: string | null;
55
+ updatedBy?: string | null;
56
+ }
57
+ export interface SemaAdminAuthAction {
58
+ id: string;
59
+ targetUserId: string;
60
+ targetEmail?: string | null;
61
+ actionType: "change_email" | "change_password" | "confirm_email" | "suspend_auth" | string;
62
+ status: "queued" | "executed" | "failed" | "canceled" | string;
63
+ safePayload?: Record<string, unknown>;
64
+ reason?: string;
65
+ requestedBy?: string | null;
66
+ requestedAt?: string;
67
+ executedAt?: string | null;
68
+ executionError?: string | null;
69
+ }
70
+ export interface SemaAdminAuditEvent {
71
+ id: string;
72
+ event: string;
73
+ resourceType?: string | null;
74
+ resourceId?: string | null;
75
+ actorUserId?: string | null;
76
+ metadata?: Record<string, unknown>;
77
+ createdAt?: string;
78
+ }
79
+ export interface SemaAdminConsole {
80
+ authorized: boolean;
81
+ metrics: SemaAdminMetrics;
82
+ users: SemaAdminUser[];
83
+ plans: SemaAdminPlan[];
84
+ siteContent: SemaAdminSiteContent[];
85
+ onlineUsers: SemaAdminUser[];
86
+ audit: SemaAdminAuditEvent[];
87
+ authActions: SemaAdminAuthAction[];
88
+ }
89
+ export interface ConsultarPainelAdminInput {
90
+ search?: string;
91
+ limit?: number;
92
+ }
93
+ export interface RegistrarPresencaAdminInput {
94
+ page?: string;
95
+ metadata?: Record<string, unknown>;
96
+ }
97
+ export interface RegistrarPresencaAdminResult {
98
+ registered: boolean;
99
+ onlineNow: number;
100
+ }
101
+ export interface SalvarPlanoAdminInput {
102
+ id: string;
103
+ name: string;
104
+ monthlySemas: number;
105
+ projectLimit: number;
106
+ userLimit: number;
107
+ retentionDays: number;
108
+ monthlyPriceUsd: number;
109
+ isPublic?: boolean;
110
+ }
111
+ export interface SalvarPlanoAdminResult {
112
+ saved: boolean;
113
+ auditId: string;
114
+ plan: SemaAdminPlan;
115
+ }
116
+ export interface AtualizarUsuarioAdminInput {
117
+ userId: string;
118
+ planId?: string | null;
119
+ status?: "active" | "disabled" | string | null;
120
+ infiniteSemas?: boolean | null;
121
+ adminNote?: string | null;
122
+ }
123
+ export interface AtualizarUsuarioAdminResult {
124
+ updated: boolean;
125
+ auditId: string;
126
+ user: SemaAdminUser;
127
+ }
128
+ export interface SalvarConteudoSiteAdminInput {
129
+ contentKey: string;
130
+ locale: "pt" | "en" | "es" | string;
131
+ title?: string | null;
132
+ subtitle?: string | null;
133
+ body?: string | null;
134
+ published?: boolean;
135
+ }
136
+ export interface SalvarConteudoSiteAdminResult {
137
+ saved: boolean;
138
+ auditId: string;
139
+ content: SemaAdminSiteContent;
140
+ }
141
+ export interface SolicitarAcaoAuthAdminInput {
142
+ targetUserId: string;
143
+ actionType: "change_email" | "change_password" | "confirm_email" | "suspend_auth" | string;
144
+ newEmail?: string | null;
145
+ reason: string;
146
+ }
147
+ export interface SolicitarAcaoAuthAdminResult {
148
+ requested: boolean;
149
+ auditId: string;
150
+ requiresPrivilegedFunction: boolean;
151
+ action: SemaAdminAuthAction;
152
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=controleComercialSupabaseTiposAdmin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controleComercialSupabaseTiposAdmin.js","sourceRoot":"","sources":["../src/controleComercialSupabaseTiposAdmin.ts"],"names":[],"mappings":""}
@@ -0,0 +1,169 @@
1
+ export type SemaPlanId = "free" | "pro" | "team" | "agency";
2
+ export type SemaAuthProvider = "email_password" | "google" | "facebook" | "microsoft";
3
+ export interface SupabaseRpcResult<T> {
4
+ data: T | null;
5
+ error: {
6
+ message?: string;
7
+ } | null;
8
+ }
9
+ export interface SupabaseRpcClient {
10
+ rpc<T>(functionName: string, params: Record<string, unknown>): Promise<SupabaseRpcResult<T>>;
11
+ }
12
+ export interface ProvisionarWorkspaceFreeInput {
13
+ authUserId: string;
14
+ email: string;
15
+ emailVerified: boolean;
16
+ authProvider: SemaAuthProvider | string;
17
+ displayName?: string;
18
+ organizationName?: string;
19
+ projectName?: string;
20
+ }
21
+ export interface ProvisionarWorkspaceFreeResult {
22
+ usuario_id: string;
23
+ organizacao_id: string;
24
+ projeto_id: string;
25
+ assinatura_id: string;
26
+ periodo_inicio: string;
27
+ semas_mensais: number;
28
+ }
29
+ export interface ConsultarContextoComercialUsuarioInput {
30
+ authUserId: string;
31
+ }
32
+ export interface ClaimFreeWorkspaceInput {
33
+ displayName?: string;
34
+ organizationName?: string;
35
+ projectName?: string;
36
+ authProvider?: SemaAuthProvider | string;
37
+ }
38
+ export interface ConsultaContextoComercialUsuarioPlano {
39
+ id: SemaPlanId;
40
+ name: string;
41
+ monthly_semas: number;
42
+ }
43
+ export interface ConsultaContextoComercialUsuarioResult {
44
+ authUserId: string;
45
+ tabelas: readonly string[];
46
+ filtros: {
47
+ perfil: {
48
+ id: string;
49
+ };
50
+ memberships: {
51
+ user_id: string;
52
+ };
53
+ };
54
+ }
55
+ export interface SemaUsageBreakdownItem {
56
+ projectId?: string | null;
57
+ projectName?: string | null;
58
+ projectSlug?: string | null;
59
+ clientId?: string | null;
60
+ clientName?: string | null;
61
+ tokenPrefix?: string | null;
62
+ toolName?: string | null;
63
+ requestedSemas: number;
64
+ chargedSemas: number;
65
+ usedSemas?: number;
66
+ callCount: number;
67
+ adminBypassCount?: number;
68
+ share?: number;
69
+ lastUsedAt?: string | null;
70
+ usagePeriods?: SemaUsagePeriods;
71
+ dailySeries?: SemaUsageDailyPoint[];
72
+ }
73
+ export interface SemaUsagePeriod {
74
+ requestedSemas: number;
75
+ chargedSemas: number;
76
+ usedSemas?: number;
77
+ callCount: number;
78
+ adminBypassCount?: number;
79
+ }
80
+ export interface SemaUsagePeriods {
81
+ today: SemaUsagePeriod;
82
+ week: SemaUsagePeriod;
83
+ month: SemaUsagePeriod;
84
+ all: SemaUsagePeriod;
85
+ }
86
+ export interface SemaUsageDailyPoint {
87
+ date: string;
88
+ requestedSemas: number;
89
+ chargedSemas: number;
90
+ usedSemas?: number;
91
+ callCount: number;
92
+ }
93
+ export interface SemaUsageSummary {
94
+ totalRequestedSemas: number;
95
+ totalChargedSemas: number;
96
+ callCount: number;
97
+ adminBypassCount: number;
98
+ byProject: SemaUsageBreakdownItem[];
99
+ byKey: SemaUsageBreakdownItem[];
100
+ byTool: SemaUsageBreakdownItem[];
101
+ usagePeriods?: SemaUsagePeriods;
102
+ dailySeries?: SemaUsageDailyPoint[];
103
+ }
104
+ export interface SemaOperationCost {
105
+ code: string;
106
+ name: string;
107
+ category: string;
108
+ toolName?: string | null;
109
+ pipelineCode?: string | null;
110
+ semas: number;
111
+ costBasis: "operational_cost_100_percent" | string;
112
+ aiCostIncluded: false;
113
+ metadata?: Record<string, unknown>;
114
+ }
115
+ export interface SemaProfilePreference {
116
+ profileTool: string;
117
+ displayName: string;
118
+ category: "base" | "creative" | "editorial" | "ops" | string;
119
+ description: string;
120
+ defaultEnabled: boolean;
121
+ globalEnabled: boolean;
122
+ projectEnabled?: boolean | null;
123
+ effectiveEnabled: boolean;
124
+ effectiveScope: "global" | "project" | string;
125
+ pipelineCodes?: string[];
126
+ }
127
+ export interface SemaPipelineSuggestion {
128
+ code: string;
129
+ name: string;
130
+ description: string;
131
+ requiredProfiles: string[];
132
+ activeProfiles: number;
133
+ requiredCount: number;
134
+ suggested: boolean;
135
+ estimatedSemas: number;
136
+ costBasis: "operational_cost_100_percent" | string;
137
+ aiCostIncluded: false;
138
+ }
139
+ export interface SemaProfileSettingsContext {
140
+ profiles: SemaProfilePreference[];
141
+ pipelines: SemaPipelineSuggestion[];
142
+ costPolicy: {
143
+ unit: "SEMA" | string;
144
+ costBasis: "operational_cost_100_percent" | string;
145
+ aiCostIncluded: false;
146
+ heavyOperationMaxSemas: number;
147
+ };
148
+ }
149
+ export interface SemaMcpClientSummary {
150
+ id: string;
151
+ name: string;
152
+ tokenPrefix?: string | null;
153
+ token?: string | null;
154
+ copyable?: boolean;
155
+ status: string;
156
+ organizationId?: string;
157
+ defaultProjectId?: string | null;
158
+ projectId?: string | null;
159
+ projectName?: string | null;
160
+ projectSlug?: string | null;
161
+ scope?: "workspace" | "project" | string;
162
+ createdAt?: string;
163
+ updatedAt?: string;
164
+ lastUsedAt?: string | null;
165
+ requestedSemas?: number;
166
+ chargedSemas?: number;
167
+ usedSemas?: number;
168
+ callCount?: number;
169
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=controleComercialSupabaseTiposBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controleComercialSupabaseTiposBase.js","sourceRoot":"","sources":["../src/controleComercialSupabaseTiposBase.ts"],"names":[],"mappings":""}