import fetch from "node-fetch"; const SUPABASE_URL = "https://yuanqfswhberkoevtmfr.supabase.co"; const SUPABASE_ANON_KEY = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6Inl1YW5xZnN3aGJlcmtvZXZ0bWZyIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NTQ5NTQzNjksImV4cCI6MjA3MDUzMDM2OX0.g8Fm4XAvtX46zifBZnYVH4tVuQkqUH6Ia9CXQj4DztQ"; console.log("\n👩‍💼 CRIAR USUÁRIO SECRETÁRIA\n"); async function criarSecretaria() { // Dados da secretária const secretariaData = { email: "secretaria@mediconnect.com", password: "secretaria123", nome: "Maria Secretária", telefone: "79999998888", cpf: "11111111111", }; console.log("📝 Criando secretária..."); console.log(` Email: ${secretariaData.email}`); console.log(` Senha: ${secretariaData.password}`); console.log(` Nome: ${secretariaData.nome}\n`); try { // PASSO 1: Criar usuário no auth console.log("🔐 Criando usuário de autenticação...\n"); const signupResponse = await fetch(`${SUPABASE_URL}/auth/v1/signup`, { method: "POST", headers: { apikey: SUPABASE_ANON_KEY, "Content-Type": "application/json", }, body: JSON.stringify({ email: secretariaData.email, password: secretariaData.password, data: { full_name: secretariaData.nome, phone: secretariaData.telefone, cpf: secretariaData.cpf, role: "secretaria", }, }), }); if (!signupResponse.ok) { const error = await signupResponse.text(); console.log("❌ Erro ao criar usuário:", signupResponse.status); console.log(error); return; } const signupData = await signupResponse.json(); const userId = signupData.user?.id; const accessToken = signupData.access_token; console.log("✅ Usuário criado com sucesso!"); console.log(` User ID: ${userId}`); console.log(` Token: ${accessToken?.substring(0, 50)}...\n`); // PASSO 2: Criar perfil na tabela profiles (se existir) console.log("📋 Criando perfil...\n"); const profileResponse = await fetch(`${SUPABASE_URL}/rest/v1/profiles`, { method: "POST", headers: { apikey: SUPABASE_ANON_KEY, Authorization: `Bearer ${accessToken}`, "Content-Type": "application/json", Prefer: "return=representation", }, body: JSON.stringify({ id: userId, full_name: secretariaData.nome, email: secretariaData.email, phone: secretariaData.telefone, role: "secretaria", }), }); if (profileResponse.ok || profileResponse.status === 201) { console.log("✅ Perfil criado com sucesso!\n"); } else if (profileResponse.status === 409) { console.log("⚠️ Perfil já existe (isso é normal)\n"); } else { const error = await profileResponse.text(); console.log("⚠️ Aviso ao criar perfil:", profileResponse.status); console.log(error); console.log( "(Isso pode ser normal se a tabela profiles não existir ou tiver trigger)\n" ); } // PASSO 3: Verificar se foi criado console.log("📊 RESUMO:\n"); console.log("✅ Secretária criada com sucesso!"); console.log("\n📝 Credenciais para login:"); console.log(` Email: ${secretariaData.email}`); console.log(` Senha: ${secretariaData.password}`); console.log("\n🔗 Acesse: http://localhost:5173/secretaria"); console.log("\n"); } catch (error) { console.error("❌ Erro:", error.message); } } criarSecretaria();