| 1234567891011121314151617181920212223242526272829 |
- import { useOptimisticUpdate } from "pinia-colada-plugin-normalizer"
- export const useUpdateUser = defineMutation(() => {
- const { transaction } = useOptimisticUpdate()
- const { mutate, ...mutation } = useMutation({
- onMutate({ id, updates }) {
- const tx = transaction()
- tx.set("user", id, updates)
- return tx
- },
- mutation: ({ id, updates }) => useEmit("user:update", id, updates),
- onError(error, _vars, { rollback }) {
- rollback?.()
- console.error("[useUpdateUser] [onError]", error)
- },
- onSuccess: (_data, _vars, { commit }) => commit?.()
- })
- return {
- ...mutation,
- updateUser: (id, updates) => mutate({ id, updates })
- }
- })
|