Created
November 11, 2023 14:29
-
-
Save lucca65/3844999674af14d8683686ec77422ce7 to your computer and use it in GitHub Desktop.
Prisma file with models from Supabase
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
model audit_log_entries { | |
instance_id String? @db.Uuid | |
id String @id @db.Uuid | |
payload Json? @db.Json | |
created_at DateTime? @db.Timestamptz(6) | |
ip_address String @default("") @db.VarChar(64) | |
@@index([instance_id], map: "audit_logs_instance_id_idx") | |
@@schema("auth") | |
} | |
model flow_state { | |
id String @id @db.Uuid | |
user_id String? @db.Uuid | |
auth_code String | |
code_challenge_method code_challenge_method | |
code_challenge String | |
provider_type String | |
provider_access_token String? | |
provider_refresh_token String? | |
created_at DateTime? @db.Timestamptz(6) | |
updated_at DateTime? @db.Timestamptz(6) | |
authentication_method String | |
@@index([created_at(sort: Desc)]) | |
@@index([auth_code], map: "idx_auth_code") | |
@@index([user_id, authentication_method], map: "idx_user_id_auth_method") | |
@@schema("auth") | |
} | |
model identities { | |
id String | |
user_id String @db.Uuid | |
identity_data Json | |
provider String | |
last_sign_in_at DateTime? @db.Timestamptz(6) | |
created_at DateTime? @db.Timestamptz(6) | |
updated_at DateTime? @db.Timestamptz(6) | |
email String? @default(dbgenerated("lower((identity_data ->> 'email'::text))")) | |
users users @relation(fields: [user_id], references: [id], onDelete: Cascade, onUpdate: NoAction) | |
@@id([provider, id]) | |
@@index([email]) | |
@@index([user_id]) | |
@@schema("auth") | |
} | |
model instances { | |
id String @id @db.Uuid | |
uuid String? @db.Uuid | |
raw_base_config String? | |
created_at DateTime? @db.Timestamptz(6) | |
updated_at DateTime? @db.Timestamptz(6) | |
@@schema("auth") | |
} | |
model mfa_amr_claims { | |
session_id String @db.Uuid | |
created_at DateTime @db.Timestamptz(6) | |
updated_at DateTime @db.Timestamptz(6) | |
authentication_method String | |
id String @id(map: "amr_id_pk") @db.Uuid | |
sessions sessions @relation(fields: [session_id], references: [id], onDelete: Cascade, onUpdate: NoAction) | |
@@unique([session_id, authentication_method], map: "mfa_amr_claims_session_id_authentication_method_pkey") | |
@@schema("auth") | |
} | |
model mfa_challenges { | |
id String @id @db.Uuid | |
factor_id String @db.Uuid | |
created_at DateTime @db.Timestamptz(6) | |
verified_at DateTime? @db.Timestamptz(6) | |
ip_address String @db.Inet | |
mfa_factors mfa_factors @relation(fields: [factor_id], references: [id], onDelete: Cascade, onUpdate: NoAction, map: "mfa_challenges_auth_factor_id_fkey") | |
@@index([created_at(sort: Desc)], map: "mfa_challenge_created_at_idx") | |
@@schema("auth") | |
} | |
model mfa_factors { | |
id String @id @db.Uuid | |
user_id String @db.Uuid | |
friendly_name String? | |
factor_type factor_type | |
status factor_status | |
created_at DateTime @db.Timestamptz(6) | |
updated_at DateTime @db.Timestamptz(6) | |
secret String? | |
mfa_challenges mfa_challenges[] | |
users users @relation(fields: [user_id], references: [id], onDelete: Cascade, onUpdate: NoAction) | |
@@index([user_id, created_at], map: "factor_id_created_at_idx") | |
@@schema("auth") | |
} | |
model refresh_tokens { | |
instance_id String? @db.Uuid | |
id BigInt @id @default(autoincrement()) | |
token String? @unique(map: "refresh_tokens_token_unique") @db.VarChar(255) | |
user_id String? @db.VarChar(255) | |
revoked Boolean? | |
created_at DateTime? @db.Timestamptz(6) | |
updated_at DateTime? @db.Timestamptz(6) | |
parent String? @db.VarChar(255) | |
session_id String? @db.Uuid | |
sessions sessions? @relation(fields: [session_id], references: [id], onDelete: Cascade, onUpdate: NoAction) | |
@@index([instance_id]) | |
@@index([instance_id, user_id]) | |
@@index([parent]) | |
@@index([session_id, revoked]) | |
@@index([updated_at(sort: Desc)]) | |
@@schema("auth") | |
} | |
/// This table contains check constraints and requires additional setup for migrations. Visit https://pris.ly/d/check-constraints for more info. | |
model saml_providers { | |
id String @id @db.Uuid | |
sso_provider_id String @db.Uuid | |
entity_id String @unique | |
metadata_xml String | |
metadata_url String? | |
attribute_mapping Json? | |
created_at DateTime? @db.Timestamptz(6) | |
updated_at DateTime? @db.Timestamptz(6) | |
sso_providers sso_providers @relation(fields: [sso_provider_id], references: [id], onDelete: Cascade, onUpdate: NoAction) | |
@@index([sso_provider_id]) | |
@@schema("auth") | |
} | |
/// This table contains check constraints and requires additional setup for migrations. Visit https://pris.ly/d/check-constraints for more info. | |
model saml_relay_states { | |
id String @id @db.Uuid | |
sso_provider_id String @db.Uuid | |
request_id String | |
for_email String? | |
redirect_to String? | |
from_ip_address String? @db.Inet | |
created_at DateTime? @db.Timestamptz(6) | |
updated_at DateTime? @db.Timestamptz(6) | |
sso_providers sso_providers @relation(fields: [sso_provider_id], references: [id], onDelete: Cascade, onUpdate: NoAction) | |
@@index([created_at(sort: Desc)]) | |
@@index([for_email]) | |
@@index([sso_provider_id]) | |
@@schema("auth") | |
} | |
model schema_migrations { | |
version String @id @db.VarChar(255) | |
@@schema("auth") | |
} | |
model sessions { | |
id String @id @db.Uuid | |
user_id String @db.Uuid | |
created_at DateTime? @db.Timestamptz(6) | |
updated_at DateTime? @db.Timestamptz(6) | |
factor_id String? @db.Uuid | |
aal aal_level? | |
not_after DateTime? @db.Timestamptz(6) | |
mfa_amr_claims mfa_amr_claims[] | |
refresh_tokens refresh_tokens[] | |
users users @relation(fields: [user_id], references: [id], onDelete: Cascade, onUpdate: NoAction) | |
@@index([not_after(sort: Desc)]) | |
@@index([user_id]) | |
@@index([user_id, created_at], map: "user_id_created_at_idx") | |
@@schema("auth") | |
} | |
/// This table contains check constraints and requires additional setup for migrations. Visit https://pris.ly/d/check-constraints for more info. | |
/// This model contains an expression index which requires additional setup for migrations. Visit https://pris.ly/d/expression-indexes for more info. | |
model sso_domains { | |
id String @id @db.Uuid | |
sso_provider_id String @db.Uuid | |
domain String | |
created_at DateTime? @db.Timestamptz(6) | |
updated_at DateTime? @db.Timestamptz(6) | |
sso_providers sso_providers @relation(fields: [sso_provider_id], references: [id], onDelete: Cascade, onUpdate: NoAction) | |
@@index([sso_provider_id]) | |
@@schema("auth") | |
} | |
/// This table contains check constraints and requires additional setup for migrations. Visit https://pris.ly/d/check-constraints for more info. | |
/// This model contains an expression index which requires additional setup for migrations. Visit https://pris.ly/d/expression-indexes for more info. | |
model sso_providers { | |
id String @id @db.Uuid | |
resource_id String? | |
created_at DateTime? @db.Timestamptz(6) | |
updated_at DateTime? @db.Timestamptz(6) | |
saml_providers saml_providers[] | |
saml_relay_states saml_relay_states[] | |
sso_domains sso_domains[] | |
@@schema("auth") | |
} | |
/// This table contains check constraints and requires additional setup for migrations. Visit https://pris.ly/d/check-constraints for more info. | |
/// This model contains an expression index which requires additional setup for migrations. Visit https://pris.ly/d/expression-indexes for more info. | |
model users { | |
instance_id String? @db.Uuid | |
id String @id @db.Uuid | |
aud String? @db.VarChar(255) | |
role String? @db.VarChar(255) | |
email String? @db.VarChar(255) | |
encrypted_password String? @db.VarChar(255) | |
email_confirmed_at DateTime? @db.Timestamptz(6) | |
invited_at DateTime? @db.Timestamptz(6) | |
confirmation_token String? @db.VarChar(255) | |
confirmation_sent_at DateTime? @db.Timestamptz(6) | |
recovery_token String? @db.VarChar(255) | |
recovery_sent_at DateTime? @db.Timestamptz(6) | |
email_change_token_new String? @db.VarChar(255) | |
email_change String? @db.VarChar(255) | |
email_change_sent_at DateTime? @db.Timestamptz(6) | |
last_sign_in_at DateTime? @db.Timestamptz(6) | |
raw_app_meta_data Json? | |
raw_user_meta_data Json? | |
is_super_admin Boolean? | |
created_at DateTime? @db.Timestamptz(6) | |
updated_at DateTime? @db.Timestamptz(6) | |
phone String? @unique | |
phone_confirmed_at DateTime? @db.Timestamptz(6) | |
phone_change String? @default("") | |
phone_change_token String? @default("") @db.VarChar(255) | |
phone_change_sent_at DateTime? @db.Timestamptz(6) | |
confirmed_at DateTime? @default(dbgenerated("LEAST(email_confirmed_at, phone_confirmed_at)")) @db.Timestamptz(6) | |
email_change_token_current String? @default("") @db.VarChar(255) | |
email_change_confirm_status Int? @default(0) @db.SmallInt | |
banned_until DateTime? @db.Timestamptz(6) | |
reauthentication_token String? @default("") @db.VarChar(255) | |
reauthentication_sent_at DateTime? @db.Timestamptz(6) | |
is_sso_user Boolean @default(false) | |
deleted_at DateTime? @db.Timestamptz(6) | |
identities identities[] | |
mfa_factors mfa_factors[] | |
sessions sessions[] | |
members Member? | |
buckets buckets[] | |
@@index([instance_id]) | |
@@schema("auth") | |
} | |
/// This model contains row level security and requires additional setup for migrations. Visit https://pris.ly/d/row-level-security for more info. | |
model buckets { | |
id String @id | |
name String @unique(map: "bname") | |
owner String? @db.Uuid | |
created_at DateTime? @default(now()) @db.Timestamptz(6) | |
updated_at DateTime? @default(now()) @db.Timestamptz(6) | |
public Boolean? @default(false) | |
avif_autodetection Boolean? @default(false) | |
file_size_limit BigInt? | |
allowed_mime_types String[] | |
users users? @relation(fields: [owner], references: [id], onDelete: NoAction, onUpdate: NoAction) | |
objects objects[] | |
@@schema("storage") | |
} | |
/// This model contains row level security and requires additional setup for migrations. Visit https://pris.ly/d/row-level-security for more info. | |
model migrations { | |
id Int @id | |
name String @unique @db.VarChar(100) | |
hash String @db.VarChar(40) | |
executed_at DateTime? @default(now()) @db.Timestamp(6) | |
@@schema("storage") | |
} | |
/// This model contains row level security and requires additional setup for migrations. Visit https://pris.ly/d/row-level-security for more info. | |
model objects { | |
id String @id @default(dbgenerated("uuid_generate_v4()")) @db.Uuid | |
bucket_id String? | |
name String? | |
owner String? @db.Uuid | |
created_at DateTime? @default(now()) @db.Timestamptz(6) | |
updated_at DateTime? @default(now()) @db.Timestamptz(6) | |
last_accessed_at DateTime? @default(now()) @db.Timestamptz(6) | |
metadata Json? | |
path_tokens String[] @default(dbgenerated("string_to_array(name, '/'::text)")) | |
version String? | |
buckets buckets? @relation(fields: [bucket_id], references: [id], onDelete: NoAction, onUpdate: NoAction, map: "objects_bucketId_fkey") | |
@@unique([bucket_id, name], map: "bucketid_objname") | |
@@index([name], map: "name_prefix_search") | |
@@schema("storage") | |
} | |
enum aal_level { | |
aal1 | |
aal2 | |
aal3 | |
@@schema("auth") | |
} | |
enum code_challenge_method { | |
s256 | |
plain | |
@@schema("auth") | |
} | |
enum factor_status { | |
unverified | |
verified | |
@@schema("auth") | |
} | |
enum factor_type { | |
totp | |
webauthn | |
@@schema("auth") | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment