chore: npm run gen:types

This commit is contained in:
2025-06-03 20:03:22 +01:00
parent 8cda560ba8
commit 8b09523b21
4 changed files with 197 additions and 187 deletions

View File

@@ -4,3 +4,4 @@ pnpm-lock.yaml
yarn.lock
bun.lock
bun.lockb
src/lib/database.d.ts

View File

@@ -27,6 +27,7 @@
- `npm run lint` will style-check the codebase.
- `npm run format` will auto-format the codebase.
- Note that if you're using VSCode with all the suggested extensions, VSCode should be formatting all your files on save.
- `npm run gen:types` will generate the types for the database.
### What's where?

View File

@@ -14,7 +14,8 @@
"lint": "prettier --check . && eslint .",
"test:unit": "vitest",
"test": "npm run test:unit -- --run && npm run test:e2e",
"test:e2e": "playwright test"
"test:e2e": "playwright test",
"gen:types": "supabase gen types typescript --local > ./src/lib/database.d.ts"
},
"devDependencies": {
"@eslint/compat": "^1.2.5",

195
src/lib/database.d.ts vendored
View File

@@ -1,115 +1,121 @@
export type Json = string | number | boolean | null | { [key: string]: Json | undefined } | Json[];
export type Json =
| string
| number
| boolean
| null
| { [key: string]: Json | undefined }
| Json[]
export type Database = {
graphql_public: {
Tables: {
[_ in never]: never;
};
[_ in never]: never
}
Views: {
[_ in never]: never;
};
[_ in never]: never
}
Functions: {
graphql: {
Args: {
operationName?: string;
query?: string;
variables?: Json;
extensions?: Json;
};
Returns: Json;
};
};
operationName?: string
query?: string
variables?: Json
extensions?: Json
}
Returns: Json
}
}
Enums: {
[_ in never]: never;
};
[_ in never]: never
}
CompositeTypes: {
[_ in never]: never;
};
};
[_ in never]: never
}
}
public: {
Tables: {
study_space_images: {
Row: {
created_at: string | null;
image_path: string;
study_space_id: string;
updated_at: string | null;
};
created_at: string | null
image_path: string
study_space_id: string
updated_at: string | null
}
Insert: {
created_at?: string | null;
image_path: string;
study_space_id: string;
updated_at?: string | null;
};
created_at?: string | null
image_path: string
study_space_id: string
updated_at?: string | null
}
Update: {
created_at?: string | null;
image_path?: string;
study_space_id?: string;
updated_at?: string | null;
};
created_at?: string | null
image_path?: string
study_space_id?: string
updated_at?: string | null
}
Relationships: [
{
foreignKeyName: "study_space_images_study_space_id_fkey";
columns: ["study_space_id"];
isOneToOne: false;
referencedRelation: "study_spaces";
referencedColumns: ["id"];
foreignKeyName: "study_space_images_study_space_id_fkey"
columns: ["study_space_id"]
isOneToOne: false
referencedRelation: "study_spaces"
referencedColumns: ["id"]
},
]
}
];
};
study_spaces: {
Row: {
created_at: string | null;
id: string;
title: string;
updated_at: string | null;
};
created_at: string | null
id: string
title: string
updated_at: string | null
}
Insert: {
created_at?: string | null;
id?: string;
title: string;
updated_at?: string | null;
};
created_at?: string | null
id?: string
title: string
updated_at?: string | null
}
Update: {
created_at?: string | null;
id?: string;
title?: string;
updated_at?: string | null;
};
Relationships: [];
};
};
created_at?: string | null
id?: string
title?: string
updated_at?: string | null
}
Relationships: []
}
}
Views: {
[_ in never]: never;
};
[_ in never]: never
}
Functions: {
[_ in never]: never;
};
[_ in never]: never
}
Enums: {
[_ in never]: never;
};
[_ in never]: never
}
CompositeTypes: {
[_ in never]: never;
};
};
};
[_ in never]: never
}
}
}
type DefaultSchema = Database[Extract<keyof Database, "public">];
type DefaultSchema = Database[Extract<keyof Database, "public">]
export type Tables<
DefaultSchemaTableNameOrOptions extends
| keyof (DefaultSchema["Tables"] & DefaultSchema["Views"])
| { schema: keyof Database },
TableName extends DefaultSchemaTableNameOrOptions extends {
schema: keyof Database;
schema: keyof Database
}
? keyof (Database[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] &
Database[DefaultSchemaTableNameOrOptions["schema"]]["Views"])
: never = never
: never = never,
> = DefaultSchemaTableNameOrOptions extends { schema: keyof Database }
? (Database[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] &
Database[DefaultSchemaTableNameOrOptions["schema"]]["Views"])[TableName] extends {
Row: infer R;
Row: infer R
}
? R
: never
@@ -117,93 +123,94 @@ export type Tables<
DefaultSchema["Views"])
? (DefaultSchema["Tables"] &
DefaultSchema["Views"])[DefaultSchemaTableNameOrOptions] extends {
Row: infer R;
Row: infer R
}
? R
: never
: never;
: never
export type TablesInsert<
DefaultSchemaTableNameOrOptions extends
| keyof DefaultSchema["Tables"]
| { schema: keyof Database },
TableName extends DefaultSchemaTableNameOrOptions extends {
schema: keyof Database;
schema: keyof Database
}
? keyof Database[DefaultSchemaTableNameOrOptions["schema"]]["Tables"]
: never = never
: never = never,
> = DefaultSchemaTableNameOrOptions extends { schema: keyof Database }
? Database[DefaultSchemaTableNameOrOptions["schema"]]["Tables"][TableName] extends {
Insert: infer I;
Insert: infer I
}
? I
: never
: DefaultSchemaTableNameOrOptions extends keyof DefaultSchema["Tables"]
? DefaultSchema["Tables"][DefaultSchemaTableNameOrOptions] extends {
Insert: infer I;
Insert: infer I
}
? I
: never
: never;
: never
export type TablesUpdate<
DefaultSchemaTableNameOrOptions extends
| keyof DefaultSchema["Tables"]
| { schema: keyof Database },
TableName extends DefaultSchemaTableNameOrOptions extends {
schema: keyof Database;
schema: keyof Database
}
? keyof Database[DefaultSchemaTableNameOrOptions["schema"]]["Tables"]
: never = never
: never = never,
> = DefaultSchemaTableNameOrOptions extends { schema: keyof Database }
? Database[DefaultSchemaTableNameOrOptions["schema"]]["Tables"][TableName] extends {
Update: infer U;
Update: infer U
}
? U
: never
: DefaultSchemaTableNameOrOptions extends keyof DefaultSchema["Tables"]
? DefaultSchema["Tables"][DefaultSchemaTableNameOrOptions] extends {
Update: infer U;
Update: infer U
}
? U
: never
: never;
: never
export type Enums<
DefaultSchemaEnumNameOrOptions extends
| keyof DefaultSchema["Enums"]
| { schema: keyof Database },
EnumName extends DefaultSchemaEnumNameOrOptions extends {
schema: keyof Database;
schema: keyof Database
}
? keyof Database[DefaultSchemaEnumNameOrOptions["schema"]]["Enums"]
: never = never
: never = never,
> = DefaultSchemaEnumNameOrOptions extends { schema: keyof Database }
? Database[DefaultSchemaEnumNameOrOptions["schema"]]["Enums"][EnumName]
: DefaultSchemaEnumNameOrOptions extends keyof DefaultSchema["Enums"]
? DefaultSchema["Enums"][DefaultSchemaEnumNameOrOptions]
: never;
: never
export type CompositeTypes<
PublicCompositeTypeNameOrOptions extends
| keyof DefaultSchema["CompositeTypes"]
| { schema: keyof Database },
CompositeTypeName extends PublicCompositeTypeNameOrOptions extends {
schema: keyof Database;
schema: keyof Database
}
? keyof Database[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"]
: never = never
: never = never,
> = PublicCompositeTypeNameOrOptions extends { schema: keyof Database }
? Database[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"][CompositeTypeName]
: PublicCompositeTypeNameOrOptions extends keyof DefaultSchema["CompositeTypes"]
? DefaultSchema["CompositeTypes"][PublicCompositeTypeNameOrOptions]
: never;
: never
export const Constants = {
graphql_public: {
Enums: {}
Enums: {},
},
public: {
Enums: {}
}
} as const;
Enums: {},
},
} as const