User can signup / signin (WIP)

This commit is contained in:
ChatonDeAru
2024-09-14 01:40:55 +02:00
committed by ChatonDeAru (Romain)
parent c35de52aec
commit 37b2238b84
16 changed files with 663 additions and 365 deletions

View File

@@ -0,0 +1,7 @@
## Generate types from live database
`supabase gen types --lang=typescript --project-id YourProjectId > types/database.types.ts`
## Generate types when using local environment
`supabase gen types --lang=typescript --local > types/database.types.ts`

View File

@@ -0,0 +1,14 @@
{
"name": "@pel/supabase",
"type": "module",
"private": true,
"packageManager": "pnpm@9.9.0",
"main": "./type.ts",
"files": [
"types.ts"
],
"scripts": {
"lint": "eslint .",
"up": "taze major -I"
}
}

187
modules/supabase/types.ts Normal file
View File

@@ -0,0 +1,187 @@
// Generated types from supabase admin cli
export type Json =
| string
| number
| boolean
| null
| { [key: string]: Json | undefined }
| Json[]
export type Database = {
public: {
Tables: {
profiles: {
Row: {
birthday: string | null
candidacy_message: string | null
created_at: string
description: string | null
discord_avatar_url: string | null
discord_id: string | null
displayname: string | null
firstname: string | null
id: string
is_adult: boolean
is_member: boolean
is_validated: boolean
last_validation_date: string | null
lastname: string | null
mail: string
pel_editions: number[]
phone_number: number | null
picture_url: string | null
updated_at: string | null
validation_comment: string | null
}
Insert: {
birthday?: string | null
candidacy_message?: string | null
created_at?: string
description?: string | null
discord_avatar_url?: string | null
discord_id?: string | null
displayname?: string | null
firstname?: string | null
id?: string
is_adult?: boolean
is_member?: boolean
is_validated?: boolean
last_validation_date?: string | null
lastname?: string | null
mail: string
pel_editions?: number[]
phone_number?: number | null
picture_url?: string | null
updated_at?: string | null
validation_comment?: string | null
}
Update: {
birthday?: string | null
candidacy_message?: string | null
created_at?: string
description?: string | null
discord_avatar_url?: string | null
discord_id?: string | null
displayname?: string | null
firstname?: string | null
id?: string
is_adult?: boolean
is_member?: boolean
is_validated?: boolean
last_validation_date?: string | null
lastname?: string | null
mail?: string
pel_editions?: number[]
phone_number?: number | null
picture_url?: string | null
updated_at?: string | null
validation_comment?: string | null
}
Relationships: [
{
foreignKeyName: "profiles_id_fkey"
columns: ["id"]
isOneToOne: true
referencedRelation: "users"
referencedColumns: ["id"]
},
]
}
}
Views: {
[_ in never]: never
}
Functions: {
[_ in never]: never
}
Enums: {
[_ in never]: never
}
CompositeTypes: {
[_ in never]: never
}
}
}
type PublicSchema = Database[Extract<keyof Database, "public">]
export type Tables<
PublicTableNameOrOptions extends
| keyof (PublicSchema["Tables"] & PublicSchema["Views"])
| { schema: keyof Database },
TableName extends PublicTableNameOrOptions extends { schema: keyof Database }
? keyof (Database[PublicTableNameOrOptions["schema"]]["Tables"] &
Database[PublicTableNameOrOptions["schema"]]["Views"])
: never = never,
> = PublicTableNameOrOptions extends { schema: keyof Database }
? (Database[PublicTableNameOrOptions["schema"]]["Tables"] &
Database[PublicTableNameOrOptions["schema"]]["Views"])[TableName] extends {
Row: infer R
}
? R
: never
: PublicTableNameOrOptions extends keyof (PublicSchema["Tables"] &
PublicSchema["Views"])
? (PublicSchema["Tables"] &
PublicSchema["Views"])[PublicTableNameOrOptions] extends {
Row: infer R
}
? R
: never
: never
export type TablesInsert<
PublicTableNameOrOptions extends
| keyof PublicSchema["Tables"]
| { schema: keyof Database },
TableName extends PublicTableNameOrOptions extends { schema: keyof Database }
? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"]
: never = never,
> = PublicTableNameOrOptions extends { schema: keyof Database }
? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends {
Insert: infer I
}
? I
: never
: PublicTableNameOrOptions extends keyof PublicSchema["Tables"]
? PublicSchema["Tables"][PublicTableNameOrOptions] extends {
Insert: infer I
}
? I
: never
: never
export type TablesUpdate<
PublicTableNameOrOptions extends
| keyof PublicSchema["Tables"]
| { schema: keyof Database },
TableName extends PublicTableNameOrOptions extends { schema: keyof Database }
? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"]
: never = never,
> = PublicTableNameOrOptions extends { schema: keyof Database }
? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends {
Update: infer U
}
? U
: never
: PublicTableNameOrOptions extends keyof PublicSchema["Tables"]
? PublicSchema["Tables"][PublicTableNameOrOptions] extends {
Update: infer U
}
? U
: never
: never
export type Enums<
PublicEnumNameOrOptions extends
| keyof PublicSchema["Enums"]
| { schema: keyof Database },
EnumName extends PublicEnumNameOrOptions extends { schema: keyof Database }
? keyof Database[PublicEnumNameOrOptions["schema"]]["Enums"]
: never = never,
> = PublicEnumNameOrOptions extends { schema: keyof Database }
? Database[PublicEnumNameOrOptions["schema"]]["Enums"][EnumName]
: PublicEnumNameOrOptions extends keyof PublicSchema["Enums"]
? PublicSchema["Enums"][PublicEnumNameOrOptions]
: never