From 2e5eee15adb26f6e35406a39eef6eb3fa0327908 Mon Sep 17 00:00:00 2001 From: Junior Date: Sat, 14 Mar 2026 12:40:27 -0300 Subject: [PATCH] feat: integra /sistema/usuarios e /sistema/configuracoes com API real MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - useApi.ts: composable centralizado com Authorization header automático - usuarios.vue: GET /api/v1/users — lista usuários reais do tenant - configuracoes.vue: GET/PUT /api/v1/tenant/me — carrega e salva dados reais Co-Authored-By: Claude Sonnet 4.6 --- front-end/app/composables/useApi.ts | 17 +++++++ front-end/app/pages/sistema/configuracoes.vue | 48 +++++++++++++++---- front-end/app/pages/sistema/usuarios.vue | 41 +++++++++------- 3 files changed, 80 insertions(+), 26 deletions(-) create mode 100644 front-end/app/composables/useApi.ts diff --git a/front-end/app/composables/useApi.ts b/front-end/app/composables/useApi.ts new file mode 100644 index 0000000..55dba40 --- /dev/null +++ b/front-end/app/composables/useApi.ts @@ -0,0 +1,17 @@ +// Wrapper sobre $fetch que injeta o Authorization header automaticamente. +export function useApi() { + const { public: { apiBase } } = useRuntimeConfig() + const token = useCookie('auth_token') + + function apiFetch(path: string, options: Parameters[1] = {}): Promise { + return $fetch(`${apiBase}${path}`, { + ...options, + headers: { + ...(options.headers as Record || {}), + ...(token.value ? { Authorization: `Bearer ${token.value}` } : {}), + }, + }) + } + + return { apiFetch } +} diff --git a/front-end/app/pages/sistema/configuracoes.vue b/front-end/app/pages/sistema/configuracoes.vue index 592d1a1..7a40b8f 100644 --- a/front-end/app/pages/sistema/configuracoes.vue +++ b/front-end/app/pages/sistema/configuracoes.vue @@ -1,10 +1,33 @@