admin/services/publicOrganizer.ts
alisaza e1eaf5eff5 feat: initial ghabilee-admin backoffice app
Extract admin dashboard from ghabilee-frontend2 into a dedicated Next.js
app for backoffice.ghabilee.ir (no SEO indexing / Clarity).
2026-09-05 13:12:59 +03:30

26 lines
833 B
TypeScript

import axiosInstance from '@/config/axios'
import { unwrapApiPayload } from '@/helpers/listResponse'
export interface PublicOrganizerSummary {
id: string
firstName: string
lastName: string
avatarUrl: string | null
gender: 'male' | 'female' | 'other' | null
bio?: string | null
cityName?: string | null
isVerified?: boolean
memberSince?: string
followersCount: number
pastEventsCount: number
totalGuestsCount?: number
contactLinks?: { channel: string; label: string; url: string }[]
}
/** `GET /users/public/:id` — public host card on event detail / profiles. */
export async function fetchPublicOrganizer(organizerId: string): Promise<PublicOrganizerSummary> {
const response = await axiosInstance.get(`users/public/${organizerId}`)
return unwrapApiPayload<PublicOrganizerSummary>(response.data)
}