/** * Admin procedure helpers - shared transformation functions */ import type { OrgSites, Orgs, Users } from "@reviq/db-schema"; import type { Selectable } from "kysely"; /** Transform org record to API response format */ export const toOrgResponse = (org: Selectable) => ({ id: org.id, slug: org.slug, displayName: org.display_name, logoUrl: org.logo_url, createdAt: org.created_at, }); /** Transform user record to API response format */ export const toUserResponse = (user: Selectable) => ({ id: user.id, email: user.email, displayName: user.display_name, fullName: user.full_name, phoneNumber: user.phone_number, avatarUrl: user.avatar_url, emailVerified: user.email_verified_at !== null, needsSetup: user.display_name === null, isSuperuser: user.is_superuser, hasPassword: user.password_hash !== null, }); /** Transform site record to API response format */ export const toSiteResponse = (site: Selectable) => ({ id: site.id, domain: site.domain, createdAt: site.created_at, });