Inner Join in Dart

I am trying to recreate this simple query in flutter:

SELECT * FROM signups
INNER JOIN guests ON signups."guestId" = guests."guestId"
INNER JOIN events ON signups."eventId" = events."eventId";


I have this piece of code so far:

await supabase.from('signups').select('*, guests!inner(*), events!inner(*)');


It works but it is giving me the inner join columns in a nested map/json like this:
[
  {
    signupId: 8653e1d0-57a8-4138-b2bf-7ae078570c5c, 
    eventId: da7fe194-78a3-47e8-b9ce-0ee57cdfc247, // This is a foreign key from table events 
    guestId: e9482062-9c0e-4025-a1b1-d03e9d8c7910, // This is a foreign key from table guests
    // other field/column values from signups table
    guests: {
      guestId: e9482062-9c0e-4025-a1b1-d03e9d8c7910, 
      guestName: James, 
      guestPhoneNumber: +1-3091234567
    }, 
    events: {
      eventId: da7fe194-78a3-47e8-b9ce-0ee57cdfc247, 
      eventName: Annual Company Meeting, 
      eventVenue: Continental, 
      eventDateTime: 1667300987442
    }
  }
]

I want to get this output:
[
  {
    signupId: 8653e1d0-57a8-4138-b2bf-7ae078570c5c, 
    eventId: da7fe194-78a3-47e8-b9ce-0ee57cdfc247, // This is a foreign key from table events 
    guestId: e9482062-9c0e-4025-a1b1-d03e9d8c7910, // This is a foreign key from table guests
    // other field/column values from signups table
    guestName: James, 
    guestPhoneNumber: +1-3091234567,
    eventName: Annual Company Meeting, 
    eventVenue: Continental, 
    eventDateTime: 1667300987442
    }
  }
]


What is the query syntax that will let me do this within dart?
Was this page helpful?