63 lines
1.8 KiB
C#
63 lines
1.8 KiB
C#
|
using UnityEngine;
|
||
|
using Supabase;
|
||
|
using System.Threading.Tasks;
|
||
|
|
||
|
public class SupabaseEmailAuth : MonoBehaviour
|
||
|
{
|
||
|
[SerializeField] private string supabaseUrl = "https://uhmzqrqjsaqfbnvvimgy.supabase.co";
|
||
|
[SerializeField] private string supabaseAnonKey = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InVobXpxcnFqc2FxZmJudnZpbWd5Iiwicm9sZSI6ImFub24iLCJpYXQiOjE3NTk5MTI1MjMsImV4cCI6MjA3NTQ4ODUyM30.VTX0zza05zNKg6M-1F3ACYxEM53dgf-dRtZOxb3uliY";
|
||
|
|
||
|
private Client client;
|
||
|
|
||
|
private async void Start()
|
||
|
{
|
||
|
var options = new SupabaseOptions
|
||
|
{
|
||
|
AutoRefreshToken = true,
|
||
|
AutoConnectRealtime = false
|
||
|
};
|
||
|
|
||
|
client = new Client(supabaseUrl, supabaseAnonKey, options);
|
||
|
await client.InitializeAsync();
|
||
|
Debug.Log("Supabase initialized");
|
||
|
}
|
||
|
|
||
|
public async Task SignUp(string email, string password)
|
||
|
{
|
||
|
try
|
||
|
{
|
||
|
var session = await client.Auth.SignUp(email, password);
|
||
|
Debug.Log("Signup success: " + session?.User?.Email);
|
||
|
}
|
||
|
catch (System.Exception e)
|
||
|
{
|
||
|
Debug.LogError("Signup failed: " + e.Message);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public async Task SignIn(string email, string password)
|
||
|
{
|
||
|
try
|
||
|
{
|
||
|
var session = await client.Auth.SignIn(email, password);
|
||
|
Debug.Log("Signin success: " + session?.User?.Email);
|
||
|
}
|
||
|
catch (System.Exception e)
|
||
|
{
|
||
|
Debug.LogError("Signin failed: " + e.Message);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public async Task SignOut()
|
||
|
{
|
||
|
try
|
||
|
{
|
||
|
await client.Auth.SignOut();
|
||
|
Debug.Log("Signed out successfully.");
|
||
|
}
|
||
|
catch (System.Exception e)
|
||
|
{
|
||
|
Debug.LogError("Signout failed: " + e.Message);
|
||
|
}
|
||
|
}
|
||
|
}
|