rhythia-api 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,47 @@
1
+ import { createClient } from "@supabase/supabase-js";
2
+ import { Database } from "../types/supabase";
3
+
4
+ export async function webhook_createUser(input: { type: string }) {
5
+ const request = await fetch(`https://rhythia.com/api/webhook_createUser`);
6
+ return request.json();
7
+ }
8
+
9
+ const adminClient = createClient<Database>(
10
+ `https://pfkajngbllcbdzoylrvp.supabase.co`,
11
+ process.env.ADMIN_KEY!,
12
+ {
13
+ auth: {
14
+ autoRefreshToken: false,
15
+ persistSession: false,
16
+ },
17
+ }
18
+ );
19
+
20
+ export function GET(request: Request) {
21
+ const country = request.headers.get("x-vercel-ip-country");
22
+ return new Response(`You're visiting from beautiful ${country}`);
23
+ }
24
+
25
+ export async function POST(request: Request) {
26
+ const payload: any = await request.json();
27
+
28
+ if (payload.type !== "INSERT") return new Response(`not today`);
29
+ console.log("Inserting...");
30
+ const metadata = payload.record.raw_user_meta_data;
31
+
32
+ const data = await adminClient
33
+ .from("profiles")
34
+ .upsert({
35
+ uid: payload.record.id,
36
+ about_me: "",
37
+ avatar_url: metadata.avatar_url,
38
+ badges: ["Early Bird"],
39
+ username: metadata.full_name,
40
+ flag: "",
41
+ created_at: Date.now(),
42
+ })
43
+ .select();
44
+
45
+ console.log(data);
46
+ return new Response(`good one`);
47
+ }
package/package.json ADDED
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "rhythia-api",
3
+ "version": "1.0.0",
4
+ "main": "index.ts",
5
+ "scripts": {
6
+ "sync": "npx supabase gen types typescript --project-id \"pfkajngbllcbdzoylrvp\" --schema public > types/supabase.ts"
7
+ },
8
+ "license": "MIT",
9
+ "dependencies": {
10
+ "@supabase/supabase-js": "^2.45.1",
11
+ "supabase": "^1.188.4"
12
+ }
13
+ }
@@ -0,0 +1,152 @@
1
+ export type Json =
2
+ | string
3
+ | number
4
+ | boolean
5
+ | null
6
+ | { [key: string]: Json | undefined }
7
+ | Json[]
8
+
9
+ export type Database = {
10
+ public: {
11
+ Tables: {
12
+ profiles: {
13
+ Row: {
14
+ about_me: string | null
15
+ avatar_url: string | null
16
+ badges: Json | null
17
+ created_at: number | null
18
+ flag: string | null
19
+ id: number
20
+ uid: string | null
21
+ username: string | null
22
+ verified: boolean | null
23
+ }
24
+ Insert: {
25
+ about_me?: string | null
26
+ avatar_url?: string | null
27
+ badges?: Json | null
28
+ created_at?: number | null
29
+ flag?: string | null
30
+ id?: number
31
+ uid?: string | null
32
+ username?: string | null
33
+ verified?: boolean | null
34
+ }
35
+ Update: {
36
+ about_me?: string | null
37
+ avatar_url?: string | null
38
+ badges?: Json | null
39
+ created_at?: number | null
40
+ flag?: string | null
41
+ id?: number
42
+ uid?: string | null
43
+ username?: string | null
44
+ verified?: boolean | null
45
+ }
46
+ Relationships: [
47
+ {
48
+ foreignKeyName: "profiles_uid_fkey"
49
+ columns: ["uid"]
50
+ isOneToOne: true
51
+ referencedRelation: "users"
52
+ referencedColumns: ["id"]
53
+ },
54
+ ]
55
+ }
56
+ }
57
+ Views: {
58
+ [_ in never]: never
59
+ }
60
+ Functions: {
61
+ [_ in never]: never
62
+ }
63
+ Enums: {
64
+ [_ in never]: never
65
+ }
66
+ CompositeTypes: {
67
+ [_ in never]: never
68
+ }
69
+ }
70
+ }
71
+
72
+ type PublicSchema = Database[Extract<keyof Database, "public">]
73
+
74
+ export type Tables<
75
+ PublicTableNameOrOptions extends
76
+ | keyof (PublicSchema["Tables"] & PublicSchema["Views"])
77
+ | { schema: keyof Database },
78
+ TableName extends PublicTableNameOrOptions extends { schema: keyof Database }
79
+ ? keyof (Database[PublicTableNameOrOptions["schema"]]["Tables"] &
80
+ Database[PublicTableNameOrOptions["schema"]]["Views"])
81
+ : never = never,
82
+ > = PublicTableNameOrOptions extends { schema: keyof Database }
83
+ ? (Database[PublicTableNameOrOptions["schema"]]["Tables"] &
84
+ Database[PublicTableNameOrOptions["schema"]]["Views"])[TableName] extends {
85
+ Row: infer R
86
+ }
87
+ ? R
88
+ : never
89
+ : PublicTableNameOrOptions extends keyof (PublicSchema["Tables"] &
90
+ PublicSchema["Views"])
91
+ ? (PublicSchema["Tables"] &
92
+ PublicSchema["Views"])[PublicTableNameOrOptions] extends {
93
+ Row: infer R
94
+ }
95
+ ? R
96
+ : never
97
+ : never
98
+
99
+ export type TablesInsert<
100
+ PublicTableNameOrOptions extends
101
+ | keyof PublicSchema["Tables"]
102
+ | { schema: keyof Database },
103
+ TableName extends PublicTableNameOrOptions extends { schema: keyof Database }
104
+ ? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"]
105
+ : never = never,
106
+ > = PublicTableNameOrOptions extends { schema: keyof Database }
107
+ ? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends {
108
+ Insert: infer I
109
+ }
110
+ ? I
111
+ : never
112
+ : PublicTableNameOrOptions extends keyof PublicSchema["Tables"]
113
+ ? PublicSchema["Tables"][PublicTableNameOrOptions] extends {
114
+ Insert: infer I
115
+ }
116
+ ? I
117
+ : never
118
+ : never
119
+
120
+ export type TablesUpdate<
121
+ PublicTableNameOrOptions extends
122
+ | keyof PublicSchema["Tables"]
123
+ | { schema: keyof Database },
124
+ TableName extends PublicTableNameOrOptions extends { schema: keyof Database }
125
+ ? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"]
126
+ : never = never,
127
+ > = PublicTableNameOrOptions extends { schema: keyof Database }
128
+ ? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends {
129
+ Update: infer U
130
+ }
131
+ ? U
132
+ : never
133
+ : PublicTableNameOrOptions extends keyof PublicSchema["Tables"]
134
+ ? PublicSchema["Tables"][PublicTableNameOrOptions] extends {
135
+ Update: infer U
136
+ }
137
+ ? U
138
+ : never
139
+ : never
140
+
141
+ export type Enums<
142
+ PublicEnumNameOrOptions extends
143
+ | keyof PublicSchema["Enums"]
144
+ | { schema: keyof Database },
145
+ EnumName extends PublicEnumNameOrOptions extends { schema: keyof Database }
146
+ ? keyof Database[PublicEnumNameOrOptions["schema"]]["Enums"]
147
+ : never = never,
148
+ > = PublicEnumNameOrOptions extends { schema: keyof Database }
149
+ ? Database[PublicEnumNameOrOptions["schema"]]["Enums"][EnumName]
150
+ : PublicEnumNameOrOptions extends keyof PublicSchema["Enums"]
151
+ ? PublicSchema["Enums"][PublicEnumNameOrOptions]
152
+ : never