import type { CatalogEntityType, CatalogSubmission } from './SubmissionRepository' /** Shared by SupabaseSubmissionRepository (submitter's-eye view) and * SupabaseAdminSubmissionRepository (Admin's-eye view) — both read/write * the same `catalog_submissions` table shape. */ export interface SubmissionRow { id: string entity_type: CatalogEntityType entity_id: string proposed_data: Record submitter_id: string status: CatalogSubmission['status'] reviewer_id: string | null review_reason: string | null created_at: string updated_at: string } export function toSubmission(row: SubmissionRow): CatalogSubmission { return { id: row.id, entityType: row.entity_type, entityId: row.entity_id, proposedData: row.proposed_data, submitterId: row.submitter_id, status: row.status, reviewerId: row.reviewer_id ?? undefined, reviewReason: row.review_reason ?? undefined, createdAt: row.created_at, updatedAt: row.updated_at, } }