Initial commit

This commit is contained in:
Jose Selesan
2026-04-08 22:53:11 -03:00
commit 9ae270609d
179 changed files with 28096 additions and 0 deletions

View File

@@ -0,0 +1,8 @@
import type { AppContext } from '@/types/hono'
import { getUserProfile } from '@/modules/user/services/user.service'
export function getUserProfileHandler(c: AppContext) {
const authUser = c.get('authUser')
const profile = getUserProfile(authUser)
return c.json(profile)
}

View File

@@ -0,0 +1,28 @@
import type { AuthUser } from '@/types/auth-user'
import type { UserProfile } from '@repo/api-contract'
export function getUserProfile(user: AuthUser): UserProfile {
const fullName =
(typeof user.user_metadata?.full_name === 'string' &&
user.user_metadata.full_name) ||
(typeof user.user_metadata?.name === 'string' && user.user_metadata.name) ||
(user.email ?? 'Usuario')
const role =
(typeof user.app_metadata?.role === 'string' && user.app_metadata.role) ||
'member'
const avatarUrl =
(typeof user.user_metadata?.avatar_url === 'string' &&
user.user_metadata.avatar_url) ||
null
return {
id: user.id,
fullName,
email: user.email ?? null,
role,
avatarUrl,
createdAt: user.created_at,
}
}

View File

@@ -0,0 +1,9 @@
import { Hono } from 'hono'
import { requireAuth } from '@/middlewares/require-auth.middleware'
import type { AppEnv } from '@/types/hono'
import { getUserProfileHandler } from '@/modules/user/handlers/get-user-profile.handler'
export const userRoutes = new Hono<AppEnv>()
userRoutes.use('*', requireAuth)
userRoutes.get('/profile', getUserProfileHandler)