refactor(types): regenerate database types from canonical schema; drop TODO(types) join casts
Regenerate types/database.ts from a local Supabase built from the canonical scripts/schema.sql. The running dev DB was stale (missing the 'stripe' payment_platform value, members_with_permission, spaces.host_requires_card, payments.link_status, dues_payment_methods.space_id), so it was rebuilt from schema.sql first. With real relationship metadata the 11 `as unknown as … // TODO(types)` join casts are no longer needed: - me portal, session-attendance, member-certifications, equipment-reservations: narrow the action result with `'data' in res` instead of a blanket cast. - stripe / door embeds read the now-typed relation directly. - completeSession + listEquipmentReservations route the embedded-select query through the fully-typed createClient() rather than the wide ServerSupabase gate client (the pattern documented in auth-helpers.ts); equipment disambiguates its two space_members FKs with an explicit !fkey hint. Collapse the hand-maintained governance rows/enums in types/domain/governance.ts into Tables<>/Enums<> aliases. Tighten duesPaymentMethodSchema.platform to the DUES_LINK_PLATFORMS literal union (the old `as unknown as [string,...]` erased it), which the now-correct payment_platform enum requires. The hand-added class_signup_tx / class_cancel_tx RPC entries are now generated natively. typecheck 0 · lint 0 errors · 645 tests · build ok
This commit is contained in:
@@ -225,8 +225,7 @@ export async function listDoorCards(input: unknown) {
|
||||
|
||||
return {
|
||||
data: (cards ?? []).map(c => {
|
||||
// TODO(types): remove after regenerating types/database.ts (missing FK relationship metadata)
|
||||
const sm = c.space_members as unknown as { display_name: string | null } | { display_name: string | null }[] | null
|
||||
const sm = c.space_members
|
||||
const name = Array.isArray(sm) ? sm[0]?.display_name : sm?.display_name
|
||||
return {
|
||||
cardId: c.id as string,
|
||||
|
||||
Reference in New Issue
Block a user