Update file metadata in manifest.json and change MinIO image source in docker-compose.yml

This commit is contained in:
k1nq
2026-09-23 09:23:13 +05:00
parent 8c2b89c80d
commit db4dd7572e
71 changed files with 31011 additions and 8308 deletions
+27 -1
View File
@@ -1,7 +1,8 @@
import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'
import { api } from '@/api/endpoints'
import { invalidationRoots, queryKeys } from '@/api/queryKeys'
import type { CreateAccountPayload } from '@/api/types'
import type { AdjustBalancePayload, CreateAccountPayload } from '@/api/types'
import { isSystemAccount } from '@/api/types'
import { useToast } from '@/components/ui/Toaster'
import { useTranslation } from 'react-i18next'
import { describeApiError } from '@/lib/apiErrors'
@@ -15,6 +16,13 @@ export function useActiveAccounts() {
return { ...accounts, data: accounts.data?.filter((account) => account.status === 'active') }
}
/** Active non-system accounts: the savings system account is not a valid
* target for statements, expenses, incomes or refunds. */
export function useUserAccounts() {
const accounts = useActiveAccounts()
return { ...accounts, data: accounts.data?.filter((account) => !isSystemAccount(account)) }
}
export function useCreateAccount() {
const queryClient = useQueryClient()
const { t } = useTranslation()
@@ -44,3 +52,21 @@ export function useArchiveAccount() {
onError: (error) => toast.push('error', describeApiError(error, t)),
})
}
export function useAdjustBalance() {
const queryClient = useQueryClient()
const { t } = useTranslation()
const toast = useToast()
return useMutation({
mutationFn: ({ id, payload }: { id: string; payload: AdjustBalancePayload }) =>
api.accounts.adjustBalance(id, payload),
onSuccess: () => {
void queryClient.invalidateQueries({ queryKey: invalidationRoots.accounts })
void queryClient.invalidateQueries({ queryKey: invalidationRoots.operations })
void queryClient.invalidateQueries({ queryKey: invalidationRoots.budget })
void queryClient.invalidateQueries({ queryKey: invalidationRoots.analytics })
toast.push('success', t('toast.balanceAdjusted'))
},
onError: (error) => toast.push('error', describeApiError(error, t)),
})
}