All files / packages/mutations/src/receipt-items remove.ts

100% Statements 6/6
100% Branches 0/0
100% Functions 5/5
100% Lines 5/5

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28                78x       2x 2x 2x         1x                
import type { ReceiptId } from "~db/ids";
 
import { updateRevert as updateRevertReceipts } from "../cache/receipts";
import type { UseContextedMutationOptions } from "../context";
 
export const options: UseContextedMutationOptions<
	"receiptItems.remove",
	{ receiptId: ReceiptId }
> = {
	mutationKey: "receiptItems.remove",
	onMutate:
		(controllerContext, { receiptId }) =>
		({ id: removedId }) =>
			updateRevertReceipts(controllerContext, {
				get: (controller) => controller.removeItem(receiptId, removedId),
				getPaged: undefined,
			}),
	errorToastOptions:
		({ t }) =>
		(errors) => ({
			text: t("toasts.removeItem.error", {
				ns: "receipts",
				itemsCount: errors.length,
				errors,
			}),
		}),
};