schon/storefront/app/graphql/mutations/cart.ts
2026-02-27 21:59:51 +03:00

104 lines
1.8 KiB
TypeScript

import { ORDER_FRAGMENT } from '@graphql/fragments/orders.fragment';
export const ADD_TO_CART = gql`
mutation addToCart(
$orderUuid: UUID!,
$productUuid: UUID!
) {
addOrderProduct(
orderUuid: $orderUuid,
productUuid: $productUuid
) {
order {
...Order
}
}
}
${ORDER_FRAGMENT}
`;
export const REMOVE_FROM_CART = gql`
mutation removeFromCart(
$orderUuid: UUID!,
$productUuid: UUID!
) {
removeOrderProduct(
orderUuid: $orderUuid,
productUuid: $productUuid
) {
order {
...Order
}
}
}
${ORDER_FRAGMENT}
`;
export const REMOVE_KIND_FROM_CART = gql`
mutation removeKindFromCart(
$orderUuid: UUID!,
$productUuid: UUID!
) {
removeOrderProductsOfAKind(
orderUuid: $orderUuid,
productUuid: $productUuid
) {
order {
...Order
}
}
}
${ORDER_FRAGMENT}
`;
export const REMOVE_ALL_FROM_CART = gql`
mutation removeAllFromCart(
$orderUuid: UUID!
) {
removeAllOrderProducts(
orderUuid: $orderUuid
) {
order {
...Order
}
}
}
${ORDER_FRAGMENT}
`;
export const BULK_CART = gql`
mutation bulkOrderAction(
$orderUuid: UUID!,
$action: String!,
$products: [BulkProductInput]!
) {
bulkOrderAction(
orderUuid: $orderUuid
action: $action
products: $products
) {
order {
...Order
}
}
}
${ORDER_FRAGMENT}
`;
export const BUY_CART = gql`
mutation buyOrder(
$orderUuid: String!,
$forcePayment: Boolean!
) {
buyOrder(
orderUuid: $orderUuid
forcePayment: $forcePayment
) {
transaction {
amount
process
paymentMethod
}
}
}
`;