mirror of
https://github.com/spliit-app/spliit.git
synced 2026-03-05 04:06:13 +01:00
* Add tRPC, use it for group expense list * Use tRPC for balances * Use tRPC in group information + better loading states
20 lines
648 B
TypeScript
20 lines
648 B
TypeScript
import { getGroupExpenses } from '@/lib/api'
|
|
import {
|
|
getBalances,
|
|
getPublicBalances,
|
|
getSuggestedReimbursements,
|
|
} from '@/lib/balances'
|
|
import { baseProcedure } from '@/trpc/init'
|
|
import { z } from 'zod'
|
|
|
|
export const listGroupBalancesProcedure = baseProcedure
|
|
.input(z.object({ groupId: z.string().min(1) }))
|
|
.query(async ({ input: { groupId } }) => {
|
|
const expenses = await getGroupExpenses(groupId)
|
|
const balances = getBalances(expenses)
|
|
const reimbursements = getSuggestedReimbursements(balances)
|
|
const publicBalances = getPublicBalances(reimbursements)
|
|
|
|
return { balances: publicBalances, reimbursements }
|
|
})
|